Class PlanSpaceNode

java.lang.Object
edu.uky.ai.planning.ps.PlanSpaceNode
All Implemented Interfaces:
Partial
Direct Known Subclasses:
PlanSpaceRoot

public class PlanSpaceNode extends Object implements Partial
This class represents an specific partial plan in a plan-space search.
Author:
Stephen G. Ware
  • Field Details

    • parent

      public final PlanSpaceNode parent
      This node's parent (the node of which this node is a refinement)
    • steps

      public final ImmutableList<PartialStep> steps
      The steps in this plan
    • bindings

      public final Bindings bindings
      The binding constraints specifying which variables map to which values
    • orderings

      public final DirectedAcyclicGraph<PartialStep> orderings
      The constraints on how steps are ordered
    • flaws

      public final ImmutableList<Flaw> flaws
      A list of flaws (if any) that prevent this plan from being a solution
  • Method Details

    • toString

      public String toString()
      Overrides:
      toString in class Object
    • toString

      public String toString(Substitution substitution)
      Description copied from interface: Partial
      Returns a string representation of this object in which all variables which have values in the given substitution have been replaced with those values.
      Specified by:
      toString in interface Partial
      Parameters:
      substitution - a substitution which may contain values for variabels used in this object
      Returns:
      a string
    • getRoot

      public PlanSpaceRoot getRoot()
      Returns to root node of this search space.
      Returns:
      the root node
    • expand

      public PlanSpaceNode expand(ImmutableList<PartialStep> steps, Bindings bindings, DirectedAcyclicGraph<PartialStep> orderings, ImmutableList<CausalLink> causalLinks, ImmutableList<Flaw> flaws)
      Creates a child partial plan node (a node for this this node is the parent) with the given steps, bindings, orderings, causal links, and flaws.
      Parameters:
      steps - the steps in the child plan
      bindings - the bindings in the child plan
      orderings - the orderings between steps in the child plan
      causalLinks - the causal links in the child plan
      flaws - the flaws in the child plan
      Returns:
      a child partial plan node