|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES All Classes | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectedu.udo.cs.yale.operator.Operator
edu.udo.cs.yale.operator.OperatorChain
edu.udo.cs.yale.operator.meta.RandomOptimizationChain
public class RandomOptimizationChain
This operator iterates several times through the inner operators and in each cycle evaluates a performance measure. The IOObjects that are produced as output of the inner operators in the best cycle are then returned. The target of this operator are methods that involve some non-deterministic elements such that the performance in each cycle may vary. An example is k-means with random intialization.
Field Summary | |
---|---|
private double |
avgPerformance
|
private double |
currentBestPerformance
|
private int |
iteration
|
Constructor Summary | |
---|---|
RandomOptimizationChain(OperatorDescription description)
|
Method Summary | |
---|---|
IOObject[] |
apply()
Applies all inner operators. |
private IOContainer |
applyInnerLoop()
Applies the inner operator . |
InnerOperatorCondition |
getInnerOperatorCondition()
Must return a condition of the IO behaviour of all desired inner operators. |
java.lang.Class[] |
getInputClasses()
Returns the classes that are needed as input. |
int |
getMaxNumberOfInnerOperators()
Returns the highest possible value for the maximum number of innner operators. |
int |
getMinNumberOfInnerOperators()
Returns 1 for the minimum number of innner operators. |
int |
getNumberOfSteps()
Returns the number of steps performed by this chain. |
java.lang.Class[] |
getOutputClasses()
Returns the classes that are guaranteed to be returned by apply() as additional output. |
java.util.List<ParameterType> |
getParameterTypes()
Returns a list of ParameterTypes describing the parameters of this operator. |
boolean |
shouldReturnInnerOutput()
Indicates if inner output should be delivered by this operator chain. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
private int iteration
private double currentBestPerformance
private double avgPerformance
Constructor Detail |
---|
public RandomOptimizationChain(OperatorDescription description)
Method Detail |
---|
public IOObject[] apply() throws OperatorException
OperatorChain
OperatorChain.clearStepCounter()
.
apply
in class OperatorChain
OperatorException
private IOContainer applyInnerLoop() throws OperatorException
OperatorException
public java.lang.Class[] getInputClasses()
Operator
Operator.getOutputClasses()
and
Operator.apply()
if this is necessary. This default behavior can be
changed by overriding Operator.getInputDescription(Class)
. Subclasses
which implement this method should not make use of parameters since this
method is invoked by getParameterTypes(). Therefore, parameters are not
fully available at this point of time and this might lead to exceptions.
Please use InputDescriptions instead.
getInputClasses
in class Operator
public java.lang.Class[] getOutputClasses()
Operator
Operator.getInputDescription(Class)
and can be changed by
overwriting this method. Objects which are not consumed must not be
defined as additional output in this method. May be null or an empy array
(no additional output is produced).
getOutputClasses
in class Operator
public boolean shouldReturnInnerOutput()
OperatorChain
Operator.getDeliveredOutputClasses()
but of
OperatorChain.getAllOutputClasses(Class[])
.
shouldReturnInnerOutput
in class OperatorChain
public InnerOperatorCondition getInnerOperatorCondition()
OperatorChain
SimpleChainInnerOperatorCondition
. More than one
condition should be combined with help of the class
CombinedInnerOperatorCondition
.
getInnerOperatorCondition
in class OperatorChain
public int getMaxNumberOfInnerOperators()
getMaxNumberOfInnerOperators
in class OperatorChain
public int getMinNumberOfInnerOperators()
getMinNumberOfInnerOperators
in class OperatorChain
public int getNumberOfSteps()
OperatorChain
getNumberOfSteps
in class OperatorChain
public java.util.List<ParameterType> getParameterTypes()
Operator
getParameterTypes
in class Operator
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES All Classes | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |