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>,ai.libs.jaicore.search.model.other.SearchGraphPath<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>,ai.libs.jaicore.search.model.other.SearchGraphPath<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 ai.libs.jaicore.search.model.other.SearchGraphPath<N,A>> wrappedDeriver)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ai.libs.jaicore.planning.core.interfaces.IPlandecodeSolution(ai.libs.jaicore.search.model.other.SearchGraphPath<N,A> path)ai.libs.jaicore.search.probleminputs.GraphSearchInput<N,A>encodeProblem(ai.libs.jaicore.planning.hierarchical.problems.ceocipstn.CEOCIPSTNPlanningProblem problem)java.lang.StringtoString()
-
-
-
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 ai.libs.jaicore.search.model.other.SearchGraphPath<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:
encodeProblemin 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>,ai.libs.jaicore.search.model.other.SearchGraphPath<N,A>>
-
decodeSolution
public ai.libs.jaicore.planning.core.interfaces.IPlan decodeSolution(ai.libs.jaicore.search.model.other.SearchGraphPath<N,A> path)
- Specified by:
decodeSolutionin 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>,ai.libs.jaicore.search.model.other.SearchGraphPath<N,A>>
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
-