Class HASCOViaFDAndBestFirstFactory<V extends java.lang.Comparable<V>>
- java.lang.Object
-
- ai.libs.hasco.core.HASCOFactory<S,ai.libs.jaicore.planning.hierarchical.algorithms.forwarddecomposition.graphgenerators.tfd.TFDNode,java.lang.String,V>
-
- ai.libs.hasco.variants.forwarddecomposition.HASCOViaFDFactory<ai.libs.jaicore.search.probleminputs.GraphSearchWithSubpathEvaluationsInput<ai.libs.jaicore.planning.hierarchical.algorithms.forwarddecomposition.graphgenerators.tfd.TFDNode,java.lang.String,V>,V>
-
- ai.libs.hasco.variants.forwarddecomposition.HASCOViaFDAndBestFirstFactory<V>
-
- Type Parameters:
V
-
- All Implemented Interfaces:
SoftwareConfigurationAlgorithmFactory<RefinementConfiguredSoftwareConfigurationProblem<V>,HASCOSolutionCandidate<V>,V,HASCO<ai.libs.jaicore.search.probleminputs.GraphSearchWithSubpathEvaluationsInput<ai.libs.jaicore.planning.hierarchical.algorithms.forwarddecomposition.graphgenerators.tfd.TFDNode,java.lang.String,V>,ai.libs.jaicore.planning.hierarchical.algorithms.forwarddecomposition.graphgenerators.tfd.TFDNode,java.lang.String,V>>
,org.api4.java.algorithm.IAlgorithmFactory<RefinementConfiguredSoftwareConfigurationProblem<V>,HASCOSolutionCandidate<V>,HASCO<ai.libs.jaicore.search.probleminputs.GraphSearchWithSubpathEvaluationsInput<ai.libs.jaicore.planning.hierarchical.algorithms.forwarddecomposition.graphgenerators.tfd.TFDNode,java.lang.String,V>,ai.libs.jaicore.planning.hierarchical.algorithms.forwarddecomposition.graphgenerators.tfd.TFDNode,java.lang.String,V>>
- Direct Known Subclasses:
HASCOViaFDAndBestFirstWithDyadRankedNodeQueueFactory
,HASCOViaFDAndBestFirstWithRandomCompletionsFactory
public class HASCOViaFDAndBestFirstFactory<V extends java.lang.Comparable<V>> extends HASCOViaFDFactory<ai.libs.jaicore.search.probleminputs.GraphSearchWithSubpathEvaluationsInput<ai.libs.jaicore.planning.hierarchical.algorithms.forwarddecomposition.graphgenerators.tfd.TFDNode,java.lang.String,V>,V>
This factory makes it easier to create HASCO objects. In contrast to the standard HASCOFactory, it is only necessary to set the problem and a node evaluator Note that the standard HASCO search problem is a GraphSearchProblem, but BestFirst needs sub-path evaluation, so providing such a transformation is a MUST. It is possible to set the node evaluator, which will be then used in the search
-
-
Constructor Summary
Constructors Constructor Description HASCOViaFDAndBestFirstFactory()
HASCOViaFDAndBestFirstFactory(org.api4.java.ai.graphsearch.problem.pathsearch.pathevaluation.IPathEvaluator<ai.libs.jaicore.planning.hierarchical.algorithms.forwarddecomposition.graphgenerators.tfd.TFDNode,java.lang.String,V> nodeEvaluator)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description HASCOViaFDAndBestFirst<V>
getAlgorithm()
ai.libs.jaicore.search.algorithms.standard.bestfirst.StandardBestFirstFactory<ai.libs.jaicore.planning.hierarchical.algorithms.forwarddecomposition.graphgenerators.tfd.TFDNode,java.lang.String,V>
getSearchFactory()
ai.libs.jaicore.search.problemtransformers.GraphSearchProblemInputToGraphSearchWithSubpathEvaluationInputTransformer<ai.libs.jaicore.planning.hierarchical.algorithms.forwarddecomposition.graphgenerators.tfd.TFDNode,java.lang.String,V>
getSearchProblemTransformer()
void
setNodeEvaluator(org.api4.java.ai.graphsearch.problem.pathsearch.pathevaluation.IPathEvaluator<ai.libs.jaicore.planning.hierarchical.algorithms.forwarddecomposition.graphgenerators.tfd.TFDNode,java.lang.String,V> nodeEvaluator)
-
Methods inherited from class ai.libs.hasco.core.HASCOFactory
getAlgorithm, getPlanningGraphGeneratorDeriver, getProblem, setPlanningGraphGeneratorDeriver, setProblemInput, setSearchFactory, setSearchProblemTransformer, withAlgorithmConfig, withAlgorithmConfigFile, withDefaultAlgorithmConfig
-
-
-
-
Constructor Detail
-
HASCOViaFDAndBestFirstFactory
public HASCOViaFDAndBestFirstFactory()
-
HASCOViaFDAndBestFirstFactory
public HASCOViaFDAndBestFirstFactory(org.api4.java.ai.graphsearch.problem.pathsearch.pathevaluation.IPathEvaluator<ai.libs.jaicore.planning.hierarchical.algorithms.forwarddecomposition.graphgenerators.tfd.TFDNode,java.lang.String,V> nodeEvaluator)
-
-
Method Detail
-
setNodeEvaluator
public void setNodeEvaluator(org.api4.java.ai.graphsearch.problem.pathsearch.pathevaluation.IPathEvaluator<ai.libs.jaicore.planning.hierarchical.algorithms.forwarddecomposition.graphgenerators.tfd.TFDNode,java.lang.String,V> nodeEvaluator)
-
getSearchFactory
public ai.libs.jaicore.search.algorithms.standard.bestfirst.StandardBestFirstFactory<ai.libs.jaicore.planning.hierarchical.algorithms.forwarddecomposition.graphgenerators.tfd.TFDNode,java.lang.String,V> getSearchFactory()
- Overrides:
getSearchFactory
in classHASCOFactory<ai.libs.jaicore.search.probleminputs.GraphSearchWithSubpathEvaluationsInput<ai.libs.jaicore.planning.hierarchical.algorithms.forwarddecomposition.graphgenerators.tfd.TFDNode,java.lang.String,V extends java.lang.Comparable<V>>,ai.libs.jaicore.planning.hierarchical.algorithms.forwarddecomposition.graphgenerators.tfd.TFDNode,java.lang.String,V extends java.lang.Comparable<V>>
-
getSearchProblemTransformer
public ai.libs.jaicore.search.problemtransformers.GraphSearchProblemInputToGraphSearchWithSubpathEvaluationInputTransformer<ai.libs.jaicore.planning.hierarchical.algorithms.forwarddecomposition.graphgenerators.tfd.TFDNode,java.lang.String,V> getSearchProblemTransformer()
- Overrides:
getSearchProblemTransformer
in classHASCOFactory<ai.libs.jaicore.search.probleminputs.GraphSearchWithSubpathEvaluationsInput<ai.libs.jaicore.planning.hierarchical.algorithms.forwarddecomposition.graphgenerators.tfd.TFDNode,java.lang.String,V extends java.lang.Comparable<V>>,ai.libs.jaicore.planning.hierarchical.algorithms.forwarddecomposition.graphgenerators.tfd.TFDNode,java.lang.String,V extends java.lang.Comparable<V>>
-
getAlgorithm
public HASCOViaFDAndBestFirst<V> getAlgorithm()
- Specified by:
getAlgorithm
in interfaceorg.api4.java.algorithm.IAlgorithmFactory<RefinementConfiguredSoftwareConfigurationProblem<V extends java.lang.Comparable<V>>,HASCOSolutionCandidate<V extends java.lang.Comparable<V>>,HASCO<ai.libs.jaicore.search.probleminputs.GraphSearchWithSubpathEvaluationsInput<ai.libs.jaicore.planning.hierarchical.algorithms.forwarddecomposition.graphgenerators.tfd.TFDNode,java.lang.String,V extends java.lang.Comparable<V>>,ai.libs.jaicore.planning.hierarchical.algorithms.forwarddecomposition.graphgenerators.tfd.TFDNode,java.lang.String,V extends java.lang.Comparable<V>>>
- Overrides:
getAlgorithm
in classHASCOFactory<ai.libs.jaicore.search.probleminputs.GraphSearchWithSubpathEvaluationsInput<ai.libs.jaicore.planning.hierarchical.algorithms.forwarddecomposition.graphgenerators.tfd.TFDNode,java.lang.String,V extends java.lang.Comparable<V>>,ai.libs.jaicore.planning.hierarchical.algorithms.forwarddecomposition.graphgenerators.tfd.TFDNode,java.lang.String,V extends java.lang.Comparable<V>>
-
-