Friedrich-Alexander-Universität DruckenUnivisEnglish FAU-Logo
Techn. Fakultät Willkommen am Department Informatik FAU-Logo
Codesign
Lehrstuhl für Informatik 12
BBC
Optimizer Submission
Submitted Optimizers
Ranking
Extended Results

moeavan-optimized
ESPEA-naive
Improved NSGA-III.2
Mocell
SPEA 2 no tournament
MEMO
IBMOLS-fon
nsag2_hillclimb
DMLS+ds
moeavan
DEMO bin v2
GPSOMOD-optimized
NSGA-III
Random Search
MIPESA_II
la_hillclimb_jr
SLS15 SA
SPEA 2
DMLS
MEMO Improved
GPSOMOD-naive
ESPEA-optimized-c
PredatorPrey
SMS-EMOA
DBEA
DBEA_Improved
NSGA-III-simple
IPESA_II
MultisetGA
Elitism EA
MOEA/D
NSGA-III-tournament
NSGA 2
SLS15
Department Informatik  >  Informatik 12  >  Lehre  >  Black Box Challenge - Meta-heuristic Optimization for Arbitrary Problems

Seminar: Black Box Challenge – Submitted Optimizers

moeavan-optimized

XML Config:
<module class="org.opt4j.optimizer.ea.moeavan.MOEVANModule">
<property name="crossoverProbability">1.0</property>
<property name="environmentalSelectionNeighborhoodSize">1</property>
<property name="matingNeighorhoodSize">20</property>
<property name="matingPoolProbability">0.9</property>
<property name="mutationDistributionIndex">20.0</property>
<property name="mutationProbability">0.00333333333333333</property>
<property name="pNorm">2</property>
<property name="populationSize">300</property>
<property name="scalingFactor">0.5</property>
</module>

ESPEA-naive

ESPEA: Obtaining Optimal Pareto Front Approximations using Scalarized Preference Information (Commit 8b44d8c on no_stateless_generation, Submission 17)

XML Config:
<module class="org.opt4j.operators.crossover.BasicCrossoverModule">
<property name="booleanType">RATE</property>
<property name="booleanRate">0.5</property>
<property name="booleanXPoints">1</property>
<property name="doubleType">SBX</property>
<property name="alpha">0.5</property>
<property name="nu">20.0</property>
<property name="integerType">RATE</property>
<property name="integerRate">0.5</property>
<property name="integerXPoints">1</property>
<property name="permutationType">ONEPOINT</property>
<property name="rotation">false</property>
</module>
<module class="org.opt4j.operators.mutate.BasicMutateModule">
<property name="doubleType">POLYNOMIAL</property>
<property name="eta">20.0</property>
<property name="sigma">0.1</property>
<property name="mutationRateType">ADAPTIVE</property>
<property name="mutationRate">0.0</property>
<property name="permutationType">MIXED</property>
</module>
<module class="org.opt4j.optimizer.ea.espea.ESPEAModule">
<property name="archiveCapacity">100</property>
<property name="crossoverRate">0.9</property>
<property name="differentialEvolutionScalingFactor">0.7</property>
<property name="earlyGenerationSizeFactor">0.2</property>
<property name="initialPopulationSizeFactor">1.0</property>
<property name="iterations">1000</property>
<property name="replacementStrategy">WORST_IN_ARCHIVE</property>
<property name="scalarizationFunctionType">NO_PREFERENCE</property>
<property name="tournamentSize">2</property>
</module>

Improved NSGA-III.2

A modified version of the improved NSGA-III: tournament selection is used for selecting parents (theta-front is used for ranking) and structured referencepoints (as used in the NSGA-III) are generated.

XML Config:
<module class="org.opt4j.optimizer.ea.improvednsgaiii.SIINSGA3Module">
<property name="theta">7.0</property>
<property name="numReferencePoints">100</property>
<property name="useStructuredReferencePoints">true</property>
<property name="newReferencePointsPerGeneration">false</property>
<property name="enableTournament">true</property>
<property name="useTournamentParetoRanking">false</property>
<property name="tournamentSize">2</property>
</module>
<module class="org.opt4j.optimizers.ea.EvolutionaryAlgorithmModule">
<property name="generations">1000</property>
<property name="alpha">100</property>
<property name="mu">200</property>
<property name="lambda">100</property>
<property name="crossoverRate">0.95</property>
</module>

Mocell

