You are on page 1of 11

Hindawi Publishing Corporation

International Journal of Computer Games Technology
Volume 2015, Article ID 736138, 11 pages
http://dx.doi.org/10.1155/2015/736138

Review Article
A Comprehensive Study on Pathfinding Techniques for
Robotics and Video Games
Zeyad Abd Algfoor, Mohd Shahrizal Sunar, and Hoshang Kolivand
Media and Games Innovation Centre of Excellence (MaGIC-X) UTM-IRDA Digital Media Centre, Universiti Teknologi Malaysia,
81310 Skudai, Johor, Malaysia
Correspondence should be addressed to Mohd Shahrizal Sunar; shahrizal@utm.my
Received 30 September 2014; Accepted 18 March 2015
Academic Editor: Yiyu Cai
Copyright © 2015 Zeyad Abd Algfoor et al. This is an open access article distributed under the Creative Commons Attribution
License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly
cited.
This survey provides an overview of popular pathfinding algorithms and techniques based on graph generation problems. We
focus on recent developments and improvements in existing techniques and examine their impact on robotics and the video games
industry. We have categorized pathfinding algorithms based on a 2D/3D environment search. The aim of this paper is to provide
researchers with a thorough background on the progress made in the last 10 years in this field, summarize the principal techniques,
and describe their results. We also give our expectations for future trends in this field and discuss the possibility of using pathfinding
techniques in more extensive areas.

1. Introduction
Pathfinding is a fundamental component of many important
applications in the fields of GPS [1], video games [2],
robotics [3], logistics, and crowd simulation [4, 5] and can be
implemented in static, dynamic, and real-time environments.
Although a number of developments have improved the
accuracy and efficiency of pathfinding techniques over the
past two decades, the problem still attracts a great deal of
research. Currently, the most important area concerns the
provision of high-performance, realistic paths for users. In
general, there are different variations of the pathfinding
problem [6, 7], such as single-agent pathfinding search, multiagent pathfinding search, adversarial pathfinding, dynamic
changes in the environment, heterogeneous terrain, mobile
units, and incomplete information. Each of these problems has different applications in different fields. Generally,
pathfinding consists of two main steps: graph generation and
a pathfinding algorithm.
The graph generation problem for “terrain topology” is
considered a foundation of robotics and video games applications. In this problem, the pathfinding navigation is conducted in different continuous environments, such as known
2D/3D environments and unknown 2D environments.

Several different techniques have been proposed to represent
the navigation environment for the graphs of these three
scenarios. Each of the representative environment graphs in
this paper refers to one of two techniques, skeletonization or
cell decomposition [8, 9].
Skeletonization techniques extract a skeleton from the
continuous environment. This skeleton captures the salient
topology of the traversable space by defining a graph ? =
(?, ?), where ? is a set of vertices that map to a coordinate
in the continuous environment and ? is the set of edges
connecting vertices that are in the line-of-sight of one
another. Generally, skeletonization techniques may produce
two types of irregular grid, namely, a visibility graph or a
waypoint graph. Cell decomposition techniques decompose
the traversable space in the continuous environment into
cells. Each cell is typically defined by a circle or convex
polygon and represents a region of traversable space with no
obstacles. Because the cells are circles or convex polygons that
do not contain obstacles, agents can travel in a straight line
between any two coordinates within the same cell (without
path planning).
There are a number of hypotheses about the properties
of the terrain maps produced by skeletonization and cell
decomposition as follows.

In most pathfinding algorithms. with an emphasis on future trends and developments. Our intention is to inspire researchers and developers and to provide an outlook on both the robotics and video games industries. To evaluate the efficiency of such algorithms. Here. they considered nodes as block-based operations and then utilized a system of offline preprocessing. regular grids describe tessellations of regular polygons (i. First.1. A∗ [10] is one of the best-known search algorithms for games and robotics. In 2D and 3D environments. (i) Scaling the terrain maps will create unnecessary space and variation in the original map. Harabor and Grastien [13] proposed the jump point search (JPS) single-agent algorithm to solve a common problem in games and robotics. and Section 5 summarizes the paper. before describing hierarchical techniques in Section 3. Uras et al. roboticists have employed regular grids in the mars rovers spirit and opportunity [12]. 2. we introduce various gridbased methods. (b) hierarchical techniques. (ii) There is a significant difference between the properties of grid terrain maps (regular and irregular) depending on whether they are for games or robotics. We summarize recent progress in pathfinding and identify current challenges. memory overhead. The relationship between different types of terrain topologies is illustrated in Figure 1. The main idea of this paper is to identify a sequence of cells such that an agent always moves into a simple subgoal.1. we must take into account the execution time. In the next section. Games and robotics developers use a variety of techniques. The resulting algorithms were compared with that reported by Uras et al. or real-time “deterministic. the well-known “uniformcost octile grid in static environment. Regular grids are one of the most wellknown graph types and are widely used by computer games developers and roboticists. there is a limit of eight neighbors. dynamic. Variations of this method use two-level subgoal graphs and two-level subgoal graphs with pairwise distances.. 2. We explain the fundamental concept of two popular grid-based approaches: regular grids and irregular grids. [15]. Square grids are one of the most popular grid graphs in computer games and robotics. and triangles are the only regular polygons that can be used to tessellate continuous 2D environments (Figures 2(a)–2(c)) and 3D cubic grids (Figure 2(d)). A∗ inspired many modified and improved algorithms. the navigation performance is based on the attributes of this graph representation. [15] published a method to accelerate the path search by generating subgoal graphs. Hexagons. 2D Square Grid (Octile). (iii) The design of artificial terrain maps for robotics testing must consider the properties of actual terrain maps. 2. Harabor and Grastien [16] improved the JPS algorithm by employing three strategies. The third strategy is an improved set of current pruning rules.2 International Journal of Computer Games Technology Hierarchical techniques Grids Regular grids Irregular grids 2D square grid (octile) Visibility graphs Probabilistic road maps 2D hexagonal grid Quadtrees Meshes navigation 2D triangular grid 3D cubic grid Waypoints (a) Rapidly exploring random trees (b) Figure 1: From left to right: (a) terrain topologies. It was the first algorithm to use a heuristic function to travel a search graph in a best first manner. and Company of Heroes. Section 4 presents a discussion on agent-based topologies and environments. In a square grid. They evaluated their work based on the standard dataset of pathfinding maps proposed by Sturtevant [14].1. the search growing from the start node until the goal node is found. and whether the environment of the search system is static. . The second step in the pathfinding process is the search algorithm itself. and numerous algorithms have been proposed to solve the pathfinding problem for this type of grid (see Figure 2(a)). namely. squares. Regular Grids. producing games such as Dawn of War 1 and 2. Grids A grid is composed of vertices or points that are connected by edges to represent a graph [11].” JPS is around 10 times faster than A∗ [10] and has a small memory overhead.e. Civilization V.” This paper looks at pathfinding research in the field of video games. equilateral and equiangular polygons). There are a number of video game developers who have worked in this area. the problem is to return the optimal path to users in an efficient manner.

