EMOC: Evolutionary Multi-objective Optimization in C++ #

EMOC stands for Evolutionary Multi-objective Optimization in C++ which is a framework for single-objective and multi-objective optimization. This library is mainly for research and educational purposes.

For installing EMOC, please refer to the section Install. We also provide a Quick Start section for users to get started.

Features #

  • Rich algorithms and problems

    EMOC implemented about 30 algorithms and more than 80 test problems which both include single-objective and multi-objective types.

  • Developed in C++ and Cross-platform

    All the source code of EMOC are wrote in C++. So the running efficiency is guaranteed when comparing other implementation with python, java or matlab. We also provide cross-platform compatibility for users with different operator systems.

  • Friendly GUI

    EMOC provides a user-friendly GUI with the function of configuring parameters of once-run and experiments without writing a single line of code.

  • Various Optimization Types

    EMOC supports unconstraint optimization, constraint optimization and combinatorial optimization (including binary encoding and permutation encoding).

  • Save into Excel or Latex

    Users can save the experiment results of EMOC in the format of Excel or Latex.

3rd Party Libraries #