Bayesian optimization (BO) is an elegant, data-efficient method of searching an unknown parameter space. It has been demonstrated to quickly converge on solutions in complex search spaces for a wide variety of problems, including optimal controller tuning. This work presents a framework in which BO is used to obtain PID controller parameters which minimize setpoint tracking error for a simulated Van de Vusse reactor. The controllers are augmented to regulate the reactor for any operating conditions within the limitations of safe operation. Furthermore, this framework is capable of producing PID controllers which are tuned real-time to adapt to changing system dynamics. PID control is selected because it is still quite prevalent in many chemical industries, even for systems which exhibit highly nonlinear behavior. The presented framework is directly applicable to PID controlled chemical plants without any change of hardware.
The BO algorithm minimizes the total error of two parallel doublet tests. A Gaussian process (GP) surrogate model with a Matern 5/2 kernel is used to simulate the relationship between PID controller parameters and the resulting error from the two doublet tests. GPy and emukit in Python are employed for modelling the GP and running the BO loop, respectively. BO-tuned PID controllers are shown to exhibit better servo control and disturbance rejection than PID controllers tuned using heuristic methods. Additionally, PID controllers tuned real-time are shown to be robust to variable operating conditions. Using BO to enhance PID controller performance in existing dynamic, nonlinear systems is a low-cost modification to increase operational flexibility and reduce product waste in current processes which employ PID control in non-linear systems.