They proved that the algorithms outperform those on quadrangular grids for both single. hexagonal grids have smaller search time and memory complexities than grid graphs constructed from squares. However.and multiagent problems. [19] employed the A∗ algorithm in an XNA game to solve the pathfinding problem. despite the implementation being in a 3D environment. This technique effectively reduces the search time in implicit graphs. which unnecessarily expands the number of nodes during the search. For the multiagent problem. These algorithms have been used in domains that are unknown a priori. Othman et al. [22] showed that hexagonal grids (Figure 2(b)) have many of the desirable properties of square grids. They demonstrated the advantages and disadvantages of real-time and incremental heuristic searches in square grids. 2. In addition. They suggested investigating the problem of multiagent collision avoidance and extended their model to include multiagent pathfinding [25]. which is applicable to the single-agent problem. The results indicate that octiles and enhanced hexagons produce better paths but require more time during the algorithm search in large maps. acceptable results are achieved for small and medium size maps. They used the A∗ algorithm to handle dynamic obstacles in a 2D square grid map. These algorithms assume agents can detect conflicts during navigation and assign one agent priority to use the path while the other has a penalty “time-stop” added to its total cost. The disadvantage of their work is that A∗ is not always optimal in static grid maps. Koenig and Sun [21] developed two different heuristic techniques to speed up the A∗ algorithm in a multiagent competitive real-time heuristic search. 2D Hexagonal Grid. Jin et al.” Anderson [18] presented an excellent additive heuristic for a single-agent search on a four-connected square grid. enhanced hexagons. Pathfinding algorithms have mainly been . and (c) triangulation grid with three obstacles and (d) without obstacles.1. In terms of changing graphs in the presence of “dynamic obstacles. Chrpa and Komenda [24] proposed a model for smoothing the trajectory of a helicopter in a hex-grid air traffic control planner. and the only drawback is that they implemented it with the A∗ algorithm. Bnaya et al. (b) hexagonal grid with three obstacles. [20] proposed five online pruning algorithms in their Real-Time Agent-Centered Search (RTACS). Sharon et al.2. One of the main challenges in mobile robotics is the avoidance of real objects. and octiles [27]. Bj¨ornsson et al. [26] discussed the problems faced by researchers who use pathfinding algorithms in robotics. [17] proposed the Exhaustive and MonteCarlo Iterative Taxing Algorithms (EITA/MC-ITA) for the multiagent pathfinding problem. hexagons.International Journal of Computer Games Technology 3 (a) (b)  t u (c) (d) Figure 2: (a) Square grid with three obstacles. Quijano and Garrido [23] used six hexagonal-grid algorithms to simulate robot exploration. The D∗ algorithm has been applied to 2D map modelling methods using square tiles. The main drawback of these techniques is that priority is randomly assigned to one or other agent.

