Opened 4 weeks ago

Last modified 3 weeks ago

#2987 accepted feature request

Implement MOEA/D algorithm in HeuristicLab

Reported by: bburlacu Owned by: bburlacu
Priority: medium Milestone: HeuristicLab 3.3.x Backlog
Component: Algorithms.DataAnalysis Version: branch
Keywords: Cc:


The MOEA/D algorithm is a capable metaheuristic for multi-objective optimization. It would be nice to have it in HeuristicLab.


MOEA/D: A Multiobjective Evolutionary Algorithm Based on Decomposition

Features for HeuristicLab Implementation

  • should work with any encoding
  • extends BasicAlgorithm, supports Pause
  • can use existing operators and analyzers out of the box
  • can be extended to implement different flavours (MOEA/D-DRA, MOEA/D-STM, etc.)

Change History (3)

comment:1 Changed 4 weeks ago by bburlacu

  • Status changed from new to accepted
  • Type changed from defect to feature request

comment:2 Changed 4 weeks ago by bburlacu

r16557: Branch HeuristicLab.Algorithms.DataAnalysis and add initial implementation adapted from jMetal.

r16560: Create separate plugin for MOEA/D

r16561: Store the population as a List, so it can be cleared when the algorithm is finished in order to save memory. Unversion generated files (Plugin.cs and AssemblyInfo.cs)

r16583: Implement better uniform weight generation, objective scaling, algorithm Pause support.


  • support all encodings (currently only Symbolic Expressions)
  • proper wiring (+ handle all events)
  • support more than 2 dimensions (implement weight generation - original implementation reads weights from resource files)
  • adapt design to HeuristicLab (eg, maybe use scopes, replace utility code with HeuristicLab extensions/utility methods) (partially done)
Last edited 3 weeks ago by bburlacu (previous) (diff)

comment:3 Changed 3 weeks ago by bburlacu

Last edited 3 weeks ago by bburlacu (previous) (diff)
Note: See TracTickets for help on using tickets.