XML Config:
<module class="MocellModule">
<property name="archiveCapacity">100</property>
<property name="crossoverRate">0.95</property>
<property name="feedbackSize">20</property>
<property name="maxIterations">1000</property>
<property name="mutationRate">0.01</property>
</module>
<module class="org.opt4j.optimizers.ea.Nsga2Module">
<property name="tournament">2</property>
</module>
<module class="org.opt4j.operators.crossover.BasicCrossoverModule">
<property name="booleanType">RATE</property>
<property name="booleanRate">0.5</property>
<property name="booleanXPoints">1</property>
<property name="doubleType">SBX</property>
<property name="alpha">0.5</property>
<property name="nu">20.0</property>
<property name="integerType">RATE</property>
<property name="integerRate">0.5</property>
<property name="integerXPoints">1</property>
<property name="permutationType">ONEPOINT</property>
<property name="rotation">false</property>
</module>
<module class="org.opt4j.operators.mutate.BasicMutateModule">
<property name="doubleType">POLYNOMIAL</property>
<property name="eta">20.0</property>
<property name="sigma">0.1</property>
<property name="mutationRateType">ADAPTIVE</property>
<property name="mutationRate">0.01</property>
<property name="permutationType">MIXED</property>
</module>

SPEA 2 no tournament

SPEA2: Improving the Strength Pareto Evolutionary Algorithm For Multiobjective Optimization, Eckart Zitzler, Marco Laumanns, and Lothar Thiele, In Evolutionary Methods for Design, Optimisation, and Control, pages 19-26, 2002.
Opt4J-Implementation

XML Config:
<module class="org.opt4j.optimizers.ea.EvolutionaryAlgorithmModule">
<property name="generations">1000</property>
<property name="alpha">100</property>
<property name="mu">25</property>
<property name="lambda">25</property>
<property name="crossoverRate">0.95</property>
</module>
<module class="org.opt4j.optimizers.ea.Spea2Module">
<property name="tournament">0</property>
</module>

MEMO

XML Config:
<module class="org.opt4j.operators.crossover.BasicCrossoverModule">
<property name="booleanType">XPOINT</property>
<property name="booleanRate">0.9</property>
<property name="booleanXPoints">1</property>
<property name="doubleType">SBX</property>
<property name="alpha">0.5</property>
<property name="nu">30.0</property>
<property name="integerType">XPOINT</property>
<property name="integerRate">0.9</property>
<property name="integerXPoints">1</property>
<property name="permutationType">ONEPOINT</property>
<property name="rotation">true</property>
</module>
<module class="org.opt4j.operators.mutate.BasicMutateModule">
<property name="doubleType">POLYNOMIAL</property>
<property name="eta">20.0</property>
<property name="sigma">0.1</property>
<property name="mutationRateType">CONSTANT</property>
<property name="mutationRate">0.033</property>
<property name="permutationType">MIXED</property>
</module>
<module class="org.opt4j.optimizer.ea.memo.MEMOModule">
<property name="automaticDivisionNumber">true</property>
<property name="numberOfDivisionsFirstLayer">10</property>
<property name="numberOfDivisionsSecondLayer">0</property>
</module>

IBMOLS-fon

Indicator-Based Multiobjective Local Search algorithm following:
M. Basseur, et al.: The efficiency of indicator-based local search for multi-objective combinatorial optimisation problems, 2012

XML Config:
<module class="org.opt4j.optimizer.ls.ibmols.IBMOLSModule">
<property name="curSetSelection">111</property>
<property name="indicator">fon</property>
<property name="initPopSize">111</property>
<property name="iterations">600</property>
<property name="maxNeighbors">44</property>
<property name="alpha">0.2</property>
</module>

nsag2_hillclimb

nsga2 hillclimbing hybrid

XML Config:
<module class="org.opt4j.optimizer.hillclimb.hilclimbModule">
</module>

DMLS+ds

Dominance-Based Multiobjective Local Search algorithm following:
A. Liefooghe, et al.: On dominance-based multiobjective local search: design, implementation and experimental analysis on scheduling and traveling salesman problems, 2011

XML Config:
<module class="org.opt4j.optimizer.ls.dmls.DMLSModule">
<property name="curSetSelection">1</property>
<property name="initPopSize">111</property>
<property name="maxNeighbors">44</property>
<property name="iterations">2500</property>
<property name="alpha">0.2</property>
</module>

moeavan

