Package ai.libs.hasco.core
Class DefaultHASCOPlanningReduction<N,A>
- java.lang.Object
-
- ai.libs.hasco.core.DefaultHASCOPlanningReduction<N,A>
-
- Type Parameters:
N
-A
-
- All Implemented Interfaces:
IHASCOPlanningReduction<N,A>
,ai.libs.jaicore.basic.algorithm.reduction.AlgorithmicProblemReduction<ai.libs.jaicore.planning.hierarchical.problems.ceocipstn.CEOCIPSTNPlanningProblem,ai.libs.jaicore.planning.core.interfaces.IPlan,ai.libs.jaicore.search.probleminputs.GraphSearchInput<N,A>,org.api4.java.datastructure.graph.ILabeledPath<N,A>>
,ai.libs.jaicore.planning.hierarchical.problems.htn.IHierarchicalPlanningToGraphSearchReduction<N,A,ai.libs.jaicore.planning.hierarchical.problems.ceocipstn.CEOCIPSTNPlanningProblem,ai.libs.jaicore.planning.core.interfaces.IPlan,ai.libs.jaicore.search.probleminputs.GraphSearchInput<N,A>,org.api4.java.datastructure.graph.ILabeledPath<N,A>>
public class DefaultHASCOPlanningReduction<N,A> extends java.lang.Object implements IHASCOPlanningReduction<N,A>
This class only serves to facilitate the usage of HASCO when passing a IPlanningGraphGeneratorDeriver. HASCO requires a IHASCOPlanningGraphGeneratorDeriver, which only takes away some of the generics of IPlanningGraphGeneratorDeriver, but this implies that you cannot just use arbitrary IPlanningGraphGeneratorDeriver objects anymore. To circumvent this problem, this class implements the IHASCOPlanningGraphGeneratorDeriver and wraps any IPlanningGraphGeneratorDeriver.
-
-
Constructor Summary
Constructors Constructor Description DefaultHASCOPlanningReduction(ai.libs.jaicore.planning.hierarchical.problems.htn.IHierarchicalPlanningToGraphSearchReduction<N,A,? super ai.libs.jaicore.planning.hierarchical.problems.ceocipstn.CEOCIPSTNPlanningProblem,? extends ai.libs.jaicore.planning.core.interfaces.IPlan,? extends ai.libs.jaicore.search.probleminputs.GraphSearchInput<N,A>,? super org.api4.java.datastructure.graph.ILabeledPath<N,A>> wrappedDeriver)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ai.libs.jaicore.planning.core.interfaces.IPlan
decodeSolution(org.api4.java.datastructure.graph.ILabeledPath<N,A> path)
ai.libs.jaicore.search.probleminputs.GraphSearchInput<N,A>
encodeProblem(ai.libs.jaicore.planning.hierarchical.problems.ceocipstn.CEOCIPSTNPlanningProblem problem)
java.lang.String
toString()
-
-
-
Constructor Detail
-
DefaultHASCOPlanningReduction
public DefaultHASCOPlanningReduction(ai.libs.jaicore.planning.hierarchical.problems.htn.IHierarchicalPlanningToGraphSearchReduction<N,A,? super ai.libs.jaicore.planning.hierarchical.problems.ceocipstn.CEOCIPSTNPlanningProblem,? extends ai.libs.jaicore.planning.core.interfaces.IPlan,? extends ai.libs.jaicore.search.probleminputs.GraphSearchInput<N,A>,? super org.api4.java.datastructure.graph.ILabeledPath<N,A>> wrappedDeriver)
-
-
Method Detail
-
encodeProblem
public ai.libs.jaicore.search.probleminputs.GraphSearchInput<N,A> encodeProblem(ai.libs.jaicore.planning.hierarchical.problems.ceocipstn.CEOCIPSTNPlanningProblem problem)
- Specified by:
encodeProblem
in interfaceai.libs.jaicore.basic.algorithm.reduction.AlgorithmicProblemReduction<ai.libs.jaicore.planning.hierarchical.problems.ceocipstn.CEOCIPSTNPlanningProblem,ai.libs.jaicore.planning.core.interfaces.IPlan,ai.libs.jaicore.search.probleminputs.GraphSearchInput<N,A>,org.api4.java.datastructure.graph.ILabeledPath<N,A>>
-
decodeSolution
public ai.libs.jaicore.planning.core.interfaces.IPlan decodeSolution(org.api4.java.datastructure.graph.ILabeledPath<N,A> path)
- Specified by:
decodeSolution
in interfaceai.libs.jaicore.basic.algorithm.reduction.AlgorithmicProblemReduction<ai.libs.jaicore.planning.hierarchical.problems.ceocipstn.CEOCIPSTNPlanningProblem,ai.libs.jaicore.planning.core.interfaces.IPlan,ai.libs.jaicore.search.probleminputs.GraphSearchInput<N,A>,org.api4.java.datastructure.graph.ILabeledPath<N,A>>
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-