ND-Pyomo-Cookbook

Chapter 1.0 Getting Started with Pyomo

1.1 Installing a Pyomo/Python Development Environment

1.2 Running Pyomo on Google Colab

1.3 Running Pyomo on the Notre Dame CRC Cluster

1.4 Cross-Platform Installation of Pyomo and Solvers

Chapter 2.0 Linear Programming

2.1 Production Models with Linear Constraints

2.2 Production Model Sensitivity Analysis

2.3 Linear Blending Problem

2.4 Design of a Cold Weather Fuel for a Camping Stove

2.5 Gasoline Blending

2.6 Model Predictive Control of a Double Integrator

Chapter 3.0 Assignment Problems

3.1 Transportation Networks

Chapter 4.0 Scheduling with Disjunctive Constraints

4.1 Introduction to Disjunctive Programming

4.2 Machine Bottleneck

4.3 Job Shop Scheduling

4.4 Maintenance Planning

4.5 Scheduling Multipurpose Batch Processes using State-Task Networks

4.6 Unit Commitment

Chapter 5.0 Simulation

5.1 Response of a First Order System to Step and Square Wave Inputs

5.2 Exothermic CSTR

5.3 Transient Heat Conduction in Various Geometries

Chapter 6.0 Differential-Algebraic Equations

6.1 Unconstrained Scalar Optimization

6.2 Maximizing Concentration of an Intermediate in a Batch Reactor

6.3 Path Planning for a Simple Car

6.4 Soft Landing Apollo 11 on the Moon

Chapter 7.0 Parameter Estimation

7.1 Parameter estimation

Chapter 8.0 Financial Applications

8.1 Obtaining Historical Stock Data

8.2 Consolidating and Charting Stock Data

8.3 Binomial Model for Pricing Options

8.4 MAD Portfolio Optimization

8.5 Real Options

Appendix A. A.0 Style Guide