skip to main content
DOE PAGES title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: pyomo.dae: a modeling and automatic discretization framework for optimization with differential and algebraic equations

Abstract

We describe pyomo.dae, an open source Python-based modeling framework that enables high-level abstract specification of optimization problems with differential and algebraic equations. The pyomo.dae framework is integrated with the Pyomo open source algebraic modeling language, and is available at http://www.pyomo.org. One key feature of pyomo.dae is that it does not restrict users to standard, predefined forms of differential equations, providing a high degree of modeling flexibility and the ability to express constraints that cannot be easily specified in other modeling frameworks. Other key features of pyomo.dae are the ability to specify optimization problems with high-order differential equations and partial differential equations, defined on restricted domain types, and the ability to automatically transform high-level abstract models into finite-dimensional algebraic problems that can be solved with off-the-shelf solvers. Moreover, pyomo.dae users can leverage existing capabilities of Pyomo to embed differential equation models within stochastic and integer programming models and mathematical programs with equilibrium constraint formulations. Collectively, these features enable the exploration of new modeling concepts, discretization schemes, and the benchmarking of state-of-the-art optimization solvers.

Authors:
 [1];  [2];  [2];  [3];  [1]
  1. Carnegie Mellon Univ., Pittsburgh, PA (United States). Dept. of Chemical Engineering
  2. Sandia National Lab. (SNL-NM), Albuquerque, NM (United States). Center for Computing Research
  3. Univ. of Wisconsin, Madison, WI (United States). Dept. of Chemical and Biological Engineering
Publication Date:
Research Org.:
Sandia National Lab. (SNL-NM), Albuquerque, NM (United States)
Sponsoring Org.:
USDOE Office of Science (SC), Advanced Scientific Computing Research (ASCR) (SC-21)
OSTI Identifier:
1421609
Report Number(s):
SAND-2017-12346J
Journal ID: ISSN 1867-2949; PII: 127
Grant/Contract Number:  
AC04-94AL85000; KJ0401000; NA0003525
Resource Type:
Accepted Manuscript
Journal Name:
Mathematical Programming Computation
Additional Journal Information:
Journal Volume: 10; Journal Issue: 2; Journal ID: ISSN 1867-2949
Publisher:
Springer
Country of Publication:
United States
Language:
English
Subject:
97 MATHEMATICS AND COMPUTING; Dynamic optimization; Mathematical modeling; Algebraic modeling language; DAE constrained optimization; PDE constrained optimization

Citation Formats

Nicholson, Bethany, Siirola, John D., Watson, Jean-Paul, Zavala, Victor M., and Biegler, Lorenz T. pyomo.dae: a modeling and automatic discretization framework for optimization with differential and algebraic equations. United States: N. p., 2017. Web. doi:10.1007/s12532-017-0127-0.
Nicholson, Bethany, Siirola, John D., Watson, Jean-Paul, Zavala, Victor M., & Biegler, Lorenz T. pyomo.dae: a modeling and automatic discretization framework for optimization with differential and algebraic equations. United States. doi:10.1007/s12532-017-0127-0.
Nicholson, Bethany, Siirola, John D., Watson, Jean-Paul, Zavala, Victor M., and Biegler, Lorenz T. Wed . "pyomo.dae: a modeling and automatic discretization framework for optimization with differential and algebraic equations". United States. doi:10.1007/s12532-017-0127-0. https://www.osti.gov/servlets/purl/1421609.
@article{osti_1421609,
title = {pyomo.dae: a modeling and automatic discretization framework for optimization with differential and algebraic equations},
author = {Nicholson, Bethany and Siirola, John D. and Watson, Jean-Paul and Zavala, Victor M. and Biegler, Lorenz T.},
abstractNote = {We describe pyomo.dae, an open source Python-based modeling framework that enables high-level abstract specification of optimization problems with differential and algebraic equations. The pyomo.dae framework is integrated with the Pyomo open source algebraic modeling language, and is available at http://www.pyomo.org. One key feature of pyomo.dae is that it does not restrict users to standard, predefined forms of differential equations, providing a high degree of modeling flexibility and the ability to express constraints that cannot be easily specified in other modeling frameworks. Other key features of pyomo.dae are the ability to specify optimization problems with high-order differential equations and partial differential equations, defined on restricted domain types, and the ability to automatically transform high-level abstract models into finite-dimensional algebraic problems that can be solved with off-the-shelf solvers. Moreover, pyomo.dae users can leverage existing capabilities of Pyomo to embed differential equation models within stochastic and integer programming models and mathematical programs with equilibrium constraint formulations. Collectively, these features enable the exploration of new modeling concepts, discretization schemes, and the benchmarking of state-of-the-art optimization solvers.},
doi = {10.1007/s12532-017-0127-0},
journal = {Mathematical Programming Computation},
number = 2,
volume = 10,
place = {United States},
year = {2017},
month = {12}
}

Journal Article:
Free Publicly Available Full Text
Publisher's Version of Record

Figures / Tables:

Table 1 Table 1: Capabilities of existing tools for specifying and solving optimization problems with differential equations.

Save / Share:

Works referenced in this record:

Interior-point decomposition approaches for parallel solution of large-scale nonlinear parameter estimation problems
journal, October 2008

  • Zavala, Victor M.; Laird, Carl D.; Biegler, Lorenz T.
  • Chemical Engineering Science, Vol. 63, Issue 19
  • DOI: 10.1016/j.ces.2007.05.022

TACO: a toolkit for AMPL control optimization
journal, April 2013


Stochastic optimal control model for natural gas networks
journal, May 2014


Efficient parallel solution of large-scale nonlinear dynamic optimization problems
journal, April 2014

  • Word, Daniel P.; Kang, Jia; Akesson, Johan
  • Computational Optimization and Applications, Vol. 59, Issue 3
  • DOI: 10.1007/s10589-014-9651-2

Computing in Operations Research Using Julia
journal, April 2015


GPOPS-II: A MATLAB Software for Solving Multiple-Phase Optimal Control Problems Using hp-Adaptive Gaussian Quadrature Collocation Methods and Sparse Nonlinear Programming
journal, October 2014

  • Patterson, Michael A.; Rao, Anil V.
  • ACM Transactions on Mathematical Software, Vol. 41, Issue 1
  • DOI: 10.1145/2558904

Pyomo: modeling and solving mathematical programs in Python
journal, August 2011

  • Hart, William E.; Watson, Jean-Paul; Woodruff, David L.
  • Mathematical Programming Computation, Vol. 3, Issue 3
  • DOI: 10.1007/s12532-011-0026-8

Framework in PYOMO for the assessment and implementation of (as)NMPC controllers
journal, September 2016


A transformation technique for optimal control problems with a state variable inequality constraint
journal, October 1969


Modeling and optimization with Optimica and JModelica.org—Languages and tools for solving large-scale dynamic optimization problems
journal, November 2010


A Multiple Shooting Algorithm for Direct Solution of Optimal Control Problems *
journal, July 1984


ACADO toolkit-An open-source framework for automatic control and dynamic optimization
journal, May 2010

  • Houska, Boris; Ferreau, Hans Joachim; Diehl, Moritz
  • Optimal Control Applications and Methods, Vol. 32, Issue 3
  • DOI: 10.1002/oca.939

SUNDIALS: Suite of nonlinear and differential/algebraic equation solvers
journal, September 2005

  • Hindmarsh, Alan C.; Brown, Peter N.; Grant, Keith E.
  • ACM Transactions on Mathematical Software, Vol. 31, Issue 3
  • DOI: 10.1145/1089014.1089020

    Figures/Tables have been extracted from DOE-funded journal article accepted manuscripts.