2. they determined shortest paths rather than shortest grid paths. triangular. Kapadia et al. Triangular grids (Figure 2(c)) are not as widely used as square and hexagonal grids. instead of cell-based methods such as regular grids. Naderan-Tahan and Manzuri-Shalmani [40] proposed a novel genetic algorithm to find an efficient path through a series of dilating obstacles.1. the author emphasized that this grid presentation is applicable to computer graphics and image processing. In this survey.4. [42] has been compared with Theta∗ proposed by Siˇ [43]. Based on the observed performance. Visibility Graphs. Unfortunately. we highlight all of the well-known techniques that have been proposed to represent terrain topology. Nagy [30] derived a novel coordinate system consisting of both hexagonal and triangular grid graphs. 3D Cubic Grid. but this is not actually the case. 38].1. In fact. complex. rapidly exploring random trees-based planners [44] and the original A∗ in the search for the shortest any-angle path. Furthermore. Demyen and Buro [28] presented a method that reduces the search effort using constrained Delaunay triangulation. Kapadia et al. different domains can be connected together. This algorithm can work with a single abstract graph and can be used to plan a path for agents with heterogeneous sizes and terrain . the authors examined the effect of the environment on movement during a navigation task. any-angle path-planning algorithms consume more time than normal pathfinding algorithms. Siˇ collision avoidance problem by designing a height performance path-planning algorithm. Recently. The Accelerated A∗ (AA∗ ) ˇ sl´ak et al. Siˇ Their AA∗ algorithm enables flight-path-planning based on the single-agent pathfinding problem. The majority of applications for mesh graphs are in video games.2. Theta∗ . However. Their TA∗ and TRA∗ algorithms were found to work perfectly on large maps. The author showed that triangular meshes can enable the efficient computation of several navigation procedures in the singleagent case. As illustrated in Figure 3(b). for square. Irregular Grids. they used a strategy to speed up the convergence rate by generating a suitable initial population. Kallmann [45] investigated the navigation task for several different mesh triangulations. A∗ . ˇ sl´ak et al. [29] investigated the impact of the objects in an environment on the agent navigation layer and presented a framework that can handle hybrid graph constraints imposed on the path. For an excellent survey of visibility graphs. and the multiagent problem on a hexagonal grid has not yet been investigated in dynamic or real-time environments. Kilic¸ and Yalcin [33] used a simple algorithm to compute the motion of three types of waves in a 3D environment and used this to solve a robot pathfinding problem. International Journal of Computer Games Technology 2. hexagonal. The domains described in this paper represent popular solutions that are used in both academia and industry. and dynamic virtual environments. The main advantages of AA∗ are its ability to consider a nonzero-sized airplane and path-planning for the direction vector heads upwards from the horizontal plane. such as by triangles or polygons.1. In multiagent pathfinding. this method was shown to be faster than other computational geometry approaches but produced suboptimal solutions. In their proposed model.2. The visibility graph (Figure 3(a)) is considered a fundamental structure in different fields of geometric graph theory and computational geometry and has attracted research into various challenges [36]. By varying the sizes of objects. [46] proposed a real-time framework for multiagent navigation that uses multiple heterogeneous problem domains for large. From our perspective. the mesh graphs and visibility graphs look very similar. The aim of these algorithms is to find the smoothest real path through any terrain topology without considering the size of the agent or the shape of the obstacles. [41] solved the For the multiagent problem. see Ghosh and Goswami [39]. To solve the single-agent problem. ˇ sl´ak et al. However.3. The AA∗ algorithm has been utilized in a dynamic environment to model the nonholonomic airplane movement.2. Little work based on this grid graph has been applied to the pathfinding problem. This mesh can be represented in different ways. a robot has just six neighborhood cells that can be used to navigate to the goal cell. and Lazy Theta∗ . 2.2. Harabor and Botea [47] presented a hierarchical annotated extension of the A∗ algorithm (HAA∗ ) that can be employed in a real-time environment. and the number of neighborhood cells should be increased to include all 26 neighboring cells to improve the resulting path. Visibility graphs have been implemented in different applications and have recently been employed in the computation of Euclidean shortest paths in the presence of obstacles [37. Nash and Koenig [35] published an excellent paper titled “Any-Angle Path Planning. and cubic grids. This new grid can be used for different applications in domains such as computer graphics and image processing. This is a clear limitation of this model. the walkable areas of a map represent the navigation mesh. In practical terms. The authors improved the algorithm proposed by Yenic¸eri and Yalc¸in [34] to perform in a 3D environment. but they do have certain desirable properties. Unlike the grid graphs discussed above. visibility graphs are more complex than mesh graphs. The authors used the common computational geometry-based approach of the Minkowski sum. 2.4 implemented on square grids. 2D Triangular Grid. the cubic grid (Figure 2(d)) is a regular graph based on a continuous 3D environment [31]. such as A∗ and its variants. 2. [42] introduced an algorithm inspired by A∗ . we believe this new topology could be used with deterministic pathfinding methods. Irregular grids are used in many different applications and fields. Mesh Navigation. Nagy [32] reported a mixed hexagonal and cubic grid that calculated the nonsymmetric distances and connected the hexagonal grid representation through a cubic grid plane. In addition.” They introduced three different algorithms.

Niederberger et al. However. Their system converts scene data into an abstract contour model and applies a heuristic search. There are two disadvantages to grid-based pathfinding. Lucas et al. . the memory requirements of grid-based path planning are often unacceptably high. [53] reported a hybrid algorithm combining constraint solving techniques with ant colony optimization. The disadvantage of this technique is that. Burchardt and Salomon [51] proposed an adjusted pathfinding genetic algorithm based on RoboCup’s small-size robots. The generated path was found to require less effort to track and to minimize control-input variability. First. Unlike Kallmann [45]. [48] can be used to implement real-time 3D game scenes with polygons and meshes. because the path must pass via adjacent grid points. This method can determine paths in vehicle system architecture problems. Sturtevant and Geisberger [1] discussed the complexity of pathfinding in large graphs.International Journal of Computer Games Technology S 5 H (a) Ub (b) Ub P2 Ut P1 P1 Un Un C1 Ut P2 P3 C2 P3 (c) Figure 3: (a) Visibility graph (brown represents obstacles). (c) 3D G2CBS path smoothing: three consecutive points in space from a unique 2D plane (left). Ferguson and Stentz [50] developed the Field D∗ algorithm for interpolation-based planning and described a replanning algorithm for generating low-cost paths through uniform and nonuniform resolution grids. this algorithm cannot find the optimal path faster than deterministic methods. Waypoints. However. [49] proposed an A∗ -based algorithm for pathfinding in static terrains with polygonal obstacles. They describe the pathfinding problems faced in the Dragon Age game and conclude that contraction hierarchies and abstractions have a similar overhead and performance and are both useful highlevel planning approaches. traversal capabilities. it does exponentially reduce the computational effort required for low-level searches. (b) mesh navigation with triangular grid (blue regions represent obstacles). the robot continues to calculate a path until it arrives at the goal. Because of the nature of this dynamic environment. it produces suboptimal paths for a wide range of problems. Their results showed that the analytical algorithm can effectively generate a continuous-curvature path that satisfies an upper-bound curvature constraint. The authors emphasized that their proposed algorithm is more suitable and could easily solve bigger problems. the method was found to reduce the average computation time by 50% and the preprocessing time by 5%. Yang and Sukkarieh [52] published a paper on “An Analytical Continuous-Curvature Path-Smoothing Algorithm” that fits an ordered sequence of waypoints generated by an obstacle-avoidance path planner. Waypoints (Figure 3(c)) are widely used in video games and robotics. in practice. planar G2CBS path smoothing is applied to these consecutive points after mapping 3D waypoints to 2D (right) [49]. such as in the Dragon Age video game.2. Second. 2. the efficient path-searching system proposed by Chen et al. In the most complex cases (when mandatory waypoints are distant from the start point and goal point).3. grid-based planners have a limited ability to find the optimal path. The algorithm generates a path according to the minimum number of waypoints but suffers from a high computation time and memory overhead.

Cai and Goei [58] discussed and developed a mathematical trajectory calculation method for different types of long vehicles. Rohrmuller et al. He tested the Quad∗ pathfinding and Quadtree construction algorithms and found that Quad∗ pathfinding realizes a great improvement in execution times compared to the A∗ algorithm. The authors showed that UCT outperformed RRT in terms of search effort. The path can be obtained in two ways. and so forth. specifically a square grid (octile). optimization A∗ . They proposed an algorithm that uses Markov Chains to model the dynamics of moving agents and predict their future locations. Finkel and Bentley [62] introduced the Quadtrees data structure. Unlike the single-agent case.2. The division process terminates when a grid cell contains no obstacles. but their optimality.6 Cui and Shi [54] published a survey paper on the A∗ . Quadtrees are generated by repeatedly dividing each grid cell in a square grid into four equally sized grid cells. Hierarchical techniques mitigate this memory space problem by allowing the continuous environment to be discretized. Coulter [57] proposed a tracking algorithm “pure pursuit algorithm” for robotics in the land based navigation problems. [65] proposed a computational model for representing region hierarchies. Moreover.3. such as whether fire crews should split up and perform a so-called bounding over watch procedure and the need for the corridor list to be optimized correctly. Kamphuis et al. 64]. see Browne et al. this framework is only implemented in the singleagent case and can only handle static obstacles. valleys. The author neglect two significant parameters in his article: dynamic obstacles and natural features like mountains. This schema consists of three parts: motion generation. we can use the Iterative Taxing . during gameplay. In this case. [69] developed two Monte-Carlo pathfinding approaches. Furthermore. The main idea of this algorithm is to limit the search space to the region given by the minimum subtree containing the source and destination region at each step. especially near obstacles. In the single-agent case. Probabilistic Road Maps. which includes the turning roads surrounded by buildings and other objects. By applying a finer granularity in certain regions. 3. Based on their results. Naveed et al. and uneven land is best represented by an irregular triangular mesh. they developed the 3D simulation model for urban city. 4. such as wide. HPA∗ [55]. or when it reaches some smallest allowable size [63. Quadtrees. using an existing road map or extending this to a network of corridors. RRT tended to perform better than UCT. These were applied to the pathfinding problem in real-time strategy games. allowing for a fast implicit update for local path planning and congestion avoidance. the start and goal are defined in a virtual environment. The authors presented some open problems in this area. In the decoupled approach. In the coupled approach. multiagent pathfinding can take a decoupled or coupled approach. [61] discussed the safe navigation of a robot through a crowded environment. The single-agent pathfinding search has been studied intensively over different topologies. roadmap search. open spaces. Dooms [68] assumed that current pathfinding algorithms are not efficient enough to provide optimal real-time pathfinding in multiagent dynamic environments. and even completeness. Drawing artificial maps “created algorithmically” for applications such as video games or robot navigation have different properties than maps created by designers. He et al. the Upper Confidence Tree (UCT) and Rapidly Exploring Random Tree (RRT).1. the problem becomes a single-agent search that is solved from a higher-dimension perspective. The algorithm calculates the curvature that will move a robot “vehicle” from its current position to target position. is generally not guaranteed. Based on their findings. and the proposed schema outputs a sequence of motions to move from the start point to the goal point using a set of live-captured motion clips. streams. [67] discussed the efficient use of Quadtree storage for terrain representation and pathfinding. paths are planned for each agent separately. However. [60] developed a tactical pathfinding approach for multiagent groups of characters in an urban environment. A coarse grid is used to represent the macroscopic crowd distribution and motion tendency consistent with fluid dynamics. Dynamic and real-time obstacles make the motion planning more complex. and roadmap construction. Reineking et al. Rapidly Exploring Random Trees. Such algorithms are very fast. Agent-Based Topologies. [70]. 3. it appears that this approach can successfully find a suitable path in densely populated environments. Discussion 4. Hierarchical Techniques One disadvantage of techniques that use regular and irregular grids is that they require considerable memory space. the best representation of a plane surface is given by a regular grid. Quadtree searches seem to be efficient if the map is appropriately represented. Hirt et al. [59] presented a new pathfinding schema for natural-looking locomotion of a biped figure to facilitate rapid motion prototyping and task-level motion generation.1. The main concern for researchers is to provide an optimal path with respect to computation time and memory overhead. International Journal of Computer Games Technology 3. and IDA∗ [56] algorithms and techniques. Unfortunately. [66] presented a novel technique for large scale crowd simulation. A coarser granularity is applied in regions where detail is not necessary. a more accurate representation can be produced. One of biggest problems is avoiding collisions between agents during their movement. Choi et al. In the same context. For a survey of Monte-Carlo tree search techniques in the field of video games. 3. Their technique can handle very large crowds and is suitable for dynamically changing environments. The aim of this paper was to review the most relevant topics in the academic domain of pathfinding and to encourage games and robotics developers to utilize these algorithms in their industries.

and Tree [13] A∗ . BlockA∗ . FS. JPS-online. JPS-offline. CPD-full. and PRS algorithms D∗ algorithm [17] ITF. CPD-mbm. and ALT heuristics Time complexity A∗ + ALTBestp ?(? log? )1/7 IDA∗ + ALTBestp faster — Memory complexity Robotics systems Game development Game development Game development Game development Game development Game development Game development Exemplification Table 1: Recently reported pathfinding algorithms used in robotics and video games. Manhattan.Single-agent Single-agent Static Static Real-time Hexagonal grid Single-agent Multiagent Multiagent Real-time Real-time Multiagent Real-time Single-agent Single-agent Static Static Single-agent Pathfinding addresses Static Environment “system” Hexagonal grid Undirected uniform-cost square grid maps with diagonal movement Undirected uniform-cost square grid maps with diagonal movement Undirected uniform-cost square grid maps with diagonal movement Undirected uniform-cost square grid maps with diagonal movement Undirected uniform-cost square grid maps without diagonal movement Undirected uniform-cost square grid maps with diagonal movement Undirected uniform-cost square grid maps with diagonal movement Topologies — — Robotics development — — — — Euclidean Manhattan and Euclidean PRS algorithm ?(? log? )1/10 — — — — SUB algorithm ?(? log? )1/100 — ?(?? ) ? = maximum branching factor. EITA. PPQ. PBS. ? = iteration — Manhattan JPS algorithm ?(? log? )1/10 No memory overhead — Manhattan ?(? log? )1/2 — Cost metric ALTBestp. and MC-ITA schemes [15] SUB. HPA∗ . and JPS algorithms [73] [72] Improved A∗ algorithm IEA∗ and IDA∗ algorithms [71] Reference A∗ and IDA∗ algorithms Pathfinding technique International Journal of Computer Games Technology 7 . [25] Augmented A∗ and Accelerated A∗ algorithms [26] [74] A∗ . PDH.

Real-time Waypoint Multiagent Multiagent Multiagent Real-time and dynamic Dynamic Single-agent Multiagent Pathfinding addresses Static Real-time Visible graph Mesh navigation Cubic grid Triangular grid Topologies Environment “system” Robotics development Robotics and games development Robotics and games development Robotics and games development Robotics development Exemplification — — AA∗ less than A∗ — — — — Time complexity 45 KB of memory per agent — — Memory complexity Table 1: Continued. — Euclidean — — — Cost metric ∗ [41] [53] Ant colony optimization algorithm [45] [35] [29] Reference AA∗ algorithm Framework Theta . Lazy Theta . and A∗ ∗ AD∗ algorithm Pathfinding technique 8 International Journal of Computer Games Technology .

Mathura. 2. vol. and S. Italy. [10] P. 21–31. J. Bnaya. “Pathfinding in computer games. Carsten.and multiagent problems is given in Table 1. pp. 2010. [16] D. vol. 2001. USA. June 2013.” in Proceedings of the 25th National Conference on Artificial Intelligence (AAAI '11). Goldberg. pp. MIT Press. pp. Principles of Robot Motion: Theory.” ITB Journal. Sheridan. and S. Graham. [17] Z. and B. because many fields have pathfinding applications for such scenarios. Hern´andez. [4] B.” in Proceedings of the 4th International Conference on Computational Intelligence and Communication Networks (CICN '12). and in coming years we can expect major changes in navigation. pp. Basic classes and techniques. Hart. 9 [2] H. C. N. This field presents researchers with a range of opportunities and issues. which are now in use for pathfinding. vol. 1-2. Uras. 1. have also been discussed in detail. Ma. pp. W. Agent-Based Environment. 76–82. and relatively few works have considered the dynamic case. 2008. Bouzy. R. This is especially true when encountering the corners of obstacles and. “A comparison of high-level approaches for speeding up pathfinding. [9] S. Berlin. Sturtevant and R. enabling the agent to follow or otherwise incorporate actions into the final solution. “A modern approach. Understanding Planning Tasks: Domain Complexity and Heuristic Decomposition. A. Q. Ferguson. “Improving jump point search. 4. “Pathfinding in games. San Francisco. Raphael. Grastien. Yan. D. It is obvious that the basic shortest-path principles in robotics and video games are mature theories. R. “Online detection of dead states in real-time agent-centered search. 38–46. Zivan.” in Proceedings . 2003. This means that partial solutions can be returned. Geisberger. Botea. Shah. From the literature cited here. The authors are particularly interested in the domain of real-time strategy games. and Implementation. Buro. pp. Liu. [8] H. Realtime pathfinding allows the search agent to perform actions while the search is being conducted. McCabe. “ANA∗ : anytime nonparametric A. and K. “Subgoal graphs for optimal pathfinding in eight-neighbor grids.” in Proceedings of the 6th Annual Symposium on Combinatorial Search. 8. Algorithms. [11] T. Summary and Future Trends In this review article. Calif. Navigation through different types of environment can affect the pathfinding results. [18] K. Conflict of Interests The authors declare that there is no conflict of interests regarding the publication of this paper. 2011. we have summarized recent progress in the field of pathfinding. and A. [14] N.” IEEE Transactions on Computational Intelligence and AI in Games. 1995. 5–33. ITF can be hybridized with the most recent rapid technique for single-agent pathfinding. Many researchers do not consider the shape of the agents as they navigate from start point to destination. 4. Stern. Guan. October 2010. van den Berg.” in Proceedings of the 3rd Annual Symposium on Combinatorial Search. [3] J. no. R. it is clear that remarkable efforts had been made to determine accurate realtime paths with minimal or no disturbance to the sample of concern. Kolivand and M. no. References [1] N. W. Prentice Hall. H. Okamoto. [6] A. “Multi-agent pathfinding system implemented on XNA. B. pp. and D. and S.” in Artificial Intelligence. D. Harabor and A. NJ. Jin. The shortcomings of the above algorithms are that they spend too much time scanning the grid maps and suffer from high memory overheads. S. 4. vol. A. Lee. pp. 1968. S. pp.” IETE Technical Review. 2011. Stentz. 2009. Germany. 158–167. Nau. Most previous work is based on a static and real-time environment. 4. 2. vol. “Online graph pruning for pathfinding on grid maps.2. Anderson. “Benchmarks for grid-based pathfinding. [19] H. USA. Geffner.” IETE Technical Review. 26. Rome. “Grid task scheduling: algorithm review. Helmert. 144–148. A. and A. Felner. Englewood Cliffs. Bauckhage. [5] M. E. no. Sunar. and C. R. “A survey of shadow volume algorithms in computer graphics. Springer. Boston.” in Proceedings of the 24th International Conference on Automated Planning and Scheduling. 38–46. 57–81. November 2012.” in Proceedings of the 25th AAAI Conference on Artificial Intelligence (AAAI ’11). Multiagent cases have been used with real-time and dynamic environments in a few studies. vol. D. 2005. M. 4929 of Lecture Notes in Computer Science. which require path planning for many agents in a common space under the constraints of limited resources and high-quality results.” IEEE Transactions on Systems Science and Cybernetics. 651–655. such as in the improved JPS [16]. no. Rankin. 100–107. pp. [7] R. 2012.” in Proceedings of the 6th AAAI Conference on Artificial Intelligence and Interactive Digital Entertainment (AIIDE ’10). S. vol. N. 2013. Koenig. M. 5. Sharon. Wei. Harabor and A. “Planning as heuristic search.” in Proceedings of the 23rd International Conference on Automated Planning and Scheduling (ICAPS ’13). “Global planning on the mars exploration rovers: software integration and surface testing. A summary of the most widely used techniques for both single. Norvig. Huang. R.” Journal of Field Robotics. for avoiding other agents. 2. 25. and we believe that the next-generation video games industry will be based on the interactive opportunities offered by augmented reality. July 2013. 129.International Journal of Computer Games Technology Framework (ITF) [17] to manage the agent’s movement. 30. USA. [12] J. Bonet and H. vol. Researchers from all over the world are working to improve path-planning algorithms. “A formal basis for the heuristic determination of minimum cost paths. [20] G. Russell and P. India. pp. Sturtevant.” in Artificial and Computational Intelligence in Games. 105–111. Grastien. R. and L. [13] D. 337–357. vol. no. 2013. 28. pp. no. 2014. One domain that has not been investigated here is augmented reality. [15] T. “Multiagent path finding for self interested agents. Mass. Sturtevant. “Additive heuristic for four-connected gridworlds. Single-agent pathfinding generally employs a static environment. Felner. in the multiagent case.” Artificial Intelligence. Nilsson. Ziyan. August 2011. Choset.

“Any-angle path planning. Ferguson. [50] D. Botea. 125–130. and M. K. Chrpa and P. pp. “Efficient and safe path planning for a Mobile robot using genetic algorithm. May 2009. Nagy. and polygons. Yalcin. pp. Harabor and A. no. “Simulation of dynamic path planning for real-time vision-base robots. pp. Schaeffer.” in Proceedings of the Scheduling and Planning Applications Workshop. A. Berlin. Nagy. P. M. pp. Crete. Volf. Othman. 3381–3386. Felner. July 2006. 2. Komenda. 1979. P. C. “Cellular topology and topological coordinate systems on the hexagonal and on the triangular grids. pp.” in Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS ’06). 2014. Cui and H. K. 2007. 2009. Rapidly-Exploring Random Trees: A New Tool for Path Planning. Shi. N. 2091–2097. 560–570. [54] X.” in Proceedings of the IEEE Symposium on Computational Intelligence and Games (CIG ’08). E. vol. 9. Kallmann. 2010. Manzuri-Shalmani. “Using interpolation to improve path planning: the field D∗ algorithm. Greece. pp. no. Salomon. Botea. 629–632. “An algorithm for planning collision-free paths among polyhedral obstacles. Siˇ planning. De La Fortelle. I. “Near optimal hierarchical path-finding. [43] A. p.” in Holonic and Multi-Agent Systems for Manufacturing. 26. Springer.” International Journal of Information Sciences and Computer Engineering. J. [38] L. 313–341. 189–194. J. June 2004. “Path planning on cellular nonlinear network using active wave computing technique. 1.” AI Magazine. “An active wave computing based path finding approach for 3-D environment. pp. Pechoucek. Ghosh and P. “Calculating distance with neighborhood sequences in the hexagonal grid. 2009. A. and M. Cambridge University Press. Kilic¸ and M. Visibility Algorithms in the Plane. [48] S.” International Journal of Computer Science and Network Security. 6459 of Lecture Notes in Computer Science. 7–28. 1979. 256–265. July 2013. Robotics and Automotive Mechanics Conference (CERMA ’07). 34. 1. 450–455. [51] H. “An analytical continuous-curvature path-smoothing algorithm. [39] S. Milcent. pp. vol. Koenig and X. Shi. ˇ sl´ak. A. 561–568. Reddy. 1995. pp. Springer. 1511–1512. Stentz. Springer. vol. 10. Ghosh. 2013. Shoulson. 11. K. vol. Siarry.” Autonomous Agents and Multi-Agent Systems. S. 1–18. pp.” in Proceedings of the 14th International Joint Conference on Artificial Intelligence (IJCAI ’95). Ninomiya. 1831–1836. 2010. “Smoothed hex-grid trajectory planning using helicopter dynamics. L. May 2009. IEEE. and M. 2010. 76–83. 1. 2013. A. M. Nov´ak.” Communications of the ACM. Pelechano. F. S. pp. “Efficient triangulation-based pathfinding. 46.” in Proceedings of the Electronics. Shapiro and R. 10–20. 230–241. R. 7365 of Proceedings of SPIE.” in Proceedings of the 19th International Conference on Automated Planning & Scheduling (ICAPS ’09). A. pp. 1–10.” in Proceedings of the 3rd International Conference on Agents and Artificial Intelligence (ICAART ’11). “Improving cooperative robot exploration using an hexagonal world representation. 3. 75–85. [40] M. July 2006. H. Gross. segments. “Accelerated A∗ trajectory [41] D. [47] D.” in Proceedings of the 12th ACM SIGGRAPH / Eurographics Symposium on Computer Animation (SCA ’13). July 2013. pp. “Fast path searching in real time 3D game. Mexico.” in Proceedings of the IEEE International Symposium of Circuits and Systems (ISCAS ’11). Yang and S. vol. [52] K. Burchardt and R. 79–101.” in Proceedings of the IEEE Congress on Evolutionary Computation (CEC ’06). pp. no. “Comparison of different grid abstractions for pathfinding on maps. Demyen and M. Koenig. Quijano and L. p. “Decomposition of twodimensional shapes by graph-theoretic clustering. Nash.” Annals of Mathematics and Artificial Intelligence.” ACM Computing Surveys. 2009. Nash and S. October 2006. M. V. 2011. Goswami.” in Proceedings of the Motion on Games (MIG ’13). Pechoucek. Kapadia. F.” in Bioengineered and Bioinspired Systems IV. Yalc¸in. Badler. B. article 22. “Flight trajectory path [42] D. F. “Unsolved problems in visibility graphs of points. Volf. [45] M. H. Asl. 4. [46] M. 3. pp. December 2008. D. 98– 109. “Constraint-aware navigation in dynamic environments. January 2011. Lucas. 1. 2011. Haralick. 2007. vol.” in Proceedings of the WRI Global Congress on Intelligent Systems (GCIS ’09). pp. Liu. E. Carsten. Sun. G. pp. 2004. Springer. 22. Badler.-M. A. no. pp. [53] F. vol. pp. “Hierarchical path planning for multisize agents in heterogeneous environments. J. Y. May 2011. and A. 74–81. pp. Buro. 2006. K. and P. Ferguson and A. D. vol. M. S. M¨uller. 299–306. and J. . vol. Samadi. [44] S. 2165–2168. 258–265. pp. pp. 23. 942–947.” in Intelligent Robotics Systems: Inspiring the NEXT. Wesley. pp. vol. and A. Niederberger. Chrpa and A. B.10 [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] International Journal of Computer Games Technology of the 6th Annual Symposium on Combinatorial Search. Naderan-Tahan and T. Siˇ planning: Grid-based path planning comparison. “Navigation queries from triangular meshes. LaValle. Koenig. 111–120. 1177.” Journal of Field Robotics. Kapadia. Radovic. 2013. Chen. “A∗ -based pathfinding in modern computer games. Stentz. Stentz. Sukkarieh. M. Holte.” IEEE Transactions on Robotics. pp. Guettier. no. P. May 2009. “The focussed D∗ algorithm for real-time replanning. Enzenberger. vol. 18. “Generic path planning for real-time applications. R. 1998.” IEEE Transactions on Pattern Analysis and Machine Intelligence. vol. Yenic¸eri and M. “Implementation of path planning using genetic algorithms on mobile robots. ˇ sl´ak. Garcia. M. and N. 2005. pp. 2013. pp. pp. “Multi-domain real-time planning in dynamic environments.” in Proceedings of the 21st National Conference on Artificial Intelligence and the 18th Innovative Applications of Artificial Intelligence Conference. Garrido. Schaeffer. and Y. M. “3D field D∗ : improved path planning and replanning in three dimensions. P. Acapulco. “Dynamic trajectory replanning for unmanned aircrafts supporting tactical missions in urban environments.” in Combinatorial Image Analysis. Lozano-P´erez and M. 115–124. L. pp. August 2003. [55] A. pp. 167– 174. G. “Constrained navigation with mandatory waypoints in uncertain environment.” Journal of Game Development. and N. and A. September 2007. Bj¨ornsson. “Comparing real-time and incremental heuristic search for real-time situated agents.” in Proceedings of the National Conference on Artificial Intelligence. pp. Garcia.” in Proceedings of the 18th International Joint Conference on Artificial Intelligence (IJCAI ’03).” in Proceedings of the IEEE Congress on Evolutionary Computation (CEC ’09). vol. Daniel. 1652–1659.” in Motion in Games.” in Proceedings of the Computer Graphics International (CGI ’04). Yap. T. D. [49] C. “Theta∗ : anyangle path planning on grids. and M. Germany. V. Beacco.

