Optimal Planning for Delete-free Tasks with Incremental LM-cut - - PowerPoint PPT Presentation

optimal planning for delete free tasks with incremental
SMART_READER_LITE
LIVE PREVIEW

Optimal Planning for Delete-free Tasks with Incremental LM-cut - - PowerPoint PPT Presentation

Theoretical Background Contributions Experiments Conclusion Optimal Planning for Delete-free Tasks with Incremental LM-cut Florian Pommerening and Malte Helmert Universit at Basel Departement Informatik 27. 06. 2012 h + with Incremental


slide-1
SLIDE 1

Theoretical Background Contributions Experiments Conclusion

Optimal Planning for Delete-free Tasks with Incremental LM-cut

Florian Pommerening and Malte Helmert

Universit¨ at Basel Departement Informatik

  • 27. 06. 2012

Pommerening, Helmert h+ with Incremental LM-cut

  • 27. 06. 2012

1 / 19

slide-2
SLIDE 2

Theoretical Background Contributions Experiments Conclusion

Content

1

Theoretical Background

2

Contributions

3

Experiments

4

Conclusion

Pommerening, Helmert h+ with Incremental LM-cut

  • 27. 06. 2012

2 / 19

slide-3
SLIDE 3

Theoretical Background Contributions Experiments Conclusion

Delete-free Planning

Binary cost delete-free STRIPS task Π = V , I, G, O

V set of variables I, G ⊆ V initial/goal state O set of operators o = pre(o) → add(o)cost(o) cost(o) ∈ {0, 1}

Optimal planning

Search for cheapest operator sequence o1, . . . on G ⊆ s[o1] · · · [on] NP-equivalent instead of PSPACE-equivalent

Why?

Cost of optimal plan: delete-relaxation heuristic h+

h+ is well-informed Other heuristics are based on h+

Interesting delete-free domains

Pommerening, Helmert h+ with Incremental LM-cut

  • 27. 06. 2012

3 / 19

slide-4
SLIDE 4

Theoretical Background Contributions Experiments Conclusion

hLM-cut

Based on disjunctive action landmarks (LMs)

Set of operators l = {o1, . . . , on} Every plan contains at least one oi Cost of a landmark: minoi∈l{cost(oi)}

1 Calculate hmax

Only achieve most expensive subgoal/precondition hmax(s) = ∞ task unsolvable hmax(s) = 0 stop searching for LMs

2 Use hmax values to discover new LM 3 Reduce operator costs by landmark’s cost for operators in LM

Sum of landmark costs is admissible heuristic

4 Repeat Pommerening, Helmert h+ with Incremental LM-cut

  • 27. 06. 2012

4 / 19

slide-5
SLIDE 5

Theoretical Background Contributions Experiments Conclusion

Search Strategies

Branch-and-Bound (BnB) Search Memory friendly depth-first search Recursively search for solution in cost interval

Decrease upper bound for every discovered solution Continue search for cheaper solution Prune nodes with lower bound outside of interval

Iterative-deepening A∗ (IDA∗) Search Search for solution with increasing cost hLM-cut(I), . . . , h+(I)

IDA∗ layer i: BnB search with closed interval [i, i]

Theorem BnB and IDA∗ are complete and optimal if used with a finite search space and an admissible heuristic.

Pommerening, Helmert h+ with Incremental LM-cut

  • 27. 06. 2012

5 / 19

slide-6
SLIDE 6

Theoretical Background Contributions Experiments Conclusion

Content

1

Theoretical Background

2

Contributions Search Space Incremental Computation Improvements

3

Experiments

4

Conclusion

Pommerening, Helmert h+ with Incremental LM-cut

  • 27. 06. 2012

6 / 19

slide-7
SLIDE 7

Theoretical Background Contributions Experiments Conclusion

Search Space

Theorem Applying an operator cannot make an applicable operator inapplicable in delete-free tasks. Theorem No operator has to occur twice in an optimal relaxed solution. Order can mostly be ignored

