aima.core.search.nondeterministic.Plan Maven / Gradle / Ivy
package aima.core.search.nondeterministic;
import java.util.LinkedList;
import aima.core.agent.Action;
/**
* Represents a solution plan for an AND-OR search; according to page 135
* AIMA3e, the plan must be "a subtree that (1) has a goal node at every leaf,
* (2) specifies one Object at each of its OR nodes, and (3) includes every
* outcome branch at each of its AND nodes." As demonstrated on page 136, this
* subtree is implemented as a linked list where every OR node is an Object--
* satisfying (2)--and every AND node is an if-state-then-plan-else
* chain--satisfying (3).
*
* @author Andrew Brown
*/
public class Plan extends LinkedList