BBOB Benchmark function implemented in JAX
Project description
BBOB Benchmark set for JAX
| GitHub | PyPI | Documentation | Zenodo
JAX implementation of the BBOB Benchmark functions for black-box optimization, based on the original definitions by Finck et al. (2009) [^1].
First publication: October 17, 2025
Statement of need
This repository provides the original BBOB 24 noise-free, real-parameter, single-objective benchmark functions reimplemented in JAX. Originally written in C, these functions have been translated to JAX to enable automatic differentiation, just-in-time (JIT) compilation, and XLA-accelerated performance; making them ideal for research in optimization, machine learning, and evolutionary algorithms.
3D surface plots of the 24 BBOB benchmark functions.
2D contour plots of the 24 BBOB benchmark functions.
Authorship & Citation
Authors:
- Martin van der Schelling (m.p.vanderschelling@tudelft.nl)
Authors affiliation:
- Delft University of Technology (Bessa Research Group)
Maintainer:
- Martin van der Schelling (m.p.vanderschelling@tudelft.nl)
Maintainer affiliation:
- Delft University of Technology (Bessa Research Group)
If you use bbob-jax in your research or in a scientific publication, it is appreciated that you cite the paper below:
Zenodo (link):
@software{vanderSchelling2025,
title = {Black-box optimization benchmarking (bbob) problem
set for JAX},
author = {van der Schelling, M. P. and Bessa, M A.},
month = {nov},
year = {2025},
publisher = {Zenodo},
version = {v1.0.0},
doi = {10.5281/zenodo.17426894},
url = {https://doi.org/10.5281/zenodo.17426894},
}
Getting started
To install the package, use pip:
pip install bbob-jax
Related Work
This project builds on and complements established benchmarking efforts and tooling in black-box optimization. The resources below are closely related and provide broader context and utilities.
- COCO platform (COmparing Continuous Optimisers): benchmarking framework and tools for black-box optimization. [^2]
- EvoSax: JAX-based evolution strategies library that includes BBOB function support and benchmarking utilities. [^3]
Community Support
If you find any issues, bugs or problems with this package, please use the GitHub issue tracker to report them.
License
Copyright (c) 2025, Martin van der Schelling
All rights reserved.
This project is licensed under the BSD 3-Clause License. See LICENSE for the full license text.
[^1]: Finck, S., Hansen, N., Ros, R., and Auger, A. (2009), Real-parameter black-box optimization benchmarking 2009: Noiseless functions definitions, INRIA.
[^2]: Hansen, N., Auger, A., Ros, R., Mersmann, O., Tušar, T., and Brockhoff, D. (2021), COCO: A Platform for Comparing Continuous Optimizers in a Black-Box Setting. Optimization Methods and Software, 36(1), 114–144. https://doi.org/10.1080/10556788.2020.1808977
[^3]: Lange, R. T. (2022), evosax: JAX-based Evolution Strategies. arXiv preprint arXiv:2212.04180.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file bbob_jax-1.1.0.tar.gz.
File metadata
- Download URL: bbob_jax-1.1.0.tar.gz
- Upload date:
- Size: 15.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9d9d832462f70737a612b77999a5ac629444f4d5e969cb93181ad4355ff509fa
|
|
| MD5 |
065ec769541ed8ed1d2bcb873b6485c3
|
|
| BLAKE2b-256 |
9e6360e5040076c61365c429ecd3372c106845b331f5473c8957f9926fdb1ef6
|
File details
Details for the file bbob_jax-1.1.0-py3-none-any.whl.
File metadata
- Download URL: bbob_jax-1.1.0-py3-none-any.whl
- Upload date:
- Size: 14.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
105bdd1a188b9df4ce2809d12c1d824bb55d7a1e755cf8d5703c86448e6a45f3
|
|
| MD5 |
937ee83c766a929aaccb5f3beb5878f6
|
|
| BLAKE2b-256 |
8dded2c22004d9ba630b1224c37cb6d8bd21f01a9f58dc3d7a8ab32261352098
|