Search in serializable subsets of O

Branch over applicable operator

Apply it now or never

Finite branching factor (2) and search tree depth (|O|)

Pommerening, Helmert h+ with Incremental LM-cut

  • 27. 06. 2012

7 / 19

slide-8
SLIDE 8

Theoretical Background Contributions Experiments Conclusion

Incremental Computation

Successor generated by applying/removing operator Binary cost tasks

Each operator o has containing LM Lo Lo = {o} or |Lo| > 1 or Lo undefined

Apply operator o

Lo discharged All other LMs are LMs in successor

Remove operator o

  • no longer possible choice

Remove o from Lo Lo \ {o} is LM in successor Task unsolvable if Lo = {o} All other LMs are LMs in successor

Pommerening, Helmert h+ with Incremental LM-cut

  • 27. 06. 2012

8 / 19

slide-9
SLIDE 9

Theoretical Background Contributions Experiments Conclusion

Re-calculation of hLM-cut

Removing a LM

Return landmark’s costs to remaining cost Binary cost tasks: Set operator cost back to 1

Can change hmax value Theorem The LM-cut algorithm discovers a new landmark if the hmax cost

  • f the successor increases.

Only possible if

Lo = {o, o1, . . . , on} 0-cost operator forbidden with Lo undefined

Pommerening, Helmert h+ with Incremental LM-cut

  • 27. 06. 2012

9 / 19

slide-10
SLIDE 10

Theoretical Background Contributions Experiments Conclusion

Variable Ordering

Minimum remaining values heuristic

CSP technique Choosing variables to branch over

One operator from each LM is needed

Smaller LM ⇒ fewer choices Smallest LM ∼ variable with minimum remaining values

lmin: size of smallest LM containing applicable operators Collect applicable operators in LMs of size lmin Randomly select one for branching

Pommerening, Helmert h+ with Incremental LM-cut

  • 27. 06. 2012

10 / 19

slide-11
SLIDE 11

Theoretical Background Contributions Experiments Conclusion

Automatic Application of Operators

Automatically apply operators with Lo = {o}

Branching strategy already contains effect Useful with different heuristic

Automatically apply 0-cost operators

Very useful in domains with such operators No 0-cost operators in tested domains

Pommerening, Helmert h+ with Incremental LM-cut

  • 27. 06. 2012

11 / 19

slide-12
SLIDE 12

Theoretical Background Contributions Experiments Conclusion

Content

1

Theoretical Background

2

Contributions

3

Experiments

4

Conclusion

Pommerening, Helmert h+ with Incremental LM-cut

  • 27. 06. 2012

12 / 19

slide-13
SLIDE 13

Theoretical Background Contributions Experiments Conclusion

Methodology

Evaluation

876 tasks in 22 domains Time limit: 300 s Memory limit: 2 GB (only reached for huge tasks)

Coverage scores

Solve probability for randomly selected domain and task Averages of 5 runs with different seeds

Pommerening, Helmert h+ with Incremental LM-cut

  • 27. 06. 2012

13 / 19

slide-14
SLIDE 14

Theoretical Background Contributions Experiments Conclusion

Basic Results

FastDownward with A* and hLM-cut Incremental LM-cut with BnB/IDA∗ Resuts Coverage (%) FastDownward 49.249 BnB 59.032 IDA∗ 60.120 Improvement over Fast Downward IDA∗ better than BnB

But still room for improvement for BnB

Pommerening, Helmert h+ with Incremental LM-cut

  • 27. 06. 2012

14 / 19

slide-15
SLIDE 15

Theoretical Background Contributions Experiments Conclusion

Plan Improvement

Better upper bound ⇒ more pruned nodes Initial upper bound

Use cost of relaxed solution (here: with hlst) No search if hlst(I) = hLM-cut(I)

Improve intermediate solutions

Local Steiner tree improvement (based on hlst) Continue search with improved solution and new bound

