gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · ai...

222
AI Planning M. Helmert, B. Nebel Heuristic search Relaxation Deriving Heuristic Estimates from Relaxations Principles of AI Planning Planning by heuristic search Malte Helmert Bernhard Nebel Albert-Ludwigs-Universit¨ at Freiburg November 15th, 2006

Upload: others

Post on 04-Jun-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Principles of AI PlanningPlanning by heuristic search

Malte Helmert Bernhard Nebel

Albert-Ludwigs-Universitat Freiburg

November 15th, 2006

Page 2: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Plan search with heuristic search algorithms

For forward and backward search (progression, regression)the search space consists of incomplete plans that arerespectively prefixes of possible plans and suffixes ofpossible plans.

Search starts from the empty plan.

The neighbors/children of an incomplete plan in thesearch space are those that are obtained by

1 adding an operator to the incomplete plan, or2 removing an operator from the incomplete plan.

Systematic search algorithms (like A∗) keep track of theincomplete plans generated so far, and therefore can goback to them.Hence removing operators from incomplete plans is onlyneeded for local search algorithms which do not keep trackof the history of the search process.

Page 3: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Plan search with heuristic search algorithms

For forward and backward search (progression, regression)the search space consists of incomplete plans that arerespectively prefixes of possible plans and suffixes ofpossible plans.

Search starts from the empty plan.

The neighbors/children of an incomplete plan in thesearch space are those that are obtained by

1 adding an operator to the incomplete plan, or2 removing an operator from the incomplete plan.

Systematic search algorithms (like A∗) keep track of theincomplete plans generated so far, and therefore can goback to them.Hence removing operators from incomplete plans is onlyneeded for local search algorithms which do not keep trackof the history of the search process.

Page 4: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Plan search with heuristic search algorithms

For forward and backward search (progression, regression)the search space consists of incomplete plans that arerespectively prefixes of possible plans and suffixes ofpossible plans.

Search starts from the empty plan.

The neighbors/children of an incomplete plan in thesearch space are those that are obtained by

1 adding an operator to the incomplete plan, or2 removing an operator from the incomplete plan.

Systematic search algorithms (like A∗) keep track of theincomplete plans generated so far, and therefore can goback to them.Hence removing operators from incomplete plans is onlyneeded for local search algorithms which do not keep trackof the history of the search process.

Page 5: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Plan search: incomplete plans for progression

For progression, the incomplete plans are prefixes o1, o2, . . . , on

of potential plans.An incomplete plan is extended by

1 adding an operator after the last operator,from o1, . . . , on to o1, o2, . . . , on, o for some o ∈ O, or

2 removing one or more of the last operators,from o1, . . . , on to o1, . . . , oi for some i < n.This is for local search algorithms only.

o1, o2, . . . , on is a plan if appon(appon−1(· · · appo1(I) · · · )) |= G.

Page 6: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Plan search: incomplete plans for progression

For progression, the incomplete plans are prefixes o1, o2, . . . , on

of potential plans.An incomplete plan is extended by

1 adding an operator after the last operator,from o1, . . . , on to o1, o2, . . . , on, o for some o ∈ O, or

2 removing one or more of the last operators,from o1, . . . , on to o1, . . . , oi for some i < n.This is for local search algorithms only.

o1, o2, . . . , on is a plan if appon(appon−1(· · · appo1(I) · · · )) |= G.

Page 7: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Plan search: incomplete plans for progression

For progression, the incomplete plans are prefixes o1, o2, . . . , on

of potential plans.An incomplete plan is extended by

1 adding an operator after the last operator,from o1, . . . , on to o1, o2, . . . , on, o for some o ∈ O, or

2 removing one or more of the last operators,from o1, . . . , on to o1, . . . , oi for some i < n.This is for local search algorithms only.

o1, o2, . . . , on is a plan if appon(appon−1(· · · appo1(I) · · · )) |= G.

Page 8: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Plan search: incomplete plans for progression

For progression, the incomplete plans are prefixes o1, o2, . . . , on

of potential plans.An incomplete plan is extended by

1 adding an operator after the last operator,from o1, . . . , on to o1, o2, . . . , on, o for some o ∈ O, or

2 removing one or more of the last operators,from o1, . . . , on to o1, . . . , oi for some i < n.This is for local search algorithms only.

o1, o2, . . . , on is a plan if appon(appon−1(· · · appo1(I) · · · )) |= G.

Page 9: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Plan search: incomplete plans for regression

For regression, the incomplete plans are suffixes on, . . . , o1 ofpotential plans.An incomplete plan is extended by

1 adding an operator in front of the first operator,from on, . . . , o1 to o, on, . . . , o1 for o ∈ O, or

2 deleting one or more of the first operators,from on, . . . , o1 to oi, . . . , o1 for some i < n.This is for local search algorithms only.

on, . . . , o1 is a plan if I |= regron(· · · regro2(regro1(G)) · · · ).

Remark

The above is for the simplest case when formulae are not split.With splitting the formalization is slightly trickier.

Page 10: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Plan search: incomplete plans for regression

For regression, the incomplete plans are suffixes on, . . . , o1 ofpotential plans.An incomplete plan is extended by

1 adding an operator in front of the first operator,from on, . . . , o1 to o, on, . . . , o1 for o ∈ O, or

2 deleting one or more of the first operators,from on, . . . , o1 to oi, . . . , o1 for some i < n.This is for local search algorithms only.

on, . . . , o1 is a plan if I |= regron(· · · regro2(regro1(G)) · · · ).

Remark

The above is for the simplest case when formulae are not split.With splitting the formalization is slightly trickier.

Page 11: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Plan search: incomplete plans for regression

For regression, the incomplete plans are suffixes on, . . . , o1 ofpotential plans.An incomplete plan is extended by

1 adding an operator in front of the first operator,from on, . . . , o1 to o, on, . . . , o1 for o ∈ O, or

2 deleting one or more of the first operators,from on, . . . , o1 to oi, . . . , o1 for some i < n.This is for local search algorithms only.

on, . . . , o1 is a plan if I |= regron(· · · regro2(regro1(G)) · · · ).

Remark

The above is for the simplest case when formulae are not split.With splitting the formalization is slightly trickier.

Page 12: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Plan search: incomplete plans for regression

For regression, the incomplete plans are suffixes on, . . . , o1 ofpotential plans.An incomplete plan is extended by

1 adding an operator in front of the first operator,from on, . . . , o1 to o, on, . . . , o1 for o ∈ O, or

2 deleting one or more of the first operators,from on, . . . , o1 to oi, . . . , o1 for some i < n.This is for local search algorithms only.

on, . . . , o1 is a plan if I |= regron(· · · regro2(regro1(G)) · · · ).

Remark

The above is for the simplest case when formulae are not split.With splitting the formalization is slightly trickier.

Page 13: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Plan search: incomplete plans for regression

For regression, the incomplete plans are suffixes on, . . . , o1 ofpotential plans.An incomplete plan is extended by

1 adding an operator in front of the first operator,from on, . . . , o1 to o, on, . . . , o1 for o ∈ O, or

2 deleting one or more of the first operators,from on, . . . , o1 to oi, . . . , o1 for some i < n.This is for local search algorithms only.

on, . . . , o1 is a plan if I |= regron(· · · regro2(regro1(G)) · · · ).

Remark

The above is for the simplest case when formulae are not split.With splitting the formalization is slightly trickier.

Page 14: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Planning by heuristic searchForward search

GI

distance estimatedistance estimate

distance estimate

distan

ceest

imate

Page 15: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Planning by heuristic searchBackward search

IG

distan

ceest

imate

distance estimate

distance estimatedistance estimate

Page 16: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Planning by heuristic searchSelection of operators based on distance estimates

Select next operator o ∈ O based on the estimated distance(number of operators) between

1 appo(appon(appon−1(· · · appo1(I) · · · ))) and G,for forward search.

2 I and regro(regron(· · · regro2(regro1(G)) · · · )),for backward search.

Page 17: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Search algorithms: A∗

Search control of A∗

A∗ uses the function f(σ) = g(σ) + h(σ) to guide search:

g(σ) = cost so far, i. e. number of operators in σ

h(σ) = estimated remaining cost (distance)

admissibility: h(σ) must be less than or equal to theactual remaining cost h∗(σ) (distance), otherwise A∗ isnot guaranteed to find an optimal solution.

Page 18: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Search algorithms: A∗Example

GI

0+33

1+3

1+2

2+2

2+5 5

2+6 6

2+7

7

3+5

5

3+1

4+8

Page 19: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Search algorithms: A∗Example

GI

0+3

1+3

3

1+2

2

2+2

2+5 5

2+6 6

2+7

7

3+5

5

3+1

4+8

Page 20: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Search algorithms: A∗Example

GI

0+3

1+3

3

1+2

2+2

2+5 5

2+6 6

2+7

7

3+5

5

3+1

4+8

Page 21: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Search algorithms: A∗Example

GI

0+3

1+3

1+2

2+2

2

2+5 5

2+6 6

2+7

7

3+5

5

3+1

4+8

Page 22: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Search algorithms: A∗Example

GI

0+3

1+3

1+2

2+2

2+5 5

2+6 6

2+7

7

3+5

5

3+1

1

4+8

Page 23: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Search algorithms: A∗Example

GI

0+3

1+3

1+2

2+2

2+5 5

2+6 6

2+7

7

3+5

5

3+1

4+8

8

Page 24: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Search algorithms: A∗Definition

Notation for operator sequences

appo1;o2;...;on(s) denotes appon(. . . appo2(appo1(s)) . . .) and εdenotes the empty sequence for which appε(s) = s.

Algorithm A∗

Forward search with A∗ works as follows.open := {ε}, closed := ∅loop:

if open = ∅:return unsolvable

Choose an element σ ∈ open with the least f(σ).if appσ(I) |= G:

return σopen := open \ {σ}; closed := closed ∪ {σ}open := open ∪ ({σ; o | o ∈ O} \ closed)

Page 25: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Local search: random walk

Random walkσ := εloop:

if appσ(I) |= G:return σ

Randomly choose a neighbor σ′ of σ.σ := σ′

Remark

The algorithm usually does not find any solutions, unlessalmost every sequence of actions is a plan.

Page 26: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Local search: steepest descent hill-climbing

Hill-climbingσ := εloop:

if appσ(I) |= G:return σ

Randomly choose a neighbor σ′ of σ with the least h(σ′).σ := σ′

Remark

The algorithm gets stuck in local minima if no neighbor σ′ hasa better heuristic value than the current incomplete plan σ.

Page 27: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Local search: simulated annealing

Simulated annealingσ := εloop:

if appσ(I) |= G:return σ

Randomly choose a neighbor σ′ of σ.if h(σ′) < h(σ):

σ := σ′

else with probability exp(−h(σ′)−h(σ)

T

):

σ := σ′

Decrease T . (Different possible strategies!)

The temperature T is initially high and then graduallydecreased.

Page 28: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Local search: simulated annealingIllustration

temperature

Page 29: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

How to obtain heuristics?

General procedure for obtaining a heuristic

Solve a simplified / less restricted version of the problem.

Example (Route planning for a road network)

The road network is formalized as a weighted graph where theweight of an edge is the road distance between two locations.A heuristic is obtained from the Euclidean distance√|x1 − x2|2 + |y1 − y2|2. It is a lower bound on the road

distance between (x1, y1) and (x2, y2).

Page 30: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

An admissible heuristic for route planningExample

Frankfurt

Freiburg

Karlsruhe

Munchen

Nurnberg

Passau

Regensburg

Stuttgart

Ulm

Wurzburg

120

km

120

km

100 km100

km

