DualDecomposition.jl

An algorithmic framework for parallel dual decomposition methods in Julia
Author kibaekkim
Popularity
18 Stars
Updated Last
1 Year Ago
Started In
February 2019

DualDecomposition.jl

Run tests codecov DOI

This package implements an algorithmic framework for parallel dual decomposition methods in Julia. While not aiming to outperforming the decomposition solvers written in a low-level language (e.g., DSP), this package provides the following features that DSP does not provide:

  • This is designed to solve structured MINLP (and thus NLP) too, as long as the objective function is linear or quadratic.
  • One can use any optimization solvers through MathOptInterface.jl.
  • Of course, user does not need to compile any code for parallel solutions with MPI.jl.

Installation

This package can be installed by cloning this repository:

] add DualDecomposition

Examples

Please see examples in ./examples.

Citing this package

@misc{DualDecomposition.jl.0.3.0,
  author       = {Kim, Kibaek and Nakao, Hideaki and Kim, Youngdae and Schanen, Michel and Zhang, Weiqi and Li, Can},
  title        = {{DualDecomposition.jl: Parallel Dual Decomposition in Julia}},
  month        = July,
  year         = 2021,
  doi          = {10.5281/zenodo.5079761},
  version      = {0.3.0},
  publisher    = {Zenodo},
  url          = {https://doi.org/10.5281/zenodo.5079761}
}

Acknowledgements

This material is based upon work supported by the U.S. Department of Energy, Office of Science, under contract number DE-AC02-06CH11357.