Skip to content

Repository files navigation

MeCO

Source code for Meta Learning-assisted Constraint Relaxation for Constrained Black-Box Optimization.

This repository contains the MeCO controller, its action-controlled constrained optimizer, CEC2017 constrained benchmark problems, and several baseline black-box optimizers.

Files

  • meco.py: DDQN-based MeCO controller.
  • meco_opt.py: optimizer used by MeCO.
  • constraint_optimization_problem.py: CEC2017 constrained benchmark problems.
  • bbo/: baseline optimizers (SHADE, SHADE_E, SHADE_DEB, SACOBRA, and optional CMAES).
  • leave_one_out.py: leave-one-out training and testing script.

Requirements

Python 3.10+ with:

pip install numpy scipy torch

CMAES additionally requires:

pip install cmaes

Leave-One-Out Experiment

Train on 27 CEC2017 functions and test on one held-out function:

python leave_one_out.py --test-fun 1

Run all 28 held-out settings:

python leave_one_out.py --all-tests

Results are written to outputs/leave_one_out/.

About

No description, website, or topics provided.

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages