Algorithm guides#

One guide per base-level algorithm of Evolver: where it comes from, the variants Evolver offers, its parameter space and default configurations, how to run it, and, backed by a reproducible experiment, where it works well and where it works poorly. The tutorials teach how to use Evolver; these guides teach the algorithms.

Every guide follows the same outline:

  1. Idea and origin: the paper and the central mechanism.

  2. Variants in Evolver: which parameter selects them.

  3. Parameter space: what is specific to the algorithm, and the number of parameters.

  4. Default configurations: the files of defaultConfigurations.

  5. Running it: from Java (the guide’s class) and from the command line.

  6. Where it works well and 7. where it works poorly: an experiment with several runs, with quality indicators, statistical tests and fronts, against a reference algorithm.

  7. Tuning notes: which parameters matter most.

  8. References.

The code of each guide is a class in package org.uma.evolver.example.algorithms, checked by an integration test.

Algorithm

Encodings

Guide

NSGA-II

Double, Binary, Permutation

NSGA-II

NSGA-III

Double

planned

MOEA/D

Double, Binary, Permutation

planned

SMS-EMOA

Double, Binary, Permutation

planned

MOPSO

Double

planned

RDEMOEA

Double, Permutation

planned

RVEA

Double

RVEA, RVEA* and iRVEA

AGE-MOEA

Double

planned

SSMOEA

Double

planned; see SSMOEA — Steady-State MOEA meanwhile

PAES

Double, Binary, Permutation

planned; see PAES — Pareto Archived Evolution Strategy meanwhile