better orders for saturated cost partitioning in optimal classical … · 2017-06-24 · setting...
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/1.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/2.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/3.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/4.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/5.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/6.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/7.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/8.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/9.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/10.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/11.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/12.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/13.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/14.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/15.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/16.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/17.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/18.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/19.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/20.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/21.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/22.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/23.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/24.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/25.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/26.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/27.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/28.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/29.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/30.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/31.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/32.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/33.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/34.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022043000/5f7825de2406c50af07bc929/html5/thumbnails/35.jpg)
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