Flexible Bayesian Optimization
Overview
A modern and flexible approach to Bayesian Optimization / Model Based Optimization building on the 'bbotk' package. 'mlr3mbo' is a toolbox providing both ready-to-use optimization algorithms as well as their fundamental building blocks allowing for straightforward implementation of custom algorithms. Single- and multi-objective optimization is supported as well as mixed continuous, categorical and conditional search spaces. Moreover, using 'mlr3mbo' for hyperparameter optimization of machine learning models within the 'mlr3' ecosystem is straightforward via 'mlr3tuning'. Examples of ready-to-use optimization algorithms include Efficient Global Optimization by Jones et al. (1998) doi:10.1023/A:1008306431147, ParEGO by Knowles (2006) doi:10.1109/TEVC.2005.851274 and SMS-EGO by Ponweiser et al. (2008) doi:10.1007/978-3-540-87700-4_78.
- compatibility: mlr3 1.7.2
From NEWS.md in the release
Install
Health
- OK13 OK2026-08-05
- NOTE12 OK, 1 NOTE2026-08-02
- ERROR10 OK, 3 ERROR2026-07-25
- NOTE12 OK, 1 NOTE2026-07-11
- OK13 OK2026-06-08
Show 4 earlier changesHide 4 earlier changes
- ERROR12 OK, 1 ERROR2026-06-07
- OK14 OK2026-04-10
- ERROR13 OK, 1 ERROR2026-04-09
- OK14 OK2026-03-10
Documentation
- Help pages
- 67includes a package overview page
- Examples that run
- 78%40 run in a plain check (22 of them under a condition) · 11 only when donttest examples are enabled (R CMD check --as-cran)
- Exported functions with examples
- 80%
- Documented parameters
- 100%
- Return-value docs
- 31%
- Help pages citing references
- 24%
Downloads
Repository
- PRs merged (all time)
- 91%
- Median days to close, 50 most recently updated closed issues
- 50
- Median days to close, 50 most recently updated closed PRs
- 1
Stars over time
Forks over time
Releases over time
Issues over time
PRs over time
Commits over time
16 development-tooling and community-health practices detected across 6 families in the upstream repository
Checks run against github.com/mlr-org/mlr3mbo on 2026-10-22.
The R CMD check workflow runs on Linux, and on R-devel
Funding links: GitHub Sponsors
The repository owner accepts GitHub Sponsors
GitHub Pages site last deployed 2026-10-06 · The repository has a site deploy workflow
pkgdown site last built 2026-07-26
Show all practicesHide 2 practices
This repository shows signs of AI coding tools.
- GitHub Copilotfirst seen 2025-07-05Pull request: opened by its own account
- Claude Codefirst seen 2026-03-03Seen in the repository: .claude, CLAUDE.mdNamed in .Rbuildignore: .claude, CLAUDE.mdNamed in .gitignore: .claude, CLAUDE.mdPull request it wrote: opened by a project memberCommits: at least 68 crediting it in the message
- Cursorfirst seen 2026-03-04Named in .Rbuildignore: .cursor
- Gemini CLIfirst seen 2026-03-13Config: a file or ignore line, not recorded which
- Codexfirst seen 2026-09-18Seen in the repository: .codexNamed in .Rbuildignore: .codexCommits: at least 1 crediting it in the message
- Claude Opus 4.832 commits · Jul 2026
- Claude Fable 529 commits · Jun to Jul 2026
- Claude Opus 4.64 commits · Mar 2026
- Claude Opus 4.71 commit · Apr 2026
- Claude Opus 51 commit · Aug 2026
Dependencies
Installing mlr3mbo adds 32 packages (17 with compiled code, 25 MB of source tarballs). Heaviest: data.table 5.7 MB, spacefillr 3.1 MB, palmerpenguins 2.9 MB.
Code & Tests
People & History
Previously maintained by Lennart Schneider (0.1.1 to 0.3.0).
Pick two releases to compare their code metrics.
- 1.2.1Latest
- 1.2.02026-07-21 · diff ↗
- 1.1.12026-04-24 · diff ↗
- RR 4.6.0 released · 2026-04-24
- 1.1.02026-03-18 · diff ↗
- 1.0.02026-02-27 · diff ↗ ·
added 8 exports
AcqOptimizerDirect, AcqOptimizerLbfgsb, AcqOptimizerLocalSearch, AcqOptimizerRandomSearch, error_acq_optimizer, error_random_interleave, error_surrogate_update, mlr_acqoptimizers - 0.3.32025-10-10 · diff ↗
- 0.3.22025-10-02 · diff ↗
- 0.3.12025-08-19 · diff ↗
- 0.3.02025-06-03 · diff ↗ ·
added 10 exports
AcqFunctionEILog, InputTrafo, InputTrafoUnitcube, OutputTrafo, OutputTrafoLog, OutputTrafoStandardize, it, mlr_input_trafos, mlr_output_trafos, ot - RR 4.5.0 released · 2025-04-11
- 0.2.92025-03-04 · diff ↗
- 0.2.8
- 0.2.72024-11-15 · diff ↗ ·
added 6 exports
AcqFunctionStochasticCB, AcqFunctionStochasticEI, OptimizerADBO, OptimizerAsyncMbo, TunerADBO, TunerAsyncMbo - 0.2.62024-10-16 · diff ↗
- 0.2.5
Show 9 earlier eventsHide 9 earlier events
- 0.2.42024-07-06 · diff ↗
- 0.2.32024-07-01 · diff ↗
- RR 4.4.0 released · 2024-04-24
- 0.2.2
- 0.2.12023-06-05 · diff ↗ ·
removed 6 exports
default_acqfun, default_acqopt, default_loopfun, result_by_default, result_by_surrogate_design, srlrncadded 13 exports
AcqFunctionEHVI, AcqFunctionEHVIGH, AcqFunctionSD, ResultAssigner, ResultAssignerArchive, ResultAssignerSurrogate, bayesopt_emo, default_acqfunction, default_acqoptimizer, default_loop_function, default_result_assigner, mlr_result_assigners, ras - RR 4.3.0 released · 2023-04-21
- 0.1.2
- 0.1.12022-11-18
- RR 4.2.0 released · 2022-04-22
Package metadata
- First published
- 2022-11-18
- Total releases
- 20 / 4 yrs
- License
- LGPL-3 OSI
- Minimum R
- ≥ 3.1.0
- Download size
- 167 KB
Cite
Cite this package
Run in R for the authors' entry:
citation("mlr3mbo")The package provides a citation file, so citation() returns the authors' own entry.
It points to 10.1016/j.patter.2026.101614.
Cite the R Observatory
For a number measured here: a download total, a coverage figure, an archival date.
From data release v2026-10-24, which the citation names so these numbers can be found later. More on citing and the projects behind them.