100 km 120km80

km

160 km

100 km

100 km

120km

200km

200km

270 km

150 km

420 km180 km

340 km

120 km

450

km13

0km

440km

100km

540km

120km

460 km

Page 31: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

An admissible heuristic for route planningExample

Frankfurt

Freiburg

Karlsruhe

Munchen

Nurnberg

Passau

Regensburg

Stuttgart

Ulm

Wurzburg

120

km

120

km

100 km100

km

100 km 120km80

km

160 km

100 km

100 km

120km

200km

200km

270 km

150 km

420 km180 km

340 km

120 km

450

km13

0km

440km

100km

540km

120km

460 km

Page 32: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

An admissible heuristic for route planningExample

Frankfurt

Freiburg

Karlsruhe

Munchen

Nurnberg

Passau

Regensburg

Stuttgart

Ulm

Wurzburg

120

km

120

km

100 km100

km

100 km 120km80

km

160 km

100 km

100 km

120km

200km

200km

270 km

150 km

420 km180 km

340 km

120 km

450

km13

0km

440km

100km

540km

120km

460 km

Page 33: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

An admissible heuristic for route planningExample

Frankfurt

Freiburg

Karlsruhe

Munchen

Nurnberg

Passau

Regensburg

Stuttgart

Ulm

Wurzburg

120

km

120

km

100 km100

km

100 km 120km80

km

160 km

100 km

100 km

120km

200km

200km

270 km

150 km

420 km180 km

340 km

120 km

450

km13

0km

440km

100km

540km

120km

460 km

Page 34: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

An admissible heuristic for route planningExample

Frankfurt

Freiburg

Karlsruhe

Munchen

Nurnberg

Passau

Regensburg

Stuttgart

Ulm

Wurzburg

120

km

120

km

100 km100

km

100 km 120km80

km

160 km

100 km

100 km

120km

200km

200km

270 km

150 km

420 km180 km

340 km

120 km

450

km13

0km

440km

100km

540km

120km

460 km

Page 35: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

An admissible heuristic for route planningExample

Frankfurt

Freiburg

Karlsruhe

Munchen

Nurnberg

Passau

Regensburg

Stuttgart

Ulm

Wurzburg

120

km

120

km

100 km100

km

100 km 120km80

km

160 km

100 km

100 km

120km

200km

200km

270 km

150 km

420 km180 km

340 km

120 km

450

km13

0km

440km

100km

540km

120km

460 km

Page 36: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

An admissible heuristic for route planningExample

Frankfurt

Freiburg

Karlsruhe

Munchen

Nurnberg

Passau

Regensburg

Stuttgart

Ulm

Wurzburg

120

km

120

km

100 km100

km

100 km 120km80

km

160 km

100 km

100 km

120km

200km

200km

270 km

150 km

420 km180 km

340 km

120 km

450

km13

0km

440km

100km

540km

120km

460 km

Page 37: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

An admissible heuristic for route planningExample

Frankfurt

Freiburg

Karlsruhe

Munchen

Nurnberg

Passau

Regensburg

Stuttgart

Ulm

Wurzburg

120

km

120

km

100 km100

km

100 km 120km80

km

160 km

100 km

100 km

120km

200km

200km

270 km

150 km

420 km180 km

340 km

120 km

450

km13

0km

440km

100km

540km

120km

460 km

Page 38: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Incomplete plans

A∗

Local search

Derivingheuristics

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Heuristics for deterministic planningSTRIPS

STRIPS (Fikes & Nilsson, 1971) used the number of statevariables that differ in current state s and a goal state s′:

|{a ∈ A | s(a) 6= s′(a)}|.

“The more goal literals an operator makes true, the moreuseful the operator is.”

The above heuristic is not admissible because one operatormay reduce this measure by more than one. Instead,

|{a ∈ A | s(a) 6= s′(a)}|n

is admissible when no operator has > n atomic effects.

Page 39: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Intuition

To compute heuristics for planning tasks, we consider arelaxed version of the original problem, where somedifficult aspects of the original problem are ignored.

This is a general technique for heuristic design:

Straight-line heuristic (route planning): Ignore the factthat one must stay on roads.Manhattan heuristic (15-puzzle): Ignore the fact that onecannot move through occupied tiles.

For general planning problems, we will ignore negativeinteractions. Informally, we ignore “bad side effects” ofapplying operators.

Page 40: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Intuition

Question: Which operator effects are good, and which are bad?

This is difficult to answer in general, because it depends oncontext:

If we want to prevent burglars from breaking into our flat,locking the entrance door is good.

If we want to pass through it, locking the entrance door isbad.

We will now consider a reformulation of planning problems thatmakes the distinction between good and bad effects obvious.

Page 41: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Positive normal form

Definition

An operator o = 〈c, e〉 is in positive normal form if it is innormal form, no negation symbols appear in c, and no negationsymbols appear in any effect condition in e.

A succinct deterministic transition system 〈A, I,O,G〉 is inpositive normal form if all operators in O are in positive normalform and no negation symbols occur in the goal G.

Theorem

For every succinct deterministic transition system, anequivalent succinct deterministic transition system in positivenormal form can be computed in polynomial time.

Equivalence here means that the represented (non-succinct)deterministic transition systems are isomorphic.

Page 42: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Positive normal form: algorithm

Transformation of 〈A, I,O,G〉 to positive normal form

Convert all operators o ∈ O to normal form.Convert all conditions to negation normal form (NNF).while any condition contains a negative literal ¬a:

Let a be a variable which occurs negatively in a condition.A := A ∪ {a} for some new state variable aI(a) := 1− I(a)Replace the effect ¬a by (¬a ∧ a) in all operators o ∈ O.Replace the effect a by (a ∧ ¬a) in all operators o ∈ O.Replace ¬a by a in all conditions.

Convert all operators o ∈ O to normal form (again).

Here, all conditions refers to all operator preconditions,operator effect conditions and the goal.

Page 43: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Positive normal form: Example

Example

A = {home, uni, lecture, bike, bike-locked}I = {home 7→ 1, bike 7→ 1, bike-locked 7→ 1,

uni 7→ 0, lecture 7→ 0}O = {〈home ∧ bike ∧ ¬bike-locked,¬home ∧ uni〉,

〈bike ∧ bike-locked,¬bike-locked〉,〈bike ∧ ¬bike-locked, bike-locked〉,〈uni, lecture ∧ ((bike ∧ ¬bike-locked) B ¬bike)〉}

G = lecture ∧ bike

Page 44: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Positive normal form: Example

Example

A = {home, uni, lecture, bike, bike-locked}I = {home 7→ 1, bike 7→ 1, bike-locked 7→ 1,

uni 7→ 0, lecture 7→ 0}O = {〈home ∧ bike ∧ ¬bike-locked,¬home ∧ uni〉,

〈bike ∧ bike-locked,¬bike-locked〉,〈bike ∧ ¬bike-locked, bike-locked〉,〈uni, lecture ∧ ((bike ∧ ¬bike-locked) B ¬bike)〉}

G = lecture ∧ bike

Page 45: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Positive normal form: Example

Example

A = {home, uni, lecture, bike, bike-locked, bike-unlocked}I = {home 7→ 1, bike 7→ 1, bike-locked 7→ 1,

uni 7→ 0, lecture 7→ 0, bike-unlocked 7→ 0}O = {〈home ∧ bike ∧ ¬bike-locked,¬home ∧ uni〉,

〈bike ∧ bike-locked,¬bike-locked〉,〈bike ∧ ¬bike-locked, bike-locked〉,〈uni, lecture ∧ ((bike ∧ ¬bike-locked) B ¬bike)〉}

G = lecture ∧ bike

Page 46: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Positive normal form: Example

Example

A = {home, uni, lecture, bike, bike-locked, bike-unlocked}I = {home 7→ 1, bike 7→ 1, bike-locked 7→ 1,

uni 7→ 0, lecture 7→ 0, bike-unlocked 7→ 0}O = {〈home ∧ bike ∧ ¬bike-locked,¬home ∧ uni〉,

〈bike ∧ bike-locked,¬bike-locked〉,〈bike ∧ ¬bike-locked, bike-locked〉,〈uni, lecture ∧ ((bike ∧ ¬bike-locked) B ¬bike)〉}

G = lecture ∧ bike

Page 47: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Positive normal form: Example

Example

A = {home, uni, lecture, bike, bike-locked, bike-unlocked}I = {home 7→ 1, bike 7→ 1, bike-locked 7→ 1,

uni 7→ 0, lecture 7→ 0, bike-unlocked 7→ 0}O = {〈home ∧ bike ∧ ¬bike-locked,¬home ∧ uni〉,

〈bike ∧ bike-locked,¬bike-locked ∧ bike-unlocked〉,〈bike ∧ ¬bike-locked, bike-locked ∧ ¬bike-unlocked〉,〈uni, lecture ∧ ((bike ∧ ¬bike-locked) B ¬bike)〉}

G = lecture ∧ bike

Page 48: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Positive normal form: Example

Example

A = {home, uni, lecture, bike, bike-locked, bike-unlocked}I = {home 7→ 1, bike 7→ 1, bike-locked 7→ 1,

uni 7→ 0, lecture 7→ 0, bike-unlocked 7→ 0}O = {〈home ∧ bike ∧ ¬bike-locked,¬home ∧ uni〉,

〈bike ∧ bike-locked,¬bike-locked ∧ bike-unlocked〉,〈bike ∧ ¬bike-locked, bike-locked ∧ ¬bike-unlocked〉,〈uni, lecture ∧ ((bike ∧ ¬bike-locked) B ¬bike)〉}

G = lecture ∧ bike

Page 49: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Positive normal form: Example

Example

A = {home, uni, lecture, bike, bike-locked, bike-unlocked}I = {home 7→ 1, bike 7→ 1, bike-locked 7→ 1,

uni 7→ 0, lecture 7→ 0, bike-unlocked 7→ 0}O = {〈home ∧ bike ∧ bike-unlocked,¬home ∧ uni〉,

〈bike ∧ bike-locked,¬bike-locked ∧ bike-unlocked〉,〈bike ∧ bike-unlocked, bike-locked ∧ ¬bike-unlocked〉,〈uni, lecture ∧ ((bike ∧ bike-unlocked) B ¬bike)〉}

G = lecture ∧ bike

Page 50: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Positive normal form: Example

Example

A = {home, uni, lecture, bike, bike-locked, bike-unlocked}I = {home 7→ 1, bike 7→ 1, bike-locked 7→ 1,

uni 7→ 0, lecture 7→ 0, bike-unlocked 7→ 0}O = {〈home ∧ bike ∧ bike-unlocked,¬home ∧ uni〉,

〈bike ∧ bike-locked,¬bike-locked ∧ bike-unlocked〉,〈bike ∧ bike-unlocked, bike-locked ∧ ¬bike-unlocked〉,〈uni, lecture ∧ ((bike ∧ bike-unlocked) B ¬bike)〉}

G = lecture ∧ bike

Page 51: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Intuition

In positive normal form, good and bad effects are easy todistinguish:

Effects that make state variables true are good(add effects).

Effects that make state variables false are bad(delete effects).

Idea for the heuristic: Ignore all delete effects.

Page 52: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Relaxation

Definition

The relaxation o+ of an operator o = 〈c, e〉 in positive normalform is the operator which is obtained by replacing all negativeeffects ¬a within e by the do-nothing effect >.

The relaxation P+ of a succinct deterministic transition systemP = 〈A, I,O,G〉 in positive normal form is the succinctdeterministic transition system P+ := 〈A, I, {o+ | o ∈ O}, G〉.The relaxation of an operator sequence π = o1, . . . , on is theoperator sequence π+ := o1

