Run the setup_script.sh. This creates a hagpucb environment, and a simulator_env environment. Afterwards, put the MUJOCO key and paths in ./src/setup_env.sh.

To run hagpucb on the swimmer environment, in the ./src/ directory run python optim_client_singular_compare.py. Running it on different environments means changing the arguments at the top of the file.

The relevant code for the metamodel can be found in mujoco_server_GOLD.py. The metamodel code is fairly straightforward. To approximate the hessian, we use the Hessian Vector Product which can be found in the function gen_hvp_vectors.

The core HA-GPUCB code is found in the function build_additive_kernels in optim_client_singular_compare.py. We read the hessians, do some preprocessing, and build cliques based on the hessian. The rest of the code is mostly for performance and optimization reasons.


The code for heterogeneous predator prey can be found in ./src/src/envs/particle/scenarios/hcontinuous_pred_prey_*. The code for the drone delivery task can be found in ./src/src/envs/particle/scenarios/drone_delivery_*.
