In this work, the research motivation is to integrate and deploy the AI based constraint Bayesian optimization to the computationally complex and hard design problem that involves complex engineering domains like CAD and CFD in loop. The constrained is generated by packing the components in the UUV. To, this end we used the following pipeline:
optimal design by only changing nose shape and tail shape:
Drag force @ 1.1 m/s in sea water (density : 1027 Kg/m^3): 67 Newtons
OPtimal design after providing flexibility of extending the nose and tail length along with their shapes:
Drag force @ 1.1 m/s in sea water (density : 1027 Kg/m^3): 36 Newtons
Apart from python-3 (we used python 3.7) you also need to install Docker engine on your machine. We used linux based OS (Ubuntu 18.04) for our experiment, but any OS with python 3.7 should be fine (Let us know if it does not work for you).
For running the code, you need to download two docker container pre-installed with dependencies along with CAD and CFD software.
Once both dockers are ready, we also need to install optimization algorithms - we use GpOPt for this work. Once everything is installed, experiment can be run by cloning the repository and running :
- main_bo.py : To run bayesian optimization with LCB as acquisition function.
If you like our work and want to cite, please use:
Vardhan, Harsh, Peter Volgyesi, and Janos Sztipanovits. "Constrained Bayesian Optimization for Automatic Underwater Vehicle Hull Design." arXiv preprint arXiv:2302.14732 (2023).