Skip to main content

Sampling-based Pareto front Refinement via Efficient Adaptive Diffusion

Project description

SPREAD: Sampling-based Pareto front Refinement via Efficient Adaptive Diffusion

SPREAD is a novel sampling-based approach for multi-objective optimization that leverages diffusion models to efficiently refine and generate well-spread Pareto front approximations. It combines the expressiveness of diffusion models with multi-objective optimization principles to achieve both high convergence to the Pareto front and excellent diversity across the objective space. SPREAD demonstrates competitive performance against state-of-the-art methods while providing a flexible framework for different optimization contexts.

🔬 Experiments

All experiment code is contained in the /experiments directory:

  • Online setting: /experiments/spread/
  • Offline setting: /experiments/spread_offline/
  • Bayesian setting: /experiments/spread_bayesian/

The following Jupyter notebooks reproduce the plots shown in our paper:

  • /experiments/spread/notebook_online_spread.ipynb
  • /experiments/spread_bayesian/notebook_bayesian_spread.ipynb

⚙️ Environment Setup

Each experiment setting comes with its own environment file located in the corresponding folder:

  • Online setting: experiments/spread/spread.yml
  • Offline setting: experiments/spread_offline/spread_off.yml
  • Bayesian setting: experiments/spread_bayesian/spread_bay.yml

To create the environment for a given setting, run:

conda env create -f experiments/<folder>/<env_name>.yml
conda activate <env_name>

For example, to run the online experiments:

conda env create -f experiments/spread/spread.yml
conda activate spread

The offline experiments require installing Off-MOO-Bench from the authors’ public repository: https://github.com/lamda-bbo/offline-moo. The datasets should be downloaded into the folder: experiments/spread_offline/offline_moo/data/.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

moospread-0.1.0.tar.gz (84.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

moospread-0.1.0-py3-none-any.whl (103.3 kB view details)

Uploaded Python 3

File details

Details for the file moospread-0.1.0.tar.gz.

File metadata

  • Download URL: moospread-0.1.0.tar.gz
  • Upload date:
  • Size: 84.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.13

File hashes

Hashes for moospread-0.1.0.tar.gz
Algorithm Hash digest
SHA256 2067ae5ffdf5a55bf2d2b07f0e95348203effe7e02d0e2f8276c63bb631f8504
MD5 b9f022880ce1d1dec1a9eea4e1a41535
BLAKE2b-256 7b4f88f3588bb384ec3bdb40767b10e06919cddcff911a4fb9f0f0ca758490ea

See more details on using hashes here.

File details

Details for the file moospread-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: moospread-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 103.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.13

File hashes

Hashes for moospread-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 17ea07a6c878bc31b20116694d1c4a74f184fc46dc6929c2a2cc3cc88b732761
MD5 50658beedb1b05bfecb16900b9c660f9
BLAKE2b-256 c9a174455334d11ab1ba8a44bef7519beb28917c36ae2c49a1c335c717e280d2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page