ABLE 2.3.0 07/13/2005 14:21:00

com.ibm.able.rules
Class AblePlanningHTNProblemBuilder

java.lang.Object
  extended bycom.ibm.able.rules.AblePlanningHTNProblemBuilder
All Implemented Interfaces:
java.io.Serializable

public class AblePlanningHTNProblemBuilder
extends java.lang.Object
implements java.io.Serializable

This class builds a HTN Planning problem by processing a set of planning rules in a ruleblock.

The AblePlanningEngine processes AbleAssertionRules and AblePlanningRules and ignores all others. The AblePlanningHTNProblemBuilder is called by it to build the HTN problem.

The control parameters ARL.InitialState and ARL.GoalState can be used to specify the initial and final states respectively. The control parameter ARL.Domain can be used to specify the planning domain.

The control parameter ARL.Requirements can be used to specify requirements on the planning engine for the specified domain.

Instance of this class is constructed and used by AblePlanningEngine.

See Also:
AbleRuleSet, AbleRuleBlock, AbleAssertionRule, AblePlanningRule, Serialized Form

Field Summary
protected  boolean myDebugFlag
           
protected  com.ibm.able.planner4J.planners.IDomain myDomainObj
           
protected  AblePlanningEngine myEngine
           
protected  boolean myHTNProblemFlag
           
protected  boolean myProblemInitObjectsExplicitFlag
           
protected  com.ibm.able.planner4J.planners.IProblem myProblemObj
           
protected  AbleRuleBlock myRuleBlock
           
protected  AbleRuleSet myRuleSet
           
protected  AbleLogger myTracer
           
 
Constructor Summary
AblePlanningHTNProblemBuilder(AblePlanningEngine theEngine, AbleRuleSet theRuleSet, AbleLogger theTracer, AbleRuleBlock theRuleBlock)
          Create a new planning inference engine.
 
Method Summary
 void buildPlanningDomain()
          Convert from ARL objects into Planner4J objects
protected  void buildPlanningProblem()
           
protected  com.ibm.able.planner4J.planners.IDomain getDomainObj()
           
protected  com.ibm.able.planner4J.planners.IProblem getProblemObj()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

myDomainObj

protected com.ibm.able.planner4J.planners.IDomain myDomainObj

myProblemObj

protected com.ibm.able.planner4J.planners.IProblem myProblemObj

myEngine

protected AblePlanningEngine myEngine

myRuleSet

protected AbleRuleSet myRuleSet

myTracer

protected AbleLogger myTracer

myRuleBlock

protected AbleRuleBlock myRuleBlock

myDebugFlag

protected boolean myDebugFlag

myHTNProblemFlag

protected boolean myHTNProblemFlag

myProblemInitObjectsExplicitFlag

protected boolean myProblemInitObjectsExplicitFlag
Constructor Detail

AblePlanningHTNProblemBuilder

public AblePlanningHTNProblemBuilder(AblePlanningEngine theEngine,
                                     AbleRuleSet theRuleSet,
                                     AbleLogger theTracer,
                                     AbleRuleBlock theRuleBlock)
Create a new planning inference engine.

Parameters:
theEngine - A planning engine will calls the builder.

theRuleSet - A ruleset whose context is used for inferencing by this inference engine.

theTracer - A tracer object to which this inference engine can log information. This may be null, in which case no information is logged.

theRuleBlock - A ruleblock whose rules are to be used for inferencing by this inference engine.

Method Detail

getDomainObj

protected com.ibm.able.planner4J.planners.IDomain getDomainObj()

getProblemObj

protected com.ibm.able.planner4J.planners.IProblem getProblemObj()

buildPlanningDomain

public void buildPlanningDomain()
Convert from ARL objects into Planner4J objects


buildPlanningProblem

protected void buildPlanningProblem()

ABLE 2.3.0 07/13/2005 14:21:00

(C) Copyright IBM Corporation 1999, 2005