Package fr.uga.pddl4j.planners.htn.stn
Class TFD
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.TFD
- All Implemented Interfaces:
HTNPlanner
,STNPlanner
,Planner
,Serializable
,Callable<Integer>
This class implements the code of a Total-order Forward Decomposition Planner. The search method is an
implementation of the total order STN procedure describes in the book of Automated Planning of Ghallab and al.
page 239.
The command line to launch the planner is as follow:
TFD [-hiV] [-l=<logLevel>] [-t=<timeout>] <domain> <problem>
Description:
Solves a specified planning problem using a Total-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.TFDPlanner
src/test/resources/benchmarks/hddl/ipc2020/barman/domain.hddl
src/test/resources/benchmarks/hddl/ipc2020/barman/p01.hddl
-t 600
- 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
ConstructorDescriptionTFD()
Creates a new planner with a default configuration.TFD(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
-
TFD
public TFD()Creates a new planner with a default configuration. -
TFD
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 total order STN procedure describes in the book of Automated Planning of Ghallab and al. page 239. The method can solve only totally ordered problem. If it is not the case, the method returns null.- 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 theTFD
planner.- Parameters:
args
- the arguments of the command line.
-