As part of your review
process, I recommend you study:
- Notes from class (slides are on the book's web site)
- Reread book chapters
- Homework and programming assignments
- Look over exercises at the end of the chapter in the book.
Chapter Three: Solving Problems by Searching, Focus on Sections
3.1-7
- Be able to define and identify the components of a problem
(states, initial state, successor function, goal test, path
cost)
- Understand the general tree-search algorithm and the role
of the frontier
- Understand and be able to use the four ways we measure
problem-solving performance
- Describe the behavior of depth-first, breadth-first,
iterative deepening and uniform-cost search, and compare
their relative advantages and disadvantages
- Understand how to avoid repeated states
- Given an example of a state space be able to compute the
frontier
- How does “informed search” try to improve on “uninformed
search”?
- Be able to discuss the role of the evaluation function in
informed search
- Describe the behavior of greedy best-first search
- Explain how A* search works, what its advantages are, and
identify any restrictions on heuristics which can be used
with it
- Discuss strategies for inventing admissible heuristic
functions
Chapter Four: Beyond Classical Search, Focus on 4.1-3
- Understand the state space landscape and how it impacts
local search algorithms
- Describe the ways hill climbing can be modified to avoid
some of the issues that come up in the landscape
- Describe the behavior of hill climbing, simulated
annealing, local beam, and genetic algorithms search, and
compare their relative advantages and disadvantages
- Given a problem and its corresponding state space be able
to suggest and justify a good search algorithm