edu.umich.soar.hpp
Class HPPlan

java.lang.Object
  extended by edu.umich.soar.hpp.HPPlan

public class HPPlan
extends java.lang.Object

Core class for HPP! A Hierarchical Probabilistic Plan (HPP) consists of... 1. Actions 2. Action-control scheme 3. Variables Action selection conditions upon variable values. Actions either occur in sequence (seq) or randomly (set), as controlled by the control scheme (i.e. the plan "type"). Each action can have sub-plans (i.e. arbitrary recursive hierarchy).


Nested Class Summary
static class HPPlan.PlanType
          Action control scheme possibilities
 
Constructor Summary
HPPlan(HPPlan.PlanType type)
          Basic constructor - requires type and initializes empty variables/actions
HPPlan(HPPlan.PlanType type, HPPVariable[] variables, HPPAction[] actions)
          Constructor to support custom initialization of variables/actions via arrays
 
Method Summary
 void AddAction(HPPAction newAction)
          Supports appending an action to the plan
 void AddVariable(HPPVariable newVariable)
          Supports appending a variable to the plan
 java.util.Iterator<HPPAction> GetActions()
          Supports read-only access to action list
 HPPlan.PlanType GetType()
          Supports read-only access to
 java.util.Iterator<HPPVariable> GetVariables()
          Supports read-only access to variable set
 java.lang.String toGraphviz()
          Recursively visualizes a plan
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

HPPlan

public HPPlan(HPPlan.PlanType type)
Basic constructor - requires type and initializes empty variables/actions

Parameters:
type - action-control scheme

HPPlan

public HPPlan(HPPlan.PlanType type,
              HPPVariable[] variables,
              HPPAction[] actions)
Constructor to support custom initialization of variables/actions via arrays

Parameters:
type - action-control scheme
variables - initial variable list (supports null to ignore)
actions - initial action list (supports null to ignore)
Method Detail

GetType

public HPPlan.PlanType GetType()
Supports read-only access to

Returns:
action-control scheme

GetActions

public java.util.Iterator<HPPAction> GetActions()
Supports read-only access to action list

Returns:
iterator to current action list

GetVariables

public java.util.Iterator<HPPVariable> GetVariables()
Supports read-only access to variable set

Returns:
iterator to current variable set

AddAction

public void AddAction(HPPAction newAction)
Supports appending an action to the plan

Parameters:
newAction - action to be added to the plan

AddVariable

public void AddVariable(HPPVariable newVariable)
Supports appending a variable to the plan

Parameters:
newVariable - variable to be added to the plan

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

toGraphviz

public java.lang.String toGraphviz()
Recursively visualizes a plan

Returns:
plan visualized in Graphviz format