Local Search Algorithms
CPS 4801
Outline
•
Hill

Climbing Search
•
Simulated Annealing
•
Local Beam
Search (briefly
)
Local search algorithms
•
In many optimization problems, the
path
to
the goal is irrelevant; the
goal state
itself is
the
solution.
•
Find
the final configuration
satisfying
constraints, e.g.,
n

queens.
•
In such cases, we can use
local search
algorithms:
•
keep a single "current" state, try to improve
it
o
generally move to neighbors
o
The path are not retained
Local search algorithms
•
uses very little memory
•
useful for solving pure optimization problems
•
can often find reasonable solutions in large
state spaces.
Example:
n

queens
•
Put
n
queens on an
n
×
n
board with no two
queens on the same row, column, or
diagonal
Hill

climbing
search
(steepest

ascent version)
•
A simple loop that continuously moves in the
direction of increasing value
–
uphill
•
Terminates when reaches a “peak”
•
does not look ahead beyond the immediate
neighbors, does not maintain a search tree
8

queens
problem
•
Each state has 8*7 = 56 successors.
complete

state
formulation
vs.
incremental
formulation
8

queens
problem
•
h
= number of pairs of queens that are attacking
each other, either directly or indirectly
(h=0 solution)
•
h
= 17
for the above state
Hill

climbing
search
•
“Greedy local search”
o
grabs a good neighbor state without thinking
ahead about where to go next
•
makes rapid progress
Hill

climbing search:
8

queens
problem
•
5 steps from the state in the previous slide
•
A
local minimum with
h = 1
Hill

climbing
search
•
Problem: depending on initial state, can get
stuck in local
maxima.
Hill

climbing search
•
Starting from a randomly generated 8

queen state, steepest

ascent hill climbing gets
stuck 86% of the time.
•
It takes 4 steps on average when it succeeds
and 3 when it gets stuck.
•
The steepest ascent version halts if the best
successor has the same value as the current.
Hill

climbing search
•
allow a sideways move
o
shoulder
o
flat local maximum, that is not a shoulder
•
Solution: a limit on the number of
consecutive sideway moves
o
E.g., 100 consecutive sideways movies in the 8

queens problem
o
successful rate: raises from14% to 94%
o
cost: 21 steps on average for each successful
instance, 64 for each failure
Variants of hill climbing
•
Stochastic hill climbing
o
chooses at random from among the
uphill
moves
o
converge more slowly, but finds better solutions
•
First

choice hill climbing
o
generates successors randomly until one is better
than the current state
o
good when with many (thousands) of successors
Variants of hill climbing
•
Random

restart hill climbing
o
“If you don’t succeed, try, try again.”
o
conducts a series of hill

climbing searches from
randomly generated initial states, until a goal is
found.
Simulated
Annealing
•
A hill

climbing algorithm that never makes
“downhill” moves is guaranteed to be
incomplete.
•
Idea
: escape local maxima by allowing
some
“bad” moves
Simulated Annealing
•
Picks a random move (instead of the best)
•
If “good move”
•
accepted;
•
else
•
accepted with some probability
•
The probability decreases exponentially with
the “badness” of the move
Simulated Annealing
Simulated Annealing
•
Simulated annealing was first used
extensively to solve VLSI (Very

Large

Scale
Integration) layout problems.
•
It has been applied widely to factory
scheduling and other large

scale
optimization tasks.
Local
Beam Search
•
Idea: keep k states instead of 1; choose top
k of all their successors
•
Not the same as k searches run in parallel!
•
Searches that
find
good states recruit other
searches to join
them
o
moves the resources to where the most progress
is being made
Local Beam Search
•
Problem: quite often, all k states end up on
same local
hill (concentrated in a small
region)
•
Idea: choose k successors
randomly
(
stochastic beam search
)
Comments 0
Log in to post a comment