Skip to content

About

Hybrid Bayesian optimization + direct search (MADS) for multi-objective ML model selection; code for the LION 2024 paper.

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Latest commit

 

History

3 Commits

Folders and files

Repository files navigation

Algorithm Switching for Multiobjective Predictions

Code for Li, Z. & Kannan, A. "Algorithm Switching for Multiobjective Predictions in Renewable Energy Markets." Learning and Intelligent Optimization (LION 2024), Springer, pp. 233–248, 2025.

A hybrid model-selection method that starts with Bayesian optimization (Kriging surrogate) and switches to direct search (MADS) to tune ML models against several objectives at once: prediction error, bias (MBE / DPD) and model complexity.

Demos

Script Model Objectives
demo_1_ResNet.py PyTorch ResNet (ResNet_model.py) regression: MSE, MBE, weight density · classification: error, weight density, DPD
demo_2_XGBoost.py XGBoost same objectives, complexity measured by tree depth
demo_3_KNN.py k-nearest neighbours same objectives

Each demo compares weighted BO, weighted MADS and the joint (switching) method, and reports the hypervolume of the resulting Pareto front. Objective functions are in Metrics.py. The ResNet demo uses CUDA by default and takes about 5 hours.

Requirements

Python 3 with numpy, pandas, scikit-learn, PyTorch, torchmetrics, XGBoost, SMT, PyNomad and pygmo.

Data

The demos read data/Berlin_wind_multiclass.csv (or data/Stuttgart_solar_regression.csv). The Berlin / Stuttgart solar and wind datasets used in the paper are not included in this repository.

About

Hybrid Bayesian optimization + direct search (MADS) for multi-objective ML model selection; code for the LION 2024 paper.

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages