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


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.


This package can be installed by cloning this repository:

] add DualDecomposition


Please see examples in ./examples.

Citing this package

  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}


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