+, . . . , on+.

Page 53: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Relaxation: properties

The on-set on(s) of a state s is the set of true state variablesin s, i.e. on(s) = s−1({1}).A state s′ dominates another state s iff on(s) ⊆ on(s′).

Lemma (domination)

Let s and s′ be valuations of a set of propositional variablesand let χ be a propositional formula which does not containnegation symbols.If s |= χ and s′ dominates s, then s′ |= χ.

Proof by induction over the structure of χ (exercise).

Page 54: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Relaxation: properties

Lemma (relaxation leads to dominated states)

Let s be a state, and let π be an operator sequence which isapplicable in s.Then π+ is applicable in s and appπ+(s) dominates appπ(s).

Proof.

Induction on the length of π.

Base case: π = εTrivial.

Page 55: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Relaxation: properties

Lemma (relaxation leads to dominated states)

Let s be a state, and let π be an operator sequence which isapplicable in s.Then π+ is applicable in s and appπ+(s) dominates appπ(s).

Proof.

Induction on the length of π.

Base case: π = εTrivial.

Page 56: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Relaxation: properties

Proof continues.

Inductive case: π = o1+ . . . on+1

+

By the induction hypothesis, o1+ . . . on

+ is applicable in s, andt+ = appo1

+...on+(s) dominates t = appo1...on(s).

Let o := on+1 = 〈c, e〉 and o+ = 〈c, e+〉. By assumption, o isapplicable in t, and thus t |= c. By the domination lemma, weget t+ |= c and hence o+ is applicable in t+. Therefore, π+ isapplicable in s.

Because o is in positive normal form, all effect conditionssatisfied by t are also satisfied by t+ (by the dominationlemma). Therefore, ([e]t ∩A) ⊆ [e+]t+ (where A is the set ofstate variables, or positive literals).

We get on(appπ(s)) ⊆ on(t) ∪ ([e]t ∩A) ⊆ on(t+) ∪ [e+]t+ =on(appπ+(s)), and thus appπ+(s) dominates appπ(s).

Page 57: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Relaxation: properties

Proof continues.

Inductive case: π = o1+ . . . on+1

+

By the induction hypothesis, o1+ . . . on

+ is applicable in s, andt+ = appo1

+...on+(s) dominates t = appo1...on(s).

Let o := on+1 = 〈c, e〉 and o+ = 〈c, e+〉. By assumption, o isapplicable in t, and thus t |= c. By the domination lemma, weget t+ |= c and hence o+ is applicable in t+. Therefore, π+ isapplicable in s.

Because o is in positive normal form, all effect conditionssatisfied by t are also satisfied by t+ (by the dominationlemma). Therefore, ([e]t ∩A) ⊆ [e+]t+ (where A is the set ofstate variables, or positive literals).

We get on(appπ(s)) ⊆ on(t) ∪ ([e]t ∩A) ⊆ on(t+) ∪ [e+]t+ =on(appπ+(s)), and thus appπ+(s) dominates appπ(s).

Page 58: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Relaxation: properties

Proof continues.

Inductive case: π = o1+ . . . on+1

+

By the induction hypothesis, o1+ . . . on

+ is applicable in s, andt+ = appo1

+...on+(s) dominates t = appo1...on(s).

Let o := on+1 = 〈c, e〉 and o+ = 〈c, e+〉. By assumption, o isapplicable in t, and thus t |= c. By the domination lemma, weget t+ |= c and hence o+ is applicable in t+. Therefore, π+ isapplicable in s.

Because o is in positive normal form, all effect conditionssatisfied by t are also satisfied by t+ (by the dominationlemma). Therefore, ([e]t ∩A) ⊆ [e+]t+ (where A is the set ofstate variables, or positive literals).

We get on(appπ(s)) ⊆ on(t) ∪ ([e]t ∩A) ⊆ on(t+) ∪ [e+]t+ =on(appπ+(s)), and thus appπ+(s) dominates appπ(s).

Page 59: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Relaxation: properties

Proof continues.

Inductive case: π = o1+ . . . on+1

+

By the induction hypothesis, o1+ . . . on

+ is applicable in s, andt+ = appo1

+...on+(s) dominates t = appo1...on(s).

Let o := on+1 = 〈c, e〉 and o+ = 〈c, e+〉. By assumption, o isapplicable in t, and thus t |= c. By the domination lemma, weget t+ |= c and hence o+ is applicable in t+. Therefore, π+ isapplicable in s.

Because o is in positive normal form, all effect conditionssatisfied by t are also satisfied by t+ (by the dominationlemma). Therefore, ([e]t ∩A) ⊆ [e+]t+ (where A is the set ofstate variables, or positive literals).

We get on(appπ(s)) ⊆ on(t) ∪ ([e]t ∩A) ⊆ on(t+) ∪ [e+]t+ =on(appπ+(s)), and thus appπ+(s) dominates appπ(s).

Page 60: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Relaxation: properties

Theorem (solution preservation)

Let π be a plan for a succinct deterministic transition system Tin positive normal form.Then π+ is a plan for T +.

Proof.

Let T = 〈A, I,O,G〉 and thus T + = 〈A, I,O+, G〉.Since π is applicable in I, π+ is also applicable in I (by theprevious lemma).

Also by the previous lemma, the resulting state s+ := appπ+(I)dominates the state s := appπ(I). Because s |= G and G isnegation-free, we get s+ |= G by the domination lemma.

Thus π+ is indeed a plan for T +.

Page 61: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Relaxation: properties

Theorem (solution preservation)

Let π be a plan for a succinct deterministic transition system Tin positive normal form.Then π+ is a plan for T +.

Proof.

Let T = 〈A, I,O,G〉 and thus T + = 〈A, I,O+, G〉.Since π is applicable in I, π+ is also applicable in I (by theprevious lemma).

Also by the previous lemma, the resulting state s+ := appπ+(I)dominates the state s := appπ(I). Because s |= G and G isnegation-free, we get s+ |= G by the domination lemma.

Thus π+ is indeed a plan for T +.

Page 62: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Relaxation: properties

Theorem (solution preservation)

Let π be a plan for a succinct deterministic transition system Tin positive normal form.Then π+ is a plan for T +.

Proof.

Let T = 〈A, I,O,G〉 and thus T + = 〈A, I,O+, G〉.Since π is applicable in I, π+ is also applicable in I (by theprevious lemma).

Also by the previous lemma, the resulting state s+ := appπ+(I)dominates the state s := appπ(I). Because s |= G and G isnegation-free, we get s+ |= G by the domination lemma.

Thus π+ is indeed a plan for T +.

Page 63: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Relaxation: properties

Theorem (solution preservation)

Let π be a plan for a succinct deterministic transition system Tin positive normal form.Then π+ is a plan for T +.

Proof.

Let T = 〈A, I,O,G〉 and thus T + = 〈A, I,O+, G〉.Since π is applicable in I, π+ is also applicable in I (by theprevious lemma).

Also by the previous lemma, the resulting state s+ := appπ+(I)dominates the state s := appπ(I). Because s |= G and G isnegation-free, we get s+ |= G by the domination lemma.

Thus π+ is indeed a plan for T +.

Page 64: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Relaxation: properties

Consequences of the solution preservation theorem:

Relaxations are never harder to solve than the originalproblem.

Optimal solutions to relaxations are never longer thanoptimal solutions to the original problem.

In fact, relaxations are much easier to solve than the originalproblems, which makes them suitable as the basis for heuristicfunctions.

We will now consider the problem of solving relaxations.

Page 65: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Solving relaxations: properties

Lemma (dominating states are better)

Let s be a state, let s′ be a state that dominates s, and let π+

be a relaxed operator sequence which is applicable in s.Then π+ is applicable in s′ and appπ+(s′) dominates appπ+(s).

Proof.

Induction on the length of π+.

Base case: π+ = εThe empty plan ε is applicable in s′.Moreover, appπ+(s′) = appε(s′) = s′ andappπ+(s) = appε(s) = s, and s′ dominates s.

Page 66: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Solving relaxations: properties

Lemma (dominating states are better)

Let s be a state, let s′ be a state that dominates s, and let π+

be a relaxed operator sequence which is applicable in s.Then π+ is applicable in s′ and appπ+(s′) dominates appπ+(s).

Proof.

Induction on the length of π+.

Base case: π+ = εThe empty plan ε is applicable in s′.Moreover, appπ+(s′) = appε(s′) = s′ andappπ+(s) = appε(s) = s, and s′ dominates s.

Page 67: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Solving relaxations: properties

Lemma (dominating states are better)

Let s be a state, let s′ be a state that dominates s, and let π+

be a relaxed operator sequence which is applicable in s.Then π+ is applicable in s′ and appπ+(s′) dominates appπ+(s).

Proof.

Induction on the length of π+.

Base case: π+ = εThe empty plan ε is applicable in s′.Moreover, appπ+(s′) = appε(s′) = s′ andappπ+(s) = appε(s) = s, and s′ dominates s.

Page 68: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Solving relaxations: properties

Proof continues.

Inductive case: π+ = o1+ . . . on+1

+

By the induction hypothesis, o1+ . . . on

+ is applicable in s′, andt′ = appo1

+...on+(s′) dominates t = appo1

+...on+(s).

Let o+ := on+1+ = 〈c, e〉. By assumption, o+ is applicable in t,

and thus t |= c. By the domination lemma, we get t′ |= c andhence o+ is applicable in t′. Therefore, π+ is applicable in s′.

Because o+ is in positive normal form, all effect conditionswhich are satisfied in t are also satisfied in t′ (by thedomination lemma). Therefore, [e]t ⊆ [e]t′ .Because all atomic effects in o+ are positive, [e]t and [e]t′ aresets of positive literals. We thus geton(appπ+(s)) = on(t) ∪ [e]t ⊆ on(t′) ∪ [e]t′ = on(appπ+(s′)),and thus appπ+(s′) dominates appπ+(s).

Page 69: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Solving relaxations: properties

Proof continues.

Inductive case: π+ = o1+ . . . on+1

+

By the induction hypothesis, o1+ . . . on

+ is applicable in s′, andt′ = appo1

+...on+(s′) dominates t = appo1

+...on+(s).

Let o+ := on+1+ = 〈c, e〉. By assumption, o+ is applicable in t,

and thus t |= c. By the domination lemma, we get t′ |= c andhence o+ is applicable in t′. Therefore, π+ is applicable in s′.

Because o+ is in positive normal form, all effect conditionswhich are satisfied in t are also satisfied in t′ (by thedomination lemma). Therefore, [e]t ⊆ [e]t′ .Because all atomic effects in o+ are positive, [e]t and [e]t′ aresets of positive literals. We thus geton(appπ+(s)) = on(t) ∪ [e]t ⊆ on(t′) ∪ [e]t′ = on(appπ+(s′)),and thus appπ+(s′) dominates appπ+(s).

Page 70: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Solving relaxations: properties

Proof continues.

Inductive case: π+ = o1+ . . . on+1

+

By the induction hypothesis, o1+ . . . on

+ is applicable in s′, andt′ = appo1

+...on+(s′) dominates t = appo1

+...on+(s).

Let o+ := on+1+ = 〈c, e〉. By assumption, o+ is applicable in t,

and thus t |= c. By the domination lemma, we get t′ |= c andhence o+ is applicable in t′. Therefore, π+ is applicable in s′.

Because o+ is in positive normal form, all effect conditionswhich are satisfied in t are also satisfied in t′ (by thedomination lemma). Therefore, [e]t ⊆ [e]t′ .Because all atomic effects in o+ are positive, [e]t and [e]t′ aresets of positive literals. We thus geton(appπ+(s)) = on(t) ∪ [e]t ⊆ on(t′) ∪ [e]t′ = on(appπ+(s′)),and thus appπ+(s′) dominates appπ+(s).

