Autonomous Agents and Multi-Agent Systems

, Volume 26, Issue 3, pp 354–388 | Cite as

Field D* path-finding on weighted triangulated and tetrahedral meshes

  • Simon Perkins
  • Patrick Marais
  • James Gain
  • Mark Berman


Classic shortest path algorithms operate on graphs, which are suitable for problems that can be represented by weighted nodes or edges. Finding a shortest path through a set of weighted regions is more difficult and only approximate solutions tend to scale well. The Field D* algorithm efficiently calculates an approximate, interpolated shortest path through a set of weighted regions and was designed for navigating robots through terrains with varying characteristics. Field D* operates on unit grid or quad-tree data structures, which require high resolutions to accurately model the boundaries of irregular world structures. In this paper, we extend the Field D* cost functions to 2D triangulations and 3D tetrahedral meshes: structures which model polygonal world structures more accurately. Since robots typically have limited resources available for computation and storage, we pay particular attention to computation and storage overheads when detailing our extensions. We begin by providing analytic solutions to the minimum of each cost function for 2D triangles and 3D tetrahedra. Our triangle implementation provides a 50 % improvement in performance over an existing triangle implementation. While our 3D extension to tetrahedra is the first full analytic extension of Field D* to 3D, previous work only provided an approximate minimization for a single cost function on a 3D cube with unit lengths. Each cost function is expressed in terms of a general function whose characteristics can be exploited to reduce the calculations required to find a minimum. These characteristics can also be exploited to cache the majority of cost functions, producing a speedup of up to 28 % in the 3D tetrahedral case. We demonstrate that, in environments composed of non-grid aligned data, Multi-resolution quad-tree Field D* requires an order of magnitude more faces and between 15 and 20 times more node expansions, to produce a path of similar cost to one produced by a triangle implementation of Field D* on a lower resolution triangulation. We provide examples of 3D pathing through models of complex topology, including pathing through anatomical structures extracted from a medical data set. To summarise, this paper details a robust and efficient extension of Field D* pathing to data sets represented by weighted triangles and tetrahedra, and also provides empirical data which demonstrates the reduction in storage and computation costs that accrue when one chooses such a representation over the more commonly used quad-tree and grid-based alternatives.


