I try to investigate different algorithms for a short path between two points in a plane with polygonal obstacles.
The vast majority of algorithms I found use discrete maps (Grid Map, visibility graph, Voronoi Roadmap, etc.).
Some books (like “Elements of Robotics” by Ben-Ari or “Introduction to Autonomous Robots” by Nikolaus Correll) mention continuous maps (e.g. raw polygon data), but do not explain corresponding algorithms. They claim memory or efficiency advantages for few and simple obstacles, which could be very interesting for me.
I believe, there should be a clever approach using geometric calculation (e.g. intersection detection) and some algorithmic paradigm (e.g. least cost branch and bound), but I do not want to poorly reinvent the wheel.
Are there any resources for some short(est) path algorithms using continuous maps or useful keywords to search for?
Like suggested, I try to specify some of the terms I used:
- Continuous maps
refer to the storage of (continuous) real number values of geometric shapes. Obstacle/Triangle I. would be stored as: A = (3,2), B=(7,5), C=(7,2).
- Discrete maps
refer to the sub-division into chunks (discretization, e.g. like in a grid map). Obstacle/Triangle I. would now be stored as cell indices:
(3,2), (4,2), (5,2), (6,2), (5,3), (6,3), (6,4)
path-finding in discrete maps is often accomplish by graph based algorithms like Dijkstra
or A*
.
- Geometric calculation is just a vague term I use for operations of computational geometry I would expect in a path-finding algorithm for continuous maps. (e.g. Translation, perpendicular distance, intersection detection)