combo
COMBO (Constraint Oriented Multi-variate Bayesian Optimization) tunes software configurations under hard constraints. It covers two regimes from one decision-space definition: online bandit optimization for high-volume traffic where every request is a new draw and cumulative reward across millions of decisions is what matters, and Bayesian optimization for offline sweeps where each evaluation is expensive and the budget is tens to hundreds of trials. Same schema, same constraint solver, a different optimizer plugged in.
In practice COMBO runs in three steps: declare a decision space with typed variables (boolean, integer, float, nominal, multi-select) and logical constraints, wire each variable to code behavior, then loop choose then serve then update. Lower-level primitives are factored into focused libraries (klause for constraint solving and sampling, kumulant for streaming statistics, with more to follow) that combo composes into the end-to-end product.
Install
dependencies {
implementation("com.eignex:combo:LATEST")
}
Where to go next
- Recipes — task-oriented guides with worked code.
- API reference — full KDoc, generated from the
current
mainbranch. - Changelog — release notes.