Package ai.libs.hasco.optimizingfactory
Class OptimizingFactory<P extends SoftwareConfigurationProblem<V>,T,C extends EvaluatedSoftwareConfigurationSolution<V>,V extends java.lang.Comparable<V>>
- java.lang.Object
-
- ai.libs.jaicore.basic.algorithm.AAlgorithm<OptimizingFactoryProblem<P,T,V>,T>
-
- ai.libs.hasco.optimizingfactory.OptimizingFactory<P,T,C,V>
-
- All Implemented Interfaces:
ai.libs.jaicore.basic.algorithm.IAlgorithm<OptimizingFactoryProblem<P,T,V>,T>,ai.libs.jaicore.basic.Cancelable,ai.libs.jaicore.basic.ILoggingCustomizable,java.lang.Iterable<ai.libs.jaicore.basic.algorithm.events.AlgorithmEvent>,java.util.concurrent.Callable<T>,java.util.Iterator<ai.libs.jaicore.basic.algorithm.events.AlgorithmEvent>
public class OptimizingFactory<P extends SoftwareConfigurationProblem<V>,T,C extends EvaluatedSoftwareConfigurationSolution<V>,V extends java.lang.Comparable<V>> extends ai.libs.jaicore.basic.algorithm.AAlgorithm<OptimizingFactoryProblem<P,T,V>,T>
-
-
Constructor Summary
Constructors Constructor Description OptimizingFactory(OptimizingFactoryProblem<P,T,V> problem, SoftwareConfigurationAlgorithmFactory<P,C,V> factoryForOptimizationAlgorithm)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Tcall()voidcancel()ComponentInstancegetComponentInstanceOfObject()java.lang.StringgetLoggerName()SoftwareConfigurationAlgorithm<P,C,V>getOptimizer()VgetPerformanceOfObject()ai.libs.jaicore.basic.algorithm.events.AlgorithmInitializedEventinit()ai.libs.jaicore.basic.algorithm.events.AlgorithmEventnextWithException()voidsetLoggerName(java.lang.String name)java.lang.StringtoString()-
Methods inherited from class ai.libs.jaicore.basic.algorithm.AAlgorithm
activate, announceTimeoutDetected, avoidReinterruptionOnShutdownOnCurrentThread, checkAndConductTermination, checkTermination, computeTimeoutAware, getActivationTime, getConfig, getId, getInput, getNumCPUs, getRemainingTimeToDeadline, getState, getTimeout, getTimeoutPrecautionOffset, hasNext, hasThreadBeenInterruptedDuringShutdown, interruptThreadAsPartOfShutdown, isCanceled, isShutdownInitialized, isStopCriterionSatisfied, isTimeouted, iterator, next, post, registerActiveThread, registerListener, resolveShutdownInterruptOnCurrentThread, setConfig, setMaxNumThreads, setNumCPUs, setState, setTimeout, setTimeout, setTimeoutPrecautionOffset, shutdown, terminate, unregisterActiveThread, unregisterThreadAndShutdown
-
-
-
-
Constructor Detail
-
OptimizingFactory
public OptimizingFactory(OptimizingFactoryProblem<P,T,V> problem, SoftwareConfigurationAlgorithmFactory<P,C,V> factoryForOptimizationAlgorithm)
-
-
Method Detail
-
nextWithException
public ai.libs.jaicore.basic.algorithm.events.AlgorithmEvent nextWithException() throws ai.libs.jaicore.basic.algorithm.exceptions.AlgorithmException, java.lang.InterruptedException, ai.libs.jaicore.basic.algorithm.AlgorithmExecutionCanceledException, ai.libs.jaicore.basic.algorithm.exceptions.AlgorithmTimeoutedException- Throws:
ai.libs.jaicore.basic.algorithm.exceptions.AlgorithmExceptionjava.lang.InterruptedExceptionai.libs.jaicore.basic.algorithm.AlgorithmExecutionCanceledExceptionai.libs.jaicore.basic.algorithm.exceptions.AlgorithmTimeoutedException
-
call
public T call() throws ai.libs.jaicore.basic.algorithm.exceptions.AlgorithmException, java.lang.InterruptedException, ai.libs.jaicore.basic.algorithm.AlgorithmExecutionCanceledException, ai.libs.jaicore.basic.algorithm.exceptions.AlgorithmTimeoutedException
- Throws:
ai.libs.jaicore.basic.algorithm.exceptions.AlgorithmExceptionjava.lang.InterruptedExceptionai.libs.jaicore.basic.algorithm.AlgorithmExecutionCanceledExceptionai.libs.jaicore.basic.algorithm.exceptions.AlgorithmTimeoutedException
-
getOptimizer
public SoftwareConfigurationAlgorithm<P,C,V> getOptimizer()
- Returns:
- the optimizer that is used for building the object
-
init
public ai.libs.jaicore.basic.algorithm.events.AlgorithmInitializedEvent init()
-
getPerformanceOfObject
public V getPerformanceOfObject()
-
getComponentInstanceOfObject
public ComponentInstance getComponentInstanceOfObject()
-
getLoggerName
public java.lang.String getLoggerName()
- Specified by:
getLoggerNamein interfaceai.libs.jaicore.basic.ILoggingCustomizable- Overrides:
getLoggerNamein classai.libs.jaicore.basic.algorithm.AAlgorithm<OptimizingFactoryProblem<P extends SoftwareConfigurationProblem<V>,T,V extends java.lang.Comparable<V>>,T>
-
setLoggerName
public void setLoggerName(java.lang.String name)
- Specified by:
setLoggerNamein interfaceai.libs.jaicore.basic.ILoggingCustomizable- Overrides:
setLoggerNamein classai.libs.jaicore.basic.algorithm.AAlgorithm<OptimizingFactoryProblem<P extends SoftwareConfigurationProblem<V>,T,V extends java.lang.Comparable<V>>,T>
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
cancel
public void cancel()
- Specified by:
cancelin interfaceai.libs.jaicore.basic.Cancelable- Overrides:
cancelin classai.libs.jaicore.basic.algorithm.AAlgorithm<OptimizingFactoryProblem<P extends SoftwareConfigurationProblem<V>,T,V extends java.lang.Comparable<V>>,T>
-
-