Skip to main content

Parallel Ripple Search – Scalable and Efficient Pathfinding for Multi-core Architectures

  • Conference paper
Motion in Games (MIG 2011)

Part of the book series: Lecture Notes in Computer Science ((LNIP,volume 7060))

Included in the following conference series:

Abstract

Game developers are often faced with very demanding requirements on huge numbers of agents moving naturally through increasingly large and detailed virtual worlds. With the advent of multi-core architectures, new approaches to accelerate expensive pathfinding operations are worth being investigated. Traditional single-processor pathfinding strategies, such as A* and its derivatives, have been long praised for their flexibility. We implemented several parallel versions of such algorithms to analyze their intrinsic behavior, concluding that they either have a large overhead, yield far from optimal paths, do not scale up to many cores, or are cache unfriendly. In this paper we propose Parallel Ripple Search, a novel parallel pathfinding algorithm that largely solves these limitations. It utilizes a high-level graph to assign local search areas to CPU cores at ’equidistant’ intervals. These cores then use A* flooding behavior to expand towards each other, yielding good ’guesstimate points’ at border touch on. The process does not rely on expensive parallel programming synchronization locks, but instead relies on the opportunistic use of node collisions among cooperating cores, exploiting the multi-core’s shared memory architecture. As a result, all cores effectively run at full speed until enough way-points are found. We show that this approach is a fast, practical and scalable solution, and that it flexibly handles dynamic obstacles in a natural way.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Amato, N.: Randomized Motion Planning. Texas, USA (2004), http://parasol.tamu.edu/~amato/Courses/padova04/lectures/L8.prms.pdf

  2. Björnsson, Y., Enzenberger, M., Holte, R., Schaeffer, J.: Fringe Search: Beating A* at Pathfinding on Game Maps. In: Proceedings of IEEE Symposium on Computational Intelligence and Games, Essex, pp. 125–132 (2005), http://www.cs.ualberta.ca/~games/pathfind/publications/cig2005.pdf

  3. Bleiweiss, A.: GPU Accelerated Pathfinding. In: Proceedings of Eurographics 2008 (2008)

    Google Scholar 

  4. Botea, A., Muller, M., Schaeffer, J.: Near Optimal Hierarchical Path-Finding (HPA*). Department of Computing Science, University of Alberta (2006)

    Google Scholar 

  5. Brand, S.: Efficient obstacle avoidance using autonomously generated navigation meshes. MSc Thesis, Delft University of Technology,The Netherlands (2009)

    Google Scholar 

  6. Buluç, A., Gilbert, J.R., Budak, C.: Solving Path Problems on the GPU. Parallel Computing (2009), doi:10.0106/j.parco.2009.12.002

    Google Scholar 

  7. Cohen, D., Dallas, M.: Implementation of Parallel Path Finding in a Shared Memory Architecture. Department of Computer Science Rensselaer Polytechnic Institute, Troy, NY (2010), http://www.cs.rpi.edu/~dallam/Parallel.pdf

  8. Cvetanovic, Z., Nofsinger, C.: Parallel Astar Search on Message-Passing Architectures. System Sciences. In: Proceedings of the Twenty-Third Annual Hawaii Conference, vol. 1, pp. 92–90 (1990)

    Google Scholar 

  9. Patel, A.J. (2004) Variations of A*. Amit’s Game Programming Site, http://www.dc.fi.udc.es/lidia/mariano/demos/amits/theory.stanford.edu/~amitp/gameprogramming/variations.html

  10. Sniedovich, M.: Dijkstra’s Algorithm. The University of Melbourne, Australia, http://www.ms.unimelb.edu.au/~moshe/620-261/dijkstra/dijkstra.html

  11. Nohra, J., Champandard, A.J.: The Secrets of Parallel Pathfinding on Modern Computer Hardware. In: Intel Software Network, Intel Corp. (2010)

    Google Scholar 

  12. Sturtevant, N.R., Geisberger, R.: A Comparison of High-Level Approaches for Speeding Up Pathfinding. In: Proceedings of the Conference on Artificial Intelligence and Interactive Digital Entertainment, AIIDE 2010 (2010)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Brand, S., Bidarra, R. (2011). Parallel Ripple Search – Scalable and Efficient Pathfinding for Multi-core Architectures. In: Allbeck, J.M., Faloutsos, P. (eds) Motion in Games. MIG 2011. Lecture Notes in Computer Science, vol 7060. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-25090-3_25

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-25090-3_25

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-25089-7

  • Online ISBN: 978-3-642-25090-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics