Multi-agent parallel hierarchical path finding in navigation meshes (MA-HNA*)

One of the main challenges in video games is to compute paths as efficiently as possible for groups of agents. As both the size of the environments and the number of autonomous agents increase, it becomes harder to obtain results in real time under the constraints of memory and computing resources....

ver descrição completa

Detalhes bibliográficos
Autores: Rahmani, Vahid, Pelechano Gómez, Núria|||0000-0002-1437-245X
Formato: artículo
Fecha de publicación:2020
País:España
Recursos:Universitat Politècnica de Catalunya (UPC)
Repositorio:UPCommons. Portal del coneixement obert de la UPC
Idioma:inglés
OAI Identifier:oai:upcommons.upc.edu:2117/181150
Acesso em linha:https://hdl.handle.net/2117/181150
https://dx.doi.org/10.1016/j.cag.2019.10.006
Access Level:acceso abierto
Palavra-chave:Multiagent systems
Multi-agent path finding
Hierarchical search
Parallel path finding
Sistemes multiagent
Àrees temàtiques de la UPC::Informàtica::Infografia
Descrição
Resumo:One of the main challenges in video games is to compute paths as efficiently as possible for groups of agents. As both the size of the environments and the number of autonomous agents increase, it becomes harder to obtain results in real time under the constraints of memory and computing resources. Hierarchical approaches, such as HNA* (Hierarchical A* for Navigation Meshes) can compute paths more efficiently, although only for certain configurations of the hierarchy. For other configurations, the method suffers from a bottleneck in the step that connects the Start and Goal positions with the hierarchy. This bottleneck can drop performance drastically. In this paper we present two approaches to solve the HNA* bottleneck and thus obtain a performance boost for all hierarchical configurations. The first method relies on further memory storage, and the second one uses parallelism on the GPU. Our comparative evaluation shows that both approaches offer speed-ups as high as 9x faster than A*, and show no limitations based on hierarchical configuration. Finally we show how our CUDA based parallel implementation of HNA* for multi-agent path finding can now compute paths for over 500K agents simultaneously in real-time, with speed-ups above 15x faster than a parallel multi-agent implementation using A*.