edu.cmu.cs.coral.icf.plan_based.planners
Class Planner

java.lang.Object
  |
  +--edu.cmu.cs.coral.icf.plan_based.planners.Planner
Direct Known Subclasses:
PIP

public abstract class Planner
extends java.lang.Object

Represents a Planner.

Since:
ICF 0.0
Version:
$Id$

Field Summary
protected  DomainReader domainReader
          The DomainReader to use for this Planner, defaults to a PlannerDomainReader.
protected  ProblemReader problemReader
          The ProblemReader to use for this Planner, defaults to a PlannerProblemReader.
 
Constructor Summary
protected Planner()
          Constructs a new Planner.
 
Method Summary
 DomainReader getDomainReader()
          Gets a DomainReader.
 ProblemReader getProblemReader()
          Gets a ProblemReader.
abstract  Plan solveProblem(PlannerDomain domain, PlannerProblem problem)
          Solves a planning problem generating a plan.
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, toString, wait, wait, wait
 

Field Detail

domainReader

protected DomainReader domainReader
The DomainReader to use for this Planner, defaults to a PlannerDomainReader. This field should be set in the constructor unless getDomainReader is overridden. Any preprocessing of the Domain that needs to occur before using the domain can be done in the DomainReader.
Since:
ICF 0.0

problemReader

protected ProblemReader problemReader
The ProblemReader to use for this Planner, defaults to a PlannerProblemReader. This field should be set in the constructor unless getProblemReader is overridden. Any preprocessing of the Problem that needs to occur before using the problem can be done in the ProblemReader.
Since:
ICF 0.0
Constructor Detail

Planner

protected Planner()
Constructs a new Planner.
Since:
ICF 0.0
Method Detail

getProblemReader

public ProblemReader getProblemReader()
Gets a ProblemReader.
Returns:
a ProblemReader for reading Planner Problem's
Since:
ICF 0.0

getDomainReader

public DomainReader getDomainReader()
Gets a DomainReader.
Returns:
a DomainReader for reading Planner Domain's
Since:
ICF 0.0

solveProblem

public abstract Plan solveProblem(PlannerDomain domain,
                                  PlannerProblem problem)
Solves a planning problem generating a plan. This method is the main entry point into the Planner.
Parameters:
domain - information about the world that the problem occurs in
problem - specifics of the problem
Returns:
a Plan solving the problem
Since:
ICF 0.0