Subset-Saturated Cost Partitioning for Optimal Classical Planning - - PowerPoint PPT Presentation

subset saturated cost partitioning for optimal classical
SMART_READER_LITE
LIVE PREVIEW

Subset-Saturated Cost Partitioning for Optimal Classical Planning - - PowerPoint PPT Presentation

Subset-Saturated Cost Partitioning for Optimal Classical Planning Jendrik Seipp, Malte Helmert July 14, 2019 University of Basel, Switzerland In a nutshell optimal classical planning multiple heuristics cost partitioning 1/14


slide-1
SLIDE 1

Subset-Saturated Cost Partitioning for Optimal Classical Planning

Jendrik Seipp, Malte Helmert July 14, 2019

University of Basel, Switzerland

slide-2
SLIDE 2

In a nutshell

  • optimal classical planning
  • A∗ search + admissible heuristic
  • multiple heuristics
  • cost partitioning

1/14

slide-3
SLIDE 3

In a nutshell

  • optimal classical planning
  • A∗ search + admissible heuristic
  • multiple heuristics
  • saturated cost partitioning

1/14

slide-4
SLIDE 4

In a nutshell

  • optimal classical planning
  • A∗ search + admissible heuristic
  • multiple heuristics
  • subset-saturated cost partitioning

1/14

slide-5
SLIDE 5

Saturated cost partitioning

Saturated cost partitioning algorithm

  • order heuristics, then for each heuristic h:
  • use minimum costs preserving all estimates of h
  • use remaining costs for subsequent heuristics

s1,s2 s3 s4,s5 4 4 1 1 s1 s2,s3,s4 s5 4 4 1 1

max(h1(s2), h2(s2)) = max(5, 4) = 5 hSCP

h1 h2 s2

5 3 8

2/14

slide-6
SLIDE 6

Saturated cost partitioning

Saturated cost partitioning algorithm

  • order heuristics, then for each heuristic h:
  • use minimum costs preserving all estimates of h
  • use remaining costs for subsequent heuristics

s1,s2 s3 s4,s5 4 4 1 1 s1 s2,s3,s4 s5

hSCP

h1 h2 s2

5 3 8

2/14

slide-7
SLIDE 7

Saturated cost partitioning

Saturated cost partitioning algorithm

  • order heuristics, then for each heuristic h:
  • use minimum costs preserving all estimates of h
  • use remaining costs for subsequent heuristics

s1,s2 s3 s4,s5 4 1 1 s1 s2,s3,s4 s5

hSCP

h1 h2 s2

5 3 8

2/14

slide-8
SLIDE 8

Saturated cost partitioning

Saturated cost partitioning algorithm

  • order heuristics, then for each heuristic h:
  • use minimum costs preserving all estimates of h
  • use remaining costs for subsequent heuristics

s1,s2 s3 s4,s5 4 1 1 s1 s2,s3,s4 s5 3 1

hSCP

h1 h2 s2

5 3 8

2/14

slide-9
SLIDE 9

Saturated cost partitioning

Saturated cost partitioning algorithm

  • order heuristics, then for each heuristic h:
  • use minimum costs preserving all estimates of h
  • use remaining costs for subsequent heuristics

s1,s2 s3 s4,s5 4 1 1 s1 s2,s3,s4 s5 3

hSCP

h1 h2 s2

5 3 8

2/14

slide-10
SLIDE 10

Saturated cost partitioning

Saturated cost partitioning algorithm

  • order heuristics, then for each heuristic h:
  • use minimum costs preserving all estimates of h
  • use remaining costs for subsequent heuristics

s1,s2 s3 s4,s5 4 1 1 s1 s2,s3,s4 s5 3

hSCP

⟨h1,h2⟩(s2) = 5 + 3 = 8 2/14

slide-11
SLIDE 11

Saturated cost function

  • 1. scf(o) ≤ cost(o) for all operators o ∈ O
  • 2. h(scf, s) = h(cost, s) for all states s ∈ S

4 saturators

3/14

slide-12
SLIDE 12