XML Config:
<module class="org.opt4j.optimizer.ea.moeavan.MOEVANModule">
<property name="crossoverProbability">1.0</property>
<property name="environmentalSelectionNeighborhoodSize">1</property>
<property name="matingNeighorhoodSize">20</property>
<property name="matingPoolProbability">0.9</property>
<property name="mutationDistributionIndex">20.0</property>
<property name="mutationProbability">0.1</property>
<property name="pNorm">2</property>
<property name="populationSize">300</property>
<property name="scalingFactor">0.5</property>
</module>

DEMO bin v2

Extended DEMO algorithms Version 2. Supports Binary and Permutation genotypes.

XML Config:
<module class="org.opt4j.optimizer.ea.demo_r2_bin.DEMO_r2_BinModule">
<property name="alpha">100</property>
<property name="generations">1000</property>
<property name="scaling_factor">0.5</property>
<property name="tournament">5</property>
</module>

GPSOMOD-optimized

Geometric Particle Swarm Optimization for Multi-objective Optimization using Decomposition

Algorithm was surprisingly hard to improve. Small runtime performance (not evaluation count!) improvements and tuned parameters.

XML Config:
<module class="org.opt4j.optimizer.gpsomod.GpsoModModule">
</module>

NSGA-III

An Evolutionary Many-Objective Optimization Algorithm Using Reference-Point-Based Nondominated Sorting Approach, Part I: Solving Problems With Box Constraints, K. Deb, H. Jain, 2014

XML Config:
<module class="org.opt4j.optimizer.ea.nsga3.NSGA3Module">
<property name="refCount">100</property>
</module>
<module class="org.opt4j.optimizers.ea.EvolutionaryAlgorithmModule">
<property name="generations">1000</property>
<property name="alpha">100</property>
<property name="mu">25</property>
<property name="lambda">25</property>
<property name="crossoverRate">0.95</property>
</module>

Random Search

Opt4J-Implementation

XML Config:
<module class="org.opt4j.optimizers.rs.RandomSearchModule">
<property name="batchsize">25</property>
<property name="iterations">1000</property>
</module>

MIPESA_II

XML Config:
<module class="org.opt4j.optimizer.ea.mipesa_ii.MIPESA_II_ArchiveModule">
<property name="base">1.25</property>
<property name="divisions">50</property>
<property name="tournamentSize">2</property>
<property name="type">ADAPTIVE_GRID</property>
<property name="capacity">1000</property>
</module>
<module class="org.opt4j.optimizer.ea.mipesa_ii.MIPESA_IIModule">
<property name="crossoverRate">0.95</property>
<property name="generations">7500</property>
<property name="internalPopulationSize">1000</property>
<property name="mutationRate">0.01</property>
</module>

la_hillclimb_jr

XML Config:
<module class="org.opt4j.optimizer.hillclimb.hilclimbModule">
</module>

SLS15 SA

SLS15 combined with Simulated Annealing

XML Config:
<module class="org.opt4j.optimizer.ls.sls.SLSModule">
<property name="generations">100000</property>
<property name="initMemorySize">25</property>
<property name="initPopulationSize">100</property>
<property name="k">75</property>
<property name="maxIter">1000</property>
<property name="t">0.03</property>
</module>

SPEA 2

SPEA2: Improving the Strength Pareto Evolutionary Algorithm For Multiobjective Optimization, Eckart Zitzler, Marco Laumanns, and Lothar Thiele, In Evolutionary Methods for Design, Optimisation, and Control, pages 19-26, 2002.
Opt4J-Implementation

XML Config:
<module class="org.opt4j.optimizers.ea.Spea2Module">
<property name="tournament">10</property>
</module>
<module class="org.opt4j.optimizers.ea.EvolutionaryAlgorithmModule">
<property name="generations">1000</property>
<property name="alpha">100</property>
<property name="mu">25</property>
<property name="lambda">25</property>
<property name="crossoverRate">0.95</property>
</module>

DMLS

Dominance-Based Multiobjective Local Search algorithm following:
A. Liefooghe, et al.: On dominance-based multiobjective local search: design, implementation and experimental analysis on scheduling and traveling salesman problems, 2011

XML Config:
<module class="org.opt4j.optimizer.ls.dmls.DMLSModule">
<property name="curSetSelection">1</property>
<property name="initPopSize">100</property>
<property name="maxNeighbors">44</property>
<property name="iterations">2500</property>
</module>

