{'fraction_non_alphanumeric': 0.02221074380165289, 'fraction_numerical': 0.0010330578512396695, 'mean_word_length': 5.456666666666667, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Hierarchical Evolutionary Heuristic A* Search

A* is an informed pathfinding algorithm that uses a heuristic function to determine the best action to take based on the given information. The performance of A* is heavily dependent on the quality of the heuristic function. The heuristic function determines the search speed, accuracy, and memory consumption. Hence, designing good heuristic functions for specific domains becomes the primary research focus on pathfinding algorithms optimization. However, designing new heuristic functions is a difficult task, especially when they are used to solve complex problems. Moreover, a single heuristic function might not be enough to digest all the provided information and return the best guidance during the search. Previous works suggest that multiple heuristics for complex problems can dramatically speed up the search. However, choosing the appropriate combination of heuristic functions is tricky. Current optimization approaches rely on hand-tuning the parameters via trial and error by the engineers over many iterations. There is a need to reduce the difficulty of designing heuristic functions for search performance maximization. In this paper, we develop a novel heuristic search called Hierarchical Evolutionary Heuristic A* (HEHA*) where multiple heuristics are chosen and evolved using Genetic Algorithm. HEHA* combines the techniques of map abstraction, pattern database, and heuristic improvement. The advantage of HEHA* is twofold: 1) it partitions and reduces the search space based on local features to speed-up the search, and 2) it automatically designs and optimizes heuristics for different local regions to maximize the search performance. We test our algorithm on a widely used grid-based map benchmark to compare with A* variants. Our results show that HEHA* outperforms compared with other pathfinding algorithms in terms of execution time and memory consumption.