public class HASCOFactory<S extends ai.libs.jaicore.search.probleminputs.GraphSearchWithPathEvaluationsInput<N,A,V>,N,A,V extends java.lang.Comparable<V>> extends java.lang.Object implements SoftwareConfigurationAlgorithmFactory<RefinementConfiguredSoftwareConfigurationProblem<V>,HASCOSolutionCandidate<V>,V>
| Constructor and Description |
|---|
HASCOFactory() |
| Modifier and Type | Method and Description |
|---|---|
HASCO<S,N,A,V> |
getAlgorithm() |
HASCO<S,N,A,V> |
getAlgorithm(RefinementConfiguredSoftwareConfigurationProblem<V> problem) |
IHASCOPlanningReduction<N,A> |
getPlanningGraphGeneratorDeriver() |
RefinementConfiguredSoftwareConfigurationProblem<V> |
getProblem() |
ai.libs.jaicore.search.core.interfaces.IOptimalPathInORGraphSearchFactory<S,N,A,V> |
getSearchFactory() |
ai.libs.jaicore.basic.algorithm.reduction.AlgorithmicProblemReduction<? super ai.libs.jaicore.search.probleminputs.GraphSearchWithPathEvaluationsInput<N,A,V>,? super ai.libs.jaicore.search.model.other.EvaluatedSearchGraphPath<N,A,V>,S,ai.libs.jaicore.search.model.other.EvaluatedSearchGraphPath<N,A,V>> |
getSearchProblemTransformer() |
void |
setPlanningGraphGeneratorDeriver(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>> planningGraphGeneratorDeriver) |
void |
setProblemInput(RefinementConfiguredSoftwareConfigurationProblem<V> problemInput) |
void |
setSearchFactory(ai.libs.jaicore.search.core.interfaces.IOptimalPathInORGraphSearchFactory<S,N,A,V> searchFactory) |
void |
setSearchProblemTransformer(ai.libs.jaicore.basic.algorithm.reduction.AlgorithmicProblemReduction<? super ai.libs.jaicore.search.probleminputs.GraphSearchWithPathEvaluationsInput<N,A,V>,? super ai.libs.jaicore.search.model.other.EvaluatedSearchGraphPath<N,A,V>,S,ai.libs.jaicore.search.model.other.EvaluatedSearchGraphPath<N,A,V>> searchProblemTransformer) |
void |
withAlgorithmConfig(HASCOConfig hascoConfig) |
void |
withAlgorithmConfigFile(java.io.File hascoConfigFile) |
void |
withDefaultAlgorithmConfig() |
public void setProblemInput(RefinementConfiguredSoftwareConfigurationProblem<V> problemInput)
public HASCO<S,N,A,V> getAlgorithm()
getAlgorithm in interface SoftwareConfigurationAlgorithmFactory<RefinementConfiguredSoftwareConfigurationProblem<V extends java.lang.Comparable<V>>,HASCOSolutionCandidate<V extends java.lang.Comparable<V>>,V extends java.lang.Comparable<V>>getAlgorithm in interface ai.libs.jaicore.basic.algorithm.IAlgorithmFactory<RefinementConfiguredSoftwareConfigurationProblem<V extends java.lang.Comparable<V>>,HASCOSolutionCandidate<V extends java.lang.Comparable<V>>>public HASCO<S,N,A,V> getAlgorithm(RefinementConfiguredSoftwareConfigurationProblem<V> problem)
getAlgorithm in interface SoftwareConfigurationAlgorithmFactory<RefinementConfiguredSoftwareConfigurationProblem<V extends java.lang.Comparable<V>>,HASCOSolutionCandidate<V extends java.lang.Comparable<V>>,V extends java.lang.Comparable<V>>getAlgorithm in interface ai.libs.jaicore.basic.algorithm.IAlgorithmFactory<RefinementConfiguredSoftwareConfigurationProblem<V extends java.lang.Comparable<V>>,HASCOSolutionCandidate<V extends java.lang.Comparable<V>>>public IHASCOPlanningReduction<N,A> getPlanningGraphGeneratorDeriver()
public void setPlanningGraphGeneratorDeriver(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>> planningGraphGeneratorDeriver)
public ai.libs.jaicore.search.core.interfaces.IOptimalPathInORGraphSearchFactory<S,N,A,V> getSearchFactory()
public void setSearchFactory(ai.libs.jaicore.search.core.interfaces.IOptimalPathInORGraphSearchFactory<S,N,A,V> searchFactory)
public ai.libs.jaicore.basic.algorithm.reduction.AlgorithmicProblemReduction<? super ai.libs.jaicore.search.probleminputs.GraphSearchWithPathEvaluationsInput<N,A,V>,? super ai.libs.jaicore.search.model.other.EvaluatedSearchGraphPath<N,A,V>,S,ai.libs.jaicore.search.model.other.EvaluatedSearchGraphPath<N,A,V>> getSearchProblemTransformer()
public void setSearchProblemTransformer(ai.libs.jaicore.basic.algorithm.reduction.AlgorithmicProblemReduction<? super ai.libs.jaicore.search.probleminputs.GraphSearchWithPathEvaluationsInput<N,A,V>,? super ai.libs.jaicore.search.model.other.EvaluatedSearchGraphPath<N,A,V>,S,ai.libs.jaicore.search.model.other.EvaluatedSearchGraphPath<N,A,V>> searchProblemTransformer)
public void withDefaultAlgorithmConfig()
public void withAlgorithmConfig(HASCOConfig hascoConfig)
public void withAlgorithmConfigFile(java.io.File hascoConfigFile)
public RefinementConfiguredSoftwareConfigurationProblem<V> getProblem()