MOEA Framework 2.12
API Specification

Class JMetalAlgorithms

  extended by org.moeaframework.core.spi.AlgorithmProvider
      extended by org.moeaframework.algorithm.jmetal.JMetalAlgorithms

public class JMetalAlgorithms
extends AlgorithmProvider

Algorithm provider for JMetal algorithms. Supports the following algorithms:

Name Type Properties
AbYSS Real populationSize, refSet1Size, refSet2Size, archiveSize, maxEvaluations, improvementRounds
CellDE Real* populationSize, archiveSize, maxEvaluations, feedBack, de.crossoverRate, de.stepSize
DENSEA Any populationSize, maxEvaluations
FastPGA Any maxPopSize, initialPopulationSize, maxEvaluations, a, b, c, d, termination
GDE3 Real* populationSize, maxEvaluations, de.crossoverRate, de.stepSize
IBEA Any populationSize, archiveSize, maxEvaluations
MOCell Any populationSize, archiveSize, maxEvaluations, feedBack
MOCHC Binary* initialConvergenceCount, preservedPopulation, convergenceValue, populationSize, maxEvaluations, hux.rate, bf.rate
NSGAII Any populationSize, maxEvaluations
OMOPSO Real* populationSize, archiveSize, maxEvaluations, mutationProbability, perturbationIndex, epsilon
PAES Any archiveSize, bisections, maxEvaluations
PESA2 Any populationSize, archiveSize, bisections, maxEvaluations
SMPSO Real* populationSize, archiveSize, maxEvaluations, pm.rate, pm.distributionIndex
SMSEMOA Any populationSize, maxEvaluations, offset
SPEA2 Any populationSize, archiveSize, maxEvaluations

You may also append "-JMetal" to any algorithm name to use the JMetal implementation incase it is overridden by another implementation. For example, use "NSGAII-JMetal".

Unless the type is marked with *, the algorithm uses one of the types listed below. Note that only the types below are supported. Algorithms marked with * define operators specific to that algorithm. See the JMetal documentation for additional details.

Type Operators Parameters
Real SBX, PM sbx.rate, sbx.distributionIndex, pm.rate, pm.distributionIndex
Binary Single-Point, Bit Flip 1x.rate, bf.rate
Permutation PMX, Swap pmx.rate, swap.rate

Constructor Summary
          Constructs a JMetal algorithm provider.
Method Summary
 Algorithm getAlgorithm(String name, Properties properties, Problem problem)
          Returns the algorithm with the specified name, or null if this provider does not support the algorithm.
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructor Detail


public JMetalAlgorithms()
Constructs a JMetal algorithm provider.

Method Detail


public Algorithm getAlgorithm(String name,
                              Properties properties,
                              Problem problem)
Description copied from class: AlgorithmProvider
Returns the algorithm with the specified name, or null if this provider does not support the algorithm. An optional set of properties may be provided to further define the algorithm; however, the provider is expected to supply default properties if none are provided.

Specified by:
getAlgorithm in class AlgorithmProvider
name - the algorithm name
properties - optional properties for the algorithm
problem - the problem
the algorithm with the specified name, or null if this provider does not support the algorithm

MOEA Framework 2.12
API Specification

Copyright 2009-2016 MOEA Framework. All rights reserved.
Licensed under the GNU Lesser General Public License.
Return to the MOEA Framework homepage. Visit us on Github!