DOI QR코드

DOI QR Code

경로 정보를 이용한 길찾기 알고리즘

A Pathfinding Algorithm Using Path Information

  • 투고 : 2013.01.14
  • 심사 : 2013.01.29
  • 발행 : 2013.02.20

초록

A* 알고리즘은 잘 알려진 길찾기 알고리즘이다. 그러나 많은 상호 작용이 있거나 많은 장애물들이 있는 맵에서 A* 알고리즘을 실시간에 사용하는데 한계가 있을 수 있다. 그래서 게임에서는 최단의 경로를 찾는 대신에 게임 플레이어에게 자연스럽게 보이는 경로를 빠르게 찾을 필요가 있다. 본 논문에서는 경로 정보를 사용하는 새로운 휴리스틱 함수를 제안하고, 제안한 휴리스틱 함수를 이용한 길찾기 알고리즘이 다양한 그리드 맵에서 A* 알고리즘보다 상당히 빠르게 경로를 찾을 수 있다는 것을 보여준다.

A* algorithm is a well known pathfinding algorithm. However, there may be a limit to use A* algorithm in real-time in a map where many interactions occur between objects or many obstacles exist. Therefore, it may be necessary to find a naturally looking path quickly instead of finding a shortest path in games. In this paper, we propose a new heuristic function to exploit path information in a map. We also show that the pathfinding algorithm based on the proposed heuristic function can find a good path much faster than A* algorithm on several grid maps.

키워드

참고문헌

  1. Bryan Stout, "The Basics of A* for Path Planning", Game Programming Gems, pp. 254-263, Charles River Media, 2000.
  2. P. Hart, N. Nilsson, and B. Raphael, "A Formal Basis for the Heuristic Determination of Minimum Cost Paths", IEEE Trans. Syst. Sci. Cybernet, 4(2): pp. 100-107, 1968. https://doi.org/10.1109/TSSC.1968.300136
  3. Nils J. Nilsson, Artificial intelligence: A New Synthesis, Morgan Kafmann, 1998.
  4. S. J. Kang, Y. O. Kim, and C. H. Kim, "Live Path: Adaptive Agent Navigation in the Interactive Virtual World", The Visual Computer, Vol. 26, No. 6, pp. 467-476, 2010. https://doi.org/10.1007/s00371-010-0457-7
  5. Ron Penton, Data Structures for Game Programmers, Premier Press Game Development, pp. 715-767, 2002.
  6. R. Korf, "Depth-first Iterative Deepening: An Optimal Admissible Tree Search", Artificial Intelligence, 27: pp. 97-109, 1985. https://doi.org/10.1016/0004-3702(85)90084-0
  7. Robert Kirk and DeLisle, "Beyond A*: IDA* and Fringe Search", Game Programming Gems 7, pp. 289-294, 2008.
  8. Marco Tombesi, "Improved Pathfinding with Minimum Replanning Cost: Dynamic A*(D*)", Game Programming Gems 5, pp. 469-476, Information Publishing Group, 2006.
  9. A. Botea, M. Muller, and J. Schaeffer, "Near Optimal Hierarchical Path-finding", J. of Game Develop. 1(1), pp. 7-28, 2004.
  10. A. Stentz, "Optimal and Efficient Path Planning for Unknown and Dynamic Environments", International Journal of Robotics and Automation, Vol. 10, pp. 89-100, 1993.
  11. Oh-Ik Kwon and Teag-Keun Whangbo, "A Dynamic Pathfinding Method Avoiding Moving Obstacles in a 3D Game Environment", Journal of Korea Game Society, Vol. 6, No. 3, pp. 3-12, 2006.
  12. Mario Grimani and Matthew Titelbaum, "Beyond A* Algorithm", Game Programming Gems 5, pp. 452-468, Information Publishing Group, 2006.
  13. Myun-Sub Lee, "A Study on Searching a Path of the Intelligent Character using Genetic Algorithm", Journal of Korea Game Society, Vol. 9, No. 4, pp. 81-88, 2009.
  14. Amit J. Patel, Amit's A* Pages, Amit's Game Programming Information, http://theory.stanford.edu/-amitp/GameProgramming/.
  15. Dan Higgins, "Fast A* Implementation", AI Game Programming Wisdom, pp. 223-238, 2003.
  16. Steve Ravin, "A* Speed Optimizations", Game programming Gems, pp. 363-381, Charles River Media, 2000.