ND Pyomo Cookbook#

ND Pyomo Cookbook is a collection of notebooks showing the use Pyomo to solve modeling and optimization problems. With Pyomo, one can embed within Python an optimization model consisting of decision variables, constraints, and an optimization objective. Pyomo includes a rich set of features enables the modeling and analysis of complex systems.

The notebooks in this collection were developed for instructional purposes at Notre Dame. Originally developed using the Anaconda distribution of Python, the notebooks have been updated to open directly Google Colaboratory where they can be run using only a browser window.

This collection was originally developed as a followup to PyomoFest at Notre Dame that was held June 5-7, 2018. Notes distributed at the event are included in this repository: agenda, slides and exercises

September, 2022 Update. This repository has been revised using JupyterBook. Some notebooks have been updated with more consistent use of Pyomo. Where appropriate, constraints, objectives, and expressions have been rewritten using the Pyomo decorator syntax. New notebooks include 5.4 Diffusion and Adsorption in Polymers.

1.0 Getting Started with Pyomo#

2.0 Linear Programming#

3.0 Assignment Problems#

4.0 Scheduling with Disjunctive Constraints#

5.0 Simulation#

6.0 Differential-Algebraic Equations#

7.0 Parameter Estimation#

8.0 Financial Applications#

9.0 Style Guide#

10.0 Index#