heuristic optimisation - university of...

36
Heuristic Optimisation Part 7: Properties of A* andor Zolt ´ an N ´ emeth http://web.mat.bham.ac.uk/S.Z.Nemeth [email protected] University of Birmingham SZN´ emeth ([email protected]) Heuristic Optimisation University of Birmingham 1 / 15

Upload: others

Post on 17-Oct-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Heuristic Optimisation

Part 7: Properties of A*

Sandor Zoltan Nemeth

http://web.mat.bham.ac.uk/S.Z.Nemeth

[email protected]

University of Birmingham

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 1 / 15

Page 2: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

The properties to be studied

Completeness

Admissibility

Monotonicity

Informedness

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 2 / 15

Page 3: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Completeness and optimality

Greedy search:

minimizes the estimated cost to the goal, h(n)

⇒ neither optimal nor complete,

but low search cost

A*:

minimizes f(n) = g(n) + h(n)

⇒ optimal and complete with a restriction on h

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 3 / 15

Page 4: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Properties of h

If h is a perfect estimator of the distance from the current node to thegoal node, A* will never leave the optimal path.

The better h estimates the real distance, the closer A* is to the”direct” path.

If h never overestimates the real distance, A* is guaranteed to findthe optimal solution.

If h may overestimate the real distance, the optimal path can befound only if ...

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 4 / 15

Page 5: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Properties of h

If h is a perfect estimator of the distance from the current node to thegoal node, A* will never leave the optimal path.

The better h estimates the real distance, the closer A* is to the”direct” path.

If h never overestimates the real distance, A* is guaranteed to findthe optimal solution.

If h may overestimate the real distance, the optimal path can befound only if ... all paths in the search graph longer than the optimalsolution are expanded.

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 4 / 15

Page 6: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Admissibility

A heuristic h is admissible if it never overestimates the cost to reachthe goal.

An admissible heuristic is optimistic: ...

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 5 / 15

Page 7: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Admissibility

A heuristic h is admissible if it never overestimates the cost to reachthe goal.

An admissible heuristic is optimistic: ... it ”thinks” the cost of solvingthe problem is less than it actually is.

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 5 / 15

Page 8: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Admissibility

A heuristic h is admissible if it never overestimates the cost to reachthe goal.

An admissible heuristic is optimistic: ...

If h is admissible, f(n) never overestimates the cost of the bestsolution through n.

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 5 / 15

Page 9: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Admissibility

A heuristic h is admissible if it never overestimates the cost to reachthe goal.

An admissible heuristic is optimistic: ...

If h is admissible, f(n) never overestimates the cost of the bestsolution through n.

So A* will find the optimal solution.

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 5 / 15

Page 10: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Admissibility

A heuristic h is admissible if it never overestimates the cost to reachthe goal.

An admissible heuristic is optimistic: ...

If h is admissible, f(n) never overestimates the cost of the bestsolution through n.

Example admissible heuristic: straight-line distance.

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 5 / 15

Page 11: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

A* example

Paddington

Notting HillGate

Victoria Westminster Embankment

OxfordCircusGreen

Park

BondStreet

Baker Street Warren Street

TottenhamCourt Road

Monument

2

3

5

4

1

1

2

1

1

1

2

2

1

1

2

3

15

3

4

1

2

5

3

12

2

1 3V

NHG

P

BaS

OC

TCR

M

EGP

BoS

f(GP)=10

f(V)=12

f(E)=11

f(M)=10

WaS

OPEN=[M,GP,V,E]

CLOSED=[P,BaS,NHG,BoS,WaS,OC,TCR]

4f(TCR)=9

f(NHG)=9

f(BoS)=9 f(WaS)=9

1

f(OC)=10

f(P)=7

f(BaS)=8

h-values:

P BaS WaS NHG BoS OC

7 5 4 7 5 5

TCR GP V We E M

3 5 5 4 3 0

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 6 / 15

Page 12: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Observations

A* expands all nodes with f(n) < f∗

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 7 / 15

