In this chapter, we are going to learn about heuristic search techniques. Heuristic search techniques are used to search through the solution space to come up with answers. The search is conducted using heuristics that guide the search algorithm. This heuristic allows the algorithm to speed up the process, which would otherwise take a really long time to arrive at the solution.
By the end of this chapter, you will know about the following:
What is heuristic search?
Uninformed vs. informed search
Constraint Satisfaction Problems
Local search techniques
Simulated annealing
Constructing a string using greedy search
Solving a problem with constraints
Solving the region coloring problem
Building an 8-puzzle solver
Building a maze solver