Results Coverage (%) BnB 59.032 IDA∗ 60.120 BnB (initial upper bound) 59.981 BnB (improved all solutions) 60.519

Pommerening, Helmert h+ with Incremental LM-cut

  • 27. 06. 2012

15 / 19

slide-16
SLIDE 16

Theoretical Background Contributions Experiments Conclusion

Content

1

Theoretical Background

2

Contributions

3

Experiments

4

Conclusion

Pommerening, Helmert h+ with Incremental LM-cut

  • 27. 06. 2012

16 / 19

slide-17
SLIDE 17

Theoretical Background Contributions Experiments Conclusion

Future Work

Optimization for binary cost tasks

Performance of implementation Different operator orders Smaller search space (e.g. task decomposition)

Generalization to arbitrary costs

Branching decisions no longer mutually exclusive Different data structures needed

Generalization to general planning

Classical search space Depth of search space not limited by |O| Use A∗/IDA∗/. . . instead of branch-and-bound search

Pommerening, Helmert h+ with Incremental LM-cut

  • 27. 06. 2012

17 / 19

slide-18
SLIDE 18

Theoretical Background Contributions Experiments Conclusion

Main Contributions

New h+ values

576 of 876 tasks solved Evaluation of other heuristics (hlst, hLM-cut, hmax, hFF/add, . . .)

New ways to calculate h+

BnB/IDA∗ search with custom search space Incremental version of hLM-cut Exceeds performance of Fast Downward (A∗/hLM-cut) BnB and IDA∗ incomparable

BnB as any-time search

Pommerening, Helmert h+ with Incremental LM-cut

  • 27. 06. 2012

18 / 19

slide-19
SLIDE 19

Extra Slides for Q&A

Thank you for your attention! Any questions?

Pommerening, Helmert h+ with Incremental LM-cut

  • 27. 06. 2012

19 / 19

slide-20
SLIDE 20

Extra Slides for Q&A

Planning

Development of domain independent problem solvers Common formalism needed STRIPS planning task Π = V , I, G, O Formal definition V set of variables I ⊆ V initial state G ⊆ V goals O set of operators with

pre(o) ⊆ V Preconditions add(o) ⊆ V Add effects del(o) ⊆ V Delete effects cost(o) ∈ R+

0 Cost

Example (logistics)

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

20

slide-21
SLIDE 21

Extra Slides for Q&A

Planning

Development of domain independent problem solvers Common formalism needed STRIPS planning task Π = V , I, G, O Formal definition V set of variables I ⊆ V initial state G ⊆ V goals O set of operators with

pre(o) ⊆ V Preconditions add(o) ⊆ V Add effects del(o) ⊆ V Delete effects cost(o) ∈ R+

0 Cost

Example (logistics) at(package, location) at(vehicle, location) in(package, vehicle)

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

20

slide-22
SLIDE 22

Extra Slides for Q&A

Planning

Development of domain independent problem solvers Common formalism needed STRIPS planning task Π = V , I, G, O Formal definition V set of variables I ⊆ V initial state G ⊆ V goals O set of operators with

pre(o) ⊆ V Preconditions add(o) ⊆ V Add effects del(o) ⊆ V Delete effects cost(o) ∈ R+

0 Cost

Example (logistics) {at(p-1, loc-B-1), at(p-2, loc-A-2), at(truck-1, loc-A-1), at(truck-2, loc-B-2)}

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

20

slide-23
SLIDE 23

Extra Slides for Q&A

Planning

Development of domain independent problem solvers Common formalism needed STRIPS planning task Π = V , I, G, O Formal definition V set of variables I ⊆ V initial state G ⊆ V goals O set of operators with

pre(o) ⊆ V Preconditions add(o) ⊆ V Add effects del(o) ⊆ V Delete effects cost(o) ∈ R+

0 Cost

Example (logistics) {at(p-1, loc-B-1), at(p-2, loc-A-3)}

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

20

slide-24
SLIDE 24

Extra Slides for Q&A

Planning

