To increase the efficiency of search algorithm we need to add problem-specific knowledge. We use this to solve large problems with a large number of possible states
a. Heuristic Evaluation Functions
We use this function to calculate the path between two states that a function takes for sliding-tiles games. which we have to calculate by computing number of rows. Also, moves of each tile make from its goal state. Further, adding these number of moves for all tiles.
b. Pure Heuristic Search
In order, if heuristic value nodes will expand. Also, creates two lists:
First, a closed list of the already expanded nodes;
- Secondly, an open list created. Although, unexpected nodes.
- A node with a minimum heuristic value is expanded, In each iteration. Also, all its child nodes are created and placed on the closed list. Further, we apply this heuristic function to child nodes. Thus, at last, we have to place it in the open list, as per the heuristic value. Although, we have to save the shortest path while to dispose of the longer ones.