Page 71: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Solving relaxations: properties

Proof continues.

Inductive case: π+ = o1+ . . . on+1

+

By the induction hypothesis, o1+ . . . on

+ is applicable in s′, andt′ = appo1

+...on+(s′) dominates t = appo1

+...on+(s).

Let o+ := on+1+ = 〈c, e〉. By assumption, o+ is applicable in t,

and thus t |= c. By the domination lemma, we get t′ |= c andhence o+ is applicable in t′. Therefore, π+ is applicable in s′.

Because o+ is in positive normal form, all effect conditionswhich are satisfied in t are also satisfied in t′ (by thedomination lemma). Therefore, [e]t ⊆ [e]t′ .Because all atomic effects in o+ are positive, [e]t and [e]t′ aresets of positive literals. We thus geton(appπ+(s)) = on(t) ∪ [e]t ⊆ on(t′) ∪ [e]t′ = on(appπ+(s′)),and thus appπ+(s′) dominates appπ+(s).

Page 72: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Solving relaxations: properties

Consequences of the lemma:

If we can find a solution starting from a state s, the samesolution can be used when starting from a dominatingstate s′.

Thus, making a transition to a dominating state neverhurts.

Lemma (monotonicity)

Let o+ be a relaxed operator and let s be a state in which o+ isapplicable.Then appo+(s) dominates s.

Proof.

Since relaxed operators only have positive effects, we haveon(s) ⊆ on(s) ∪ [e]o+ = on(appo+(s)).

Page 73: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Solving relaxations: properties

Consequences of the lemma:

If we can find a solution starting from a state s, the samesolution can be used when starting from a dominatingstate s′.

Thus, making a transition to a dominating state neverhurts.

Lemma (monotonicity)

Let o+ be a relaxed operator and let s be a state in which o+ isapplicable.Then appo+(s) dominates s.

Proof.

Since relaxed operators only have positive effects, we haveon(s) ⊆ on(s) ∪ [e]o+ = on(appo+(s)).

Page 74: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Solving relaxations: properties

Consequences of the lemma:

If we can find a solution starting from a state s, the samesolution can be used when starting from a dominatingstate s′.

Thus, making a transition to a dominating state neverhurts.

Lemma (monotonicity)

Let o+ be a relaxed operator and let s be a state in which o+ isapplicable.Then appo+(s) dominates s.

Proof.

Since relaxed operators only have positive effects, we haveon(s) ⊆ on(s) ∪ [e]o+ = on(appo+(s)).

Page 75: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Solving relaxations: algorithm

Together, the two lemmas imply that making a transitionnever hurts.

This suggests the following algorithm.

Greedy planning algorithm for 〈A, I,O+, G〉s := Iπ+ := εloop:

if s |= G:return π+

else if there is an operator o+ ∈ O+ with appo+(s) 6= s:Append such an operator o+ to π+.s := appo+(s)

else:return unsolvable

Page 76: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Solving relaxations: algorithm

Together, the two lemmas imply that making a transitionnever hurts.

This suggests the following algorithm.

Greedy planning algorithm for 〈A, I,O+, G〉s := Iπ+ := εloop:

if s |= G:return π+

else if there is an operator o+ ∈ O+ with appo+(s) 6= s:Append such an operator o+ to π+.s := appo+(s)

else:return unsolvable

Page 77: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Solving relaxations: algorithm

The algorithm is sound:

If it returns a plan, this is indeed a correct solution.

If it returns “unsolvable”, the task is indeed unsolvable (bythe two lemmas).

What about completeness (termination) and runtime?

Each iteration of the loop adds at least one atom to on(s).This guarantees termination after at most |A| iterations.

Thus, the algorithm can clearly run in polynomial time.

Page 78: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Solving relaxations: algorithm

The algorithm is sound:

If it returns a plan, this is indeed a correct solution.

If it returns “unsolvable”, the task is indeed unsolvable (bythe two lemmas).

What about completeness (termination) and runtime?

Each iteration of the loop adds at least one atom to on(s).This guarantees termination after at most |A| iterations.

Thus, the algorithm can clearly run in polynomial time.

Page 79: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Solving relaxations: optimality

One could use the solution algorithm as a heuristic estimator ina progression search for general planning tasks as follows:

In a search node that corresponds to state s, solve therelaxation of the planning task with s as the initial state.

Use the length of the relaxed plan as a heuristic estimate.

Is this an admissible heuristic?

Yes if the relaxed plans are optimal (because of thesolution preservation theorem).

However, usually they are not, because our greedyplanning algorithm is very poor.

Page 80: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Solving relaxations: optimality

One could use the solution algorithm as a heuristic estimator ina progression search for general planning tasks as follows:

In a search node that corresponds to state s, solve therelaxation of the planning task with s as the initial state.

Use the length of the relaxed plan as a heuristic estimate.

Is this an admissible heuristic?

Yes if the relaxed plans are optimal (because of thesolution preservation theorem).

However, usually they are not, because our greedyplanning algorithm is very poor.

Page 81: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Solving relaxations: optimality

One could use the solution algorithm as a heuristic estimator ina progression search for general planning tasks as follows:

In a search node that corresponds to state s, solve therelaxation of the planning task with s as the initial state.

Use the length of the relaxed plan as a heuristic estimate.

Is this an admissible heuristic?

Yes if the relaxed plans are optimal (because of thesolution preservation theorem).

However, usually they are not, because our greedyplanning algorithm is very poor.

Page 82: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Solving relaxations: optimality

So how do we use relaxations for heuristic planning?

Different possibilities:

Implement an optimal planner for relaxed planning tasksand use its solution lengths as an estimate (h+ heuristic).However, optimal planning for relaxed tasks is NP-hard.

Do not actually solve the relaxed planning task, butcompute an estimate of its difficulty in a different way(hmax heuristic, hadd heuristic).

Compute a solution for relaxed planning tasks which is notnecessarily optimal, but “reasonable” (hFF heuristic).

Page 83: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Solving relaxations: optimality

So how do we use relaxations for heuristic planning?

Different possibilities:

Implement an optimal planner for relaxed planning tasksand use its solution lengths as an estimate (h+ heuristic).However, optimal planning for relaxed tasks is NP-hard.

Do not actually solve the relaxed planning task, butcompute an estimate of its difficulty in a different way(hmax heuristic, hadd heuristic).

Compute a solution for relaxed planning tasks which is notnecessarily optimal, but “reasonable” (hFF heuristic).

Page 84: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Solving relaxations: optimality

So how do we use relaxations for heuristic planning?

Different possibilities:

Implement an optimal planner for relaxed planning tasksand use its solution lengths as an estimate (h+ heuristic).However, optimal planning for relaxed tasks is NP-hard.

Do not actually solve the relaxed planning task, butcompute an estimate of its difficulty in a different way(hmax heuristic, hadd heuristic).

Compute a solution for relaxed planning tasks which is notnecessarily optimal, but “reasonable” (hFF heuristic).

Page 85: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

Positive normalform

Relaxation

Solvingrelaxations

DerivingHeuristicEstimatesfromRelaxations

Solving relaxations: optimality

So how do we use relaxations for heuristic planning?

Different possibilities:

Implement an optimal planner for relaxed planning tasksand use its solution lengths as an estimate (h+ heuristic).However, optimal planning for relaxed tasks is NP-hard.

Do not actually solve the relaxed planning task, butcompute an estimate of its difficulty in a different way(hmax heuristic, hadd heuristic).

Compute a solution for relaxed planning tasks which is notnecessarily optimal, but “reasonable” (hFF heuristic).

Page 86: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Intutition

Why does the greedy algorithm compute low-quality plans?

It may apply many operators which are not goal-directed.

How can this problem be fixed?

Reaching the goal of a relaxed planning task is most easilyachieved with forward search.

Analyzing relevance of an operator for achieving a goal (orsubgoal) is most easily achieved with backward search.

Idea: Use a forward-backward algorithm that first finds a pathto the goal greedily, then prunes it to a relevant subplan.

Page 87: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Intutition

Why does the greedy algorithm compute low-quality plans?

It may apply many operators which are not goal-directed.

How can this problem be fixed?

Reaching the goal of a relaxed planning task is most easilyachieved with forward search.

Analyzing relevance of an operator for achieving a goal (orsubgoal) is most easily achieved with backward search.

Idea: Use a forward-backward algorithm that first finds a pathto the goal greedily, then prunes it to a relevant subplan.

Page 88: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Intutition

Why does the greedy algorithm compute low-quality plans?

It may apply many operators which are not goal-directed.

How can this problem be fixed?

Reaching the goal of a relaxed planning task is most easilyachieved with forward search.

Analyzing relevance of an operator for achieving a goal (orsubgoal) is most easily achieved with backward search.

Idea: Use a forward-backward algorithm that first finds a pathto the goal greedily, then prunes it to a relevant subplan.

Page 89: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Parallel plans

How do we decide which operators to apply in the forwarddirection?

We avoid such a decision by applying all applicableoperators simultaneously.

Definition

A plan step is a set of operators σ = {o1, . . . , on}.

A plan step σ = {o1, . . . , on} with oi = 〈ci, ei〉 of a relaxedplanning task is applicable in a state s iff each operator oi ∈ σis applicable in s.

The result of applying σ to s, in symbols appσ(s), is defined asthe state s′ with on(s′) = on(s) ∪

⋃ni=1[ei]s.

Page 90: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Parallel plans

How do we decide which operators to apply in the forwarddirection?

We avoid such a decision by applying all applicableoperators simultaneously.

Definition

A plan step is a set of operators σ = {o1, . . . , on}.

A plan step σ = {o1, . . . , on} with oi = 〈ci, ei〉 of a relaxedplanning task is applicable in a state s iff each operator oi ∈ σis applicable in s.

The result of applying σ to s, in symbols appσ(s), is defined asthe state s′ with on(s′) = on(s) ∪

⋃ni=1[ei]s.

Page 91: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Applying plan steps: Examples

In all cases, s = {a 7→ 0, b 7→ 0, c 7→ 1, d 7→ 0}.σ = {〈c, a〉, 〈>, b〉}σ = {〈c, a〉, 〈c, a B b〉}σ = {〈c, a ∧ b〉, 〈a, b B d〉}σ = {〈c, a ∧ (b B d)〉, 〈c, b ∧ (a B d)〉}

Page 92: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Applying plan steps: Examples

In all cases, s = {a 7→ 0, b 7→ 0, c 7→ 1, d 7→ 0}.σ = {〈c, a〉, 〈>, b〉}σ = {〈c, a〉, 〈c, a B b〉}σ = {〈c, a ∧ b〉, 〈a, b B d〉}σ = {〈c, a ∧ (b B d)〉, 〈c, b ∧ (a B d)〉}

Page 93: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Applying plan steps: Examples

In all cases, s = {a 7→ 0, b 7→ 0, c 7→ 1, d 7→ 0}.σ = {〈c, a〉, 〈>, b〉}σ = {〈c, a〉, 〈c, a B b〉}σ = {〈c, a ∧ b〉, 〈a, b B d〉}σ = {〈c, a ∧ (b B d)〉, 〈c, b ∧ (a B d)〉}

Page 94: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Applying plan steps: Examples

In all cases, s = {a 7→ 0, b 7→ 0, c 7→ 1, d 7→ 0}.σ = {〈c, a〉, 〈>, b〉}σ = {〈c, a〉, 〈c, a B b〉}σ = {〈c, a ∧ b〉, 〈a, b B d〉}σ = {〈c, a ∧ (b B d)〉, 〈c, b ∧ (a B d)〉}

