jMetal project documentationΒΆ
Author: Antonio J. Nebro <ajnebro@uma.es>
jMetal is an open source Java-based framework for multi-objective optimization with metaheuristics. It includes a wide set of resources, including state-of-the-art multi-objective algorithms, solution encodings, benchmark problems, quality indicators, and utilities for performing experimental studies.
The current stable version is 6.0 (https://github.com/jMetal/jMetal). The working version in GitHub is 6.1-SNAPSHOT.
jMetal is described in the following papers:
- jMetal: A Java framework for multi-objective optimization. jMetal 4
- Redesigning the jMetal Multi-Objective Optimization Framework. jMetal 5
- Automatic configuration of NSGA-II with jMetal and irace. jMetal 6
- Evolving a Multi-objective Optimization Framework. jMetal 6
Summary of features:
- Multi-objective algorithms: NSGA-II, SPEA2, PAES, PESA-II, OMOPSO, MOCell, AbYSS, MOEA/D, GDE3, IBEA, SMPSO, SMPSOhv, SMS-EMOA, MOEA/D-STM, MOEA/D-DE, MOCHC, MOMBI, MOMBI-II, NSGA-III, WASF-GA, GWASF-GA, R-NSGA-II, CDG-MOEA, ESPEA, SMSPO/RP, AGEMOEA, CDG, FAME, MicroFAME, MOSA.
- Single-objective algorithms: genetic algorithm (variants: generational, steady-state), evolution strategy (variants: elitist or mu+lambda, non-elitist or mu, lambda), DE, CMA-ES, PSO (Stantard 2007, Standard 2011), Coral reef optimization.
- Parallel models: Synchronous (multi-threaded, Apache Spark), asynchronous
- Variable representations (encodings): binary, real, integer, permutation, mixed
- Problems:
- Problem families: ZDT, DTLZ, WFG, RE, CRE, FDA, CEC2009, LZ09, GLT, MOP, LIRCMOP, MOP, UF
- Classical problems: Kursawe, Fonseca, Schaffer, Viennet2, Viennet3
- Constrained problems: Srinivas, Tanaka, Osyczka2, Constr_Ex, Golinski, Water, Viennet4
- Combinatorial problems: multi-objective TSP
- Academic problems: OneMax, OneZeroMax
- Quality indicators: hypervolume, normalized hypervolume, spread, generational distance, inverted generational distance, inverted generational distance plus, additive epsilon.
- Support for experimental studies
- Support for automatic algorithm configuration and design