Page 13: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Observations

A* expands all nodes with f(n) < f∗

A* might expand some of the nodes with f(n) = f∗ beforeselecting a goal node

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 7 / 15

Page 14: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Observations

A* expands all nodes with f(n) < f∗

A* might expand some of the nodes with f(n) = f∗ beforeselecting a goal node

A* expands no nodes with f(n) > f∗

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 7 / 15

Page 15: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Completeness and optimality of A*

If h is admissible and there is a path with finite cost from the start node toa goal node, A* is guaranteed to terminate with a minimal-cost path to thegoal.

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 8 / 15

Page 16: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Completeness and optimality of A*

If h is admissible and there is a path with finite cost from the start node toa goal node, A* is guaranteed to terminate with a minimal-cost path to thegoal.

Proof:

Let G an optimal goal state with path cost f∗. Let G’ a suboptimal goalstate, g(G′) > f∗. Suppose A* selected G’ from the OPEN list.

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 8 / 15

Page 17: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Completeness and optimality of A*

If h is admissible and there is a path with finite cost from the start node toa goal node, A* is guaranteed to terminate with a minimal-cost path to thegoal.

Proof:

Let G an optimal goal state with path cost f∗. Let G’ a suboptimal goalstate, g(G′) > f∗. Suppose A* selected G’ from the OPEN list.

It can be shown (see Russell & Norvig) that this is not possible.

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 8 / 15

Page 18: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Completeness and optimality of A*

If h is admissible and there is a path with finite cost from the start node toa goal node, A* is guaranteed to terminate with a minimal-cost path to thegoal.

Proof:

Let G an optimal goal state with path cost f∗. Let G’ a suboptimal goalstate, g(G′) > f∗. Suppose A* selected G’ from the OPEN list.

It can be shown (see Russell & Norvig) that this is not possible.

A* expands the nodes in order of increasing f , so it will eventually reachthe goal state if the number of nodes with f(n) < f∗ is finite.

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 8 / 15

Page 19: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Monotonicity (Consistency)

If along any path in the search tree of A* the f -cost never decreasesthen the heuristic is said to be monotonic.

f(A) ≤ f(B) ⇐⇒ h(A) ≤ h(B) + c(A ,B)

(Can you prove this?)

c(A,B) h(B)

h(A)A

B

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 9 / 15

Page 20: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Monotonicity (Consistency)

If along any path in the search tree of A* the f -cost never decreasesthen the heuristic is said to be monotonic.

f(A) ≤ f(B) ⇐⇒ h(A) ≤ h(B) + c(A ,B)

(Can you prove this?)

c(A,B) h(B)

h(A)A

B

Can we transform a nonmonotonic heuristic into a monotonicheuristic?

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 9 / 15

Page 21: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Restoring monotonicity

h(B)=2g(B)=3f(B)=5 B

A

f(A)=6g(A)=2h(A)=4

⇒ f is a nonmonotonic heuristic.

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 10 / 15

Page 22: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Restoring monotonicity

h(B)=2g(B)=3f(B)=5 B

A

f(A)=6g(A)=2h(A)=4

⇒ f is a nonmonotonic heuristic.

But any path through B passes through its parent A , too.

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 10 / 15

Page 23: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Restoring monotonicity

h(B)=2g(B)=3f(B)=5 B

A

f(A)=6g(A)=2h(A)=4

⇒ f is a nonmonotonic heuristic.

But any path through B passes through its parent A , too.

f(B) = max(f(A), g(B) + h(B))

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 10 / 15

Page 24: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Restoring monotonicity

h(B)=2g(B)=3f(B)=5 B

A

f(A)=6g(A)=2h(A)=4

⇒ f is a nonmonotonic heuristic.

But any path through B passes through its parent A , too.

f(B) = max(f(A), g(B) + h(B)) is never decreasing along any path fromthe root if h is admissible.

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 10 / 15

Page 25: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Restoring monotonicity

