BoTorch Benchmarks

The Botorch benchmark collection includes synthetic test problems commonly used in Bayesian optimization research.

Single Objective Problems

  • bocode.BoTorch.AugmentedBranin

  • bocode.BoTorch.AugmentedHartmann

  • bocode.BoTorch.AugmentedRosenbrock

  • bocode.BoTorch.Ishigami

  • bocode.BoTorch.Gsobol

  • bocode.BoTorch.Morris

Multi Objective Problems

  • bocode.BoTorch.MOMFBraninCurrin

  • bocode.BoTorch.MOMFPark1

  • bocode.BoTorch.BraninCurrin

  • bocode.BoTorch.DH1

  • bocode.BoTorch.DH2

  • bocode.BoTorch.DH3

  • bocode.BoTorch.DH4

  • bocode.BoTorch.DTLZ1

  • bocode.BoTorch.DTLZ2

  • bocode.BoTorch.DTLZ3

  • bocode.BoTorch.DTLZ4

  • bocode.BoTorch.DTLZ5

  • bocode.BoTorch.DTLZ7

  • bocode.BoTorch.GMM

  • bocode.BoTorch.Penicillin

  • bocode.BoTorch.ToyRobust

  • bocode.BoTorch.VehicleSafety

  • bocode.BoTorch.ZDT1

  • bocode.BoTorch.ZDT2

  • bocode.BoTorch.ZDT3

  • bocode.BoTorch.CarSideImpact

  • bocode.BoTorch.BNH

  • bocode.BoTorch.CONSTR

  • bocode.BoTorch.ConstrainedBraninCurrin

  • bocode.BoTorch.C2DTLZ2

  • bocode.BoTorch.DiscBrake

  • bocode.BoTorch.MW7

  • bocode.BoTorch.OSY

  • bocode.BoTorch.SRN

  • bocode.BoTorch.WeldedBeam

Single Objective Example Usage

import bocode
import torch

# Create a BoTorch benchmark problem
problem = bocode.BoTorch.AugmentedBranin()

# Evaluate at a point
x = torch.Tensor([[0.0] * problem.dim])
values, constraints = problem.evaluate(x)

print(f"AugmentedBranin function value at origin: {values[0]}")

Output:

AugmentedBranin function value at origin: tensor([228.4423])

Multi Objective Example Usage

import bocode
import torch

# Create a BoTorch benchmark problem
problem = bocode.BoTorch.MOMFBraninCurrin()

# Evaluate at a point
x = torch.Tensor([[0.0] * problem.dim])
values, constraints = problem.evaluate(x)

print(f"MOMFBraninCurrin function value at origin: {values[0]}")

Output:

MOMFBraninCurrin function value at origin: tensor([11.8986, -0.7333])