Download presentation
Presentation is loading. Please wait.
Published byRoxanne Richardson Modified over 6 years ago
1
Finding Optimal Solutions to Rubik's Cube Using Pattern Databases
Richard E. Korf Computer Science UCLA Presented By Christopher Brown
2
The Cube Erno Rubik of Hungary, 1974. Cubies:
Edges = 12 w/ 2 orientations each Corners = 8 w/ 3 orientations each 12 different “universes” of cubes
3
The Cube 43,252,003,274,489,856,000 Possible Cubes!! Cubies:
Edges = 12 w/ 2 orientations each Corners = 8 w/ 3 orientations each 12! * 2^12 * 8! * 3^8 = 519,024,039,293,878,272,000 / 12 = 43,252,003,274,489,856,000 43 Quintillion
4
How Many Moves? At Depth 17, the total number of nodes is not even 20 Quintillion..there must be at least some at depth 18. Superflip
5
Heuristics Expected Values Manhattan Distance Problem?
Expected value is an average – gives a good approximation, since otherwise you could only compare similar heuristics and hard to combine – not often feasible Calculated through random sampling Problem w/ Manhattan Distance 1 Move = 8 changes Divide total by 8 to stay admissible.
6
Heuristics Pattern Database Corners Edges Major Restriction: Memory
Problem w/ Manhattan Distance 1 Move = 8 changes Divide total by 8 to stay admissible. Expected value = 5.5 Corners = Expected value 8.764 4 bits / entry Table: 42 MB 6 Edges = 7.668 Table: 20 MB 7 Edges = ? 244 MB of memory
7
Experiment Max of 3 heuristics admissible 10 Random Cubes
100 move random walks to generate 700,000 nodes / second Conjecture that the diameter of the space is 20 moves. (superflip) 100 moves is reasonable
8
Experiment Sun Ultra Sparc 1 workstation # nodes stable
116 – 127 for depth 17 complete to depth 16 = 9.5 billion complete to depth 17 = 122 billion 2 days complete depth 18 – 4 weeks?
9
Results Performance e – expected value d – depth of search
IDA* should be similar to brute force of d – e Is this true? At depth 17 brute force for depth (17 – 9 = 8) -> 1.37 billion nodes Experimentally: IDA * at depth 17 -> 122 billion nodes What happened? Experimentally, the search ignores larger heuristic values, and focuses on smaller ones, so the average of encountered nodes is below the expected value. But, estimating expected value from branching factor is pessimistic. Cancel? n - states m – # of heuristic values in memory t – running time o fIDA* d – depth ≈ logb n e – ex. val ≈ logb m t ≈ bd-e ≈ blog n-log m ≈ n / m – estimates well
10
Other Research Fiat (1989) - Bidirectional search
O(bd/2)time, O(bd/4) space 10,000 vs 700,000 nodes/sec 500 bytes vs ½ byte per permutation Not faster with more memory t ≈ n/m, then O(n1/2) time takes O(n1/2) space build time? One-time cost
11
Finding Optimal Solutions to Rubik's Cube Using Pattern Databases
First Optimal Solver Expected Heuristic Values Pattern Databases Christopher Brown Korf, Richard E. “Finding Optimal Solutions to Rubik's Cube Using Pattern Databases” Proceedings of the Fourteenth National Conference on Artificial Intelligence (AAAI-97), Providence, RI, July, 1997, pp Reprinted in Games in AI Research, Jaap ven den Herik and Hiroyuki Iida, Universiteit Maastricht, 1999, pp
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.