MEMO Improved

XML Config:
<module class="org.opt4j.operators.crossover.BasicCrossoverModule">
<property name="booleanType">RATE</property>
<property name="booleanRate">0.9</property>
<property name="booleanXPoints">1</property>
<property name="doubleType">SBX</property>
<property name="alpha">0.5</property>
<property name="nu">30.0</property>
<property name="integerType">RATE</property>
<property name="integerRate">0.9</property>
<property name="integerXPoints">1</property>
<property name="permutationType">ONEPOINT</property>
<property name="rotation">true</property>
</module>
<module class="org.opt4j.operators.mutate.BasicMutateModule">
<property name="doubleType">POLYNOMIAL</property>
<property name="eta">20.0</property>
<property name="sigma">0.1</property>
<property name="mutationRateType">CONSTANT</property>
<property name="mutationRate">0.033</property>
<property name="permutationType">MIXED</property>
</module>
<module class="org.opt4j.optimizer.ea.memo.MEMOModule">
<property name="automaticDivisionNumber">true</property>
<property name="numberOfDivisionsFirstLayer">10</property>
<property name="numberOfDivisionsSecondLayer">0</property>
</module>

GPSOMOD-naive

Geometric Particle Swarm Optimization for Multi-objective Optimization using Decomposition

XML Config:
<module class="org.opt4j.optimizer.gpsomod.GpsoModModule">
</module>

ESPEA-optimized-c

ESPEA: Obtaining Optimal Pareto Front Approximations using Scalarized Preference Information (Commit 71bdd52 on master, Submission 14)

XML Config:
<module class="org.opt4j.operators.crossover.BasicCrossoverModule">
<property name="booleanType">RATE</property>
<property name="booleanRate">0.5</property>
<property name="booleanXPoints">1</property>
<property name="doubleType">SBX</property>
<property name="alpha">0.5</property>
<property name="nu">20.0</property>
<property name="integerType">RATE</property>
<property name="integerRate">0.5</property>
<property name="integerXPoints">1</property>
<property name="permutationType">ONEPOINT</property>
<property name="rotation">false</property>
</module>
<module class="org.opt4j.operators.mutate.BasicMutateModule">
<property name="doubleType">POLYNOMIAL</property>
<property name="eta">20.0</property>
<property name="sigma">0.1</property>
<property name="mutationRateType">ADAPTIVE</property>
<property name="mutationRate">0.0</property>
<property name="permutationType">MIXED</property>
</module>
<module class="org.opt4j.optimizer.ea.espea.ESPEAModule">
<property name="archiveCapacity">100</property>
<property name="crossoverRate">0.9</property>
<property name="differentialEvolutionScalingFactor">0.7</property>
<property name="earlyGenerationSizeFactor">0.2</property>
<property name="initialPopulationSizeFactor">1.0</property>
<property name="iterations">1000</property>
<property name="replacementStrategy">WORST_IN_ARCHIVE</property>
<property name="scalarizationFunctionType">NO_PREFERENCE</property>
<property name="tournamentSize">2</property>
</module>

PredatorPrey

PredatorPrey improved

XML Config:
<module class="predator.prey.PredatorPreyModule">
<property name="alpha">0.5</property>
<property name="generations">10000</property>
</module>

SMS-EMOA

M. Emmerich, N. Beume, and B. Naujoks. An EMO Algorithm Using the Hypervolume Measure as Selection Criterion. EMO 2005.
Opt4J-Implementation

XML Config:
<module class="org.opt4j.optimizers.ea.EvolutionaryAlgorithmModule">
<property name="generations">1000</property>
<property name="alpha">100</property>
<property name="mu">25</property>
<property name="lambda">25</property>
<property name="crossoverRate">0.95</property>
</module>
<module class="org.opt4j.optimizers.ea.SMSModule">
<property name="offset">1.0</property>
<property name="tournament">0</property>
</module>

DBEA

XML Config:
<module class="org.opt4j.optimizer.ea.dbea.DBEAModule">
<property name="crossoverRate">1.0</property>
<property name="generations">700</property>
<property name="neighborsT">10</property>
<property name="p">120</property>
<property name="tau">0.9</property>
</module>

DBEA_Improved

XML Config:
<module class="org.opt4j.optimizer.ea.dbea.DBEAModule">
<property name="crossoverRate">1.0</property>
<property name="generations">2000</property>
<property name="neighborsT">10</property>
<property name="p">100</property>
<property name="tau">0.9</property>
</module>

