The Puzzle Solver

The solver always chooses the optimal solution, i.e., with the fewest number of moves (it uses the A* search strategy, with the manhattan distance of each piece to its ultimate goal as the search heuristic). Due to the size of the problem, I've fudged a bit with the randomization algorithm at the beginning to limit the size of the search space, but still, occasionally you may get a puzzle that takes the machine a while to solve. (Most, however, take under 10 seconds.)

To use the Puzzle Solver, click on "New" to get a new puzzle. Then click "Solve" to have the applet find an optimal solution path. You can then view the animation by clicking on "Run" or step through it using "Step".

For those who are interested, here's the source.

email comments to