Traversing Large Spaces: Finding a Path with a Hybrid A* Search

A classic problem in artificial intelligence is path finding, determining a good path from position A to position B, with the least cost. The authors developed the algorithm Traversing Large Spaces (TLS) as one solution to this problem. In the algorithm, the search area is represented by a large image where the value of each pixel specifies how traversable it is. Several interesting images include road maps, terrain maps, and mazes. Another possible use of the algorithm is automatic image cropping.

To do the actual path planning, TLS uses a modified A* search algorithm that utilizes multiple heuristics to find a ’good’ path from point A to point B on any given image. Classic A* search is an algorithm that finds the ’best’ solution to a problem, after checking all possible paths. This can be an expensive process, in CPU time, memory used, and real time. To better improve the speed, and ’prune’ some of the search possibilities, multiple heuristics are used by TLS to guide the A* search. There are two types of heuristics. Admissible heuristics always underestimate the ’cost’ to the solution, pruning anything that will never be an optimal solution Inadmissible heuristics do not necessarily underestimate the cost to the solution in all cases, but will prune paths which are most likely not going to be an optimal solution. TLS utilizes two admissible heuristics (Manhattan Distance and Direction) and one inadmissible heuristic (Path Difficulty) in order to find its final path.