Artificial intelligence Problem solving Control methods and Search Graph and tree search strategies Vision and scene understanding Representations Data structures and transforms Perceptual reasoning 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Djikstra E. (1959) A note on two problems in connexion with graphs. Numerische Mathematik 1: 269–271MathSciNetCrossRefGoogle Scholar
  2. 2.
    Hart P., Nilsson N., Raphael B. (1968) A formal basis for the heuristic determination of minimum cost paths. IEEE Transactions on Systems Science and Cybernetics 4(2): 100–107CrossRefGoogle Scholar
  3. 3.
    Nilsson N.J. (1993) Principles of artificial intelligence. Morgan Kaufmann Publishers, San FranciscoGoogle Scholar
  4. 4.
    Mitchell, J. S. B., & Papadimitriou, C. H. (1991). The weighted region problem: Finding shortest paths through a weighted planar subdivision. Journal of the ACM, 38(1), 18–73. .Google Scholar
  5. 5.
    Mata, C. S., & Mitchell, J. S. B. (1997). A new algorithm for computing shortest paths in weighted planar subdivisions (extended abstract). In Proceedings of the thirteenth annual symposium on computational geometry, SCG ’97 (pp. 264–273). New York: ACM. .
  6. 6.
    Lanthier, M., Maheshwari, A., & Sack, J. R. (1997). Approximating weighted shortest paths on polyhedral surfaces. In Proceedings of the thirteenth annual symposium on computational geometry, SCG ’97 (pp. 485–486). New York: ACM.
  7. 7.
    Aleksandrov, L., Maheshwari, A., & Sack, J. R. (2000). Approximation algorithms for geometric shortest path problems. In Proceedings of the thirty-second annual ACM symposium on theory of computing, STOC ’00 (pp. 286–295). New York: ACM.
  8. 8.
    Sun, Z., & Reif, J. (2001). Bushwhack: An approximation algorithm for minimal paths through pseudo-euclidean spaces. In P. Eades, T. Takaoka (Eds.), Algorithms and computation. Lecture notes in computer science (Vol. 2223, pp. 160–171). Berlin: Springer.Google Scholar
  9. 9.
    Sun, Z. S., & Reif, J. (2003). Adaptive and compact discretization for weighted regions optimal path finding. In Proceedings of 14th Symposium on fundamentals of computation theory LNCS (pp. 258–270). New York: Springer.Google Scholar
  10. 10.
    Aleksandrov, L., Djidjev, H., Guo, H., Maheshwari, A., Nussbaum, D., & Sack, J. R. (2006). Approximate shortest path queries on weighted polyhedral surfaces. In R. Krlovic & P. Urzyczyn (Eds.), Mathematical foundations of computer science 2006. Lecture notes in computer science (Vol. 4162, pp. 98–109). Berlin: Springer.Google Scholar
  11. 11.
    Cheng, S. W., Na, H. S., Vigneron, S., & Wang, Y. (2010). Querying approximate shortest paths in anisotropic regions. SIAM Journal on Computing, 39, 1888–1918. Scholar
  12. 12.
    Ferguson, D., & Stentz, A. T. (2005). The Field D* algorithm for improved path planning and replanning in uniform and non-uniform cost environments. Tech. Rep. CMU-RI-TR-05-19, Robotics Institute, Pittsburgh.Google Scholar
  13. 13.
    Ferguson, D., & Stentz, A. (2006). Multi-resolution Field D*. In Proceedings of the international conference on intelligent autonomous systems (IAS).Google Scholar
  14. 14.
    Samet, H. (1984). The quadtree and related hierarchical data structures. ACM Computing Surveys, 16(2), 187–260.
  15. 15.
    Carsten, J., Ferguson, D., & Stentz, A. (2006). 3D Field D*: Improved Path Planning and Replanning in Three Dimensions. In IEEE/RSJ international conference on intelligent robots and systems (pp. 3381–3386). doi: 10.1109/IROS.2006.282516.
  16. 16.
    Peucker, T. K., Fowler, R. J., Little, J. J., & Mark, D. M. (1978). The triangulated irregular network. In Proceedings, American Society for photogrammetry, digital terrain models symposium (Vol. 516, pp. 96–103). St.Louis, Missouri.Google Scholar
  17. 17.
    Fowler, R. J., & Little, J. J. (1979). Automatic extraction of irregular network digital terrain models. In Proceedings of the 6th annual conference on computer graphics and interactive techniques, SIGGRAPH ’79 (pp. 199–207). New York: ACM.Google Scholar
  18. 18.
    Edelsbrunner, H., Ablowitz, M. J., Davis, S. H., Hinch, E. J., Iserles, A., Ockendon, J., & Olver, P. J. (2006). Geometry and topology for mesh generation. Cambridge monographs on applied and computational mathematics. New York: Cambridge University Press.Google Scholar
  19. 19.
    Shewchuk, J. R. (2002). What is a good linear element? Interpolation, conditioning, and quality measures. In Proceedings, 11th international meshing roundtable (pp. 115–126).Google Scholar
  20. 20.
    Konolige, K. (2000). A gradient method for realtime robot control. In International conference on intelligent robots and systems, 2000 (IROS 2000), Proceedings. IEEE/RSJ (Vol. 1, pp. 639–646). doi: 10.1109/IROS.2000.894676 .
  21. 21.
    Philippsen, R., & Siegwart, R. (2005). An interpolated dynamic navigation function. In Proceedings of the IEEE international conference on robotics and automation (ICRA).Google Scholar
  22. 22.
    Sethian J.A. (1995) A fast marching level set method for monotonically advancing fronts. Proceedings of the National Academy of Sciences of the United States of America 93: 1591–1595MathSciNetCrossRefGoogle Scholar
  23. 23.
    Botea A., Müller M., Schaeffer J. (2004) Near optimal hierarchical path-finding. Journal of Game Development 1: 7–28Google Scholar
  24. 24.
    Daniel K., Nash A., Koenig S., Felner A. (2010) Theta*: Any-angle path planning on grids. Journal of Artificial Intelligence (JAIR) 39: 533–579MathSciNetzbMATHGoogle Scholar
  25. 25.
    Kallman, M. (2005). Path planning in triangulations. In Proceedings of the IJACI workshop on reasoning, representation and learning in computer games.Google Scholar
  26. 26.
    Chazelle, B. (1982). A Theorem on polygon cutting with applications. In SFCS ’82: Proceedings of the 23rd annual symposium on foundations of computer science (pp. 339–349). Washington, DC: IEEE Computer Society. .
  27. 27.
    Ferguson D., Stentz A. T. (2006) Using interpolation to improve path planning: the Field D* algorithm. Journal of Field Robotics 23(2): 79–101CrossRefzbMATHGoogle Scholar
  28. 28.
    Sapronov, L., & Lacaze, A. (2008). Path planning for robotic vehicles using Generalized Field D*. Proceedings of SPIE, 6962, 69621C. doi: 10.1117/12.780650 .
  29. 29.
    Stentz, A. (1995). The focussed d* algorithm for real-time replanning. In Proceedings of the 14th international joint conference on artificial intelligence (Vol. 2, pp. 1652–1659). San Francisco: Morgan Kaufmann Publishers Inc.Google Scholar
  30. 30.
    Koenig, S., & Likhachev, M. (2002a). Incremental A*. In Proceedings of the neural information processing systems. Cambridge, MA: MIT Press.Google Scholar
  31. 31.
    Koenig, S., & Likhachev, M. (2002b). D* Lite. In Eighteenth national conference on artificial intelligence (pp. 476–483). Menlo Park, CA: American Association for Artificial Intelligence.Google Scholar
  32. 32.
    Choi, S., & Yu, W. (2011). Any-angle path planning on non-uniform costmaps. In IEEE international conference on robotics and automation (ICRA) (pp. 5615–5621). doi: 10.1109/ICRA.2011.5979769 .
  33. 33.
    Shewchuk, J. R. (2000). Mesh Generation for domains with small angles. In SCG ’00: proceedings of the sixteenth annual symposium on computational geometry (pp. 1–10). New York: ACM. .
  34. 34.
    Alliez, P., Rineau, L., Tayeb, S., Tournois, J., & Yvinec, M. (2011). 3D mesh generation. CGAL user and reference manual (3.9th ed.). CGAL Editorial Board. .
  35. 35.
    Golias, N. A., & Dutton, R. W. (1997). Delaunay Triangulation and 3D Adaptive Mesh Generation. Finite Elements in Analysis and Design, 25(3–4), 331–341. doi: 10.1016/S0168-874X(96)00054-6 .
  36. 36.
    CGAL Editorial Board. (2011). The CGAL Project: CGAL user and reference manual (3.9th ed.). .

Copyright information

© The Author(s) 2012

Authors and Affiliations

  • Simon Perkins
    • 1
  • Patrick Marais
    • 1
  • James Gain
    • 1
  • Mark Berman
    • 2
  1. 1.Computer Science DepartmentUniversity of Cape TownCape TownSouth Africa
  2. 2.Mathematics DepartmentUniversity of Cape TownCape TownSouth Africa

Personalised recommendations