Presentation is loading. Please wait.

Presentation is loading. Please wait.

Pathfinding. “PathEngine is a sophisticated middleware tool- kit for the implementation of intelligent agent movement, built around an advanced implementation.

Similar presentations


Presentation on theme: "Pathfinding. “PathEngine is a sophisticated middleware tool- kit for the implementation of intelligent agent movement, built around an advanced implementation."— Presentation transcript:

1 Pathfinding

2 “PathEngine is a sophisticated middleware tool- kit for the implementation of intelligent agent movement, built around an advanced implementation of points-of-visibility pathfinding on 3D ground surfaces.” ~www.pathengine.com/overview

3 SDK Licensing options

4 Cheaper Options Breadth-First Search Dijkstra’s Algorithm Best-First Search A* Search

5 Breadth-First Search Examines all paths of cost 1, then 2, and so on until it finds the goal. Guaranteed to find the shortest path Very slow

6 Dijkstra’s Algorithm Selects closest unprocessed node from the start, and updates its value, and that of its neighbors. Nodes are valued by the distance from the start.

7 Best-First Search Similar to Dijkstra’s Algorithm, but uses a heuristic to determine the value of node. Main disadvantage is that is does not account well for terrain that is slower.

8 A* Search Very similar to a Breadth-First Search. Orders nodes to search not just by distance from start node, but also by a “heuristic” or a estimate cost remaining to the end point.

9 A* Search The cost of a node is defined as f(n) = g(n) + h(n) where g(n) is the distance traveled from the start h(n) is the heuristic, the estimated distance to the end node

10 A* Heuristic The heuristic is an estimate for the remaining cost to the end point This estimate should be a close as possible to the actual cost, but never higher. For a grid of squares, the heuristic is usually the number of squares in between the current node and the end node. (note this is different from the Euclidean distance)

11 A* Search Examples

12 A* Considerations You must define how diagonal squares work with map grids. If movement is continuous, consider multiplying the cost of diagonal movement by √ 2 Defining an upper bound cutoff can prevent the search from taking too long.

13 References Path Engine http://www.pathengine.com/index.php Smart Moves: Intelligent Path-Finding http://www.gamasutra.com/features/19990212/sm_01.htm Ogre Articles and Resources http://www.ogre3d.org/wiki/index.php?title=ArticlesAndSources&redirect=no Pathfinding using A*-algorithm http://www.cs.helsinki.fi/u/apipulkk/astar/index.html


Download ppt "Pathfinding. “PathEngine is a sophisticated middleware tool- kit for the implementation of intelligent agent movement, built around an advanced implementation."

Similar presentations


Ads by Google