Page 95: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Serializations

Applying a plan step to a state is related to applying theactions in the step to a state in sequence.

Definition

A serialization of plan step σ = {o1, . . . , on} is a sequenceoπ(1), . . . , oπ(n) where π is a permutation of {1, . . . , n}.

Lemma

If σ is a plan step applicable in a state s of a relaxed planningtask, then each serialization o′1, . . . , o

′n of σ is applicable in s

and appo′1,...,o′n(s) dominates appσ(s).

Does equality hold for all serializations?

Does equality hold for some serialization?

What if there are no conditional effects?

What if the planning task is not relaxed?

Page 96: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Serializations

Applying a plan step to a state is related to applying theactions in the step to a state in sequence.

Definition

A serialization of plan step σ = {o1, . . . , on} is a sequenceoπ(1), . . . , oπ(n) where π is a permutation of {1, . . . , n}.

Lemma

If σ is a plan step applicable in a state s of a relaxed planningtask, then each serialization o′1, . . . , o

′n of σ is applicable in s

and appo′1,...,o′n(s) dominates appσ(s).

Does equality hold for all serializations?

Does equality hold for some serialization?

What if there are no conditional effects?

What if the planning task is not relaxed?

Page 97: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Serializations

Applying a plan step to a state is related to applying theactions in the step to a state in sequence.

Definition

A serialization of plan step σ = {o1, . . . , on} is a sequenceoπ(1), . . . , oπ(n) where π is a permutation of {1, . . . , n}.

Lemma

If σ is a plan step applicable in a state s of a relaxed planningtask, then each serialization o′1, . . . , o

′n of σ is applicable in s

and appo′1,...,o′n(s) dominates appσ(s).

Does equality hold for all serializations?

Does equality hold for some serialization?

What if there are no conditional effects?

What if the planning task is not relaxed?

Page 98: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Serializations

Applying a plan step to a state is related to applying theactions in the step to a state in sequence.

Definition

A serialization of plan step σ = {o1, . . . , on} is a sequenceoπ(1), . . . , oπ(n) where π is a permutation of {1, . . . , n}.

Lemma

If σ is a plan step applicable in a state s of a relaxed planningtask, then each serialization o′1, . . . , o

′n of σ is applicable in s

and appo′1,...,o′n(s) dominates appσ(s).

Does equality hold for all serializations?

Does equality hold for some serialization?

What if there are no conditional effects?

What if the planning task is not relaxed?

Page 99: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Serializations

Applying a plan step to a state is related to applying theactions in the step to a state in sequence.

Definition

A serialization of plan step σ = {o1, . . . , on} is a sequenceoπ(1), . . . , oπ(n) where π is a permutation of {1, . . . , n}.

Lemma

If σ is a plan step applicable in a state s of a relaxed planningtask, then each serialization o′1, . . . , o

′n of σ is applicable in s

and appo′1,...,o′n(s) dominates appσ(s).

Does equality hold for all serializations?

Does equality hold for some serialization?

What if there are no conditional effects?

What if the planning task is not relaxed?

Page 100: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Serializations

Applying a plan step to a state is related to applying theactions in the step to a state in sequence.

Definition

A serialization of plan step σ = {o1, . . . , on} is a sequenceoπ(1), . . . , oπ(n) where π is a permutation of {1, . . . , n}.

Lemma

If σ is a plan step applicable in a state s of a relaxed planningtask, then each serialization o′1, . . . , o

′n of σ is applicable in s

and appo′1,...,o′n(s) dominates appσ(s).

Does equality hold for all serializations?

Does equality hold for some serialization?

What if there are no conditional effects?

What if the planning task is not relaxed?

Page 101: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Parallel plans

Definition

A parallel plan for a relaxed planning task 〈A, I,O+, G〉 is asequence of plan steps σ1, . . . , σn of operators in O+ with:

s0 := I

For i = 1, . . . , n, step σi is applicable in si−1

and si := appσi(si−1).sn |= G

Remark: By ordering the operators within each single steparbitrarily, we obtain a (regular, non-parallel) plan.

Page 102: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Parallel plans

Definition

A parallel plan for a relaxed planning task 〈A, I,O+, G〉 is asequence of plan steps σ1, . . . , σn of operators in O+ with:

s0 := I

For i = 1, . . . , n, step σi is applicable in si−1

and si := appσi(si−1).sn |= G

Remark: By ordering the operators within each single steparbitrarily, we obtain a (regular, non-parallel) plan.

Page 103: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Forward states and operator sets

Idea: In the forward phase of the heuristic computation, wefirst apply the plan step consisting of all initially applicableoperators, then the plan step consisting of all operatorsapplicable in the resulting state, etc.

Definition

The 0-th parallel forward state, in symbols sF0 , of a relaxedplanning task 〈A, I,O+, G〉 is defined as sF0 := s.For n ∈ N1, the n-th forward plan step, in symbols σF

n, is theset of operators applicable in sFn−1, and the n-th parallelforward state, in symbols sFn, is defined as sFn := appσF

n(sFn−1).

For n ∈ N0, the n-th parallel forward set, in symbols SFn, is

defined as SFn := on(sFn).

Page 104: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Forward states and operator sets

Idea: In the forward phase of the heuristic computation, wefirst apply the plan step consisting of all initially applicableoperators, then the plan step consisting of all operatorsapplicable in the resulting state, etc.

Definition

The 0-th parallel forward state, in symbols sF0 , of a relaxedplanning task 〈A, I,O+, G〉 is defined as sF0 := s.For n ∈ N1, the n-th forward plan step, in symbols σF

n, is theset of operators applicable in sFn−1, and the n-th parallelforward state, in symbols sFn, is defined as sFn := appσF

n(sFn−1).

For n ∈ N0, the n-th parallel forward set, in symbols SFn, is

defined as SFn := on(sFn).

Page 105: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Parallel forward distances

Definition

The parallel forward distance of a relaxed planning task〈A, I,O+, G〉 is the lowest number n ∈ N0 such that sFn |= G,or ∞ if no parallel forward state satisfies G.

Remark: The parallel forward distance can be computed inpolynomial time. (How?)

Definition

The hmax estimate of a state s in a planning taskP = 〈A, I,O,G〉 in positive normal form is the parallel forwarddistance of the relaxed planning task 〈A, s,O+, G〉.

Remark: The hmax estimate is admissible. (Why?)

Page 106: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Parallel forward distances

Definition

The parallel forward distance of a relaxed planning task〈A, I,O+, G〉 is the lowest number n ∈ N0 such that sFn |= G,or ∞ if no parallel forward state satisfies G.

Remark: The parallel forward distance can be computed inpolynomial time. (How?)

Definition

The hmax estimate of a state s in a planning taskP = 〈A, I,O,G〉 in positive normal form is the parallel forwarddistance of the relaxed planning task 〈A, s,O+, G〉.

Remark: The hmax estimate is admissible. (Why?)

Page 107: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Parallel forward distances

Definition

The parallel forward distance of a relaxed planning task〈A, I,O+, G〉 is the lowest number n ∈ N0 such that sFn |= G,or ∞ if no parallel forward state satisfies G.

Remark: The parallel forward distance can be computed inpolynomial time. (How?)

Definition

The hmax estimate of a state s in a planning taskP = 〈A, I,O,G〉 in positive normal form is the parallel forwarddistance of the relaxed planning task 〈A, s,O+, G〉.

Remark: The hmax estimate is admissible. (Why?)

Page 108: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Parallel forward distances

Definition

The parallel forward distance of a relaxed planning task〈A, I,O+, G〉 is the lowest number n ∈ N0 such that sFn |= G,or ∞ if no parallel forward state satisfies G.

Remark: The parallel forward distance can be computed inpolynomial time. (How?)

Definition

The hmax estimate of a state s in a planning taskP = 〈A, I,O,G〉 in positive normal form is the parallel forwarddistance of the relaxed planning task 〈A, s,O+, G〉.

Remark: The hmax estimate is admissible. (Why?)

Page 109: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

So far, so good. . .

We have seen how systematic computation of forwardstates leads to an admissible estimate for heuristicplanning.

However, this estimate is very coarse.

To improve it, we need to include backward propagation ofinformation.

For this purpose, we use a data structure called a relaxedplanning graph.

Page 110: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Relaxed planning graphs: running example

As a running example, consider the relaxed planning task〈A, I, {o1, o2, o3, o4}, G〉 with

A = {a, b, c, d, e, f, g, h}I = {a 7→ 1, b 7→ 0, c 7→ 1, d 7→ 1,

e 7→ 0, f 7→ 0, g 7→ 0, h 7→ 0}o1 = 〈b ∨ (c ∧ d), b ∧ ((a ∧ b) B e)〉o2 = 〈>, f〉o3 = 〈f, g〉o4 = 〈f, h〉G = e ∧ (g ∧ h)

Page 111: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Relaxed planning graphs

Relaxed planning graphs encode

which propositions can be made true in a given number ofplan steps,

and how they can be made true.

They consist of four kinds of components:

Proposition nodes represent the truth value of propositionsafter applying a certain number of plan steps.

Idle arcs represent state variables that do not change theirvalue when applying a plan step.

Action subgraphs represent the application of a givenaction in a given plan step.

Goal subgraphs represent the truth value of the goalcondition after applying a certain number of plan steps.

Page 112: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Relaxed planning graph: proposition layers

Let P = 〈A, I,O+, G〉 be a relaxed planning task, let N ∈ N0.

For each i ∈ {0, . . . , N}, the relaxed planning graph of depthN contains one proposition layer which consists of:

a proposition node ai for each state variable a ∈ A.

Page 113: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Relaxed planning graph: proposition layers

a0

b0

c0

d0

e0

f0

g0

h0

a1

b1

c1

d1

e1

f1

g1

h1

a2

b2

c2

d2

e2

f2

g2

h2

a3

b3

c3

d3

e3

f3

g3

h3

a4

b4

c4

d4

e4

f4

g4

h4

a5

b5

c5

d5

e5

f5

g5

h5

a6

b6

c6

d6

e6

f6

g6

h6

a7

b7

c7

d7

e7

f7

g7

h7

a8

b8

c8

d8

e8

f8

g8

h8

Page 114: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Relaxed planning graph: proposition layers

a0

b0

c0

d0

e0

f0

g0

h0

a1

b1

c1

d1

e1

f1

g1

h1

a2

b2

c2

d2

e2

f2

g2

h2

a3

b3

c3

d3

e3

f3

g3

h3

a4

b4

c4

d4

e4

f4

g4

h4

a5

b5

c5

d5

e5

f5

g5

h5

a6

b6

c6

d6

e6

f6

g6

h6

a7

b7

c7

d7

e7

f7

g7

h7

a8

b8

c8

d8

e8

f8

g8

h8

Page 115: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Relaxed planning graph: proposition layers

a0

b0

c0

d0

e0

f0

g0

h0

a1

b1

c1

d1

e1

f1

g1

h1

a2

b2

c2

d2

e2

f2

g2

h2

a3

b3

c3

d3

e3

f3

g3

h3

a4

b4

c4

d4

e4

f4

g4

h4

a5

b5

c5

d5

e5

f5

g5

h5

a6

b6

c6

d6

e6

f6

g6

h6

a7

b7

c7

d7

e7

f7

g7

h7

a8

b8

c8

d8

e8

f8

g8

h8

Page 116: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Relaxed planning graph: idle arcs

For each proposition node ai with i ∈ {1, . . . , N}, the relaxedplanning graph of depth N contains an arc from ai to ai−1

