The selection of these methods can be architectural or dynamic. The reason for selecting one over the other resides in the a priori estimate of the number of operators needed to be examined (i.e. the size of the respective search spaces). Architecturally, this decision must be made either ad hoc or by building in a mechanism to force all logic trees to be condition-heavy or results-heavy. None of the architectures analyzed deal with such a mechanism.
The decision to utilize backward or forward-planning can be made dynamically by a weighted counting of the number of operators relevant to the current state and the same weighted counting of the number of operators that will result in the goal. The weights should be made proportional to the size of the new knowledge generated by each operator, in the forward case and the proportional to the size of the condition space in the backward case, since the number of operators selected next is proportional to the size of the state space.
In other words, the number of possible paths to examine for a solution is approximately the number of currently applicable operators (i.e., the branching factor) times the number of operators (i.e., number of nodes) to be applied next. The number of operators to be applied next will be proportional to the increase in the size of the state space produced by the application of the currently relevant operator.
Return to the Table of Contents.