better orders for saturated cost partitioning in optimal classical … · 2017-06-24 · setting...

35
Better Orders for Saturated Cost Partitioning in Optimal Classical Planning Jendrik Seipp University of Basel June 17, 2017

Upload: others

Post on 27-Jul-2020

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Better Orders for Saturated Cost Partitioningin Optimal Classical Planning

Jendrik Seipp

University of Basel

June 17, 2017

Page 2: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Setting

• optimal classical planning

• A∗ search + admissible heuristic

• abstraction heuristics

s1

s2

s3 s4

o 1o2

o3 s1

s2

s3 s4

o 1o2

o3

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 2/18

Page 3: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Setting

• optimal classical planning

• A∗ search + admissible heuristic

• abstraction heuristics

s1

s2

s3 s4

o 1o2

o3 s1

s2

s3 s4

o 1o2

o3

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 2/18

Page 4: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Problem

• single heuristic unable to capture enough information

→ use multiple heuristics

• how to combine multiple heuristics admissibly?

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 3/18

Page 5: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Problem

• single heuristic unable to capture enough information→ use multiple heuristics

• how to combine multiple heuristics admissibly?

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 3/18

Page 6: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Problem

• single heuristic unable to capture enough information→ use multiple heuristics

• how to combine multiple heuristics admissibly?

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 3/18

Page 7: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Multiple Heuristics

s1

s2

s3 s4

o 1o2

o3 s1

s2

s3 s4

o 1o2

o3

h1(s1) = 1 h2(s1) = 1

• maximizing only selects best heuristic → h(s1) = 1

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 4/18

Page 8: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Multiple Heuristics

s1

s2

s3 s4

o 1o2

o3 s1

s2

s3 s4

o 1o2

o3

h1(s1) = 1 h2(s1) = 1

• maximizing only selects best heuristic → h(s1) = 1

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 4/18

Page 9: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Multiple Heuristics

s1

s2

s3 s4

o 1o2

o3 s1

s2

s3 s4

o 1o2

o3

h1(s1) = 1 h2(s1) = 1

• maximizing only selects best heuristic → h(s1) = 1

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 4/18

Page 10: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Multiple Heuristics: Cost Partitioning

Cost Partitioning

• split operator costs among heuristics

• total costs must not exceed original costs

→ combines heuristics

→ allows summing heuristic values admissibly

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 5/18

Page 11: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Saturated Cost PartitioningSeipp & Helmert (ICAPS 2014)

Saturated Cost Partitioning Algorithm

• order heuristics

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

s1

s2

s3 s4

o 1o2

o3 s1

s2

s3 s4o 1

o2

o3

hSCP〈h1,h2〉(s1) = 1 + 1 = 2

hSCP〈h2,h1〉(s1) = 1 + 0 = 1

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 6/18

Page 12: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Saturated Cost PartitioningSeipp & Helmert (ICAPS 2014)

Saturated Cost Partitioning Algorithm

• order heuristics

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

s1

s2

s3 s4

o 1:0

o2 :1

o3:0s1

s2

s3 s4o 1

:1

o2 :0

o3:1

hSCP〈h1,h2〉(s1) = 1 + 1 = 2

hSCP〈h2,h1〉(s1) = 1 + 0 = 1

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 6/18

Page 13: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Saturated Cost PartitioningSeipp & Helmert (ICAPS 2014)

Saturated Cost Partitioning Algorithm

• order heuristics

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

s1

s2

s3 s4

o 1:1

o2 :0

o3:0s1

s2

s3 s4o 1

:0

o2 :1

o3:1

hSCP〈h1,h2〉(s1) = 1 + 1 = 2

hSCP〈h2,h1〉(s1) = 1 + 0 = 1Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 6/18

Page 14: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Orders for Saturated Cost PartitioningSeipp, Keller & Helmert (AAAI 2017)

• orders can be arbitrarily bad→ hill climbing in space of orders

• a single order might only be good for a single state→ use multiple orders

• using too many orders slows down evaluation→ use diverse orders

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 7/18

Page 15: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Combining Heterogeneous Abstraction Heuristics

ICAPS 2017

hSCPHC hSCPSys hSCPCart

hSCPHC,Sys,Cart max(hSCPHC , hSCPSys , hSCPCart)

Tasks (1667) 805 852 965

1006 1032

max(〈h1〉, 〈h′1, h′2〉) ≤

max(〈h1, h′1, h′2〉, 〈h′1, h′2, h1〉)

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 8/18

Page 16: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Combining Heterogeneous Abstraction Heuristics

ICAPS 2017

hSCPHC hSCPSys hSCPCart hSCPHC,Sys,Cart

max(hSCPHC , hSCPSys , hSCPCart)

Tasks (1667) 805 852 965 1006

1032

max(〈h1〉, 〈h′1, h′2〉) ≤

max(〈h1, h′1, h′2〉, 〈h′1, h′2, h1〉)

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 8/18

Page 17: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Combining Heterogeneous Abstraction Heuristics

ICAPS 2017

hSCPHC hSCPSys hSCPCart hSCPHC,Sys,Cart max(hSCPHC , hSCPSys , hSCPCart)

Tasks (1667) 805 852 965 1006 1032

max(〈h1〉, 〈h′1, h′2〉) ≤

max(〈h1, h′1, h′2〉, 〈h′1, h′2, h1〉)

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 8/18

Page 18: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Combining Heterogeneous Abstraction Heuristics

ICAPS 2017

hSCPHC hSCPSys hSCPCart hSCPHC,Sys,Cart max(hSCPHC , hSCPSys , hSCPCart)

Tasks (1667) 805 852 965 1006 1032

