1 / 13

Pathfinding

Pathfinding. “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. SDK Licensing options. Cheaper Options.

Télécharger la présentation

Pathfinding

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

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. Examines all paths of cost 1, then 2, and so on until it finds the goal. Guaranteed to find the shortest path Very slow Breadth-First Search

  6. 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. Dijkstra’s Algorithm

  7. 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. Best-First Search

  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 asf(n) = g(n) + h(n) whereg(n) is the distance traveled from the starth(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 Enginehttp://www.pathengine.com/index.php • Smart Moves: Intelligent Path-Finding http://www.gamasutra.com/features/19990212/sm_01.htm • Ogre Articles and Resourceshttp://www.ogre3d.org/wiki/index.php?title=ArticlesAndSources&redirect=no • Pathfinding using A*-algorithmhttp://www.cs.helsinki.fi/u/apipulkk/astar/index.html

More Related