(idle arcs).

Intuition: If a state variable is true in step i, one of the possiblereasons is that it was already previously true.

Page 117: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Relaxed planning graph: idle arcs

a0

b0

c0

d0

e0

f0

g0

h0

a1

b1

c1

d1

e1

f1

g1

h1

a2

b2

c2

d2

e2

f2

g2

h2

a3

b3

c3

d3

e3

f3

g3

h3

a4

b4

c4

d4

e4

f4

g4

h4

a5

b5

c5

d5

e5

f5

g5

h5

a6

b6

c6

d6

e6

f6

g6

h6

a7

b7

c7

d7

e7

f7

g7

h7

a8

b8

c8

d8

e8

f8

g8

h8

Page 118: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Relaxed planning graph: idle arcs

a0

b0

c0

d0

e0

f0

g0

h0

a1

b1

c1

d1

e1

f1

g1

h1

a2

b2

c2

d2

e2

f2

g2

h2

a3

b3

c3

d3

e3

f3

g3

h3

a4

b4

c4

d4

e4

f4

g4

h4

a5

b5

c5

d5

e5

f5

g5

h5

a6

b6

c6

d6

e6

f6

g6

h6

a7

b7

c7

d7

e7

f7

g7

h7

a8

b8

c8

d8

e8

f8

g8

h8

Page 119: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Relaxed planning graph: action subgraphs

For each i ∈ {1, . . . , N} and each operator o = 〈c, e〉 ∈ O, therelaxed planning graph of depth N contains a subgraph calledan action subgraph with the following parts:

one formula node niχ for each formula χ which is a

subformula of c or of some effect condition in e:

If χ = a for some atom a, niχ is the proposition node ai−1.

If χ = >, niχ is a new node labeled (>).If χ = ⊥, niχ is a new node labeled (⊥).If χ = (φ ∧ ψ), niχ is a new node labeled (∧)with outgoing arcs to niφ and niψ.

If χ = (φ ∨ ψ), niχ is a new node labeled (∨)with outgoing arcs to niφ and niψ.

Page 120: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Relaxed planning graph: action subgraphs

For each i ∈ {1, . . . , N} and each operator o = 〈c, e〉 ∈ O, therelaxed planning graph of depth N contains a subgraph calledan action subgraph with the following parts:

an action node oi with an outgoing arc to the preconditionformula node ni

c

for each add effect a in e which does not occur within aconditional effect, an arc from proposition node ai+1 toaction node oi.

for each conditional effect (c′ B a) in e, a node nic′Ba

labeled (B) with an incoming arc from proposition nodeai+1 and outgoing arcs to action node oi and formulanode ni

c′ .

Page 121: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Relaxed planning graph: action subgraphs

Action subgraph for o1 = 〈b ∨ (c ∧ d), b ∧ ((a ∧ b) B e)〉for layer i = 0.

a0

b0

c0

d0

b1

e1

o1

B

Page 122: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Relaxed planning graph: goal subgraphs

For each i ∈ {0, . . . , N}, the relaxed planning graph of depthN contains a subgraph called a goal subgraph with thefollowing parts:

one formula node niχ for each formula χ which is a

subformula of G:

If χ = a for some atom a, niχ is the proposition node ai.

If χ = >, niχ is a new node labeled (>).If χ = ⊥, niχ is a new node labeled (⊥).If χ = (φ ∧ ψ), niχ is a new node labeled (∧)with outgoing arcs to niφ and niψ.

If χ = (φ ∨ ψ), niχ is a new node labeled (∨)with outgoing arcs to niφ and niψ.

The node niG is called a goal node.

Page 123: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Relaxed planning graph: goal subgraphs

Goal subgraph for G = e ∧ (g ∧ h)and layer i = 2:

e2

g2

h2

Page 124: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Relaxed planning graph: complete example(depth 2)

a0

b0

c0

d0

e0

f0

g0

h0

a1

b1

c1

d1

e1

f1

g1

h1

a2

b2

c2

d2

e2

f2

g2

h2

o1

B

o1

B

> o2 > o2

o3 o3

o4 o4∧

Page 125: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Relaxed planning graph: complete example(depth 2)

a0

b0

c0

d0

e0

f0

g0

h0

a1

b1

c1

d1

e1

f1

g1

h1

a2

b2

c2

d2

e2

f2

g2

h2

o1

B

o1

B

> o2 > o2

o3 o3

o4 o4∧

Page 126: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Relaxed planning graph: complete example(depth 2)

o1 = 〈b ∨ (c ∧ d), b ∧ ((a ∧ b) B e)〉a0

b0

c0

d0

e0

f0

g0

h0

a1

b1

c1

d1

e1

f1

g1

h1

a2

b2

c2

d2

e2

f2

g2

h2

o1

B

o1

B

> o2 > o2

o3 o3

o4 o4∧

Page 127: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Relaxed planning graph: complete example(depth 2)

o1 = 〈b ∨ (c ∧ d), b ∧ ((a ∧ b) B e)〉a0

b0

c0

d0

e0

f0

g0

h0

a1

b1

c1

d1

e1

f1

g1

h1

a2

b2

c2

d2

e2

f2

g2

h2

o1

B

o1

B

> o2 > o2

o3 o3

o4 o4∧

Page 128: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Relaxed planning graph: complete example(depth 2)

o2 = 〈>, f〉a0

b0

c0

d0

e0

f0

g0

h0

a1

b1

c1

d1

e1

f1

g1

h1

a2

b2

c2

d2

e2

f2

g2

h2

o1

B

o1

B

> o2 > o2

o3 o3

o4 o4∧

Page 129: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Relaxed planning graph: complete example(depth 2)

o2 = 〈>, f〉a0

b0

c0

d0

e0

f0

g0

h0

a1

b1

c1

d1

e1

f1

g1

h1

a2

b2

c2

d2

e2

f2

g2

h2

o1

B

o1

B

> o2 > o2

o3 o3

o4 o4∧

Page 130: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Relaxed planning graph: complete example(depth 2)

o3 = 〈f, g〉a0

b0

c0

d0

e0

f0

g0

h0

a1

b1

c1

d1

e1

f1

g1

h1

a2

b2

c2

d2

e2

f2

g2

h2

o1

B

o1

B

> o2 > o2

o3 o3

o4 o4∧

Page 131: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Relaxed planning graph: complete example(depth 2)

o3 = 〈f, g〉a0

b0

c0

d0

e0

f0

g0

h0

a1

b1

c1

d1

e1

f1

g1

h1

a2

b2

c2

d2

e2

f2

g2

h2

o1

B

o1

B

> o2 > o2

o3 o3

o4 o4∧

Page 132: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Relaxed planning graph: complete example(depth 2)

o4 = 〈f, h〉a0

b0

c0

d0

e0

f0

g0

h0

a1

b1

c1

d1

e1

f1

g1

h1

a2

b2

c2

d2

e2

f2

g2

h2

o1

B

o1

B

> o2 > o2

o3 o3

o4 o4∧

Page 133: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Relaxed planning graph: complete example(depth 2)

o4 = 〈f, h〉a0

b0

c0

d0

e0

f0

g0

h0

a1

b1

c1

d1

e1

f1

g1

h1

a2

b2

c2

d2

e2

f2

g2

h2

o1

B

o1

B

> o2 > o2

o3 o3

o4 o4∧

Page 134: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Relaxed planning graph: complete example(depth 2)

G = e ∧ (g ∧ h)a0

b0

c0

d0

e0

f0

g0

h0

a1

b1

c1

d1

e1

f1

g1

h1

a2

b2

c2

d2

e2

f2

g2

h2

o1

B

o1

B

> o2 > o2

o3 o3

o4 o4∧

Page 135: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Relaxed planning graph: complete example(depth 2)

G = e ∧ (g ∧ h)a0

b0

c0

d0

e0

f0

g0

h0

a1

b1

c1

d1

e1

f1

g1

h1

a2

b2

c2

d2

e2

f2

g2

h2

o1

B

o1

B

> o2 > o2

o3 o3

o4 o4∧

Page 136: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Relaxed planning graph: complete example(depth 2)

G = e ∧ (g ∧ h)a0

b0

c0

d0

e0

f0

g0

h0

a1

b1

c1

d1

e1

f1

g1

h1

a2

b2

c2

d2

e2

f2

g2

h2

o1

B

o1

B

> o2 > o2

o3 o3

o4 o4∧

Page 137: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Relaxed planning graph: complete example(depth 2)

a0

b0

c0

d0

e0

f0

g0

h0

a1

b1

c1

d1

e1

f1

g1

h1

a2

b2

c2

d2

e2

f2

g2

h2

o1

B

o1

B

> o2 > o2

o3 o3

o4 o4∧

Page 138: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Boolean circuits

Definition

A Boolean circuit is a directed acyclic graph G = (V,E), wherethe nodes V are called gates. Each gate v ∈ V has a typetype(v) ∈ {¬,∧,∨,>,⊥, } ∪ {a, b, c, . . .}. The gates withtype(v) ∈ {>,⊥, a, b, c, . . .} have in-degree zero, the gateswith type(v) ∈ {¬} have in-degree one, and the gates withtype(v) ∈ {∨,∧} have in-degree two. The gates with nooutgoing edge are called output gates. The gates with noincoming edges are called input gates.

Definition

Given a value assignment to the input gates, the circuitcomputes the value of gates in the obvious way.

What is the relation between circuits and relaxed planninggraphs?

Page 139: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Boolean circuits

Definition

A Boolean circuit is a directed acyclic graph G = (V,E), wherethe nodes V are called gates. Each gate v ∈ V has a typetype(v) ∈ {¬,∧,∨,>,⊥, } ∪ {a, b, c, . . .}. The gates withtype(v) ∈ {>,⊥, a, b, c, . . .} have in-degree zero, the gateswith type(v) ∈ {¬} have in-degree one, and the gates withtype(v) ∈ {∨,∧} have in-degree two. The gates with nooutgoing edge are called output gates. The gates with noincoming edges are called input gates.

Definition

Given a value assignment to the input gates, the circuitcomputes the value of gates in the obvious way.

What is the relation between circuits and relaxed planninggraphs?

Page 140: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Boolean circuits

Definition

A Boolean circuit is a directed acyclic graph G = (V,E), wherethe nodes V are called gates. Each gate v ∈ V has a typetype(v) ∈ {¬,∧,∨,>,⊥, } ∪ {a, b, c, . . .}. The gates withtype(v) ∈ {>,⊥, a, b, c, . . .} have in-degree zero, the gateswith type(v) ∈ {¬} have in-degree one, and the gates withtype(v) ∈ {∨,∧} have in-degree two. The gates with nooutgoing edge are called output gates. The gates with noincoming edges are called input gates.

Definition

Given a value assignment to the input gates, the circuitcomputes the value of gates in the obvious way.

What is the relation between circuits and relaxed planninggraphs?

Page 141: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Relaxed planning graphs and Boolean circuits

Observations:

Relaxed planning graphs can be understood as special(monotone) Boolean circuits, where

the direction of the arrows has to be invertedproposition nodes in the 0-th layer are ⊥ gates or > gates,depending on their initial value.proposition nodes outside the 0-th layer are ∨ gatesaction nodes are ∧ gates (or ∨ gates)B-nodes are ∧ gates

A parallel plan solves the planning task with n steps iff thevalue of the goal node on layer n has the value 1.

The plan consists of all action nodes that have a value of1 and that are “on a path to the goal node”, which has avalue of 1.

Page 142: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Relaxed planning graphs and Boolean circuits

Observations:

Relaxed planning graphs can be understood as special(monotone) Boolean circuits, where