Saturated cost function

  • 1. scf(o) ≤ cost(o) for all operators o ∈ O
  • 2. h(scf, s) = h(cost, s) for all states s ∈ S′ ⊆ S

4 saturators

3/14

slide-13
SLIDE 13

Saturated cost function

  • 1. scf(o) ≤ cost(o) for all operators o ∈ O
  • 2. h(scf, s) = h(cost, s) for all states s ∈ S′ ⊆ S

→ 4 saturators

3/14

slide-14
SLIDE 14

Saturate for all states

Saturator all scf(o) = maxa

→b∈T(h(a) − h(b))

h=1 h=2 h=2 h=0 1 1 1 1 1

4/14

slide-15
SLIDE 15

Saturate for reachable states

Saturator reach

  • remove unreachable states and transitions
  • use all saturator for remaining states

h=1 h=2 h=2 h=0 1 1 1 1 1

5/14

slide-16
SLIDE 16

Saturate for reachable states

Saturator reach

  • remove unreachable states and transitions
  • use all saturator for remaining states

h=1 h=2 h=0 1 1 1 1

5/14

slide-17
SLIDE 17

Saturate for reachable states

Saturator reach

  • remove unreachable states and transitions
  • use all saturator for remaining states

h=1 h=2 h=0 1 1 1

5/14

slide-18
SLIDE 18

Saturate for a perimeter

Saturator perim

  • use perimeter k around goal states (k = h(s))
  • cap all distances at k
  • use all saturator

h=1 h=2 h=2 h=0 1 1 1 1 1

6/14

slide-19
SLIDE 19

Saturate for a perimeter

Saturator perim

  • use perimeter k around goal states (k = h(s))
  • cap all distances at k
  • use all saturator

h=1 h=1 h=1 h=0 1 1 1 1 1

6/14

slide-20
SLIDE 20

Saturate for a perimeter

Saturator perim

  • use perimeter k around goal states (k = h(s))
  • cap all distances at k
  • use all saturator

h=1 h=1 h=1 h=0 1

6/14

slide-21
SLIDE 21

Saturate for a single state

Saturator lp Ha ≤ 0 for all a ∈ S⋆ Ha ≤ Co + Hb for all a o − → b ∈ T Co ≤ cost(o) for all o ∈ O Hα(s) = h(s)

h=1 h=2 h=2 h=0 1 1 1 1 1

7/14

slide-22
SLIDE 22

Saturate for a single state

Saturator lp Ha ≤ 0 for all a ∈ S⋆ Ha ≤ Co + Hb for all a o − → b ∈ T Co ≤ cost(o) for all o ∈ O Hα(s) = h(s)

h=1 h=2 h=0 1 1 1 1

7/14

slide-23
SLIDE 23

Saturate for a single state

Saturator lp Ha ≤ 0 for all a ∈ S⋆ Ha ≤ Co + Hb for all a o − → b ∈ T Co ≤ cost(o) for all o ∈ O Hα(s) = h(s)

h=1 h=1 h=0 1

7/14

slide-24
SLIDE 24

No unique minimum saturated cost function

s1 s2 s3 1 1 1

  • large Pareto frontier
  • chain saturators

8/14

slide-25
SLIDE 25

No unique minimum saturated cost function

s1 s2 s3 1 1 1

  • large Pareto frontier
  • → chain saturators

8/14

slide-26
SLIDE 26

Chaining saturators

reach, perim:

h=1 h=2 h=2 h=0 1 1 1 1 1

9/14

slide-27
SLIDE 27

Chaining saturators

reach, perim:

h=1 h=2 h=0 1 1 1

9/14

slide-28
SLIDE 28

Chaining saturators

reach, perim:

h=1 h=1 h=0 1

9/14

slide-29
SLIDE 29

Experiments

slide-30
SLIDE 30

Setup

  • 30 minutes, 3.5 GiB
  • hill climbing and systematic PDBs, Cartesian abstractions
  • online and offline
  • non-negative and general costs

10/14

slide-31
SLIDE 31