NSGA-III-simple

Simplified version of NSGA-III

XML Config:
<module class="org.opt4j.optimizer.ea.nsga3.NSGA3Module">
<property name="refCount">100</property>
<property name="useRandomRefPoints">true</property>
<property name="useSimpleNormalization">true</property>
<property name="tournamentSize">0</property>
</module>
<module class="org.opt4j.optimizers.ea.EvolutionaryAlgorithmModule">
<property name="generations">1000</property>
<property name="alpha">100</property>
<property name="mu">25</property>
<property name="lambda">25</property>
<property name="crossoverRate">0.95</property>
</module>

IPESA_II

Bugfixes vom 19.01.15

XML Config:
<module class="org.opt4j.optimizer.ea.ipesa_ii.IPESA_IIArchiveModule">
<property name="divisions">50</property>
<property name="tournamentSize">2</property>
<property name="type">ADAPTIVE_GRID</property>
<property name="capacity">1000</property>
</module>
<module class="org.opt4j.optimizer.ea.ipesa_ii.IPESA_IIModule">
<property name="crossoverRate">0.95</property>
<property name="generations">7500</property>
<property name="internalPopulationSize">1000</property>
<property name="mutationRate">0.01</property>
</module>

MultisetGA

XML Config:
<module class="org.opt4j.optimizer.multisetGeneticAlgo.MultisetGeneticAlgoModule">
<property name="crossoverRate">0.95</property>
<property name="m">128</property>
<property name="minProb">0.05</property>
<property name="n">96</property>
<property name="rescaleFactor">1.3</property>
<property name="roughness">1.0</property>
<property name="scalingFactor">3.0</property>
<property name="thinness">1.0</property>
<property name="useModifiedMutator">false</property>
</module>

Elitism EA

Opt4J-Implementation

XML Config:
<module class="org.opt4j.optimizers.ea.EvolutionaryAlgorithmModule">
<property name="generations">1000</property>
<property name="alpha">100</property>
<property name="mu">25</property>
<property name="lambda">25</property>
<property name="crossoverRate">0.95</property>
</module>
<module class="org.opt4j.optimizers.ea.ElitismSelectorModule"/>

MOEA/D

Q. Zhang: MOEA/D: A Multiobjective Evolutionary Algorithm Based on Decomposition. IEEE Transactions on Evolutionary Computation, vol. 11, no. 6, pp. 712-731, Dec. 2007.
Implementation by Felix Reimann

XML Config:
<module class="org.opt4j.optimizer.ea.moead07.MOEAD07Module">
<property name="crossoverRate">0.95</property>
<property name="generations">5000</property>
<property name="neighborsT">3</property>
<property name="subproblemsN">30</property>
</module>

NSGA-III-tournament

Modification of NSGA-III with tournament selection

XML Config:
<module class="org.opt4j.optimizer.ea.nsga3.NSGA3Module">
<property name="refCount">100</property>
<property name="useRandomRefPoints">false</property>
<property name="useSimpleNormalization">false</property>
<property name="tournamentSize">2</property>
</module>
<module class="org.opt4j.optimizers.ea.EvolutionaryAlgorithmModule">
<property name="generations">1000</property>
<property name="alpha">100</property>
<property name="mu">25</property>
<property name="lambda">25</property>
<property name="crossoverRate">0.95</property>
</module>

NSGA 2

A Fast Elitist Non-Dominated Sorting Genetic Algorithm for Multi-Objective Optimization: NSGA-II, K. Deb, Samir Agrawal, Amrit Pratap, and T. Meyarivan, Parallel MockProblem Solving from Nature, 2000
Opt4J-Implementation

XML Config:
<module class="org.opt4j.optimizers.ea.EvolutionaryAlgorithmModule">
<property name="generations">1000</property>
<property name="alpha">100</property>
<property name="mu">25</property>
<property name="lambda">25</property>
<property name="crossoverRate">0.95</property>
</module>

SLS15

XML Config:
<module class="org.opt4j.optimizer.ls.sls.SLSModule">
<property name="generations">1000</property>
<property name="initMemorySize">25</property>
<property name="initPopulationSize">100</property>
<property name="k">75</property>
<property name="maxIter">1000</property>
<property name="t">0.03</property>
</module>

  Impressum Stand: 11 June 2013.   F.R.