openmole / mgo

Purely functional genetic algorithms for multi-objective optimisation
71 stars 3 forks source link

SMS-EMOA not using non dominated sorting #1

Open reyman opened 9 years ago

reyman commented 9 years ago

It seems the construction of SMS-EMOA is not correct in MGO.

Simple description of the algorithm say that :

The indicator-based EMOA use a quality indicator for the selection at least as a second stage measure. The SMS-EMOA follows this principle by first performing non-dominated sorting on the population and one offspring, and then for the worst subset, the hypervolume is determined and the individual with the least contribution to the hypervolume is denoted as the worst one and is discarded.

More detail can be found on the p59 to p65 of Nicolas Beume dissertation of 2011 named "Hypervolume-based Metaheuristics for Multiobjective Optimization"

SMS-EMOA use Non Dominated Sorting, then for only for the last front, the hypervolume ranking.

Actually, the non dominated sorting implemented in MGO is not used in the definition of SMS-EMOA .

trait SMSEMOEA <: Evolution
  with GAGenomeWithSigma
  with MG
  with BinaryTournamentSelection
  with TournamentOnRank
  with HypervolumeRanking
  with RankElitism
  with DynamicGACrossover
  with DynamicGAMutation
  with FitnessHypervolumeDiversity
  with NoArchive
  with GeneticBreeding
  with ClampedGenome