Let's look at heuristics; later on, we'll look at an example.
Heuristics are an approach to problem solving, learning, and discovery. We apply heuristics when we are not sure of what the goal should be; we can apply certain estimates, and these estimates can help us to optimize our search process. If finding an optimal solution is impossible or impractical, heuristic methods can be used to speed up the process of finding a satisfactory solution.
So, let's look at an example of using heuristics.
Suppose that we have a puzzle with eight tiles, arranged as shown in the Initial State cube, and we want to arrange them as they are in the Goal State cube:
To take 1 from its Initial State to its Goal State, we have to move 1 from the first tile to the last tile in the first row.
We also have to move at least two...