Pattern Selection for Optimal Classical Planning with Saturated Cost Partitioning Jendrik Seipp August 14, 2019 University of Basel, Switzerland
Setting • optimal classical planning • pattern databases 1/14 • A ∗ search + admissible heuristic
How to select patterns? • bin packing (Edelkamp 2001) • genetic algorithms (Edelkamp 2006) • hill climbing (Haslum et al. 2007) • CPC (Franco et al. 2017) • CEGAR (Rovner et al. 2019) • systematic (Pommerening et al. 2013) 2/14
How to combine multiple PDB heuristics? • maximize • cost partitioning • saturated cost partitioning 3/14
h 1 h 2 s 2 Saturated cost partitioning s 2 ,s 3 ,s 4 8 3 5 h SCP 1 1 4 4 s 5 s 1 Saturated cost partitioning algorithm 1 1 4 4 s 4 ,s 5 s 3 s 1 ,s 2 • use remaining costs for subsequent heuristics • use minimum costs preserving all estimates of h • order heuristics, then for each heuristic h: 4/14
h 1 h 2 s 2 Saturated cost partitioning Saturated cost partitioning algorithm 8 3 5 h SCP 1 1 4 4 s 5 s 2 ,s 3 ,s 4 s 1 1 1 4 4 s 4 ,s 5 s 3 s 1 ,s 2 • use remaining costs for subsequent heuristics • use minimum costs preserving all estimates of h • order heuristics, then for each heuristic h: 4/14 max( h 1 ( s 2 ) , h 2 ( s 2 )) = max( 5 , 4 ) = 5
h 1 h 2 s 2 Saturated cost partitioning 1 8 3 5 h SCP s 5 s 2 ,s 3 ,s 4 s 1 1 Saturated cost partitioning algorithm 4 4 s 4 ,s 5 s 3 s 1 ,s 2 • use remaining costs for subsequent heuristics • use minimum costs preserving all estimates of h • order heuristics, then for each heuristic h: 4/14
h 1 h 2 s 2 Saturated cost partitioning 1 8 3 5 h SCP s 5 s 2 ,s 3 ,s 4 s 1 0 Saturated cost partitioning algorithm 1 4 s 4 ,s 5 s 3 s 1 ,s 2 • use remaining costs for subsequent heuristics • use minimum costs preserving all estimates of h • order heuristics, then for each heuristic h: 4/14
h 1 h 2 s 2 Saturated cost partitioning s 2 ,s 3 ,s 4 8 3 5 h SCP 0 1 3 0 s 5 s 1 Saturated cost partitioning algorithm 1 0 1 4 s 4 ,s 5 s 3 s 1 ,s 2 • use remaining costs for subsequent heuristics • use minimum costs preserving all estimates of h • order heuristics, then for each heuristic h: 4/14
h 1 h 2 s 2 Saturated cost partitioning s 2 ,s 3 ,s 4 8 3 5 h SCP 0 0 3 0 s 5 s 1 Saturated cost partitioning algorithm 1 0 1 4 s 4 ,s 5 s 3 s 1 ,s 2 • use remaining costs for subsequent heuristics • use minimum costs preserving all estimates of h • order heuristics, then for each heuristic h: 4/14
Saturated cost partitioning Saturated cost partitioning algorithm h SCP 0 0 3 0 s 5 s 2 ,s 3 ,s 4 s 1 1 0 1 4 s 4 ,s 5 s 3 s 1 ,s 2 • use remaining costs for subsequent heuristics • use minimum costs preserving all estimates of h • order heuristics, then for each heuristic h: 4/14 ⟨ h 1 , h 2 ⟩ ( s 2 ) = 5 + 3 = 8
Diverse orders for saturated cost partitioning Diversification algorithm S • start with empty set of orders • for 200 seconds: • sample a new state s • find a greedy order for s S profits from it, keep it • otherwise, discard it 5/14 • sample 1000 states ˆ • if a sample in ˆ
Idea • select patterns • compute diverse saturated cost partitionings over PDBs 6/14
Idea • select patterns with saturated cost partitioning • compute diverse saturated cost partitionings over PDBs 6/14
• problem: testing every state is infeasible Sys-SCP: a new pattern selection algorithm One Sys-SCP iteration • repeat until hitting time limit • return all selected patterns 7/14 • start with empty pattern sequence σ • for each pattern P ∈ Order ( Sys ) : σ ( s ) < h SCP σ ⊕ P ( s ) < ∞ for any state s • add P to σ if h SCP
Sys-SCP: a new pattern selection algorithm One Sys-SCP iteration • repeat until hitting time limit • return all selected patterns • problem: testing every state is infeasible 7/14 • start with empty pattern sequence σ • for each pattern P ∈ Order ( Sys ) : σ ( s ) < h SCP σ ⊕ P ( s ) < ∞ for any state s • add P to σ if h SCP
Evaluating a pattern using its projection Theorem 8/14 ∃ s ∈ S ( T ) : h SCP ( cost , s ) < h SCP σ ⊕ P ( cost , s ) < ∞ σ ⇔ ∃ s ′ ∈ S ( T P ) : 0 < h ∗ T P ( rem , s ′ ) < ∞
Using the theorem • keep track of the remaining cost function • select a PDB if it has positive finite goal distances 9/14
Pattern orders order by increasing pattern size, break ties by: • random • states in projection • active operators • Fast Downward variable order: • up: [7, 5], [8, 2], [8, 5] • down: [8, 5], [8, 2], [7, 5] 10/14
Pattern orders order by increasing pattern size, break ties by: • random • states in projection • active operators • Fast Downward variable order: • up: [7, 5], [8, 2], [8, 5] 10/14 • down: [8, 5], [8, 2], [7, 5]
Systematic patterns with limits 1057 1035 1050 1088 985 840 Sys-Lim 731 922 986 Lim: 2M states per PDB, 20M states in collection, 100 seconds 840 Sys 5 4 3 2 1 Max pattern size 11/14
Sys-SCP vs. other pattern selection algorithms 21 – 3 3 2 3 #domains Sys-SCP worse – 21 23 HC Sys-3-Lim 28 #domains Sys-SCP better 1168 1098 1088 1055 966 Coverage CPC CEGAR Sys-SCP 12/14
Future work • test patterns on samples 13/14
Summary • new pattern selection algorithm based on saturated cost partitioning • outperforms all previous pattern selection algorithms 14/14
Recommend
More recommend