the direction of the arrows has to be invertedproposition nodes in the 0-th layer are ⊥ gates or > gates,depending on their initial value.proposition nodes outside the 0-th layer are ∨ gatesaction nodes are ∧ gates (or ∨ gates)B-nodes are ∧ gates

A parallel plan solves the planning task with n steps iff thevalue of the goal node on layer n has the value 1.

The plan consists of all action nodes that have a value of1 and that are “on a path to the goal node”, which has avalue of 1.

Page 143: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Relaxed planning graphs and Boolean circuits

Observations:

Relaxed planning graphs can be understood as special(monotone) Boolean circuits, where

the direction of the arrows has to be invertedproposition nodes in the 0-th layer are ⊥ gates or > gates,depending on their initial value.proposition nodes outside the 0-th layer are ∨ gatesaction nodes are ∧ gates (or ∨ gates)B-nodes are ∧ gates

A parallel plan solves the planning task with n steps iff thevalue of the goal node on layer n has the value 1.

The plan consists of all action nodes that have a value of1 and that are “on a path to the goal node”, which has avalue of 1.

Page 144: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Relaxed planning graphs and Boolean circuits

Observations:

Relaxed planning graphs can be understood as special(monotone) Boolean circuits, where

the direction of the arrows has to be invertedproposition nodes in the 0-th layer are ⊥ gates or > gates,depending on their initial value.proposition nodes outside the 0-th layer are ∨ gatesaction nodes are ∧ gates (or ∨ gates)B-nodes are ∧ gates

A parallel plan solves the planning task with n steps iff thevalue of the goal node on layer n has the value 1.

The plan consists of all action nodes that have a value of1 and that are “on a path to the goal node”, which has avalue of 1.

Page 145: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Computing gate values

a0

b0

c0

d0

e0

f0

g0

h0

>

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

Page 146: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Computing gate values

>

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

a0

b0

c0

d0

e0

f0

g0

h0

Page 147: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Computing gate values

>

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

a0

b0

c0

d0

e0

f0

g0

h0

Page 148: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Computing gate values

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

a0

b0

c0

d0

e0

f0

g0

h0

>

Page 149: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Computing gate values

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

a0

b0

c0

d0

e0

f0

g0

h0

>

Page 150: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Computing gate values

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

a0

b0

c0

d0

e0

f0

g0

h0

>

o1

o2

o3

o4

Page 151: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Computing gate values

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

a0

b0

c0

d0

e0

f0

g0

h0

>

o1

o2

o3

o4

B

Page 152: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Computing gate values

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

a0

b0

c0

d0

e0

f0

g0

h0

>

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

Page 153: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Computing gate values

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

a0

b0

c0

d0

e0

f0

g0

h0

>

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

Page 154: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Computing gate values

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

a0

b0

c0

d0

e0

f0

g0

h0

>

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

Page 155: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Computing gate values

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

a0

b0

c0

d0

e0

f0

g0

h0

>

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

Page 156: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Computing gate values

B

a2

b2

c2

d2

e2

f2

g2

h2

a0

b0

c0

d0

e0

f0

g0

h0

>

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

Page 157: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Computing gate values

a2

b2

c2

d2

e2

f2

g2

h2

a0

b0

c0

d0

e0

f0

g0

h0

>

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

Page 158: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Computing gate values

a0

b0

c0

d0

e0

f0

g0

h0

>

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

Page 159: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Computing gate values

a0

b0

c0

d0

e0

f0

g0

h0

>

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

Page 160: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Computing gate values

a0

b0

c0

d0

e0

f0

g0

h0

>

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

Page 161: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Heuristic estimate hmax

Using relaxed planning graphs, how can we compute thehmax heuristic?

Solution:

Create relaxed planning graph of depth n, n being thenumber of state variables.Compute gate values based on initial state values.The hmax value is the lowest layer where the goal gateevaluates to 1!

Page 162: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Heuristic estimate hmax

Using relaxed planning graphs, how can we compute thehmax heuristic?

Solution:

Create relaxed planning graph of depth n, n being thenumber of state variables.Compute gate values based on initial state values.The hmax value is the lowest layer where the goal gateevaluates to 1!

Page 163: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Heuristic estimate hmax

Using relaxed planning graphs, how can we compute thehmax heuristic?

Solution:

Create relaxed planning graph of depth n, n being thenumber of state variables.Compute gate values based on initial state values.The hmax value is the lowest layer where the goal gateevaluates to 1!

Page 164: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Heuristic estimate hmax

Using relaxed planning graphs, how can we compute thehmax heuristic?

Solution:

Create relaxed planning graph of depth n, n being thenumber of state variables.Compute gate values based on initial state values.The hmax value is the lowest layer where the goal gateevaluates to 1!

Page 165: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Heuristic estimate hadd

While hmax is admissible, it is not very informative (it doesnot distinguish between different states).

Estimate how hard it is to make a proposition true.

Estimate costs under the assumption that making aproposition true is independent from making any otherproposition true (i.e., relaxed planning graph is a tree).

Any proposition already true in the initial state has cost 0.Conjunctions (if true) have the sum of the costs of theconjunctions.Disjunctions (if true) have the minimum of the costs of thedisjuncts.Actions (if executable) add one cost unit.

This may, of course, over-estimate the real costs!

Page 166: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Heuristic estimate hadd

While hmax is admissible, it is not very informative (it doesnot distinguish between different states).

Estimate how hard it is to make a proposition true.

Estimate costs under the assumption that making aproposition true is independent from making any otherproposition true (i.e., relaxed planning graph is a tree).

Any proposition already true in the initial state has cost 0.Conjunctions (if true) have the sum of the costs of theconjunctions.Disjunctions (if true) have the minimum of the costs of thedisjuncts.Actions (if executable) add one cost unit.

This may, of course, over-estimate the real costs!

Page 167: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Heuristic estimate hadd

While hmax is admissible, it is not very informative (it doesnot distinguish between different states).

Estimate how hard it is to make a proposition true.

Estimate costs under the assumption that making aproposition true is independent from making any otherproposition true (i.e., relaxed planning graph is a tree).

Any proposition already true in the initial state has cost 0.Conjunctions (if true) have the sum of the costs of theconjunctions.Disjunctions (if true) have the minimum of the costs of thedisjuncts.Actions (if executable) add one cost unit.

This may, of course, over-estimate the real costs!

Page 168: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Heuristic estimate hadd

While hmax is admissible, it is not very informative (it doesnot distinguish between different states).

Estimate how hard it is to make a proposition true.

Estimate costs under the assumption that making aproposition true is independent from making any otherproposition true (i.e., relaxed planning graph is a tree).

Any proposition already true in the initial state has cost 0.Conjunctions (if true) have the sum of the costs of theconjunctions.Disjunctions (if true) have the minimum of the costs of thedisjuncts.Actions (if executable) add one cost unit.

This may, of course, over-estimate the real costs!

Page 169: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Heuristic estimate hadd

While hmax is admissible, it is not very informative (it doesnot distinguish between different states).

Estimate how hard it is to make a proposition true.

Estimate costs under the assumption that making aproposition true is independent from making any otherproposition true (i.e., relaxed planning graph is a tree).

Any proposition already true in the initial state has cost 0.Conjunctions (if true) have the sum of the costs of theconjunctions.Disjunctions (if true) have the minimum of the costs of thedisjuncts.Actions (if executable) add one cost unit.

This may, of course, over-estimate the real costs!

Page 170: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Computing hadd

a0

b0

c0

d0

e0

f0

g0

h0

>

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

Page 171: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Computing hadd

>

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

0

b0

0

0

e0

f0

g0

h0

Page 172: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Computing hadd

>

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

0

b0

0

0

e0

f0

g0

h0

0

Page 173: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Computing hadd

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

0

b0

0

0

e0

f0

g0

h0

0

0

0

Page 174: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Computing hadd

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

0

b0

0

0

e0

f0

g0

h0

0

0

0

Page 175: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Computing hadd

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

0

b0

0

0

e0

f0

g0

h0

0

0

0

1

1

o3

o4

Page 176: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Computing hadd

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

0

b0

0

0

e0

f0

g0

h0

0

0

0

1

1

o3

o4

B

Page 177: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Computing hadd

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

0

b0

0

0

e0

f0

g0

h0

0

0

0

1

1

o3

o4

B

0

1

0

0

e1

1

g1

h1

Page 178: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Computing hadd

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

0

b0

0

0

e0

f0

g0

h0

0

0

0

1

1

o3

o4

B

0

1

0

0

e1

1

g1

h1

0

Page 179: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Computing hadd

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

0

b0

0

0

e0

f0

g0

h0

0

0

0

1

1

o3

o4

B

0

1

0

0

e1

1

g1

h1

0

0

1

0

Page 180: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Computing hadd

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

0

b0

0

0

e0

f0

g0

h0

0

0

0

1

1

o3

o4

B

0

1

0

0

e1

1

g1

h1

0

0

1

0

Page 181: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Computing hadd

B

a2

b2

c2

d2

e2

f2

g2

h2

0

b0

0

0

e0

f0

g0

h0

0

0

0

1

1

o3

o4

B

0

1

0

0

e1

1

g1

h1

0

0

1

0

1

1

2

2

Page 182: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Computing hadd

a2

b2

c2

d2

e2

f2

g2

h2

0

b0

0

0

e0

f0

g0

h0

0

0

0

1

1

o3

o4

B

0

1

0

0

e1

1

g1

h1

0

0

1

0

1

1

2

2

2

Page 183: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Computing hadd

0

b0

0

0

e0

f0

g0

h0

0

0

0

1

1

o3

o4

B

0

1

0

0

e1

1

g1

h1

0

0

1

0

1

1

2

2

2

0

1

0

0

2

1

2

2

Page 184: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Computing hadd

0

b0

0

0

e0

f0

g0

h0

0

0

0

1

1

o3

o4

B

0

1

0

0

e1

1

g1

h1

0

0

1

0

1

1

2

2

2

0

1

0

0

2

1

2

2

4

Page 185: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Computing hadd

0

b0

0

0

e0

f0

g0

h0

0

0

0

1

1

o3

o4

B

0

1

0

0

e1

1

g1

h1

0

0

1

0

1

1

2

2

2

0

1

0

0

2

1

2

2

4

6

Page 186: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Heuristic estimate hFF

hadd over-estimates because of the independenceassumption.

Positive interactions are ignored.

Idea: Prune the sub-graph so that it non-redundantlymakes the goal node true.

Start at the first true goal node.Select both predecessors of a conjunction gate.Select one true predecessor of disjucntion gate.

Use the number of actions in corresponding parallel planas the heuristic estimate.

Of course, one would like to have a minimal sub-graph.However determining the minimal sub-graph is as hard asfinding a minimal relaxed plan, i.e., NP-hard!

Page 187: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Heuristic estimate hFF

hadd over-estimates because of the independenceassumption.

Positive interactions are ignored.

Idea: Prune the sub-graph so that it non-redundantlymakes the goal node true.

Start at the first true goal node.Select both predecessors of a conjunction gate.Select one true predecessor of disjucntion gate.

Use the number of actions in corresponding parallel planas the heuristic estimate.

Of course, one would like to have a minimal sub-graph.However determining the minimal sub-graph is as hard asfinding a minimal relaxed plan, i.e., NP-hard!

Page 188: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Heuristic estimate hFF

hadd over-estimates because of the independenceassumption.

Positive interactions are ignored.

Idea: Prune the sub-graph so that it non-redundantlymakes the goal node true.

Start at the first true goal node.Select both predecessors of a conjunction gate.Select one true predecessor of disjucntion gate.

