NUBO, short for Newcastle University Bayesian Optimisation, is a Bayesian optimization framework for the optimization of expensive-to-evaluate black-box functions, such as physical experiments and computer simulators. Bayesian optimization is a costefficient optimization strategy that uses surrogate modelling via Gaussian processes to represent an objective function and acquisition functions to guide the selection of candidate points to approximate the global optimum of the objective function. NUBO itself focuses on transparency and user experience to make Bayesian optimization easily accessible to researchers from all disciplines. Clean and understandable code, precise references, and thorough documentation ensure transparency, while user experience is ensured by a modular and flexible design, easy-to-write syntax, and careful selection of Bayesian optimization algorithms. NUBO allows users to tailor Bayesian optimization to their specific problem by writing the optimization loop themselves using the provided building blocks. It supports sequential single-point, parallel multi-point, and asynchronous optimization of bounded, constrained, and/or mixed (discrete and continuous) parameter input spaces. Only algorithms and methods that are extensively tested and validated to perform well are included in NUBO. This ensures that the package remains compact and does not overwhelm the user with an unnecessarily large number of options. The package is written in Python but does not require expert knowledge of Python to optimize your simulators and experiments. NUBO is distributed as open-source software under the BSD 3-Clause license.
翻译:NUBO(纽卡斯尔大学贝叶斯优化)是一个用于优化高成本黑箱函数(如物理实验和计算机模拟器)的贝叶斯优化框架。贝叶斯优化是一种成本高效的优化策略,它通过高斯过程进行代理建模来表示目标函数,并利用采集函数指导候选点的选择,以逼近目标函数的全局最优解。NUBO本身注重透明度和用户体验,旨在使来自不同学科的研究者都能轻松使用贝叶斯优化。清晰易懂的代码、精确的参考文献和完整的文档确保了透明度,而模块化灵活的设计、易于编写的语法以及精心挑选的贝叶斯优化算法则保障了用户体验。NUBO允许用户使用提供的构建模块自行编写优化循环,从而针对特定问题定制贝叶斯优化流程。它支持有界、约束和/或混合(离散与连续)参数输入空间的顺序单点、并行多点及异步优化。NUBO仅包含经过充分测试和验证表现良好的算法与方法,这确保了软件包保持紧凑,不会因提供过多不必要的选项而给用户带来困扰。该软件包采用Python编写,但优化模拟器和实验时无需具备专业的Python知识。NUBO作为开源软件在BSD 3-Clause许可证下分发。