← Back to home
Comparison · Analytics

bbotk vs mlr3tuning

A side-by-side editorial comparison of bbotk and mlr3tuning — release velocity, themes, recent moves, and the top alternatives to consider.

Shared themes:mlr3

bbotk vs mlr3tuning: at a glance

Featurebbotkmlr3tuning
SectorAnalyticsAnalytics
Velocity score2.52.5
Sparks · 30d00
Top themesblack-box optimization, mlr3, async execution, api deprecationmlr3, hyperparameter-tuning, async-optimization, callbacks
Last editorial update4h ago1h ago
WebsiteVisit →Visit →

What is bbotk?

bbotk is generalizing from an optimizer toolkit into an evaluation framework.

bbotk is the black-box optimization backend behind mlr3 tuning: search spaces, terminators, archives, and an async layer built on rush. Recent releases pair steady async-API buildout with removal of the deprecated arguments that preceded it. The 1.9.0 release introduced EvalInstance as a base class for OptimInstance, separating evaluating an objective from optimizing one.

Read the full bbotk trajectory →

What is mlr3tuning?

mlr3tuning is rebuilding its async machinery under a stable public surface

mlr3tuning provides hyperparameter optimization for the mlr3 ecosystem, and its recent history is dominated by the asynchronous tuning path: archive freezing, callback stages around queue evaluation, and version-locked compatibility with the rush backend. Releases pair a small feature with several fixes and an explicit compatibility line naming the mlr3 or rush version they track. The most recent release drops all workarounds for older rush versions, which suggests that dependency has stabilized enough to require rather than accommodate.

Read the full mlr3tuning trajectory →

bbotk vs mlr3tuning: editorial side-by-side

B
bbotk
ANALYTICS
2.5

bbotk is generalizing from an optimizer toolkit into an evaluation framework.

◆ Current state

bbotk is the black-box optimization backend behind mlr3 tuning: search spaces, terminators, archives, and an async layer built on rush. Recent releases pair steady async-API buildout with removal of the deprecated arguments that preceded it. The 1.9.0 release introduced EvalInstance as a base class for OptimInstance, separating evaluating an objective from optimizing one.

◆ Where it's heading

Two threads run through the visible history. The first is async optimization maturing: ArchiveAsync gained a full push/finish/fail vocabulary over rush tasks in 1.11.0, and 1.12.0 deleted the deprecated extra arguments it replaced. The second is dependency consolidation, with custom C hypervolume code handed to moocore and rush pinned to 1.0.0, trimming maintenance surface as the async path becomes the default.

◆ Prediction

The deprecation removals in 1.12.0 suggest the async archive API is now treated as settled; the next releases most likely build on EvalInstance rather than continuing to churn ArchiveAsync.

M
mlr3tuning
ANALYTICS
2.5

mlr3tuning is rebuilding its async machinery under a stable public surface

◆ Current state

mlr3tuning provides hyperparameter optimization for the mlr3 ecosystem, and its recent history is dominated by the asynchronous tuning path: archive freezing, callback stages around queue evaluation, and version-locked compatibility with the rush backend. Releases pair a small feature with several fixes and an explicit compatibility line naming the mlr3 or rush version they track. The most recent release drops all workarounds for older rush versions, which suggests that dependency has stabilized enough to require rather than accommodate.

◆ Where it's heading

Two things are being tidied at once. The async archive is converging on a consistent data.table representation across batch and async variants, so results are shaped the same regardless of how tuning ran. Separately, the package is becoming a better ecosystem citizen — unioning tuner properties on load instead of overwriting them, removing its callbacks on unload, and raising informative errors from AutoTuner accessors on an untrained model. Both are the marks of a package used as a dependency more than as a destination.

◆ Prediction

With rush pinned to 1.2.0 and the compatibility shims gone, the next release is likely to expose more of the async path through callbacks rather than change the tuning interface.

Alternatives to bbotk and mlr3tuning

Other Analytics products tracked by Sparkpulse, ranked by recent ship velocity. Each card links to a full editorial trajectory and lets you pivot into a head-to-head comparison with either bbotk or mlr3tuning.

See all bbotk alternatives → · See all mlr3tuning alternatives →

Recent activity from bbotk and mlr3tuning

Latest ship moves from both products, interleaved chronologically. ⚡ = editorial spark.

  1. 18d agomlr3tuningmlr3tuning 1.6.1 stops clobbering other packages' tuner properties
  2. 24d agobbotkDeprecated extra argument removed from ArchiveAsync methods
  3. 1mo agobbotkArchiveAsync gains full push/finish/fail task API over rush
  4. 2mo agobbotkDominance and hypervolume computation moved to moocore
  5. 4mo agobbotkmlr_test_functions adds standard optimization benchmarks
  6. 4mo agomlr3tuningmlr3tuning 1.6.0 aligns archive column order across tuning classes
  7. 5mo agobbotkEvalInstance base class separates evaluation from optimization
  8. 8mo agomlr3tuningmlr3tuning 1.5.1 tracks xgboost 3.1.2.1
  9. 8mo agobbotkFix: conditions now work with OptimizerLocalSearch
  10. 8mo agomlr3tuningmlr3tuning 1.5.0 adds queue evaluation stages to async callbacks
  11. 1y agomlr3tuningmlr3tuning 1.4.0 unifies logging under a base mlr3 logger
  12. 1y agomlr3tuningmlr3tuning 1.3.0 adds a frozen async archive and leaner worker storage

Frequently asked questions

What is the difference between bbotk and mlr3tuning?

Both compete on the same themes — mlr3 — within Analytics. bbotk and mlr3tuning are shipping at a similar cadence (velocity 2.5 vs 2.5, both within Sparkpulse's "active" band). See the at-a-glance table above for a side-by-side breakdown of velocity, recent sparks, and editorial themes.

Is bbotk better than mlr3tuning?

Sparkpulse doesn't pick a winner — we score release velocity, not feature parity. bbotk and mlr3tuning are shipping at a similar cadence (velocity 2.5 vs 2.5, both within Sparkpulse's "active" band). For your specific use case, the alternatives sections above list other Analytics products to evaluate alongside.

What are the best alternatives to bbotk?

Top bbotk alternatives in Analytics are ranked by recent ship velocity. Browse the "bbotk alternatives" section above for the current picks, or visit /alternatives/bbotk for the full list with editorial commentary on each.

What are the best alternatives to mlr3tuning?

Top mlr3tuning alternatives in Analytics are ranked by recent ship velocity. Browse the "mlr3tuning alternatives" section above for the current picks, or visit /alternatives/mlr3tuning for the full list with editorial commentary on each.