BOSS supports running either via a simple command-line interface (CLI) or directly in Python scripts using the Python API. Several tutorials are available below for both modes of running, with emphasis on the practicalities of using the code. In both modes, BOSS settings such as the number of iterations, key algorihtms, variable input and so on, can be conveniently controlled through BOSS keywords, some of which are necessary to start the active learning simulation.

Command-line interface

The BOSS CLI is provided by an executable called boss that is automatically generated during the installation process. The function to be optimized must be defined in Python, but once this is done, the user is free to run BOSS from the command line without interacting with Python at all. This is the recommended way to run BOSS on high-performance cluster (HPC) environments. To get started with the BOSS binary, see the following pages:

A set of more in-depth tutorials are also available for download:

  • Tutorial 1: simple introduction to BOSS input files, user function and postprocessing analysis.

  • Tutorial 2: alanine conformer search in 2D and 4D (using the AMBER code).

  • Tutorial 3: using existing data (or restarting) to find minima and illustrate landscapes.

Python API

The following tutorials demonstrate the basics of using the Python API:

BOSS also supports a number of more advanced features:

Further reading

If you wish to learn more about Bayesian optimization, read the book by Rasmussen & Williams and Brochu’s BO tutorial.