next up previous
Next: Experimental Results Up: Implementation Enhancements in Macro-FF Previous: State Hashing

Memory Requirements

Some of the optimizations in FF require the creation of large lookup tables built during the preprocessing stage. One of them is a lookup table storing the facts of the initial state. This table is sparsely populated but the required memory is equal to the number of constants to the power of the arity of each predicate summed over all predicates in the domain. This caused the planner to run out of memory in some large domains given the 1 GB memory limit used in the planning competition. We replaced the lookup table by a balanced binary tree with minimal memory requirement and a lookup time proportional to the logarithm of the number of facts in the initial state.

Adi Botea 2005-08-01