Overview
In Chapter 23 we discuss various heuristic search strategies that are used in artificial
intelligence and game theory. We begin by discussing the 8-puzzle game, which is nice way to
motivate the discussion of A* search that follows. We define what is meant by a monotone
heuristic, and show that the (first) goal found by A* search is optimal. We then describe the
least cost branch-and-bound design strategy. We finish the chapter with a discussion of game
trees, and present an algorithm for determining the value of a given game using the minimax
strategy, this value being the outcome of the game assuming optimal play.
Chapter Objectives
After completing the chapter the student will know:
• The definitions of A-search and A*-search, and that A*-search always terminates by
finding an optimal path to a reachable goal (if one exists). Moreover, the first goal reached
by A*-search is always optimal, which is not necessarily the case for A-search
• The definition of monotone heuristic and its role in A* search
determine the value of a given game given optimal play
Instructor Notes
The material in this chapter can be covered anytime after the material in Chapter 10 on
backtracking and branch-and-bound has been discussed. However, it may be best to have
already covered Dijkstra’s shortest path algorithm given in Chapter 12, since this algorithm is a
special case of A*-search.