A* Demo

A* with ancestor list checking on a small state graph. The edges of the state graph are bi-directional, and each edge is labeled with the cost for traversal. The remaining cost (h) estimates are random. The agenda (processing list) and search tree are also displayed. Child nodes are placed on the agenda in the following order: E, S, W, N. Cost ties are broken in favor of the node that was placed on the agenda first. To use for study, draw your own agenda and search tree on paper, and try to anticipate what will change after press of the step button. A single step represents one pass through the main loop of the algorithm, starting with popping the lowest estimated total cost (bottom) node from the agenda.