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:
java.lang.Iterable<org.api4.java.algorithm.events.IAlgorithmEvent>
,java.util.concurrent.Callable<T>
,java.util.Iterator<org.api4.java.algorithm.events.IAlgorithmEvent>
,org.api4.java.algorithm.IAlgorithm<OptimizingFactoryProblem<P,T,V>,T>
,org.api4.java.common.control.ICancelable
,org.api4.java.common.control.ILoggingCustomizable
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 T
call()
void
cancel()
ComponentInstance
getComponentInstanceOfObject()
java.lang.String
getLoggerName()
SoftwareConfigurationAlgorithm<P,C,V>
getOptimizer()
V
getPerformanceOfObject()
ai.libs.jaicore.basic.algorithm.AlgorithmInitializedEvent
init()
org.api4.java.algorithm.events.IAlgorithmEvent
nextWithException()
void
setLoggerName(java.lang.String name)
void
setTimeout(org.api4.java.algorithm.Timeout to)
java.lang.String
toString()
-
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, setDeadline, setMaxNumThreads, setNumCPUs, setState, 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 org.api4.java.algorithm.events.IAlgorithmEvent nextWithException() throws org.api4.java.algorithm.exceptions.AlgorithmException, java.lang.InterruptedException, org.api4.java.algorithm.exceptions.AlgorithmExecutionCanceledException, org.api4.java.algorithm.exceptions.AlgorithmTimeoutedException
- Throws:
org.api4.java.algorithm.exceptions.AlgorithmException
java.lang.InterruptedException
org.api4.java.algorithm.exceptions.AlgorithmExecutionCanceledException
org.api4.java.algorithm.exceptions.AlgorithmTimeoutedException
-
call
public T call() throws org.api4.java.algorithm.exceptions.AlgorithmException, java.lang.InterruptedException, org.api4.java.algorithm.exceptions.AlgorithmExecutionCanceledException, org.api4.java.algorithm.exceptions.AlgorithmTimeoutedException
- Throws:
org.api4.java.algorithm.exceptions.AlgorithmException
java.lang.InterruptedException
org.api4.java.algorithm.exceptions.AlgorithmExecutionCanceledException
org.api4.java.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.AlgorithmInitializedEvent init()
-
getPerformanceOfObject
public V getPerformanceOfObject()
-
getComponentInstanceOfObject
public ComponentInstance getComponentInstanceOfObject()
-
getLoggerName
public java.lang.String getLoggerName()
- Specified by:
getLoggerName
in interfaceorg.api4.java.common.control.ILoggingCustomizable
- Overrides:
getLoggerName
in 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:
setLoggerName
in interfaceorg.api4.java.common.control.ILoggingCustomizable
- Overrides:
setLoggerName
in 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:
toString
in classjava.lang.Object
-
cancel
public void cancel()
- Specified by:
cancel
in interfaceorg.api4.java.common.control.ICancelable
- Overrides:
cancel
in classai.libs.jaicore.basic.algorithm.AAlgorithm<OptimizingFactoryProblem<P extends SoftwareConfigurationProblem<V>,T,V extends java.lang.Comparable<V>>,T>
-
setTimeout
public void setTimeout(org.api4.java.algorithm.Timeout to)
- Specified by:
setTimeout
in interfaceorg.api4.java.algorithm.IAlgorithm<P extends SoftwareConfigurationProblem<V>,T>
- Overrides:
setTimeout
in classai.libs.jaicore.basic.algorithm.AAlgorithm<OptimizingFactoryProblem<P extends SoftwareConfigurationProblem<V>,T,V extends java.lang.Comparable<V>>,T>
-
-