NonconvexBayesian

NonconvexBayesian provides Gaussian-process surrogate-assisted (Bayesian) optimization for the Nonconvex ecosystem. Expensive objective and constraint functions (flagged with :expensive) are replaced by GP surrogates whose acquisition model is solved by any Nonconvex optimizer to propose the next query point; the true functions are then evaluated at the candidate to update the surrogates.
This documentation is a fragment of the Nonconvex documentation and is also built standalone.
Features
BayesOptAlgmeta-algorithm: wraps any Nonconvex optimizer (BayesOptAlg(IpoptAlg()),BayesOptAlg(NLoptAlg(...)), ...).- Acquisition functions:
LCB(default),GPUCB(with aβ(t)schedule),EIandPI; constraint surrogates always useLCBfor conservative feasibility. - Zero-order (
ZeroOrderGPSurrogate), first-order (FirstOrderGPSurrogate) and co-kriging (CoKrigingSurrogate, joint value+gradient) surrogates. - Direct-Sobol or acquisition-based initialization, acquisition multistart with duplicate-point filtering, and TuRBO-style local trust-region restarts for high-dimensional problems.
- Expensive constraints replaced by conservative (LCB) surrogates, with equality constraints transformed into 2-block inequalities (see Constraints).
- Full protocol integration:
GenericResult-style results withfcalls, convergence state, callbacks,verboselogging,keep_allquery trajectories andreset!support for meta-algorithm nesting. - Solver capability declarations forwarded to the sub-solver (
solver_capabilities).
See Quick start for a complete example.