Open List Implementations in A*
DOI:
https://doi.org/10.1609/socs.v19i1.43090Abstract
A* is the most important algorithm in optimal heuristic search. For its implementation, details beyond the scope of textbook descriptions become relevant. One such detail is how A* deals with duplicate states. A common approach is to modify a state's open list entry when a cheaper path to that state is found, updating its key. A binary heap often serves as the underlying data structure despite its suboptimal asymptotic runtime. More complex structures with better asymptotic runtime such as Fibonacci heaps are said to not pay off. A wide-spread alternative is to delay duplicate detection until expansion, allowing multiple entries for the same state on the open list. So far, the effect of these choices has not been studied in isolation for domain-independent planning. We compare early duplicate detection using a binary heap, Fibonacci heap, pairing heap, or bucket priority queue to delayed duplicate detection in order to evaluate whether early duplicate detection can be worth it.Downloads
Published
2026-08-14
How to Cite
Christen, R., Pommerening, F., & Helmert, M. (2026). Open List Implementations in A*. Proceedings of the International Symposium on Combinatorial Search, 19(1), 213–218. https://doi.org/10.1609/socs.v19i1.43090
Issue
Section
Short Papers