Package fr.uga.pddl4j.planners.htn.stn
Class PFD
java.lang.Object
fr.uga.pddl4j.planners.AbstractPlanner
fr.uga.pddl4j.planners.htn.AbstractHTNPlanner
fr.uga.pddl4j.planners.htn.stn.AbstractSTNPlanner
fr.uga.pddl4j.planners.htn.stn.PFD
- All Implemented Interfaces:
HTNPlanner
,STNPlanner
,Planner
,Serializable
,Callable<Integer>
This class implement a simple task network planner enable to deal with partial ordered htn representation. The
search method is an implementation of the partial order STN procedure describes in the book of Automated Planning of
Ghallab and al. page 243.
PFD [-hiV] [-l=<logLevel>] [-t=<timeout>] <domain> <problem>
Description:
Solves a specified planning problem using a Partial-order Forward Decomposition
strategy.
Parameters:
<domain> The domain file.
<problem> The problem file.
Options:
-t, --timeout=<timeout> Set the time out of the planner in seconds (preset
600s).
-l, --log=<logLevel> Set the level of trace of the planner: ALL, DEBUG,
INFO, ERROR, FATAL, OFF, TRACE (preset INFO).
-i, --interactive Set the planner in interactive mode for debug
-h, --help Show this help message and exit.
-V, --version Print version information and exit.
Commande line example:
java -cp build/libs/pddl4j-4.0-all.jar fr.uga.pddl4j.planners.htn.stn.PFDPlanner
src/test/resources/benchmarks/hddl/ipc2020/barman/domain.hddl
src/test/resources/benchmarks/hddl/ipc2020/barman/p01.hddl
- Since:
- 4.0
- See Also:
PlannerConfiguration
, Serialized Form
-
Nested Class Summary
Nested classes/interfaces inherited from interface fr.uga.pddl4j.planners.Planner
Planner.Name
-
Field Summary
Fields inherited from interface fr.uga.pddl4j.planners.Planner
DEFAULT_DOMAIN, DEFAULT_LOG_LEVEL, DEFAULT_PROBLEM, DEFAULT_TIME_OUT, DOMAIN_SETTING, LOG_LEVEL_SETTING, PROBLEM_SETTING, TIME_OUT_SETTING
Fields inherited from interface fr.uga.pddl4j.planners.htn.stn.STNPlanner
DEFAULT_INTERACTIVE_MODE, INTERACTIVE_MODE_SETTING
-
Constructor Summary
ConstructorDescriptionPFD()
Creates a new planner with a default configuration.PFD(PlannerConfiguration configuration)
Creates a new abstract STN planner with the default configuration. -
Method Summary
Methods inherited from class fr.uga.pddl4j.planners.htn.stn.AbstractSTNPlanner
extractHierarchy, extractPlan, getConfiguration, getDefaultConfiguration, hasValidConfiguration, instantiate, isInteractive, isSupported, setConfiguration, setInteractive, solve, waitPressAnyKey
Methods inherited from class fr.uga.pddl4j.planners.AbstractPlanner
call, getDomain, getDomainFile, getLogLevel, getParser, getParserErrorManager, getProblem, getProblemFile, getStatistics, getTimeout, parse, parse, setDomain, setLogLevel, setProblem, setTimeout, throwInvalidConfigurationException
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface fr.uga.pddl4j.planners.Planner
getDomain, getDomainFile, getLogLevel, getParserErrorManager, getProblem, getProblemFile, getStatistics, getTimeout, parse, parse, setDomain, setLogLevel, setProblem, setTimeout
-
Constructor Details
-
PFD
public PFD()Creates a new planner with a default configuration. -
PFD
Creates a new abstract STN planner with the default configuration.- Parameters:
configuration
- the configuration of the planner.
-
-
Method Details
-
solve
Solves the planning problem and returns the first solution search found. The search method is an implementation of the partial order STN procedure describes in the book of Automated Planning of Ghallab and al. page 243.- Parameters:
problem
- the problem to be solved.- Returns:
- a solution search or null if it does not exist.
- Throws:
ProblemNotSupportedException
- if the problem to solve is not supported by the planner.
-
main
The main method of thePFD
planner.- Parameters:
args
- the arguments of the command line.
-