1 / 29

Dual lookups in Pattern Databases

Dual lookups in Pattern Databases. Ariel Felner, Ben-Gurion Univ. Israel Uzi Zahavi, Bar-Ilan Univ. Israel Jonathan Schaeffer, Univ. of Alberta, Canada Robert C. Holte, Univ. of Alberta, Canada. Overview. Heuristic search and A* Test domains Pattern databases

lilia
Télécharger la présentation

Dual lookups in Pattern Databases

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Dual lookups in Pattern Databases Ariel Felner,Ben-Gurion Univ. Israel Uzi Zahavi,Bar-Ilan Univ. Israel Jonathan Schaeffer, Univ.of Alberta, Canada Robert C. Holte,Univ. of Alberta,Canada

  2. Overview • Heuristic search and A* • Test domains • Pattern databases • Dual lookups in pattern databases • Experimental results

  3. A* • Best-first search with a cost function of f(n)=g(n)+h(n) • g(n):actual distance from the initial state to n • h(n): estimated remained distance from n to the goal state. • h(n) is admissible if it is always underestimating • Examples of h: Air distance, Manhattan Distance

  4. Attributes of A* • If h(n)is admissible then A* is guaranteed to return an optimal (shortest) solution • A* is admissible, complete and optimally effective. [Pearl & Dechter 84] • IDA* is a linear space version of A* [Korf 85] which uses DFS iterations.

  5. Domains 15 puzzle • 10^13 states • First solved by [Korf 85] with IDA* and Manhattan distance • Takes 53 seconds 24 puzzle • 10^24 states • First solved by [Korf 96] • Takes 2 days

  6. Domains • Rubik’s cube • 10^19 states • First solved by [Korf 97] • Takes 2 days to solve

  7. (n,k) Top Spin Puzzle • n tokens arranged in a ring • States: any possible permutation of the tokens • Operators: Any k consecutive tokens can be reversed • The (17,4) version has 10^13 states • The (20,4) version has 10^18 states

  8. How to improve search? • Enhanced algorithms: • Perimeter-search [Delinberg and Nilson 95] • RBFS [Korf 93] • Frontier-search [Korf and Zang 2003] • Breadth-first heuristic search [Zhou and Hansen 04]  They all try to better explore the search tree. • Better heuristics:more parts of the search tree will be pruned.

  9. Subproblems-Abstractions • Many problems can be abstracted into subproblems that must be also solved. • A solution to the subproblem is a lower bound on the entire problem. • Example: Rubik’s cube [Korf 97] • Problem:  3x3x3 Rubik’s cube Subproblem:  2x2x2 Corner cubies.

  10. Pattern Databases heuristics • A pattern database[Culbreson & Schaeffer 96] is a lookup table that stores solutions to all configurations of the subproblem / abstraction / pattern. • This table is used as a heuristic during the search. • Example: Rubik’s cube. • Has 10^19 States. • The corner cubies subproblem has 88 Million states • A table with 88 Million entries fits in memory [Korf 97]. Search space Mapping/Projection Pattern space

  11. Example - 15 puzzle • How many moves do we need to move tiles 2,3,6,7 from locations 8,12,13,14 to their goal locations • The solution to this is located in PDB[8][12][13][14]=18

  12. 7-8 Disjoint Additive PDBs (DADB) • If you have many PDBS, take their maximum • Values of disjointdatabases can be added and are still admissible [Korf & Felner: AIJ-02, Felner, Korf & Hanan: JAIR-04]

  13. DADB:Tile puzzles 5-5-5 6-6-3 7-8 6-6-6-6 [Korf, AAAI 2005]

  14. Symmetries in PDBs • Symmetric lookups were already performed by the first PDB paper of [Culberson & Schaeffer 96] • examples • Tile puzzles: reflect the tiles about the main diagonal. • Rubik’s cube: rotate the cube • We can take the maximum among the different lookups • These are all geometricalsymmetries • We suggest a new type of symmetry!! 7 8 7 8

  15. Regular and dual representation • Regular representation of a problem: • Variables – objects (tiles, cubies etc,) • Values – locations • Dualrepresentation: • Variables – locations • Values – objects

  16. Regular vs. Dual lookups in PDBs • Regular question: Where are tiles {2,3,6,7} and how many moves are needed to gather them to their goal locations? • Dual question: Who are the tiles in locations {2,3,6,7} and how many moves are needed to distribute them to their goal locations?

  17. Regular and dual lookups • Regular lookup: PDB[8,12,13,14] • Dual lookup: PDB[9,5,12,15]

  18. Regular and dual in TopSpin • Regular lookup for C : PDB[1,2,3,7,6] • Dual lookup for C: PDB[1,2,3,8,9]

  19. Dual lookups • Dual lookups are possible when there is a symmetry between locations and objects: • Each object is in only one location and each location occupies only one object. • Good examples: TopSpin, Rubik’s cube • Bad example: Towers of Hanoi • Problematic example: Tile Puzzles

  20. Inconsistency of Dual lookups • Consistency of heuristics: • |h(a)-h(b)| <= c(a,b) Example:Top-Spin c(b,c)=1 • Both lookups for B PDB[1,2,3,4,5]=0 • Regular lookup for C PDB[1,2,3,7,6]=1 • Dual lookup for C PDB[1,2,3,8,9]=2

  21. Traditional Pathmax • children inherit f-value from their parents if it makes them larger g=1 h=4 f=5 Inconsistency g=2 h=2 f=4 g=2 h=3 f=5 Pathmax

  22. Bidirectional pathmax (BPMX) h-values h-values 2 4 BPMX 5 1 5 3 • Bidirectional pathmax: h-values are propagated in both directions decreasing by 1 in each edge. • If the IDA* threshold is 2 then with BPMX the right child will not even be generated!!

  23. Results: (17,4) TopSpin puzzle • Nodes improvement (17r+17d) : 1451 • Time improvement (4r+4d) : 72 • We also solved the (20,4) TopSpin version.

  24. Results: Rubik’s cube • Data on 1000 states with 14 random moves • PDB of 7-edges cubies • Nodes improvement (24r+24d) : 250 • Time improvement (4r+4d) : 55

  25. Results: Rubik’s cube • With duals we improved Korf’s results on random instances by a factor of 1.5 using exactly the same PDBs.

  26. Results: tile puzzles • With duals, the time for the 24 puzzle drops from 2 days to 1 day.

  27. Discussion • Results for the TopSpin and Rubik’s cube are better than those of the tile puzzles • Dual PDB lookups and BPMX cutoffs are more effective if each operators changes larger part of the states. • This is because the identity of the objects being queried in consecutive states are dramatically changed

  28. Summary • Dual PDB lookups • BPMX cutoffs for inconsistent heuristics • State of the art solvers.

  29. Future work • Duality in search spaces • Which and how many symmetries to use • Other sources of inconsistencies • Better ways for propagating inconsistencies

More Related