530 likes | 651 Views
Searching for Macro-operators with Automatically Generated Heuristics. Istv á n T. Hern á dv ö lgyi University of Ottawa istvan@site.uottawa.ca. Motivation. Time. 1 week. Korf 97. us. Korf 85. Sims 70, Osterlund 95. 1 sec. 50. 85. 455. 18. Quality. Subgoals and Macros. 1. 2. 3.
E N D
Searching for Macro-operators with Automatically Generated Heuristics István T. Hernádvölgyi University of Ottawa istvan@site.uottawa.ca
Motivation Time 1 week Korf 97 us Korf 85 Sims 70, Osterlund 95 1 sec 50 85 455 18 Quality
Subgoals and Macros 1 2 3 4 5
1 2 3 4 5
1 2 3 4 5 1 1 2 1 2 3 1 2 3 4
1 2 3 4 5 1 1 1 1 1 1 2 1 2 1 2 1 2 1 2 3 1 2 3 1 2 3 1 2 3 4 1 2 3 4
1 2 3 4 5 {} 1 {o1} 1 {o2} 1 {o3} 1 {o4} 1 {} 1 2 {o2,o1,o2} 1 2 {o3,o2,o3} 1 2 {o4,o3,o4} 1 2 {} 1 2 3 {o3,o1,o3} 1 2 3 {o4,o2,o4} 1 2 3 {} 1 2 3 4 {o4,o1,o4} 1 2 3 4
4 1 2 5 3 {} 1 {o1} 1 {o2} 1 {o3} 1 {o4} 1 {} 1 2 {o2,o1,o2} 1 2 {o3,o2,o3} 1 2 {o4,o3,o4} 1 2 {} 1 2 3 {o3,o1,o3} 1 2 3 {o4,o2,o4} 1 2 3 {} 1 2 3 4 {o4,o1,o4} 1 2 3 4
4 1 2 5 3 {} 1 {o1} 1 {o2} 1 {o3} 1 {o4} 1 {} 1 2 {o2,o1,o2} 1 2 {o3,o2,o3} 1 2 {o4,o3,o4} 1 2 {} 1 2 3 {o3,o1,o3} 1 2 3 {o4,o2,o4} 1 2 3 {} 1 2 3 4 {o4,o1,o4} 1 2 3 4 {o1}
1 4 2 5 3 {} 1 {o1} 1 {o2} 1 {o3} 1 {o4} 1 {} 1 2 {o2,o1,o2} 1 2 {o3,o2,o3} 1 2 {o4,o3,o4} 1 2 {} 1 2 3 {o3,o1,o3} 1 2 3 {o4,o2,o4} 1 2 3 {} 1 2 3 4 {o4,o1,o4} 1 2 3 4 {o1,o2,o1,o2}
1 2 4 5 3 {} 1 {o1} 1 {o2} 1 {o3} 1 {o4} 1 {} 1 2 {o2,o1,o2} 1 2 {o3,o2,o3} 1 2 {o4,o3,o4} 1 2 {} 1 2 3 {o3,o1,o3} 1 2 3 {o4,o2,o4} 1 2 3 {} 1 2 3 4 {o4,o1,o4} 1 2 3 4 {o1,o2,o1,o2,o4,o2,o4}
1 2 3 5 4 {} 1 {o1} 1 {o2} 1 {o3} 1 {o4} 1 {} 1 2 {o2,o1,o2} 1 2 {o3,o2,o3} 1 2 {o4,o3,o4} 1 2 {} 1 2 3 {o3,o1,o3} 1 2 3 {o4,o2,o4} 1 2 3 {} 1 2 3 4 {o4,o1,o4} 1 2 3 4 {o1,o2,o1,o2,o4,o2,o1,o4} {o1,o2,o1,o2,o4,o2,o4,o4,o1,o4} {o2,o4,o3,o2}
{} 1 2 {o2,o1,o2} 1 2 {o3,o2,o3} 1 2 {o4,o3,o4} 1 2 {} 1 2 3 {o3,o1,o3} 1 2 3 {o4,o2,o4} 1 2 3
{} 1 2 3 {o3,o1,o3} 1 2 3 {o4,o2,o4} 1 2 3 {o1,o2,o1} 1 3 2 {o1,o3,o2} 1 2 3 {o1,o4,o1,o3} 1 2 3 {o2,o3,o1} 1 3 2 {o3,o2,o3} 1 3 2 {o2,o4,o2} 1 2 3 {o3,o4,o1} 1 3 2 {o2,o3,o4,o2,o3} 1 3 2 {o4,o3,o4} 1 3 2
Solution: use heuristics to speed up search for each macro • For each subgoal, create a heuristic specifically for that subgoal • Can combine this with the heuristic for the previous subgoal (because that subgoal is a subset of the current subgoal) • Need to create these automatically, they are unintuitive spaces and the heuristics are “throw away”
Previous WorkAutomatically Generated Heuristics • Absolver [Prieditis90] • Pattern Database [CulbersonSchaeffer96] • 15 Puzzle, “don’t care tiles”, Rubik’s Cube [Korf97] • Domain Abstraction [HolteHernadvolgyi99] • Planning (Strips) [Edelkamp2000]
1 2 3 1 2 3 4 5 6 6 7 8 Pattern Database 181,440 15,120
Pattern Database 6 3 4 6 3 8 7 5 2 1 2 1
1 2 3 4 5 6 7 8 Domain Abstraction 181,440 5,040
Rubik’s Cube ULB UB URB UL U UR ULB UL ULF UF URF UR URB UB ULB LB L LF F RF R RB B LB DLB DL DLF DF DRF DR DRB DB DLB DL D DR DLB DB DRB
State Representation Goal state (subscripts indicate orientation) Typical start state
Macro Search Space Goal state for the subgoal “fix RF and RB” Typical start state for this subgoal
Domain Abstraction • “don’t care” about a cubie’s orientation • Make 2 (or more) cubies indistinguishable from each other • Continue to add abstractions until the abstract space is sufficiently small (2 million entries)
Abstraction Example Abstracted goal state (x = orientation doesn’t matter) Abstracted start state (typical)
Contributions • Automatically Generated Heuristics for Finding Macro-operators • Merging Subgoals to Obtain Shorter Solutions • 44% Improvement for Rubik’s Cube • Method is General and Mostly Automatic
Using Symmetries URF, URB,ULB,ULF,UF,UL,UR,UB LF,LB,DL LF,RF,DR RF,RB,DR LB,RB,DL LF, RF RF,RB LF,RB LF,LB DF,DB (> DR) DRF,DRB DLF, DLB DLF (>DLB) DRF (> DRB)
Open Questions • Do the improvements carry over to other spaces? • Does the order of the subgoals matter?
Motivation Time 1 week Korf 97 human Kloosterman 90 Thistlethwaite 80 Korf 85 Sims 70, Osterlund 95 1 sec Kociemba 92 50 85 455 18 Quality
Merging Consecutive Subgoals Serial Decomposability [Korf83] Idea:
Previous WorkMacro-Operators • Stabilizer Chain [Sims70, Osterlund95] • Bi-directional Partial-Match [Korf85]