Overview
BayBE is a general-purpose toolbox for Bayesian Design of Experiments, intended to help select promising configurations within complex parameter spaces. In chemistry and materials workflows, its documented roles include choosing reaction conditions, process settings and formulation parameters. It serves as the experimental-planning back end: users define the available choices and optimization goals, obtain recommended experiments, and return measured outcomes to guide subsequent recommendations.
Inputs include parameter definitions, allowed values or ranges, constraints, target objectives and any available measurements. Search spaces can combine continuous and discrete parameters. For chemical substances, the README demonstrates label–SMILES mappings through SubstanceParameter, with chemical encodings rather than treating every substance solely as an unrelated category. A Campaign produces batches of parameter configurations as tabular recommendations and accepts corresponding target measurements through add_measurements. The experiments and measurement collection remain separate steps in the documented workflow.
The toolbox supports multiple-target objectives through Pareto optimization or desirability scalarization, alongside active learning, custom surrogate models and transfer learning from related campaigns. Asynchronous campaigns can account for partial measurements and pending experiments, while serialization supports storing BayBE objects and API-wrapper workflows. Backtesting and model-insight tools provide ways to examine optimization settings before or during a campaign. These are documented capabilities, not evidence of suitability for a particular laboratory. Optional features require additional dependency groups, and the project links a known-issues page. Evaluation should therefore check the chosen parameter representation, constraints and recommendation strategy against the intended experimental setting.
Key Features
- Hybrid search spaces combine continuous and discrete parameters, with constraints to exclude unwanted or impossible configurations.
- Chemical encodings through `SubstanceParameter` use substance SMILES; custom categorical encodings can express relationships between categories.
- Target transformations, Pareto objectives and desirability scalarization support target-value specification and multi-target optimization.
- Active learning, custom surrogate models and transfer learning support alternative strategies and incorporation of additional information.
- Asynchronous campaigns handle partial measurements and pending experiments; serialization supports persistence and API-wrapper workflows.
- Backtesting tools compare optimization settings, while model and campaign insights examine behavior and feature importance.
Use Cases
- Suggested evaluation: plan a reaction-condition campaign over solvent identities and process parameters, using measured yield to update successive recommendations.
- Suggested evaluation: explore formulations with limits on mixture components and assess trade-offs between multiple measured properties.
- Suggested evaluation: compare chemical encodings and recommendation settings through backtesting on an existing experimental dataset before selecting a prospective workflow.
- Suggested evaluation: assess asynchronous planning for a campaign where some experiments remain pending while other measurements become available.
How to Use
- Start with the official documentation and the repository README. Follow the documented installation route and identify optional dependencies needed for chemistry, simulation or model insights.
- Define experimental controls using the parameter guide. Specify allowed values or ranges; for substances, prepare the label–SMILES mappings illustrated in the README.
- Build the search space and encode feasibility restrictions using the constraints guide. Check that candidate configurations reflect the intended experimental limits.
- Define measured targets and choose a single-target, Pareto or desirability objective using the objectives guide. Review the documented recommender options before selecting a strategy.
- Create a
Campaign, submit available measurements, and request a batch of recommendations. Conduct those experiments separately, record their target values, and return the results throughadd_measurementsfor the next cycle. - For intended evaluation, compare settings with backtesting and consult the known issues before adopting the workflow.