
About This Project
A capstone project that searches for the maxima of eight unknown black-box functions, queried one input at a time over several weeks. The approach fits an ensemble of surrogate models (Ridge, KNN, Random Forest, SVR, Gradient Boosting, Gaussian Processes, and PyTorch MLPs), validates each with leave-one-out cross-validation, and only trusts models that beat the baseline when choosing the next query. The strategy adapts per function: exploitation when a model has clearly earned trust, consensus across top performers when they disagree, and informed exploration when no model is reliable. The setting mirrors real-world problems in drug discovery and engineering design, where each evaluation is expensive.
Key Features
- Surrogate ensemble across classical ML and PyTorch models
- Validate-then-trust framework using LOOCV
- Adaptive exploration vs exploitation per function
Technologies
Black-Box OptimisationPyTorchScikit-LearnPython