I am trying to understand Pattern Databases for designing heuristics. I am reading Richard E. Korf's book Heuristic Search. One of its paragraphs says
The obvious heuristic for Rubik's Cube is a three dimensional version of the Manhattan distance. For each cubie, compute the minimum number of moves required to correctly position and orient it, and sum these values over all cubies.Unfortunately, to be admissible, this value has to be divided by 8, since every twist moves 8 cubies. A better heuristic is to take the maximum of the sum of Manhattan distances of the corner cubies, divided by four, and the maximum of the sum of edge cubies divided by 4. The expected value of the Manhattan distance of the edge cubies is 22/4=5.5, while the corresponding values for the corner cubies is 12.333/4 that's approximately equal to 3.08 partly because there are 12 edge cubies, but only eight corner cubes.
My question is why taking the maximum of the sum of Manhattan distances for corner cubies divided by four and the maximum of the sum of Manhattan distances for edge cubies divided by four is better heuristic than taking the sum of Manhattan distances divided by eight?
Besides, how do they get the expected values of 5.5 and 3.08?
It is better in this sense that it is closer to true value of the distance, as considering movement of corner/edge cubicles has smaller amount of errors induced. By induced error I mean calculating some distance even though you already calulated different one, which would modify your cube, thus the current computation carries on error, and so is the next one, and next one ... in general - the smalelr number of (nearly) independent elements you can find, which still guarantee heuristics to be admissable is prefered, as heuristic like this (simple summation) assumes independence of each movement, which is simply not true in rubics cube. Thus the smaller number of violations of the independences - the more reliable the heuristics.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With