Michaelzanussi.com header image

Universal Puzzle Engine

PuzzleMuncher is a universal puzzle engine used to automatically solve puzzles. PuzzleMuncher is based on the A* algorithm, which, given a starting state and a goal state, finds the shortest path between the two states. In order to do this, the A* algorithm utilizes a heuristic to aid in pathfinding. The heuristic estimates the best path to use to reach the goal by calculating the cost to reach the goal state from the current state. If the heuristic always underestimates the true cost to reach the goal (i.e., it’s admissible), then A* is always guaranteed to find the shortest path. In addition to being admissible, a heuristic is deemed monotonic if and only if it underestimates the cost from every state to each of their successor states.

( Download Source ) For illustrative purposes only; not runnable.

( JavaDoc )