Examples
• Local BeamSearch
• Hill Climbing Algorithm
• Simulated Annealing
• Genetic Algorithm
3.
3
Generate-and-Test
Algorithm
1. Generate apossible solution.
2. Test to see if this is actually a solution.
3. Quit if a solution has been found.
Otherwise, return to step 1.
4.
4
Hill Climbing
• Simplya loop that continually moves in the direction of
increasing value—that is, uphill
• Terminates when it reaches a “peak” where no
neighbor has a higher value
• Searching for a goal state = Climbing to the top of a hill
• Generate-and-test + direction to move.
5.
Hill Climbing (Cont.)
•Does not look ahead beyond the immediate
neighbors of the current state.
• Does not maintain a search tree
• Saves current node state and the value of the
objective function.
• Hill climbing is sometimes called greedy local search
because it grabs a good neighbor state without
thinking ahead about where to go next.
• Heuristic function to estimate how close a given state
is to a goal state.
6.
• To illustratehill climbing, we use the 8-queens problem.
• where each state has 8 queens on the board, one per
column.
• Successors of a state are all possible states generated by
moving a single queen to another square in the same
column (so each state has 8×7=56 successors).
• Heuristic cost function h is the number of pairs of queens
that are attacking each other, either directly or indirectly.
• Hill-climbing algorithms typically choose randomly among
the set of best successors if there is more than one.
7.
7
Simple Hill Climbing
Algorithm
1.Evaluate the initial state.
2. Loop until a solution is found or there are no
new operators left to be applied:
- Select and apply a new operator
- Evaluate the new state:
goal quit
better than current state new current state
Variants of hillclimbing
• Stochastic hill climbing chooses at random from among the uphill
moves; the probability of selection can vary with the steepness of
the uphill move. This usually joins more slowly than steepest
climb/rise, but in some state landscapes, it finds better solutions.
• First-choice hill climbing implements stochastic hill climbing by
generating successors randomly until one is generated that is
better than the current state. This is a good strategy when a state
has many (e.g., thousands) of successors.
• Random-restart hill climbing adopts the well-known saying, “If at
first you don’t succeed, try, try again.” It conducts a series of hill-
climbing searches from randomly generated initial states, until a
goal is found.
11.
Problems in HillClimbing
• hill climbing often gets stuck for the following
reasons:
• Local maxima a local maximum is a peak that is
higher than each of its neighboring states but lower
than the global maximum
• Ridges result in a sequence of local maxima that is
very difficult for greedy algorithms to navigate.
• Plateau flat area of the state-space landscape. It can
be a flat local maximum, from which no uphill exit
exists, or a shoulder, from which progress is possible.
13.
Assignment
• Write atleast four uses, disadvantages and
advantages of Hill Climbing Algorithm.