Development of domain independent problem solvers Common formalism needed STRIPS planning task Π = V , I, G, O Formal definition V set of variables I ⊆ V initial state G ⊆ V goals O set of operators with

pre(o) ⊆ V Preconditions add(o) ⊆ V Add effects del(o) ⊆ V Delete effects cost(o) ∈ R+

0 Cost

Example (logistics)

  • = load-truck(?t, ?p, ?l)

pre(o) = {at(?t, ?l), at(?p, ?l)} add(o) = {in(?p, ?t)} del(o) = {at(?p, ?l)} cost(o) = 1

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

20

slide-25
SLIDE 25

Extra Slides for Q&A

hFF/add

Cheapest way to reach a variable: achiever

Achieve all preconditions/subgoals (hadd)

Recursively collect necessary achievers in set Path finding example First reach A and B, then go to goal

Choose cheapest way to A Choose cheapest way to B Go to Goal

Start A B Goal 2 2 1 1 Overestimation due to greedy search In general not admissible (h+ ≤ hFF/add)

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

21

slide-26
SLIDE 26

Extra Slides for Q&A

hFF/add

Cheapest way to reach a variable: achiever

Achieve all preconditions/subgoals (hadd)

Recursively collect necessary achievers in set Path finding example First reach A and B, then go to goal

Choose cheapest way to A Choose cheapest way to B Go to Goal

Start A B Goal 2 2 1 1 Overestimation due to greedy search In general not admissible (h+ ≤ hFF/add)

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

21

slide-27
SLIDE 27

Extra Slides for Q&A

hFF/add

Cheapest way to reach a variable: achiever

Achieve all preconditions/subgoals (hadd)

Recursively collect necessary achievers in set Path finding example First reach A and B, then go to goal

Choose cheapest way to A Choose cheapest way to B Go to Goal

Start A B Goal 2 2 1 1 Overestimation due to greedy search In general not admissible (h+ ≤ hFF/add)

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

21

slide-28
SLIDE 28

Extra Slides for Q&A

hFF/add

Cheapest way to reach a variable: achiever

Achieve all preconditions/subgoals (hadd)

Recursively collect necessary achievers in set Path finding example First reach A and B, then go to goal

Choose cheapest way to A Choose cheapest way to B Go to Goal

Start A B Goal 2 2 1 1 Overestimation due to greedy search In general not admissible (h+ ≤ hFF/add)

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

21

slide-29
SLIDE 29

Extra Slides for Q&A

hFF/add

Cheapest way to reach a variable: achiever

Achieve all preconditions/subgoals (hadd)

Recursively collect necessary achievers in set Path finding example First reach A and B, then go to goal

Choose cheapest way to A Choose cheapest way to B Go to Goal

Start A B Goal 2 2 1 1 Overestimation due to greedy search In general not admissible (h+ ≤ hFF/add)

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

21

slide-30
SLIDE 30

Extra Slides for Q&A

Local Steiner Tree Plan Improvement Procedure

Path finding example Pick a variable: B Partition plan

Part dependent on B Part only used to add B Rest

Find cheaper alternative to reach B Start A B Goal 2 2 1 1 hlst: Optimization of hFF/add Achiever mapping for arbitrary plan π

Achiever of v: first operator adding v in π Extract solution with hFF/add Remove unnecessary achiever settings

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

22

slide-31
SLIDE 31

Extra Slides for Q&A

Local Steiner Tree Plan Improvement Procedure

Path finding example Pick a variable: B Partition plan

Part dependent on B Part only used to add B Rest

Find cheaper alternative to reach B Start A B Goal 2 2 1 1 hlst: Optimization of hFF/add Achiever mapping for arbitrary plan π

Achiever of v: first operator adding v in π Extract solution with hFF/add Remove unnecessary achiever settings

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

22

slide-32
SLIDE 32

Extra Slides for Q&A

Local Steiner Tree Plan Improvement Procedure

Path finding example Pick a variable: B Partition plan

