Gerhard Kainz, Hermann Kaindl
Heuristic search algorithms employ evaluation functions that utilize heuristic knowledge of the given domain. We call such functions static evaluation functions when they only make use of knowledge applied to the given state but not results of any search in this state space - neither the search guided by the evaluation nor extra search like look-ahead. Static evaluation functions typically evaluate with some error. An approach to improve on the accuracy of a given static evaluation function is to utilize results of a search. Since this involves dynamic changes, we call resulting functions dynamic evaluation functions. We devised a new approach to dynamic improvements that we named diflerence approach. It utilizes differences of known costs and their heuristic estimates from a given evaluation function to improve other heuristic estimates from this function. This difference approach can be applied in a wide variety of known search algorithms. We show how it fits into a unifying view of dynamic improvements, that also covers already existing approaches as viewed from this perspective. Finally, we report experimental data for two different domains that represent significant improvements over previously published results.