Ořezávání grafu pro multiagentní plánování cest
Graph pruning for multi-agent pathfinding
bachelor thesis (DEFENDED)

View/ Open
Permanent link
http://hdl.handle.net/20.500.11956/148334Identifiers
Study Information System: 229930
Collections
- Kvalifikační práce [11322]
Author
Advisor
Referee
Ivanová, Marika
Faculty / Institute
Faculty of Mathematics and Physics
Discipline
Software and Data Engineering
Department
Department of Software and Computer Science Education
Date of defense
10. 9. 2021
Publisher
Univerzita Karlova, Matematicko-fyzikální fakultaLanguage
Czech
Grade
Excellent
Keywords (Czech)
Multiagentní plánování cest|SAT|OřezáváníKeywords (English)
Multi-agent pathfinding|SAT|PruningV tejto práci sa zameriame na zrýchlenie celkového výpočtu optimálneho multiagentového plánovania ciest, ktoré je NP-ťažkým problémom, preto jeho riešenie budeme hľadať pomocou SAT riešiča. Na dosiahnutie tohto výsledku využijeme orezávanie grafu, ktoré spočíva v odstránení takých vrcholov z pôvodného grafu, ktoré agenti nemusia využiť, a preto predstavujú takéto vrcholy zbytočnú záťaž pre SAT riešič. Na riešenie tejto úlohy navrhneme tri algoritmy, pričom ich následne experimentálne porovnáme so základným bežným algoritmom. Na jednotlivých navrhovaných algoritmoch nás bude zaujímať ich celková rýchlosť výpočtu, ale taktiež aj optimalita nimi nájdeného výsledku. Ukážeme si, že jeden z navrhovaných algoritmov zachováva optimalitu a tiež prináša aj značné zrýchlenie vo výpočte na veľkých grafoch.
In this thesis, we focus on improving the overall length of the calculation for the optimal multi-agent pathfinding which is an NP-hard problem, therefore we will look for a solution using a SAT solver. In order to achieve this result, we will be using graph pruning. This consists of removing such vertices from the original graph that the agents do not have to use and therefore such vertices represent an unnecessary burden for the SAT solver. To solve this problem we propose three algorithms that will be compared experimentally with the basic common algorithm. When comparing the proposed algorithms we will be interested in their overall speed of the calculation and also in the optimality of the result found by them. We will show that one of the proposed algorithms maintains optimality and also brings significant acceleration in the calculation on large graphs.