Part dependent on B Part only used to add B Rest

Find cheaper alternative to reach B Start A B Goal 2 2 1 1 hlst: Optimization of hFF/add Achiever mapping for arbitrary plan π

Achiever of v: first operator adding v in π Extract solution with hFF/add Remove unnecessary achiever settings

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

22

slide-33
SLIDE 33

Extra Slides for Q&A

Local Steiner Tree Plan Improvement Procedure

Path finding example Pick a variable: B Partition plan

Part dependent on B Part only used to add B Rest

Find cheaper alternative to reach B Start A B Goal 2 2 1 1 hlst: Optimization of hFF/add Achiever mapping for arbitrary plan π

Achiever of v: first operator adding v in π Extract solution with hFF/add Remove unnecessary achiever settings

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

22

slide-34
SLIDE 34

Extra Slides for Q&A

Local Steiner Tree Plan Improvement Procedure

Path finding example Pick a variable: B Partition plan

Part dependent on B Part only used to add B Rest

Find cheaper alternative to reach B Start A B Goal 2 2 1 1 hlst: Optimization of hFF/add Achiever mapping for arbitrary plan π

Achiever of v: first operator adding v in π Extract solution with hFF/add Remove unnecessary achiever settings

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

22

slide-35
SLIDE 35

Extra Slides for Q&A

Local Steiner Tree Plan Improvement Procedure

Path finding example Pick a variable: B Partition plan

Part dependent on B Part only used to add B Rest

Find cheaper alternative to reach B Start A B Goal 2 2 1 1 hlst: Optimization of hFF/add Achiever mapping for arbitrary plan π

Achiever of v: first operator adding v in π Extract solution with hFF/add Remove unnecessary achiever settings

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

22

slide-36
SLIDE 36

Extra Slides for Q&A

Local Steiner Tree Plan Improvement Procedure

Path finding example Pick a variable: B Partition plan

Part dependent on B Part only used to add B Rest

Find cheaper alternative to reach B Start A B Goal 2 2 1 1 hlst: Optimization of hFF/add Achiever mapping for arbitrary plan π

Achiever of v: first operator adding v in π Extract solution with hFF/add Remove unnecessary achiever settings

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

22

slide-37
SLIDE 37

Extra Slides for Q&A

Justification Graph

Precondition choice function (pcf)

Maps operators to most expensive precondition Not unique

LMs discovered with justification graph

One node per variable One edge per add effect a ∈ add(o)

pcf(o)

− → a

i(0) A(0) B(1) C(1) g(1)

  • i(0)
  • 1(1)
  • 1(1)
  • 2(1)
  • g(0)

V = {A, B, C, i, g} I = {i}, G = {g} O = {oi, o1, o2, og}

  • i = i → A0
  • 1 = A → B, C1
  • 2 = A → C1
  • g = B, C → g0

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

23

slide-38
SLIDE 38

Extra Slides for Q&A

hlst

hFF/add is greedy Path planning example First reach A and B, then go to goal

Choose cheapest way to A Choose cheapest way to B Go to Goal

hlst optimizes achiever choices Based on Steiner tree problem

Pick a variable: B Partition plan

Part dependent on B (P+

B )

Part only used to add B (P−

B )

Rest (P0

B)

Find cheaper alternative for P−

B given P0 B

Start A B Goal 2 2 1 1

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

24

slide-39
SLIDE 39

Extra Slides for Q&A

hlst

hFF/add is greedy Path planning example First reach A and B, then go to goal

Choose cheapest way to A Choose cheapest way to B Go to Goal

hlst optimizes achiever choices Based on Steiner tree problem

Pick a variable: B Partition plan

Part dependent on B (P+

B )

Part only used to add B (P−

B )

Rest (P0

B)

Find cheaper alternative for P−

B given P0 B

Start A B Goal 2 2 1 1

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

24

slide-40
SLIDE 40

Extra Slides for Q&A

hlst