Heuristic value for initial state – non-negative costs (1506 tasks)

all reach perim lp all, lp reach, lp perim, lp all – 2 2 88 2 2 2 reach 15 – 5 88 2 2 2 perim 433 430 – 142 15 15 6 lp 493 490 229 – 79 79 84 all, lp 507 505 219 179 – 0 12 reach, lp 507 505 219 179 – 12 perim, lp 512 510 217 185 16 16 –

11/14

slide-32
SLIDE 32

Heuristic value for initial state – non-negative costs (1506 tasks)

all reach perim lp all, lp reach, lp perim, lp all – 2 2 88 2 2 2 reach 15 – 5 88 2 2 2 perim 433 430 – 142 15 15 6 lp 493 490 229 – 79 79 84 all, lp 507 505 219 179 – 0 12 reach, lp 507 505 219 179 – 12 perim, lp 512 510 217 185 16 16 –

11/14

slide-33
SLIDE 33

Heuristic value for initial state – non-negative costs (1506 tasks)

all reach perim lp all, lp reach, lp perim, lp all – 2 2 88 2 2 2 reach 15 – 5 88 2 2 2 perim 433 430 – 142 15 15 6 lp 493 490 229 – 79 79 84 all, lp 507 505 219 179 – 0 12 reach, lp 507 505 219 179 – 12 perim, lp 512 510 217 185 16 16 –

11/14

slide-34
SLIDE 34

Heuristic value for initial state – non-negative costs (1506 tasks)

all reach perim lp all, lp reach, lp perim, lp all – 2 2 88 2 2 2 reach 15 – 5 88 2 2 2 perim 433 430 – 142 15 15 6 lp 493 490 229 – 79 79 84 all, lp 507 505 219 179 – 0 12 reach, lp 507 505 219 179 – 12 perim, lp 512 510 217 185 16 16 –

11/14

slide-35
SLIDE 35

Heuristic value for initial state – non-negative costs (1506 tasks)

all reach perim lp all, lp reach, lp perim, lp all – 2 2 88 2 2 2 reach 15 – 5 88 2 2 2 perim 433 430 – 142 15 15 6 lp 493 490 229 – 79 79 84 all, lp 507 505 219 179 – 0 12 reach, lp 507 505 219 179 – 12 perim, lp 512 510 217 185 16 16 –

11/14

slide-36
SLIDE 36

Heuristic value for initial state – non-negative costs (1506 tasks)

all reach perim lp all, lp reach, lp perim, lp all – 2 2 88 2 2 2 reach 15 – 5 88 2 2 2 perim 433 430 – 142 15 15 6 lp 493 490 229 – 79 79 84 all, lp 507 505 219 179 – 0 12 reach, lp 507 505 219 179 – 12 perim, lp 512 510 217 185 16 16 –

11/14

slide-37
SLIDE 37

Online – non-negative (nn) vs. general costs (gen)

Coverage Evals/sec h(s0) higher nn gen nn gen nn gen all 680 703 940.9 946.2 7 195 reach 657 679 501.4 514.1 5 222 perim 722 726 897.7 906.6 4 99 lp 360 320 8.7 6.9 493 144 all, lp 385 354 10.0 8.1 138 180 reach, lp 384 355 9.9 8.1 120 181 perim, lp 392 367 11.0 8.8 31 134

12/14

slide-38
SLIDE 38

Offline subset-saturated cost partitioning

all reach perim lp perim Coverage all – 1 9 36 1 1136 reach 0 – 8 36 1 1134 perim 1 2 – 36 1117 lp 0 0 – 694 perim 4 4 11 36 – 1144

13/14

slide-39
SLIDE 39

Offline subset-saturated cost partitioning

all reach perim lp perim⋆ Coverage all – 1 9 36 1 1136 reach 0 – 8 36 1 1134 perim 1 2 – 36 1117 lp 0 0 – 694 perim⋆ 4 4 11 36 – 1144

13/14

slide-40
SLIDE 40

Summary

  • generalization of saturated cost partitioning
  • three new saturators
  • stronger heuristics

14/14