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>,ai.libs.jaicore.basic.algorithm.IAlgorithmFactory<RefinementConfiguredSoftwareConfigurationProblem<V>,HASCOSolutionCandidate<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(ai.libs.jaicore.search.algorithms.standard.bestfirst.nodeevaluation.INodeEvaluator<ai.libs.jaicore.planning.hierarchical.algorithms.forwarddecomposition.graphgenerators.tfd.TFDNode,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()voidsetNodeEvaluator(ai.libs.jaicore.search.algorithms.standard.bestfirst.nodeevaluation.INodeEvaluator<ai.libs.jaicore.planning.hierarchical.algorithms.forwarddecomposition.graphgenerators.tfd.TFDNode,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(ai.libs.jaicore.search.algorithms.standard.bestfirst.nodeevaluation.INodeEvaluator<ai.libs.jaicore.planning.hierarchical.algorithms.forwarddecomposition.graphgenerators.tfd.TFDNode,V> nodeEvaluator)
-
-
Method Detail
-
setNodeEvaluator
public void setNodeEvaluator(ai.libs.jaicore.search.algorithms.standard.bestfirst.nodeevaluation.INodeEvaluator<ai.libs.jaicore.planning.hierarchical.algorithms.forwarddecomposition.graphgenerators.tfd.TFDNode,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:
getSearchFactoryin 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:
getSearchProblemTransformerin 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:
getAlgorithmin interfaceai.libs.jaicore.basic.algorithm.IAlgorithmFactory<RefinementConfiguredSoftwareConfigurationProblem<V extends java.lang.Comparable<V>>,HASCOSolutionCandidate<V extends java.lang.Comparable<V>>>- Specified by:
getAlgorithmin interfaceSoftwareConfigurationAlgorithmFactory<RefinementConfiguredSoftwareConfigurationProblem<V extends java.lang.Comparable<V>>,HASCOSolutionCandidate<V extends java.lang.Comparable<V>>,V extends java.lang.Comparable<V>>- Overrides:
getAlgorithmin 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>>
-
-