hFF/add is greedy Path planning example First reach A and B, then go to goal

Choose cheapest way to A Choose cheapest way to B Go to Goal

hlst optimizes achiever choices Based on Steiner tree problem

Pick a variable: B Partition plan

Part dependent on B (P+

B )

Part only used to add B (P−

B )

Rest (P0

B)

Find cheaper alternative for P−

B given P0 B

Start A B Goal 2 2 1 1

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

24

slide-41
SLIDE 41

Extra Slides for Q&A

hlst

hFF/add is greedy Path planning example First reach A and B, then go to goal

Choose cheapest way to A Choose cheapest way to B Go to Goal

hlst optimizes achiever choices Based on Steiner tree problem

Pick a variable: B Partition plan

Part dependent on B (P+

B )

Part only used to add B (P−

B )

Rest (P0

B)

Find cheaper alternative for P−

B given P0 B

Start A B Goal 2 2 1 1

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

24

slide-42
SLIDE 42

Extra Slides for Q&A

hlst

hFF/add is greedy Path planning example First reach A and B, then go to goal

Choose cheapest way to A Choose cheapest way to B Go to Goal

hlst optimizes achiever choices Based on Steiner tree problem

Pick a variable: B Partition plan

Part dependent on B (P+

B )

Part only used to add B (P−

B )

Rest (P0

B)

Find cheaper alternative for P−

B given P0 B

Start A B Goal 2 2 1 1

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

24

slide-43
SLIDE 43

Extra Slides for Q&A

hlst

hFF/add is greedy Path planning example First reach A and B, then go to goal

Choose cheapest way to A Choose cheapest way to B Go to Goal

hlst optimizes achiever choices Based on Steiner tree problem

Pick a variable: B Partition plan

Part dependent on B (P+

B )

Part only used to add B (P−

B )

Rest (P0

B)

Find cheaper alternative for P−

B given P0 B

Start A B Goal 2 2 1 1

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

24

slide-44
SLIDE 44

Extra Slides for Q&A

hlst

hFF/add is greedy Path planning example First reach A and B, then go to goal

Choose cheapest way to A Choose cheapest way to B Go to Goal

hlst optimizes achiever choices Based on Steiner tree problem

Pick a variable: B Partition plan

Part dependent on B (P+

B )

Part only used to add B (P−

B )

Rest (P0

B)

Find cheaper alternative for P−

B given P0 B

Start A B Goal 2 2 1 1

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

24

slide-45
SLIDE 45

Extra Slides for Q&A

hlst

hFF/add is greedy Path planning example First reach A and B, then go to goal

Choose cheapest way to A Choose cheapest way to B Go to Goal

hlst optimizes achiever choices Based on Steiner tree problem

Pick a variable: B Partition plan

Part dependent on B (P+

B )

Part only used to add B (P−

B )

Rest (P0

B)

Find cheaper alternative for P−

B given P0 B

Start A B Goal 2 2 1 1

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

24

slide-46
SLIDE 46

Extra Slides for Q&A

hlst

hFF/add is greedy Path planning example First reach A and B, then go to goal

Choose cheapest way to A Choose cheapest way to B Go to Goal

hlst optimizes achiever choices Based on Steiner tree problem

Pick a variable: B Partition plan

Part dependent on B (P+

B )

Part only used to add B (P−

B )

Rest (P0

B)

Find cheaper alternative for P−

B given P0 B

Start A B Goal 2 2 1 1

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

24

slide-47
SLIDE 47

Extra Slides for Q&A

hlst

hFF/add is greedy Path planning example First reach A and B, then go to goal

Choose cheapest way to A Choose cheapest way to B Go to Goal

hlst optimizes achiever choices Based on Steiner tree problem

Pick a variable: B Partition plan

Part dependent on B (P+

B )

Part only used to add B (P−

B )

Rest (P0

B)

Find cheaper alternative for P−

B given P0 B

Start A B Goal 2 2 1 1

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

24

slide-48
SLIDE 48