h(B)=2g(B)=3f(B)=5 B

A

f(A)=6g(A)=2h(A)=4

⇒ f is a nonmonotonic heuristic.

But any path through B passes through its parent A , too.

f(B) = max(f(A), g(B) + h(B)) is never decreasing along any path fromthe root if h is admissible.

This is called the pathmax equation.

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 10 / 15

Page 26: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Efficiency of A*

A* is optimally efficient for any consistent h function:

No other optimal algorithm is guaranteed to expand fewer nodesthan A* (except possibly nodes with f(n) = f∗)

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 11 / 15

Page 27: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Monotonicity theorem

If a monotonic heuristic h is used, when A* expands a node n, it hasalready found an optimal path to n.

Important: in this case, the current path to a node will never be better thansome previously found path.

Consequences:

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 12 / 15

Page 28: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Monotonicity theorem

If a monotonic heuristic h is used, when A* expands a node n, it hasalready found an optimal path to n.

Important: in this case, the current path to a node will never be better thansome previously found path.

Consequences:

No modifications will be made after a node is expanded.

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 12 / 15

Page 29: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Monotonicity theorem

If a monotonic heuristic h is used, when A* expands a node n, it hasalready found an optimal path to n.

Important: in this case, the current path to a node will never be better thansome previously found path.

Consequences:

No modifications will be made after a node is expanded. (step 2.(b)ii.not needed)

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 12 / 15

Page 30: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Monotonicity theorem

If a monotonic heuristic h is used, when A* expands a node n, it hasalready found an optimal path to n.

Important: in this case, the current path to a node will never be better thansome previously found path.

Consequences:

No modifications will be made after a node is expanded. (step 2.(b)ii.not needed)

Searching a graph will be the same as searching a tree.

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 12 / 15

Page 31: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Informedness

If two versions of A*, A∗1 and A∗

2 , differ only in h1 < h2 for all nodesthat are not goal nodes then A∗

2 is more informed than A∗1 .

Example – the 8-puzzle

Compare A* based on the Manhattan distance and A* based on thenumber of tiles in wrong position.

Which one is more informed?

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 13 / 15

Page 32: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Informedness theorem

If A∗2 is more informed than A∗

1 , then at the termination of theirsearches on any graph having a path from the start node to a goalnode, every node expanded by A∗

2 is also expanded by A∗1 .

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 14 / 15

Page 33: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Informedness theorem

If A∗2 is more informed than A∗

1 , then at the termination of theirsearches on any graph having a path from the start node to a goalnode, every node expanded by A∗

2 is also expanded by A∗1 .

A∗1 expands at least as many nodes as A∗

2 .

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 14 / 15

Page 34: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Informedness theorem

If A∗2 is more informed than A∗

1 , then at the termination of theirsearches on any graph having a path from the start node to a goalnode, every node expanded by A∗

2 is also expanded by A∗1 .

A∗1 expands at least as many nodes as A∗

2 .

A more informed algorithm is more efficient.

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 14 / 15

Page 35: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Informedness theorem

If A∗2 is more informed than A∗

1 , then at the termination of theirsearches on any graph having a path from the start node to a goalnode, every node expanded by A∗

2 is also expanded by A∗1 .

A∗1 expands at least as many nodes as A∗

2 .

A more informed algorithm is more efficient.

The most efficient heuristic is the perfect estimator!

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 14 / 15

Page 36: Heuristic Optimisation - University of Birminghamweb.mat.bham.ac.uk/S.Z.Nemeth/presentations_ho_part_07.pdf · 2016. 1. 29. · Example admissible heuristic: straight-line distance

Recommended reading

N. Nilsson: Artificial Intelligence, A New Synthesis

Section 9.2

S. Russell and P. Norvig: Artificial Intelligence, A Modern Approach

Section 4.1

E. Rich and K. Knight: Artificial Intelligence

Section 3.3

S Z Nemeth ([email protected]) Heuristic Optimisation University of Birmingham 15 / 15