
MOEA Framework 2.12 API Specification 

PREV CLASS NEXT CLASS  FRAMES NO FRAMES  
SUMMARY: NESTED  FIELD  CONSTR  METHOD  DETAIL: FIELD  CONSTR  METHOD 
java.lang.Object org.moeaframework.algorithm.AbstractAlgorithm org.moeaframework.algorithm.single.RepeatedSingleObjective
public class RepeatedSingleObjective
Instantiates and runs several instances of a single objective algorithm. This is intended to be used with singleobjective optimizers that use weighted aggregation of the objectives. This is based on the Repeated Single Objective (RSO) algorithm by E. J. Hughes [1], where he investigates running many singleobjective optimizers (one many) compared to running a single manyobjective optimizer (many once).
Be mindful of how running multiple instances affects the AbstractAlgorithm.step()
.
Each step performs one iteration of each instance. Thus, given 50 instances
of an algorithm with a population size of 100, then 5000 evaluations will
occur each step. In [1], they decrease the population size for the single
objective optimizers.
References:
Field Summary 

Fields inherited from class org.moeaframework.algorithm.AbstractAlgorithm 

initialized, numberOfEvaluations, problem, terminated 
Constructor Summary  

RepeatedSingleObjective(Problem problem,
String algorithmName,
Properties properties,
int instances)
Constructs a new instance of the ManyOnce algorithm, which runs many instances of a singleobjective optimizer with varying weights. 
Method Summary  

protected Algorithm 
createInstance(double[] weights)
Constructs a new instance of the algorithm using the given weights. 
int 
getNumberOfEvaluations()
Returns the number of times the evaluate method was invoked. 
NondominatedPopulation 
getResult()
Returns the current bestknown result. 
protected void 
initialize()
Performs any initialization that is required by this algorithm. 
protected void 
iterate()
Performs one iteration of the algorithm. 
Methods inherited from class org.moeaframework.algorithm.AbstractAlgorithm 

evaluate, evaluateAll, evaluateAll, finalize, getProblem, getState, isInitialized, isTerminated, setState, step, terminate 
Methods inherited from class java.lang.Object 

clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait 
Constructor Detail 

public RepeatedSingleObjective(Problem problem, String algorithmName, Properties properties, int instances)
problem
 the problemalgorithmName
 the algorithm nameproperties
 the algorithm propertiesinstances
 the number of instancesMethod Detail 

public int getNumberOfEvaluations()
Algorithm
evaluate
method was invoked. This
is the primary measure of runtime for optimization algorithms.
getNumberOfEvaluations
in interface Algorithm
getNumberOfEvaluations
in class AbstractAlgorithm
evaluate
method was invokedpublic NondominatedPopulation getResult()
Algorithm
protected void initialize()
AbstractAlgorithm
AbstractAlgorithm.step()
, but may also be called manually prior to any invocations
of step
. Implementations should always invoke
super.initialize()
to ensure the hierarchy is initialized
correctly.
initialize
in class AbstractAlgorithm
protected void iterate()
AbstractAlgorithm
iterate
in class AbstractAlgorithm
protected Algorithm createInstance(double[] weights)
"weights"
property.
weights
 the weights

MOEA Framework 2.12 API Specification 

PREV CLASS NEXT CLASS  FRAMES NO FRAMES  
SUMMARY: NESTED  FIELD  CONSTR  METHOD  DETAIL: FIELD  CONSTR  METHOD 