Extra Slides for Q&A

hlst

hFF/add is greedy Path planning example First reach A and B, then go to goal

Choose cheapest way to A Choose cheapest way to B Go to Goal

hlst optimizes achiever choices Based on Steiner tree problem

Pick a variable: B Partition plan

Part dependent on B (P+

B )

Part only used to add B (P−

B )

Rest (P0

B)

Find cheaper alternative for P−

B given P0 B

Start A B Goal 2 2 1 1

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

24

slide-49
SLIDE 49

Extra Slides for Q&A

Branch-and-Bound Search (Pseudo Code)

def BranchAndBound(problem): global variable interval = [0, ∞) global variable bestSolution = None initialNode = SearchNode(parent = None subproblem = problem) BranchAndBoundRecursive(initialNode) return bestSolution def BranchAndBoundRecursive(node): if [node.calculateLowerBound(), ∞) ∩ interval == ∅: return if node.subproblem is solution: bestSolution = extractSolution(node) interval = interval ∩ [0, bestSolution.cost) return for sucessor in node.subproblem.successors: successorNode = SearchNode(parent = node subproblem = sucessor) BranchAndBoundRecursive(successorNode)

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

25

slide-50
SLIDE 50

Extra Slides for Q&A

Avoid unnecessary re-calculations

hLM-cut computed

  • was applied

Lo undefined Never Lo = {o} Never Lo = {o, o1, . . . , on} Always

  • was forbidden

Lo undefined If and only if cost(o) = 0 Lo = {o} unsolvable Lo = {o, o1, . . . , on} Always

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

26

slide-51
SLIDE 51

Extra Slides for Q&A

Automatic Application of Operators - Unit Propagation

Model checking technique

Set variable to last remaining value

Analogy: LMs with only one element l = {o}

Every plan must contain o Apply o without branching Repeat until fixed point is reached

Here: not necessary

Operator from smallest LM is selected No re-calculation of hLM-cut Unsolvable task is detected immediately

Could be useful with different heuristic

Isolated effect shows significant increase in coverage

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

27

slide-52
SLIDE 52

Extra Slides for Q&A

Automatic Application of Operators - 0-Cost Operators

Pure symbol heuristic

Literal only occurs positive ⇒ set variable to true

Analogy: Operators with base cost 0

Does not change solution cost Cannot make applicable operators inapplicable Automatic application

Results Coverage (%) BnB 87.778 BnB (0-cost) 100.000 IDA∗ 87.778 IDA∗ (0-cost) 100.000 Evaluated on different domains

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

28

slide-53
SLIDE 53

Extra Slides for Q&A

IDA∗-Layer Analysis

Three phases in IDA∗ node expansions:

Solution discovery (last layer) Proof of optimality (second to last layer) Avoidable part of proof (all other layers)

Few expansions in avoidable layers (4.19% on average) Better search strategy with same operator order

Small expected improvement

Different operator order

Can decrease expansions in all layers

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

29

slide-54
SLIDE 54

Extra Slides for Q&A

IDA∗-Layer Analysis (cont.)

Bar length: Expansion score

Longer bar ∼ more expansions

Coloring: relative size of IDA∗ layers

Blue ∼ Last layer Green ∼ Second to last layer Black ∼ All other layers

depot 1 0.80.60.40.2 0 Expansion score logistics98 pipesworld- tankage rovers

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

30

slide-55
SLIDE 55

Extra Slides for Q&A

Restarts

Operator order depends on random seed Heavy-tailed distribution for some tasks

Could benefit from random restarts

Experiments

Different constant restart times Geometrically increasing time Universal restart strategy (Luby et al.) [1, 1, 2, 1, 1, 2, 4, 1, 1, 2, 1, 1, 2, 4, 8, . . .]

No positive effect

Not enough tasks benefit from restarts

0 300 1 800 logistics98 prob13

Pommerening, Helmert (Uni Basel) h+ with Incremental LM-cut

  • 27. 06. 2012

31