Bayesian optimisation is an iterative approach for identifying the local optima of 'black-box' functions, where the functional form is unknown or cannot be expressed analytically. It relies on constructing a probabilistic surrogate model, usually a Gaussian Process (GP) , to approximate the unknown function. An acquisition function, using the GP model's predicted mean and uncertainty, selects the next experiments to evaluate based on previously observed data. The acquisition function balances exploration and exploitation, simultaneously enabling efficient exploration of uncertain regions in the parameter space whilst exploiting promising regions, allowing the algorithm to converge towards local optima. Frazier provides additional background on a more comprehensive mathematical treatment of Bayesian optimisation. In this work, we used the multi-objective acquisition functions: q-NParEgo , Thompson sampling with hypervolume improvement (TS-HVI) , and q-Noisy Expected Hypervolume Improvement (q-NEHVI) . q-NParEgo simplifies the multi-objective problem by combining the multiple objectives into a single optimisation objective through various scalarisations. TS-HVI provides a scalable approximation of EHVI . q-NEHVI is a more efficient and noise-robust method of evaluating EHVI, with time and memory space complexity scaling polynomially instead of exponentially . We used PyTorch , GPyTorch , and BoTorch to build, initialise, test, benchmark, and apply all of our GP surrogate models and acquisition functions.