Use the number of actions in corresponding parallel planas the heuristic estimate.

Of course, one would like to have a minimal sub-graph.However determining the minimal sub-graph is as hard asfinding a minimal relaxed plan, i.e., NP-hard!

Page 189: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Heuristic estimate hFF

hadd over-estimates because of the independenceassumption.

Positive interactions are ignored.

Idea: Prune the sub-graph so that it non-redundantlymakes the goal node true.

Start at the first true goal node.Select both predecessors of a conjunction gate.Select one true predecessor of disjucntion gate.

Use the number of actions in corresponding parallel planas the heuristic estimate.

Of course, one would like to have a minimal sub-graph.However determining the minimal sub-graph is as hard asfinding a minimal relaxed plan, i.e., NP-hard!

Page 190: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Heuristic estimate hFF

hadd over-estimates because of the independenceassumption.

Positive interactions are ignored.

Idea: Prune the sub-graph so that it non-redundantlymakes the goal node true.

Start at the first true goal node.Select both predecessors of a conjunction gate.Select one true predecessor of disjucntion gate.

Use the number of actions in corresponding parallel planas the heuristic estimate.

Of course, one would like to have a minimal sub-graph.However determining the minimal sub-graph is as hard asfinding a minimal relaxed plan, i.e., NP-hard!

Page 191: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Heuristic estimate hFF

hadd over-estimates because of the independenceassumption.

Positive interactions are ignored.

Idea: Prune the sub-graph so that it non-redundantlymakes the goal node true.

Start at the first true goal node.Select both predecessors of a conjunction gate.Select one true predecessor of disjucntion gate.

Use the number of actions in corresponding parallel planas the heuristic estimate.

Of course, one would like to have a minimal sub-graph.However determining the minimal sub-graph is as hard asfinding a minimal relaxed plan, i.e., NP-hard!

Page 192: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Selection of an hFF sub-graph

a0

b0

c0

d0

e0

f0

g0

h0

>

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

Page 193: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Selection of an hFF sub-graph

a0

b0

c0

d0

e0

f0

g0

h0

>

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

Page 194: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Selection of an hFF sub-graph

a0

b0

c0

d0

e0

f0

g0

h0

>

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

Page 195: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Selection of an hFF sub-graph

a0

b0

c0

d0

e0

f0

g0

h0

>

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

Page 196: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Selection of an hFF sub-graph

a0

b0

c0

d0

e0

f0

g0

h0

>

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

Page 197: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Selection of an hFF sub-graph

a0

b0

c0

d0

e0

f0

g0

h0

>

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

Page 198: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Selection of an hFF sub-graph

a0

b0

c0

d0

e0

f0

g0

h0

>

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

Page 199: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Selection of an hFF sub-graph

a0

b0

c0

d0

e0

f0

g0

h0

>

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

Page 200: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Selection of an hFF sub-graph

a0

b0

c0

d0

e0

f0

g0

h0

>

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

Page 201: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Selection of an hFF sub-graph

a0

b0

c0

d0

e0

f0

g0

h0

>

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

Page 202: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Selection of an hFF sub-graph

a0

b0

c0

d0

e0

f0

g0

h0

>

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

Page 203: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Selection of an hFF sub-graph

a0

b0

c0

d0

e0

f0

g0

h0

>

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

Page 204: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Selection of an hFF sub-graph

a0

b0

c0

d0

e0

f0

g0

h0

>

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

Page 205: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Selection of an hFF sub-graph

a0

b0

c0

d0

e0

f0

g0

h0

>

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

Page 206: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Selection of an hFF sub-graph

a0

b0

c0

d0

e0

f0

g0

h0

>

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

Page 207: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Selection of an hFF sub-graph

a0

b0

c0

d0

e0

f0

g0

h0

>

o1

o2

o3

o4

B

a1

b1

c1

d1

e1

f1

g1

h1

>

o1

o2

o3

o4

B

a2

b2

c2

d2

e2

f2

g2

h2

Page 208: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Why is it hard to find a shortest relaxed plan?

The problem is hard, even if our actions do not havepreconditions (and are all executed in parallel in one step)!

Problem

The set cover problem ist the following problem:

Given a set M , a collection of subsets C = {C1, . . . , Cn},with Ci ⊆M and a natural number k.

Does there exist a set cover of size k, i.e., a subset ofS = {S1, . . . , Sj} ⊆ C with S1 ∪ . . .∪ Sj = M and j ≤ k?

Theorem

The set cover problem is NP-complete.

Page 209: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Why is it hard to find a shortest relaxed plan?

The problem is hard, even if our actions do not havepreconditions (and are all executed in parallel in one step)!

Problem

The set cover problem ist the following problem:

Given a set M , a collection of subsets C = {C1, . . . , Cn},with Ci ⊆M and a natural number k.

Does there exist a set cover of size k, i.e., a subset ofS = {S1, . . . , Sj} ⊆ C with S1 ∪ . . .∪ Sj = M and j ≤ k?

Theorem

The set cover problem is NP-complete.

Page 210: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Why is it hard to find a shortest relaxed plan?

The problem is hard, even if our actions do not havepreconditions (and are all executed in parallel in one step)!

Problem

The set cover problem ist the following problem:

Given a set M , a collection of subsets C = {C1, . . . , Cn},with Ci ⊆M and a natural number k.

Does there exist a set cover of size k, i.e., a subset ofS = {S1, . . . , Sj} ⊆ C with S1 ∪ . . .∪ Sj = M and j ≤ k?

Theorem

The set cover problem is NP-complete.

Page 211: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

The Reduction

An instance of the set cover problem 〈M,C, k〉 is given.

Construct a relaxed planning task 〈A, I,O+, G〉:A = M ,G =

∧a∈A a,

I = { a 7→ 0 | a ∈ A },O+ = { 〈>,

∧a∈Ci

a〉 | Ci ∈ C }Now clearly: There exists a plan containing at most koperators iff there exists a set cover of size k

This implies that finding a shortest plan is NP-hard.

Page 212: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

The Reduction

An instance of the set cover problem 〈M,C, k〉 is given.

Construct a relaxed planning task 〈A, I,O+, G〉:A = M ,G =

∧a∈A a,

I = { a 7→ 0 | a ∈ A },O+ = { 〈>,

∧a∈Ci

a〉 | Ci ∈ C }Now clearly: There exists a plan containing at most koperators iff there exists a set cover of size k

This implies that finding a shortest plan is NP-hard.

Page 213: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

The Reduction

An instance of the set cover problem 〈M,C, k〉 is given.

Construct a relaxed planning task 〈A, I,O+, G〉:A = M ,G =

∧a∈A a,

I = { a 7→ 0 | a ∈ A },O+ = { 〈>,

∧a∈Ci

a〉 | Ci ∈ C }Now clearly: There exists a plan containing at most koperators iff there exists a set cover of size k

This implies that finding a shortest plan is NP-hard.

Page 214: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

The Reduction

An instance of the set cover problem 〈M,C, k〉 is given.

Construct a relaxed planning task 〈A, I,O+, G〉:A = M ,G =

∧a∈A a,

I = { a 7→ 0 | a ∈ A },O+ = { 〈>,

∧a∈Ci

a〉 | Ci ∈ C }Now clearly: There exists a plan containing at most koperators iff there exists a set cover of size k

This implies that finding a shortest plan is NP-hard.

Page 215: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

The Reduction

An instance of the set cover problem 〈M,C, k〉 is given.

Construct a relaxed planning task 〈A, I,O+, G〉:A = M ,G =

∧a∈A a,

I = { a 7→ 0 | a ∈ A },O+ = { 〈>,

∧a∈Ci

a〉 | Ci ∈ C }Now clearly: There exists a plan containing at most koperators iff there exists a set cover of size k

This implies that finding a shortest plan is NP-hard.

Page 216: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

The Reduction

An instance of the set cover problem 〈M,C, k〉 is given.

Construct a relaxed planning task 〈A, I,O+, G〉:A = M ,G =

∧a∈A a,

I = { a 7→ 0 | a ∈ A },O+ = { 〈>,

∧a∈Ci

a〉 | Ci ∈ C }Now clearly: There exists a plan containing at most koperators iff there exists a set cover of size k

This implies that finding a shortest plan is NP-hard.

Page 217: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

The Reduction

An instance of the set cover problem 〈M,C, k〉 is given.

Construct a relaxed planning task 〈A, I,O+, G〉:A = M ,G =

∧a∈A a,

I = { a 7→ 0 | a ∈ A },O+ = { 〈>,

∧a∈Ci

a〉 | Ci ∈ C }Now clearly: There exists a plan containing at most koperators iff there exists a set cover of size k

This implies that finding a shortest plan is NP-hard.

Page 218: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

The Reduction

An instance of the set cover problem 〈M,C, k〉 is given.

Construct a relaxed planning task 〈A, I,O+, G〉:A = M ,G =

∧a∈A a,

I = { a 7→ 0 | a ∈ A },O+ = { 〈>,

∧a∈Ci

a〉 | Ci ∈ C }Now clearly: There exists a plan containing at most koperators iff there exists a set cover of size k

This implies that finding a shortest plan is NP-hard.

Page 219: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Putting hFF to work: FF

The FF planning system works roughly as follows:

It does enforced hill-climbing using hFF. This ishill-climbing extended by breadth-first search in caseswhere there are no states with a better heuristic value.

In addition, FF uses helpful action pruning, i.e., itconsiders only those actions that are used in the first levelof the relaxed planning graph.

If a hill-climbing step with helpful action pruning fails,then the fall-back is to use all possible actions.

If no plan is found, FF restarts the search as a greedybest-first search with hFF as the heuristic.

Page 220: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Putting hFF to work: FF

The FF planning system works roughly as follows:

It does enforced hill-climbing using hFF. This ishill-climbing extended by breadth-first search in caseswhere there are no states with a better heuristic value.

In addition, FF uses helpful action pruning, i.e., itconsiders only those actions that are used in the first levelof the relaxed planning graph.

If a hill-climbing step with helpful action pruning fails,then the fall-back is to use all possible actions.

If no plan is found, FF restarts the search as a greedybest-first search with hFF as the heuristic.

Page 221: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Putting hFF to work: FF

The FF planning system works roughly as follows:

It does enforced hill-climbing using hFF. This ishill-climbing extended by breadth-first search in caseswhere there are no states with a better heuristic value.

In addition, FF uses helpful action pruning, i.e., itconsiders only those actions that are used in the first levelof the relaxed planning graph.

If a hill-climbing step with helpful action pruning fails,then the fall-back is to use all possible actions.

If no plan is found, FF restarts the search as a greedybest-first search with hFF as the heuristic.

Page 222: gki.informatik.uni-freiburg.degki.informatik.uni-freiburg.de/teaching/ws0607/aip/aip03.pdf · AI Planning M. Helmert, B. Nebel Heuristic search Incomplete plans A∗ Local search

AI Planning

M. Helmert,B. Nebel

Heuristicsearch

Relaxation

DerivingHeuristicEstimatesfromRelaxations

Parallel plans

Relaxed planninggraphs

Circuits

hmax, hadd,hFFShortest plans

FF

Putting hFF to work: FF

The FF planning system works roughly as follows:

It does enforced hill-climbing using hFF. This ishill-climbing extended by breadth-first search in caseswhere there are no states with a better heuristic value.

In addition, FF uses helpful action pruning, i.e., itconsiders only those actions that are used in the first levelof the relaxed planning graph.

If a hill-climbing step with helpful action pruning fails,then the fall-back is to use all possible actions.

If no plan is found, FF restarts the search as a greedybest-first search with hFF as the heuristic.