ics.TripleApl.Plan Class Reference

Inheritance diagram for ics.TripleApl.Plan:

ics.TripleApl.BactionPlan ics.TripleApl.ConditionalPlan ics.TripleApl.CreateAction ics.TripleApl.JavaAction ics.TripleApl.LoopPlan ics.TripleApl.PredicatePlan ics.TripleApl.SendAction ics.TripleApl.SequencePlan ics.TripleApl.SkipAction ics.TripleApl.TestAction ics.TripleApl.VarPlan List of all members.

Public Member Functions

abstract Plan copy ()
abstract void doSubst (SubstList theta)
abstract boolean equals (Plan plan)
abstract boolean plansMatch (BeliefBase beliefBase, Plan otherPlan, SubstList theta, VarPlanList planSubst)
abstract void simplify ()
abstract void simplify (BeliefBase bb)
abstract String toString ()
abstract PlanOption isExecutable (Agent agent)
abstract Plan executePlan (SubstList theta, SequencePlan scope, Agent agent, AMS ams)

Detailed Description

Abstract base class for all Plans.

Author:
Meindert Kroese
Version:
2.0, August 2003
Since:
1.0, August 2002


Member Function Documentation

abstract Plan ics.TripleApl.Plan.copy  )  [pure virtual]
 

A method to make a copy of a goal.

Returns:
Plan, a copy of the goal.

Implemented in ics.TripleApl.BactionPlan, ics.TripleApl.ConditionalPlan, ics.TripleApl.JavaAction, ics.TripleApl.LoopPlan, ics.TripleApl.PredicatePlan, ics.TripleApl.SendAction, ics.TripleApl.SequencePlan, ics.TripleApl.SkipAction, ics.TripleApl.TestAction, and ics.TripleApl.VarPlan.

abstract void ics.TripleApl.Plan.doSubst SubstList  theta  )  [pure virtual]
 

All variables in the Plan which also occur in the SubstList are replaced with their value.

Parameters:
sub the list of variables and their substitution.

Implemented in ics.TripleApl.BactionPlan, ics.TripleApl.ConditionalPlan, ics.TripleApl.JavaAction, ics.TripleApl.LoopPlan, ics.TripleApl.PredicatePlan, ics.TripleApl.SendAction, ics.TripleApl.SequencePlan, ics.TripleApl.SkipAction, ics.TripleApl.TestAction, and ics.TripleApl.VarPlan.

abstract boolean ics.TripleApl.Plan.equals Plan  plan  )  [pure virtual]
 

Method compares Plans on equality of type and content.

Returns:
true on equality.

Implemented in ics.TripleApl.BactionPlan, ics.TripleApl.ConditionalPlan, ics.TripleApl.JavaAction, ics.TripleApl.LoopPlan, ics.TripleApl.PredicatePlan, ics.TripleApl.SendAction, ics.TripleApl.SequencePlan, ics.TripleApl.SkipAction, ics.TripleApl.TestAction, and ics.TripleApl.VarPlan.

abstract Plan ics.TripleApl.Plan.executePlan SubstList  theta,
SequencePlan  scope,
Agent  agent,
AMS  ams
[pure virtual]
 

Execute this Plan. Always call isExecutable(Agent) first to check whether this Plan is currently executable at all!

Parameters:
theta the substitutions to be used.
scope the scope if this Plan. This may be null if this Plan is a SequencePlan and it is the outer Plan.
agent the agent executing this Plan.
ams the AMS.
Returns:
a rewrite of this Plan, possibly this or null.

Implemented in ics.TripleApl.BactionPlan, ics.TripleApl.ConditionalPlan, ics.TripleApl.JavaAction, ics.TripleApl.LoopPlan, ics.TripleApl.PredicatePlan, ics.TripleApl.SendAction, ics.TripleApl.SequencePlan, ics.TripleApl.SkipAction, ics.TripleApl.TestAction, and ics.TripleApl.VarPlan.

