Class 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()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • 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 interface 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>>
      • decodeSolution

        public ai.libs.jaicore.planning.core.interfaces.IPlan decodeSolution​(org.api4.java.datastructure.graph.ILabeledPath<N,​A> path)
        Specified by:
        decodeSolution in interface 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>>
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object