Bayesian Optimization for Material and Product Optimization

Personal Project — Summer 2025

This project applies Bayesian optimization to three regression problems from the UCI Machine Learning Repository: predicting the critical temperature of superconductors, the compressive strength of concrete mixtures, and wine quality from physicochemical properties. Each notebook follows the same pipeline — data loading and exploratory analysis, then Random Forest and XGBoost models tuned via Bayesian optimization with scikit-optimize.

Beyond hyperparameter tuning, each notebook applies Bayesian optimization a second time to search the input feature space itself, looking for material or mix compositions that maximize the target property — using the same technique for both model tuning and inverse design.

Highlights

  • Three case studies across materials science, civil engineering, and food science
  • Bayesian hyperparameter tuning of Random Forest and XGBoost models with scikit-optimize
  • A second application of Bayesian optimization for inverse feature/design optimization
  • Consistent explore → tune → predict → optimize pipeline across all three datasets

Technologies Applied

PythonJupyter NotebooksScikit-learnScikit-optimizeXGBoostNumPyPandasMatplotlibSeaborn