Heuristic Search

Arya MirAI and Robotics

Nov 26, 2011 (5 years and 10 months ago)

816 views

Useproblem-specificinformationnotincludedin the definition of the problem to search for solutions • Best-firstsearch–pickthe(seemingly)best node among search nodes, based on evaluation function f(n) • SortqueueoffringesearchnodesQw.r.t.f • Keycomponentoffisaheuristicfunctionh(n) which gives the estimated cost of the cheapest path from node n to the goal

Heuristic Search
Srinandan Dasmahapatra
February 16, 2006
Basic ideas

Use problem-specific information not included in
the definition of the problem to search for
solutions

Best-first search


pick
the (seemingly) best
node among search nodes, based on evaluation
function
f(n)

Sort
queue of fringe search nodes
Q
w.r.t.
f

Key component of
f
is a
heuristic function
h(n)
which gives the
estimated
cost of the cheapest
path from node
n
to the goal
What uniform path cost strategies miss

All nodes on the concentric
circles represent equal cost
extensions (along radial
direction in Cartesian
embedding)


X is as good a state to reach as Y
- because nodes are

expanded in order of
cost from the starting

state only,
- without trying to bias the search

towards the goal
(uninformed)
What animal navigation seems to offer

Caution
: geographical goal-seeking is only
analogous to searching abstract problem spaces

Navigation is goal targeted

homing pigeons,
lobsters

Requires both a directional sense (

compass

)
and a spatial location sense (

map

), directly
linked to specific sensory perceptual capacities

von Frisch (1949) discovered that bees use
polarized skylight for compass; determine e-
vector orientation in isolated patches of skylight
More animal navigation analogies

Cataglyphis
ants in the Sahara travel thousands of times
their own body length to arrive at a pinpoint goal using
polarisation
- not informed about exact e-vector pattern to daytime
map,
- they successfully deal with partial skylight pattern, if
insect experiences same partial pattern during foraging

Internal clock tied to orientation patterns, to track
location of moving sun


eg
., birds

Lobsters seem to use magnetic field of the earth for
choosing the appropriate direction for homing
More search analogies

Search space cannot be examined for target goal, goal
is a function of agent

s state as it traverses state-space
as well

Example
: Bumblebee Foraging: Study of particular species of
bumblebee (
Bombus appositus
) gathering nectar from clusters of
monkshood flowers in Colorado mountains.
- Variable nectar content in flowers, depends on whether other
insects have removed some already
- No one flower was a full meal, several visited

Algorithm
:
- Visit flower closest to ground or next to lowest visited first
- Move upwards, selecting closest flower not already visited
Search analogies in Cells

How do the microtubules (MT)
the fibres growing and
shrinking

on top right (green
on bottom right) find and
attach to the
kinetochores
(DNA in blue) in order to form
the mitotic spindle which then
initiates

cell division?
A* search:
Minimise total estimated solution cost
176
100
Open and Closed Nodes

Fringe to be
explored is
called OPEN

Instead of
discarding
nodes from the
queue, place
them in a
CLOSED or
VISITED list

Graph search
Reminder: BFS on a graph: Goal

g

DFS on a graph: Goal

g

Reminder: DFS on a graph: Goal

g

A* search example, from A to B (tabular form)
<A,S,F,B;
450
> <A,S,F,S;>
<A,S,R,P,B;
418
>
<A,S,R,P,C;
455
>
<A,S,R,C;
526
> <A,S,O;
671
><A,T;
447
> <A,Z;
449
>
<A,S,R,P,B;
418
> <A,S,R,P,C;
455
><A,S,R,C;
526
>
<A,S,F;
417
> <A,S,O;
671
><A,T;
447
> <A,Z;
449
>
<A,S,R,C;
526
> <A,S,R,P;
415
> <A,S,R,S;>
<A,S,F;
417
> <A,S,O;
671
> <A,T;
447
> <A,Z;
449
>
<A,S,A;280+366=
646
> <A,S,F;239+178=
417
>
<A,S,R; 220+193=
413
> <A,S,O;291+380=
671
>
<A,T;
447
> <A,Z;
449
>
<A, S; 140+253=
393
> <A, T; 118+329=
447
> <A, Z; 75+374=
449
>
<A; 0+366=366>
(A 366) (B 418)
(C 455)
(F 417) (O 671) (P 415)
(R 413) (S 393) (T 447)
(Z 449)
(A 366) (C 526) (F 417)
(O 671) (P 415) (R 413)
(S 393) (T 447) (Z 449)
(A 366) (F 417) (O 671)
(R 413) (S 393) (T 447)
(Z 449)
(S 393) (T 447) (Z 449)
(A 366)

Each node in the left column is of the form
<
Start_City
= City_0, City_1,

,
City_k
; f(
City_k
) = g(
City_k
) + h(
City_k
)>

The right column records the
smallest f-value
for each city
visited
A* search example (using modified SLD)
A* search example - 2
A* search example - 3
Reminder
G2
G1
n
s
f(G1) = C*, least
f(G2) > C*
f(n) < f(G2) means
G2 will not be expanded
<A,S,F,B; 450>
<A,S,R,P,B; 418>
Set n = <A,S,R>, State(n) = R
g(R)=220 <= g(B) = 418 (
A

R; A

B)
f(<A,S,R>)
=g
(R)+h(R)=413 < 450
f(<A,S,R,P,B>)=418,
f(<A,S,F,B>)=450

For search on graphs, it is
useful to introduce the notion
of
consistency/
monotonicity
to guarantee the optimality of
A*


c(n,a,n

) path cost of action
a that takes n to n


Triangle inequality

Ensure that as one
progresses along the path,
the
f-values are weakly
increasing
Optimal paths for graph based search
Dynamic Programming Principle

Dynamic Programming Optimality Principle:
shortest path from start to goal that goes
through state X is composed of
- shortest path from start to X and
- shortest path from X to goal

Keeps track of expanded nodes for h = 0 case

String matching, speech recognition, bioinformatics,
reinforcement learning
X
S
G
Choosing Heuristic functions
Heuristic Functions and Dominance
Relaxing Constraints
Relaxing Constraints of Problem
Iterative Improvement Algorithms
Examples of Iterative Improvement Algorithms
TSP and
n
-Queens
Iterative Methods for Optimisation

Hill Climbing
Issues
: step size (in
continuous
problems)
rate of convergence
Simulated Annealing
Properties of Simulated Annealing

For fixed

temperature

T, the occupation probability of
each state
x
with value
E(x)
becomes
P(x)

exp (- E(x) / T)

T starts from a large value and then decreased; if
decreased slowly enough, goal always reached

Devised in 1953 by Metropolis, used in VLSI layout,
airline scheduling, physics problems,

, everywhere!