Efficient Stochastic Programming in Julia

We present StochasticPrograms.jl, a user-friendly and powerful open-source framework for stochastic programming written in the Julia language. The framework includes both modeling tools and structure-exploiting optimization algorithms. Stochastic programming models can be efficiently formulated usin...

Celý popis

Uloženo v:
Podrobná bibliografie
Hlavní autoři: Biel, Martin, Johansson, Mikael
Médium: Článek
Vydáno: 2019
Témata:
On-line přístup:https://arxiv.org/abs/1909.10451
http://arxiv.org/abs/1909.10451
Tagy: Přidat tag
Žádné tagy, Buďte první, kdo vytvoří štítek k tomuto záznamu!
_version_ 1879173990979731456
author Biel, Martin
Johansson, Mikael
author_browse Biel, Martin
Johansson, Mikael
author_facet Biel, Martin
Johansson, Mikael
author_sort Biel, Martin
building arXiv
collection Acceso abierto
description We present StochasticPrograms.jl, a user-friendly and powerful open-source framework for stochastic programming written in the Julia language. The framework includes both modeling tools and structure-exploiting optimization algorithms. Stochastic programming models can be efficiently formulated using expressive syntax and models can be instantiated, inspected, and analyzed interactively. The framework scales seamlessly to distributed environments. Small instances of a model can be run locally to ensure correctness, while larger instances are automatically distributed in a memory-efficient way onto supercomputers or clouds and solved using parallel optimization algorithms. These structure-exploiting solvers are based on variations of the classical L-shaped and progressive-hedging algorithms. We provide a concise mathematical background for the various tools and constructs available in the framework, along with code listings exemplifying their usage. Both software innovations related to the implementation of the framework and algorithmic innovations related to the structured solvers are highlighted. We conclude by demonstrating strong scaling properties of the distributed algorithms on numerical benchmarks in a multi-node setup.
doi_str_mv 10.1287/ijoc.2022.1158
first_indexed 2026-10-16T00:06:04Z
format Article
fullrecord <oai_dc:dc xmlns:oai_dc="http://www.openarchives.org/OAI/2.0/oai_dc/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.openarchives.org/OAI/2.0/oai_dc/ https://www.openarchives.org/OAI/2.0/oai_dc.xsd"><identifier>arxiv-1909.10451</identifier><datestamp>2022-09-07</datestamp> <dc:title>Efficient Stochastic Programming in Julia</dc:title> <dc:creator>Biel, Martin</dc:creator> <dc:creator>Johansson, Mikael</dc:creator> <dc:subject>Optimization and Control</dc:subject> <dc:subject>Mathematical Software</dc:subject> <dc:subject>90C15, 90C06, 90C90</dc:subject> <dc:description>We present StochasticPrograms.jl, a user-friendly and powerful open-source framework for stochastic programming written in the Julia language. The framework includes both modeling tools and structure-exploiting optimization algorithms. Stochastic programming models can be efficiently formulated using expressive syntax and models can be instantiated, inspected, and analyzed interactively. The framework scales seamlessly to distributed environments. Small instances of a model can be run locally to ensure correctness, while larger instances are automatically distributed in a memory-efficient way onto supercomputers or clouds and solved using parallel optimization algorithms. These structure-exploiting solvers are based on variations of the classical L-shaped and progressive-hedging algorithms. We provide a concise mathematical background for the various tools and constructs available in the framework, along with code listings exemplifying their usage. Both software innovations related to the implementation of the framework and algorithmic innovations related to the structured solvers are highlighted. We conclude by demonstrating strong scaling properties of the distributed algorithms on numerical benchmarks in a multi-node setup. </dc:description> <dc:date>2019-09-23</dc:date> <dc:date>2021-01-12</dc:date> <dc:type>text</dc:type> <dc:identifier>https://arxiv.org/abs/1909.10451</dc:identifier> <dc:identifier>http://arxiv.org/abs/1909.10451</dc:identifier> <dc:identifier>doi:10.1287/ijoc.2022.1158</dc:identifier> </oai_dc:dc>
id arxiv-1909.10451
institution arXiv
last_indexed 2026-10-16T00:06:04Z
publishDate 2019
publishDateRange 2019
publishDateSort 2019
record_format oai_dc
spelling arxiv-1909.104512022-09-07 Efficient Stochastic Programming in Julia Biel, Martin Johansson, Mikael Optimization and Control Mathematical Software 90C15, 90C06, 90C90 We present StochasticPrograms.jl, a user-friendly and powerful open-source framework for stochastic programming written in the Julia language. The framework includes both modeling tools and structure-exploiting optimization algorithms. Stochastic programming models can be efficiently formulated using expressive syntax and models can be instantiated, inspected, and analyzed interactively. The framework scales seamlessly to distributed environments. Small instances of a model can be run locally to ensure correctness, while larger instances are automatically distributed in a memory-efficient way onto supercomputers or clouds and solved using parallel optimization algorithms. These structure-exploiting solvers are based on variations of the classical L-shaped and progressive-hedging algorithms. We provide a concise mathematical background for the various tools and constructs available in the framework, along with code listings exemplifying their usage. Both software innovations related to the implementation of the framework and algorithmic innovations related to the structured solvers are highlighted. We conclude by demonstrating strong scaling properties of the distributed algorithms on numerical benchmarks in a multi-node setup. 2019-09-23 2021-01-12 text https://arxiv.org/abs/1909.10451 http://arxiv.org/abs/1909.10451 doi:10.1287/ijoc.2022.1158
spellingShingle Optimization and Control
Mathematical Software
90C15, 90C06, 90C90
Biel, Martin
Johansson, Mikael
Efficient Stochastic Programming in Julia
title Efficient Stochastic Programming in Julia
title_full Efficient Stochastic Programming in Julia
title_fullStr Efficient Stochastic Programming in Julia
title_full_unstemmed Efficient Stochastic Programming in Julia
title_short Efficient Stochastic Programming in Julia
title_sort efficient stochastic programming in julia
topic Optimization and Control
Mathematical Software
90C15, 90C06, 90C90
url https://arxiv.org/abs/1909.10451
http://arxiv.org/abs/1909.10451
work_keys_str_mv AT bielmartin efficientstochasticprogramminginjulia
AT johanssonmikael efficientstochasticprogramminginjulia