The following report describes some techniques that generalize and attempt to improve upon the Coarse-to-Fine Dynamic Programming (CFDP) algorithm developed by Christopher Raphael. CFDP uses a hierarchy of abstraction graphs, iteratively searches to find optimal paths, and refines those paths until a base level is found. Our most successful approach introduces a cached heuristic that reduces the effort spent re-searching in a graph. 1 Brief Introduction and Problem Domain The generic domain we are interested in is single-agent search. Single-agent search encompasses a variety of problems such as pathfinding, DNA sequence alignment, and planning. Generally stated, single-agent search can be used to solve problems structured as finding a minimal-cost path from a start node to a goal node in a weighted, directed graph. The domain in which we tested our algorithms was the pathfinding domain. We used 8-connected grid worlds where the undirected edges have cost one. This domain was used for two reasons: it made our techniques easier to visualize for the purpose of checking validity, and a pre-existing framework, Nathan Sturtevant’s Hierarchical Open Graph (HOG), facilitated rapid development.
[1]
Christopher Raphael,et al.
Coarse-to-Fine Dynamic Programming
,
2001,
IEEE Trans. Pattern Anal. Mach. Intell..
[2]
Robert C. Holte,et al.
Hierarchical A*: Searching Abstraction Hierarchies Efficiently
,
1996,
AAAI/IAAI, Vol. 1.
[3]
László Méro,et al.
A Heuristic Search Algorithm with Modifiable Estimate
,
1984,
Artif. Intell..
[4]
David Silver,et al.
Cooperative Pathfinding
,
2005,
AIIDE.
[5]
Richard E. Korf,et al.
Real-Time Heuristic Search
,
1990,
Artif. Intell..