abstract PlanOption ics.TripleApl.Plan.isExecutable Agent  agent  )  [pure virtual]
 

Checks whether this Plan is executable. Always call this method before calling executePlan(SubstList, SequencePlan, Agent, AMS)!

Parameters:
agent the Agent on which to make this check.
Returns:
a PlanOption containing this Plan and possibly a substitution, or null if this Plan is not executable.

Implemented in ics.TripleApl.BactionPlan, ics.TripleApl.ConditionalPlan, ics.TripleApl.JavaAction, ics.TripleApl.LoopPlan, ics.TripleApl.PredicatePlan, ics.TripleApl.SendAction, ics.TripleApl.SequencePlan, ics.TripleApl.SkipAction, ics.TripleApl.TestAction, and ics.TripleApl.VarPlan.

abstract boolean ics.TripleApl.Plan.plansMatch BeliefBase  beliefBase,
Plan  otherPlan,
SubstList  theta,
VarPlanList  planSubst
[pure virtual]
 

This method tries to match two plans, replacing variable parameters and variable plans, if necessary.

Parameters:
bb the beliefbase, is ignored.
otherPlan the goal to be matched with this goal.
theta the list of variable parameters and their values.
planSubst the list of variable goals and their substitutes.
Returns:
true when the match succeeds.

Implemented in ics.TripleApl.BactionPlan, ics.TripleApl.ConditionalPlan, ics.TripleApl.JavaAction, ics.TripleApl.LoopPlan, ics.TripleApl.PredicatePlan, ics.TripleApl.SendAction, ics.TripleApl.SequencePlan, ics.TripleApl.SkipAction, ics.TripleApl.TestAction, and ics.TripleApl.VarPlan.

abstract void ics.TripleApl.Plan.simplify BeliefBase  bb  )  [pure virtual]
 

The goal is simplified as far as possible. This means that Wffs in the goal are calculated (arithmatic and boolean) as far as possible. Wffs are first unified against the beliefbase.

Parameters:
bb the beliefbase.
Deprecated:
the BeliefBase is not used anywhere. Use simplify() instead

Implemented in ics.TripleApl.BactionPlan, ics.TripleApl.ConditionalPlan, ics.TripleApl.JavaAction, ics.TripleApl.LoopPlan, ics.TripleApl.PredicatePlan, ics.TripleApl.SendAction, ics.TripleApl.SequencePlan, ics.TripleApl.SkipAction, ics.TripleApl.TestAction, and ics.TripleApl.VarPlan.

abstract void ics.TripleApl.Plan.simplify  )  [pure virtual]
 

The goal is simplified as far as possible. This means that Wffs in the goal are calculated (arithmatic and boolean) as far as possible.

Implemented in ics.TripleApl.BactionPlan, ics.TripleApl.ConditionalPlan, ics.TripleApl.JavaAction, ics.TripleApl.LoopPlan, ics.TripleApl.PredicatePlan, ics.TripleApl.SendAction, ics.TripleApl.SequencePlan, ics.TripleApl.SkipAction, ics.TripleApl.TestAction, and ics.TripleApl.VarPlan.

abstract String ics.TripleApl.Plan.toString  )  [pure virtual]
 

Method to get a printable version of a Goal.

Returns:
String, a printable version of a Goal.

Implemented in ics.TripleApl.BactionPlan, ics.TripleApl.ConditionalPlan, ics.TripleApl.JavaAction, ics.TripleApl.LoopPlan, ics.TripleApl.PredicatePlan, ics.TripleApl.SendAction, ics.TripleApl.SequencePlan, ics.TripleApl.SkipAction, ics.TripleApl.TestAction, and ics.TripleApl.VarPlan.


The documentation for this class was generated from the following file:
Generated on Mon Dec 12 15:07:23 2005 for 3APL by  doxygen 1.4.5