Skip to content

About

Experimentation procedure for Iterative Optimization Heuristics

Resources

Contributing

Stars

72 stars

Watchers

5 watching

Forks

Repository files navigation

IOHexperimenter banner


CI Wheels Docs Codacy Badge PyPI - Version PyPI - Downloads

Experimenter for Iterative Optimization Heuristics (IOHs), built in C++.

IOHexperimenter provides:

Available Problem Suites:

  • BBOB (Single Objective Noiseless) (COCO)
  • SBOX-COST (COCO)
  • StarDiscrepancy
  • PBO
  • Submodular Graph Problems
  • CEC 2013 Special Session and Competition on Niching Methods for Multimodal Function Optimization
  • CEC 2022 Special Session and Competition on Single Objective Bound Constrained Numerical Optimization

C++

IOHexperimenter is a C++17 library, built with CMake (3.16 or later); programs link its ioh::ioh target. The installation, a Getting-Started guide and the complete API documentation can be found here. In addition to the documentation, some example projects can be found in the example folder of this repository.

Python

The Python interface is available on PyPI: pip install ioh. It needs Python 3.10 or later; 3.12 or later is recommended. There are wheels for Linux (x86_64, aarch64), Windows (x64, ARM64) and macOS (Intel, arm64), also for the free-threaded Python 3.14t and 3.15t; elsewhere pip builds the package from source, which needs a C++17 compiler. To build it from a clone of this repository (with its submodules), run pip install . (see building and testing).

The data files of the problems are installed with the package: ioh.data_root() shows where they are, and ioh.set_data_root(path) or the environment variable IOH_RESOURCES choose another directory.

A tutorial with python in the form of a jupyter notebook can be found in the example folder of this repository. A Getting-Started guide and the full API documentation can be found here.

Contact

If you have any questions, comments or suggestions, please don't hesitate contacting us IOHprofiler@liacs.leidenuniv.nl.

Our team

When using IOHprofiler and parts thereof, please kindly cite this work as

Jacob de Nobel, Furong Ye, Diederick Vermetten, Hao Wang, Carola Doerr and Thomas Bäck, IOHexperimenter: Benchmarking Platform for Iterative Optimization Heuristics, arXiv e-prints:2111.04077, 2021.

@ARTICLE{denobel2024IOHexperimenter,
  author={de Nobel, Jacob and Ye, Furong and Vermetten, Diederick and Wang, Hao and Doerr, Carola and Bäck, Thomas},
  journal={Evolutionary Computation}, 
  title={IOHexperimenter: Benchmarking Platform for Iterative Optimization Heuristics}, 
  year={2024},
  volume={32},
  number={3},
  pages={205-210},
  keywords={Iterative optimization heuristics;benchmarking;algorithm comparison},
  doi={10.1162/evco_a_00342}
}

About

Experimentation procedure for Iterative Optimization Heuristics

Resources

Contributing

Stars

72 stars

Watchers

5 watching

Forks

Releases

Packages

Used by

Contributors

Languages