{"id":{"repo_id":"denver","oai_identifier":"oai:digitalcommons.du.edu:etd-2209"},"canonical_url":"https://search.dev.ndltd.org/etd/denver/oai:digitalcommons.du.edu:etd-2209","repository":{"repo_id":"denver","name":"University of Denver","base_url":"https://digitalcommons.du.edu/do/oai/"},"display":{"title":"Enhancements to Hierarchical Pathfinding Algorithms","abstract":"<p>In this thesis we study the problem of pathfinding in static grid-based maps. We apply the approach of abstraction and refinement. We abstract the grid map into a graph representation, and use the classic A* algorithm to search for a path in the abstract space, and then refine it into low-level path.</p> <p>We started with a 2013 entry program to the Grid-based Path Planning Competition, and implemented several enhancements to experiment with the tradeoff between memory usage and search speed. Our program returns the refined low-level path incrementally, therefore reduces the first-move lag in large maps. We cache the low-level edge paths during runtime to avoid repeatedly refining the same abstract edge. In the precomputation step we calculate the low-level paths for all of the edges in the abstraction and directly access the data during online search. We also applied the weighted A* algorithm for online abstract pathfinding and show that the search speed can be further increased by sacrificing path optimality.</p> <p>We ran our program with 132 maps and 1,739,340 queries. Results show that caching edge paths increases the search speed by a factor of 4.20 in comparison to returning the path incrementally but without caching. With precomputation, the search speed increases by a factor of 1.00 in comparison to caching edge paths. We show that online pathfinding speed can be increased by using more memory and/or offline storage.</p>","abstract_html":"&lt;p&gt;In this thesis we study the problem of pathfinding in static grid-based maps. We apply the approach of abstraction and refinement. We abstract the grid map into a graph representation, and use the classic A* algorithm to search for a path in the abstract space, and then refine it into low-level path.&lt;/p&gt; &lt;p&gt;We started with a 2013 entry program to the Grid-based Path Planning Competition, and implemented several enhancements to experiment with the tradeoff between memory usage and search speed. Our program returns the refined low-level path incrementally, therefore reduces the first-move lag in large maps. We cache the low-level edge paths during runtime to avoid repeatedly refining the same abstract edge. In the precomputation step we calculate the low-level paths for all of the edges in the abstraction and directly access the data during online search. We also applied the weighted A* algorithm for online abstract pathfinding and show that the search speed can be further increased by sacrificing path optimality.&lt;/p&gt; &lt;p&gt;We ran our program with 132 maps and 1,739,340 queries. Results show that caching edge paths increases the search speed by a factor of 4.20 in comparison to returning the path incrementally but without caching. With precomputation, the search speed increases by a factor of 1.00 in comparison to caching edge paths. We show that online pathfinding speed can be increased by using more memory and/or offline storage.&lt;/p&gt;","abstract_has_math":false,"creators":["Li, Xin"],"institution":null,"degree_name":"M.S.","degree_level":"Masters Thesis","degree_discipline":null,"degree_department":null,"school":null,"contributors":["Nathan R. Sturtevant, Ph.D.","Scott Leutenegger","Rafael Fajardo"],"advisors":[],"committee_chairs":[],"committee_members":[],"year":2016,"date_issued":"2016-01-01T08:00:00Z","date_published":"2016-01-01T08:00:00Z","updated_at":"2026-07-24T02:02:11Z","subjects":["Abstraction and refinement","GPPC","Grid-based path planning competition","Pathfinding","Single agent search","Computer Sciences","Theory and Algorithms"],"languages":["en"],"rights":["<p>Copyright is held by the author. User is responsible for all copyright compliance.</p>"],"rights_urls":[],"identifier_entries":[]},"links":{"outbound_url":"https://digitalcommons.du.edu/etd/1209","outbound_label":"Repository record","outbound_source":"dc:identifier"},"metadata_groups":[{"id":"people","label":"People","entries":[{"key":"dc:contributor","label":"Contributor","values":["Nathan R. Sturtevant, Ph.D.","Scott Leutenegger","Rafael Fajardo"]},{"key":"dc:creator","label":"Author","values":["Li, Xin"]}]},{"id":"academic_context","label":"Academic Context","entries":[{"key":"dc:date.available","label":"Dc Date Available","values":["2017-02-17T08:00:00Z"]},{"key":"thesis:degree_level","label":"Degree Level","values":["Masters Thesis"]},{"key":"thesis:degree_name","label":"Degree Name","values":["M.S."]}]},{"id":"subjects_keywords","label":"Subjects and Keywords","entries":[{"key":"dc:subject","label":"Dc Subject","values":["Abstraction and refinement","GPPC","Grid-based path planning competition","Pathfinding","Single agent search","Computer Sciences","Theory and Algorithms"]}]},{"id":"language_rights","label":"Language and Rights","entries":[{"key":"dc:language","label":"Dc Language","values":["en"]},{"key":"dc:rights","label":"Dc Rights","values":["<p>Copyright is held by the author. User is responsible for all copyright compliance.</p>"]}]},{"id":"identifiers","label":"Identifiers","entries":[{"key":"dc:identifier","label":"Identifier","values":["https://digitalcommons.du.edu/etd/1209"]}]},{"id":"additional","label":"Additional Metadata","entries":[{"key":"dc:description.abstract","label":"Abstract","values":["<p>In this thesis we study the problem of pathfinding in static grid-based maps. We apply the approach of abstraction and refinement. We abstract the grid map into a graph representation, and use the classic A* algorithm to search for a path in the abstract space, and then refine it into low-level path.</p> <p>We started with a 2013 entry program to the Grid-based Path Planning Competition, and implemented several enhancements to experiment with the tradeoff between memory usage and search speed. Our program returns the refined low-level path incrementally, therefore reduces the first-move lag in large maps. We cache the low-level edge paths during runtime to avoid repeatedly refining the same abstract edge. In the precomputation step we calculate the low-level paths for all of the edges in the abstraction and directly access the data during online search. We also applied the weighted A* algorithm for online abstract pathfinding and show that the search speed can be further increased by sacrificing path optimality.</p> <p>We ran our program with 132 maps and 1,739,340 queries. Results show that caching edge paths increases the search speed by a factor of 4.20 in comparison to returning the path incrementally but without caching. With precomputation, the search speed increases by a factor of 1.00 in comparison to caching edge paths. We show that online pathfinding speed can be increased by using more memory and/or offline storage.</p>"]},{"key":"dc:format","label":"Dc Format","values":["application/pdf"]},{"key":"dc:title","label":"Title","values":["Enhancements to Hierarchical Pathfinding Algorithms"]}]}],"canonical_facts":{"dc:contributor":["Nathan R. Sturtevant, Ph.D.","Scott Leutenegger","Rafael Fajardo"],"dc:creator":["Li, Xin"],"dc:date.available":["2017-02-17T08:00:00Z"],"dc:description.abstract":["<p>In this thesis we study the problem of pathfinding in static grid-based maps. We apply the approach of abstraction and refinement. We abstract the grid map into a graph representation, and use the classic A* algorithm to search for a path in the abstract space, and then refine it into low-level path.</p> <p>We started with a 2013 entry program to the Grid-based Path Planning Competition, and implemented several enhancements to experiment with the tradeoff between memory usage and search speed. Our program returns the refined low-level path incrementally, therefore reduces the first-move lag in large maps. We cache the low-level edge paths during runtime to avoid repeatedly refining the same abstract edge. In the precomputation step we calculate the low-level paths for all of the edges in the abstraction and directly access the data during online search. We also applied the weighted A* algorithm for online abstract pathfinding and show that the search speed can be further increased by sacrificing path optimality.</p> <p>We ran our program with 132 maps and 1,739,340 queries. Results show that caching edge paths increases the search speed by a factor of 4.20 in comparison to returning the path incrementally but without caching. With precomputation, the search speed increases by a factor of 1.00 in comparison to caching edge paths. We show that online pathfinding speed can be increased by using more memory and/or offline storage.</p>"],"dc:format":["application/pdf"],"dc:identifier":["https://digitalcommons.du.edu/etd/1209"],"dc:language":["en"],"dc:rights":["<p>Copyright is held by the author. User is responsible for all copyright compliance.</p>"],"dc:subject":["Abstraction and refinement","GPPC","Grid-based path planning competition","Pathfinding","Single agent search","Computer Sciences","Theory and Algorithms"],"dc:title":["Enhancements to Hierarchical Pathfinding Algorithms"],"thesis:degree_level":["Masters Thesis"],"thesis:degree_name":["M.S."]},"updated_at":"2026-07-24T02:02:11Z"}