The code for the paper "Efficient Distributionally Robust Bayesian Optimization with Worst-case Sensitivity".
- Linux machine (experiments were run on Ubuntu 18.04.5 LTS and Ubuntu 20.04.3 LTS)
- Python 3.7
In the main directory, run the following command to install the required libraries.
pip install -r requirements.txt
The experiment scripts are found in the experiments
directory, and may be run with the following commands in the main directory. Change the desired distribution distances and acquisitions within the files using the divergences
and acquisitions
variables.
Random functions from GP prior:
python experiments/rand_func_bigexp.py with default
Plant maximum leaf area:
python experiments/plant_bigexp.py with default
Wind power dataset:
python experiments/wind_bigexp.py with default
COVID-19 test allocation:
python experiments/covid_bigexp.py with default
Computation time:
python experiments/timing.py with default
python experiments/pareto.py with default
The plotting scripts are found in the metrics
directory, and may be run with the following commands in the main directory. Each script requires that the corresponding experiments (with seed
= 0, 1, ..., num_seeds
for the robust regret experiments) have completed. The plots will then be found in the runs
directory. Change the desired distribution distances and acquisitions within the files using the divergences
and acquisitions
variables.
Random functions from GP prior:
python metrics/rand_func_results.py with default
Plant maximum leaf area:
python metrics/plant_results.py with default
Wind power dataset:
python metrics/wind_results.py with default
COVID-19 test allocation:
python metrics/covid_results.py with default
Computation time:
python metrics/timing_results.py with default
python metrics/pareto_results.py with default