Goei. 156 of Communications in Computer and Information Science. Nev. octrees. 1988. Cazenave. pp. “An overview of quadtrees. and O. pp. pp. Coulter.” in Proceedings of the IEEE Symposium on Computational Intelligence and Games (CIG ’06).” in Proceedings of the 25th Florida Artificial Intelligence Research Society Conference (FLAIRS ’12). Nice. E. 2010.” Acta Informatica. Y. Springer. University Ghent. 182–203.” ACM Transactions on Graphics. E. M. [66] X. 2003. L. 223–267. Cai and S. 2010. [61] F. Korf.International Journal of Computer Games Technology [56] R. Simulations. [65] T. 2. and related hierarchical data structures. “Optimal path-finding algorithms. “Probabilistic mapping of dynamic obstacles using Markov chains for replanning in dynamic environments. Kitchin. 1992. Symbolic Computation. 2012. pp. 22. [64] H. pp. G. [73] C. C. Springer. Parallel multi-agent path planning in dynamic environments for real-time applications [Ph. pp.D. Potts and K. . 2013. Marco Island. 1988. 51–68. 4. vol. [69] M. He. 2008. and C. Learning. 27–33. 2011. D. Kohlhagen. Springer. pp. May 2012. E. J. Brand and R. Buss. Berlin.” in Transactions on Edutainment VI. [57] R. September 2008. L.” in Research and Education in Robotics—EUROBOT 2010. Bentley. pp. Choi. Botea. pp. [68] A. Wollherr. 67–78.” IEEE Transactions on Computational Intelligence and AI in Games. M. Reasoning. vol. May 2006. “Iterative-expansion A. [63] H. Samet. 2005. no. Rohrmuller. M.” in Proceedings of the 1st International Workshop on Crowd Simulation. D. Germany. 2504–2510. “Neighbor finding techniques for images represented by quadtrees. and S. “A survey of Monte Carlo tree search methods. C. [67] J. Chen. [60] A. 18. A. Whitehouse et al. Harabor and A. “Planning biped locomotion using motion capture data and probabilistic roadmaps. New York. Crampton. 73–85. vol. Hensler. USA. Bidarra. Monte-Carlo Planning for Pathfinding in Real-Time Strategy Games. Springer. thesis]. “Implementation of the pure pursuit path tracking algorithm. B. vol. and M. “Using quadtrees for realtime pathfinding in indoor environments. USA. France. [71] T. Serious Games and Their Applications. 6758 of Lecture Notes in Computer Science. Berlin. pp. 33–38.” DTIC Document.” Computer Animation and Virtual Worlds. Zetzsche. Krebsbach. [58] Y. D.” in Theoretical Foundations of Computer Graphics and CAD. 1. no.. Rook. Reno. L. vol. Blaich. Lee. Shin. 1982. Samet. Powley. 23. pp. and Talking about Space. and M. Zhu. “Multi-core scalable and efficient pathfinding with Parallel Ripple Search. no. Springer. Bittel. 2012. heuristics and algorithms for path-finding on maps. and Q.” in Spatial Cognition VI. “Efficient wayfinding in hierarchically regionalized spatial environments. Gauggel.” in Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS '08). Fla. Kamphuis. NY. 1. 1–9. pp. Browne. October 2010. “Breaking path symmetries on 4connected grid maps. vol.” Computer Graphics and Image Processing. “Quad trees a data structure for retrieval on composite keys. Germany. “Tactical path finding in urban environments. [59] M. D. Springer. 1974. Finkel and J. “Optimizations of data structures.” in Search in Artificial Intelligence. pp. Dooms. no. vol. Hirt. H. D. 2014. USA. 56–70. 1. Overmars. [62] R. [72] D.” in Proceedings of the 6th AAAI Conference on Artificial Intelligence and Interactive Digital Entertainment (AIIDE ’10). 11 [74] S. 37–57. M. and A. 72–78. J. 4. no. 2. Althoff. Naveed. 1–43. “A novel method for large crowd flow. [70] C. Reineking.