jMetal is a Java-based framework for multi-objective optimization with metaheuristics. The last stable version is 5.11 (https://github.com/jMetal/jMetal/tree/jmetal-5.11), which is based on the description of jMetal 5 included in the paper "Redesigning the jMetal Multi-Objective Optimization Framework" (http://dx.doi.org/10.1145/2739482.2768462), presented at GECCO 2015.
The current development version (6.0-SNAPSHOT) is a Maven project structured in the following sub-projects:
Sub-project | Contents |
---|---|
jmetal-core | Core classes |
jmetal-solution | Solution encodings |
jmetal-algorithm | Algorithm implementations |
jmetal-problem | Benchmark problems |
jmetal-lab | Experimentation and visualization |
jmetal-parallel | Parallel extensions |
jmetal-auto | Auto-design and configuration |
jmetal-component | Component-based algorithms |
The most recent documentation is hosted in https://jmetal.readthedocs.io (the old documentation site is located in https://github.com/jMetal/jMetalDocumentation).
Comments and suggestions are very welcome.
- [9/12/2022] The master branch has been renamed main.
- [7/5/2022] The jMetal project adopts Java 14.
- [5/23/2022] Algorithm AGE-MOEA-II. Contribution of Annibale Panichella (@apanichella).
- [5/9/2022] Algorithm AGE-MOEA. Contribution of Annibale Panichella (@apanichella).
- [3/28/2022] The CF benchmark of constrained multi-objective problems, defined in Constrained Multiobjective Optimization: Test Problem Construction and Performance Evaluations, has been included.
- [3/28/2022] The constraint handling code has been refactorized and the documentation has been updated.
- [1/20/2022] The autoconfiguration of NSGA-II with irace has been revised, including fixing a bug and updating the documentation.
- [9/6/2021] Release 5.11
- [9/6/2021] The jMetal project adopts Java 13.
- [7/6/2021] The LSMOP benchmark is available.
- [2/19/2021] The Solution interface has been refactorized.
- [2/19/2021] New implementation of quality indicators to remove the dependence of jMetal classes. Now, all of them accept as a parameter a matrix containing objective values.
- [1/21/2021] Added the MicroFAME multi-objective genetic algorith, described in: Alejandro Santiago, Bernabé Dorronsoro, Héctor Fraire, Patricia Ruíz: Micro-Genetic algorithm with fuzzy selection of operators for multi-Objective optimization: microFAME. Swarm and Evolutionary Computation, V.61, March 2021. DOI. Contributed by Alejandro Santiago.
- [10/1/2020] Added the problems described in: Ryoji Tanabe and Hisao Ishibuchi: An Easy-to-use Real-world Multi-objective Optimization Problem Suite. Applied Soft Computing, V.89, April 2020. DOI.
- [9/14/2020] New
jmetal-parallel
sub-module. It contains asynchronous versions of a genetic algorithm and NSGA-II, and a synchronous evaluator based on Apache Spark. - [7/23/2020] The former
jmetal-auto
sub-project and the stuff related to using a component-based evolutionary template have been moved to a new sub-project calledjmetal-experimental
, which is intended to explore new features that can be consolidated in the project in the future. - [7/21/2020] jMetal 5.10 has been released.
- [7/15/2020] Automatic generation of HTML pages <https://jmetal.readthedocs.io/en/latest/experimentation.html#generation-of-html-pages>_. summarizing the results of experimental studies. Contributed by Javier Pérez Abad.
- [7/14/2020] New experiment component: GenerateFriedmanHolmTestTables. Contributed by Javier Pérez Abad.
- [3/19/2020] New quality indicator: NormalizedHypervolume.
- [3/19/2020] The jMetal project adopts Java 11.
- [2/11/2020] All the files containing Pareto front approximations and weight vectors have been moved to the
resources
folder, located in root project directory.