Optimization Modeling for Chemical Engineers
Volume 2: Worked Solutions and Engineering Interpretation
Preface
This second volume develops modeling judgment through 18 original teaching problems for graduate students in chemical engineering. Six process themes each progress from a guided model, through an extension, to an open-ended engineering challenge. The data are synthetic and internally defined. These problems are not additional exercises or answer keys from the Williams textbook used in Volume 1.
The central question is not only “What is the optimum?” but also “What assumptions make that answer meaningful?” Students should identify the decision, establish the system boundary and units, predict behavior, solve, and independently check the result.
Learning sequence
| Problems | Process theme | New modeling decisions |
|---|---|---|
| 1-3 | Blending | Nominal, box-robust, and budget-robust quality |
| 4-6 | Reactors | Throughput, finite operating menus, and static robust operation |
| 7-9 | Heat recovery | Dispatch, exchanger selection, and shared design across states |
| 10-12 | Batch scheduling | Release times, directed cleaning, and service penalties |
| 13-15 | Hydrogen | Inventory, tank sizing, and design with operational recourse |
| 16-18 | Water reuse | Dilution, contaminant removal, and treatment selection |
Read the data afresh in each problem: the worked instance may change objective terms, information timing, or uncertain parameters. A difference between objectives is meaningful only after those changes are accounted for.
How to work
- Answer Before you code without a solver.
- Formulate the model with variable domains and units. Draw your process boundary.
- Implement the model and inspect termination before loading a solution.
- Complete Check your solution using arithmetic or an independent method.
- Explain one active constraint, one model limitation, and one practical implication.
- Investigate the extension. For the open-ended levels, defend a recommendation rather than treating the reference policy as the only acceptable answer.
The intended prerequisites are material and energy balances, introductory linear programming, basic integer programming, and Python. Volume 1 provides worked practice with those tools. Each theme can also be used independently because its data are repeated where needed.
Suggested assessment
Allocate 35% to formulation and assumptions, 25% to reproducible implementation, 20% to independent verification, and 20% to interpretation. A numerical match without correct units or information timing is not a complete solution. An alternative feasible design may earn full credit when its objective, scope, and tradeoffs are correctly explained.
Scope of optimality
All reference problems use linear or mixed-integer linear Pyomo models solved by HiGHS. Reactor kinetics are evaluated over a finite menu: optimality applies to that menu, not to a continuous nonlinear reactor design. The water problems assume segregated treatment paths and fixed removal fractions. They explain the bilinear terms in a more general pooling problem, but do not claim to solve that unrestricted problem.
The heat problems use fixed-temperature surrogates. The hydrogen problems assume uniform production and withdrawal within each four-hour period. These assumptions are deliberately visible so that students can challenge them. None of the numerical instances is a validated industrial design.
Worked edition and reproducibility
Each worked chapter follows Problem Statement, Model Formulation, Pyomo Implementation, Optimal Solution, and Brief Discussion. Reference solutions are regenerated from the same Python sources that supply the printed model code. There are 18 reproducible Python figures, exported as SVG, embedded-font PDF, and 600 dpi PNG using the lab palette.
Download the complete editable Quarto and Python source. Run ./scripts/build.sh from its root to rebuild the worked HTML/PDF and the separate student PDF. Setup instructions are in README.md. The optimization interpreter is ~/.venvs/optim/bin/python.
The numerical audit checks active constraints, variable bounds, and integrality at a tolerance of 1e-6 in model units. Additional checks include all robust blend corners, independent reactor-mode enumeration, all batch permutations, heat-network investment patterns, water-treatment alternatives, and physical balances. These checks validate the implementation of the stated model; they do not establish that every process assumption is suitable for a real plant.