Welcome to the jMetalCpp Web Site

jMetalCpp is ...

The jMetalCpp project has the goal of providing a C++ implementation of jMetal, a Java framework for multi-objective optimation with metaheuristics.

As with the original jMetal framework, our plan is to develop jMetalCpp according to our needs and then sharing the software to allow interested researchers to use it freely.

You can use it to ...

The object-oriented architecture of the framework and the included features allow you to: experiment with the provided classic and state-of-the-art techniques, develop your own algorithms, solve your optimization problems, integrate jMetal in other tools, etc.

Our motivation is ...

The motivation driving us is to provide the programs we use in our own works to the multi-objective optimization research community. We have made an effort in trying to produce an ease-to-use software, and we are continuously modifying and extending jMetal according to our needs and those suggested by people interested in using it.

Only multi-objective algorithms?

Developing single-objective versions of multi-objective algorithms is usually an easy task, so jMetal contains also single-objective genetic algorithms, evolution strategies, PSO, and DE.

If you are interested in contributing, use our GitHub repository.

Summary of features


  1. Esteban López-Camacho, María Jesús García Godoy, Antonio J. Nebro and José F. Aldana-Montes
    jMetalCpp: optimizing molecular docking problems with a C++ metaheuristic framework.
    Bioinformatics (2014) 30 (3): 437-438 first published online November 22, 2013 doi:10.1093/bioinformatics/btt679