Skip to content

MOEAFramework/MOEAFramework

Repository files navigation

MOEA Framework

GitHub Actions status Maven Central GitHub all releases

The MOEA Framework is a free and open source Java library for developing and experimenting with multiobjective evolutionary algorithms (MOEAs) and other general-purpose multiobjective optimization algorithms. The MOEA Framework supports genetic algorithms, differential evolution, particle swarm optimization, genetic programming, grammatical evolution, and more. A number of algorithms are provided out-of-the-box, including NSGA-II, NSGA-III, ε-MOEA, GDE3, PAES, PESA2, SPEA2, IBEA, SMS-EMOA, SMPSO, OMOPSO, CMA-ES, and MOEA/D. In addition, the MOEA Framework provides the tools necessary to rapidly design, develop, execute and statistically test optimization algorithms.

Its key features includes:

  • Fast, reliable implementations of many state-of-the-art algorithms
  • Extensible with custom algorithms, problems and operators
  • Supports master-slave, island-model, and hybrid parallelization
  • Tools for building and statistically testing new optimization algorithms
  • Permissive open source license
  • Fully documented and tested source code

Download

The latest release can be downloaded from our website or from the releases page. Maven users can add our dependency to their pom.xml file:

<dependency>
    <groupId>org.moeaframework</groupId>
    <artifactId>moeaframework</artifactId>
    <version>4.0</version>
</dependency>

Visit the Maven distribution page for setup instructions for other package management tools.

Documentation

Find our documentation, examples, and online resources at moeaframework.org for instructions for using the MOEA Framework.

License

Copyright 2009-2024 David Hadka and other contributors. All rights reserved.

The MOEA Framework is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

The MOEA Framework is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with the MOEA Framework. If not, see http://www.gnu.org/licenses/.