max(〈h1〉, 〈h′1, h′2〉) ≤

max(〈h1, h′1, h′2〉, 〈h′1, h′2, h1〉)

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 8/18

Page 19: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Drawbacks of Diversification

Diversification algorithm

• sample 1000 states

• start with empty set of orders

• until time limit is reached:• generate a random order• if it improves upon current set of orders, keep it• otherwise, discard it

• considers only random orders→ too many orders to stumble over good ones

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 9/18

Page 20: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Drawbacks of Diversification

Diversification algorithm

• sample 1000 states

• start with empty set of orders

• until time limit is reached:• generate a random order• if it improves upon current set of orders, keep it• otherwise, discard it

• considers only random orders→ too many orders to stumble over good ones

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 9/18

Page 21: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Drawbacks of Hill Climbing

Hill climbing search

• sample 1000 states

• start with random order

• until no better successor for samples found:• swap positions of two heuristics• move to first improving successor

• tries to find order for set of states→ there may not be a single order for multiple states

• starts with random order→ decent initial solution important for local optimization

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 10/18

Page 22: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Drawbacks of Hill Climbing

Hill climbing search

• sample 1000 states

• start with random order

• until no better successor for samples found:• swap positions of two heuristics• move to first improving successor

• tries to find order for set of states→ there may not be a single order for multiple states

• starts with random order→ decent initial solution important for local optimization

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 10/18

Page 23: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Improvements

• optimize for single state

• start with greedy order

• diversify optimized greedy orders

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 11/18

Page 24: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Greedy Order

Objectives:

• increase heuristic value quickly

• preserve costs for subsequent heuristics

Value-per-cost ratio

ratio(h, s) =h(s)

saturated costs for h

Greedy algorithm

• start with empty order

• until all heuristics are ordered• append heuristic h with highest value-per-cost ratio• subtract saturated costs for h from overall costs

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 12/18

Page 25: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Greedy Order

Objectives:

• increase heuristic value quickly

• preserve costs for subsequent heuristics

Value-per-cost ratio

ratio(h, s) =h(s)

saturated costs for h

Greedy algorithm

• start with empty order

• until all heuristics are ordered• append heuristic h with highest value-per-cost ratio• subtract saturated costs for h from overall costs

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 12/18

Page 26: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Greedy Order

Objectives:

• increase heuristic value quickly

• preserve costs for subsequent heuristics

Value-per-cost ratio

ratio(h, s) =h(s)

saturated costs for h

Greedy algorithm

• start with empty order

• until all heuristics are ordered• append heuristic h with highest value-per-cost ratio• subtract saturated costs for h from overall costs

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 12/18

Page 27: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Greedy Order: Example

s1

s2

s3 s4

o 1o2

o3 s1

s2

s3 s4

o 1

o2

o3

h1(s1) = 1saturated costs: 1

ratio: 1

h2(s1) = 1saturated costs: 2

ratio = 0.5

→ 〈h1, h2〉

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 13/18

Page 28: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Greedy Order: Example

s1

s2

s3 s4

o 1:0

o2 :1

o3:0s1

s2

s3 s4

o 1:0

o2 :1

o3:1

h1(s1) = 1saturated costs: 1

ratio: 1

h2(s1) = 1saturated costs: 2

ratio = 0.5

→ 〈h1, h2〉

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 13/18

Page 29: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Greedy Order: Example

s1

s2

s3 s4

o 1:0

o2 :1

o3:0s1

s2

s3 s4

o 1:0

o2 :1

o3:1

h1(s1) = 1saturated costs: 1

ratio: 1

h2(s1) = 1saturated costs: 2

ratio = 0.5

→ 〈h1, h2〉

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 13/18

Page 30: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Single Order for Initial State

random greedy random-opt greedy-opt

random – 105 0 20

greedy 989 – 268 0

random-opt 1086 463 – 111

greedy-opt 1108 548 402 –

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 14/18

Page 31: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Diverse Orders

New diversification algorithm

Until time limit is reached:

• sample state s

• find greedy order for s

• optimize order with hill climbing

• keep order if diverse

max random random-opt greedy-opt

Tasks (1667) 1032 1006 1009 1048

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 15/18

Page 32: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Diverse Orders

New diversification algorithm

Until time limit is reached:

• sample state s

• find greedy order for s

• optimize order with hill climbing

• keep order if diverse

max random random-opt greedy-opt

Tasks (1667) 1032 1006 1009 1048

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 15/18

Page 33: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Comparison to State of the Art

Using h2 mutexes:

• SymBA∗2 outperforms hSCPgreedy-opt in 11 domains

• hSCPgreedy-opt outperforms SymBA∗2 in 22 domains

• SymBA∗2 solves 1008 tasks

• hSCPgreedy-opt solves 1084 tasks

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 16/18

Page 34: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Related ICAPS Talk and PosterSeipp, Keller & Helmert (ICAPS 2017)

A Comparison of Cost Partitioning Algorithmsfor Optimal Classical Planning

• theoretical and empirical comparison of cost partitioningalgorithms

• saturated cost partitioning usually method of choice for hillclimbing PDBs, systematic PDBs, Cartesian abstractions andlandmark heuristics

Presented on Wednesday in the first ICAPS session “OptimalPlanning”

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 17/18

Page 35: Better Orders for Saturated Cost Partitioning in Optimal Classical … · 2017-06-24 · Setting optimal classical planning A search + admissible heuristic abstraction heuristics

Conclusion

• new greedy algorithm for finding orders

• pair with optimization and diversification

• combine heterogeneous abstraction heuristics

Jendrik Seipp (Basel) Better Orders for Saturated Cost Partitioning 18/18