You are here

Optimization

Optimization for Chemical Engineering Education

Use this page to plan a course, add an optimization assignment, learn a method, choose software, or find a chemical engineering case. The resources connect mathematical formulation with process models, data, computation, and engineering decisions.

Find what you need

Start here

Resource key

  • Best use shows where a resource fits.
  • Audience identifies instructors, learners, or both.
  • Level shows the background knowledge needed.
  • Time gives an estimated workload.
  • Scale describes course scope, model size, or setup effort.
  • Runs where distinguishes browser, desktop, local server, and hosted services.
  • Data location shows whether code and prompts stay on a device or go to a service.
  • Access covers cost, login, and reuse terms.
  • Watch for flags limits before assigning a resource.

For instructors

Choose the size of your change

Ways to add optimization learning to a course
Change Time What to add Good starting point
One class 30 to 75 minutes Turn an engineering statement into variables, objective, constraints, bounds, and units Notre Dame Pyomo Cookbook
One assignment One to two weeks Build a model, verify it, solve it, and explain the decision Ready-to-adapt assignments
Short module Three to six classes Formulation, linear or nonlinear methods, solver evidence, and sensitivity BYU Design Optimization
Course redesign One term Modeling, algorithms, chemical engineering cases, uncertainty, computation, and AI-aware assessment Course models below

Learning goals for a current optimization course

Outcomes that connect mathematical models with engineering decisions
Area Students should be able to Evidence
Problem definition State the decision, objective, alternatives, constraints, data, uncertainty, and acceptance criteria Plain-language problem statement
Formulation Define sets, variables, units, bounds, equations, objective terms, and assumptions Symbol table and mathematical model
Problem classification Recognize linear, mixed-integer, nonlinear, convex, nonconvex, dynamic, stochastic, and multiobjective structure Classification with reasons
Method selection Match problem structure, scale, accuracy, and available software to a suitable method or solver Solver choice and alternative
Numerical work Use scaling, bounds, initialization, tolerances, derivatives, relaxations, and decomposition appropriately Solver log and numerical checks
Verification Check feasibility, units, balances, objective calculations, termination, optimality evidence, and reproducibility Independent calculations and test cases
Decision analysis Interpret sensitivity, tradeoffs, uncertainty, economics, safety, and limits Engineering recommendation and scenarios
Responsible tools Use code, solvers, GenAI, and agents with clear records, privacy controls, and human review Source record, AI-use record, and audit trail

A staged course plan

Example progression from formulation to decision support
Stage Core topics Student activity Useful resource
1. Formulate Variables, units, bounds, objective, constraints, assumptions, and degrees of freedom Write and hand-check a blending or production model ND Pyomo Cookbook
2. Linear decisions LP, duality, sensitivity, network models, and integer choices Compare a hand solution with a solver and explain active constraints Hands-On Mathematical Optimization
3. Nonlinear models Gradients, KKT conditions, local solutions, scaling, initialization, and constraints Optimize a reactor or process design from several starting points BYU Design Optimization
4. Convexity and global search Convex models, relaxations, branch and bound, global bounds, and nonconvexity Compare local and global evidence on a small problem Convex Optimization and EAGO
5. Process systems Flowsheets, thermodynamics, recycle, scheduling, design, and operations Optimize one process and audit physical feasibility IDAES examples
6. Data and uncertainty Parameter estimation, design of experiments, surrogates, uncertainty, and multiple objectives Use data to update a model or compare tradeoffs Pyomo.DoE
7. Dynamic decisions Optimal control, dynamic optimization, MPC, and state estimation Choose a trajectory or operating policy under constraints BYU Dynamic Optimization
8. Integrated project Safety, economics, communication, reproducibility, and responsible tool use Defend the model, solution evidence, and recommendation Chemical engineering cases

Adaptable course outlines

Starting outlines for an undergraduate module and a graduate course
Format Suggested sequence Chemical engineering work Assessment evidence
Undergraduate module
Four to six classes
Problem statements and formulations, LP and MILP, smooth NLP, solver output, sensitivity, and engineering decisions Blending or production planning followed by a constrained reactor or heat-integration problem Hand-checked formulation, reproducible notebook, solver record, sensitivity result, and short recommendation
Graduate course
One term
Formulation, LP and MILP, NLP, convexity, global methods, process systems, dynamic optimization, uncertainty, design of experiments, multiple objectives, and agentic workflows Reactor, separations, flowsheet, scheduling, real-time optimization, estimation, or MPC cases that build toward an integrated project Problem sets, code and model audits, method comparisons, project milestones, reproducibility package, presentation, and oral defense

Ready-to-adapt assignments

Assignments with clear student outputs
Assignment Time Suggested source What students submit
Gasoline blending One week
Introductory
ND Pyomo Cookbook Formulation, unit and balance checks, solution, active constraints, and sensitivity explanation
Refinery planning Two weeks
Intermediate
MO Book refinery notebook Baseline model, one planning extension, scenario comparison, and decision recommendation
Reactor optimization One to two weeks
Intermediate
Van de Vusse reactor assignment Model, bounds, multiple initializations, constraint residuals, and physical interpretation
Heat exchanger network synthesis One to two weeks
Advanced
GAMS SYNHEAT model Stream and utility data audit, temperature-approach checks, formulation map, solver evidence, network diagram, and comparison with a simple target
Distillation sequence synthesis Two weeks
Advanced
GAMS NSHARPX or MINLPHIX Sequence decisions, correlation and property assumptions, mass and energy checks, cost comparison, solver record, and limits of the legacy model
Flowsheet optimization Two to four weeks
Advanced
IDAES HDA flowsheet Converged base case, objective and constraints, solver record, sensitivity, and limitations
Water treatment design Three to five weeks
Advanced
WaterTAP flowsheets Treatment goals, cost model, technology choices, uncertainty cases, and decision tradeoffs
Model-based design of experiments Two to three weeks
Advanced
Notre Dame reaction MBDoE Candidate experiments, information measure, noise assumptions, selected design, and limitations
Real-time optimization study Two to three weeks
Advanced
Notre Dame process operations notebooks Steady-state target, dynamic or estimator context, update policy, disturbance test, constraint checks, and explanation of how the optimizer and controller interact
Audit an AI-generated formulation One week
Intermediate
GenAI guidance below Original prompt, generated model, error log, corrected model, solver checks, and explanation of each correction
Optimization agent project Three to six weeks
Advanced
OptiGuide or an instructor-built tool wrapper Verified base model, allowed tools, action log, test set, failure analysis, cost record, oral defense, and compliance with repository use restrictions

For learners

A path from first formulation to a checked process optimization project
Step Start here What to do Result
1. Learn formulation ND Pyomo Cookbook Write a small model in words and mathematics before coding it One to two weeks
Checked LP or NLP formulation
2. Learn core methods BYU Design Optimization or MIT OpenCourseWare Study linear, nonlinear, constrained, discrete, and numerical methods Three to six weeks
Worked problems and solver comparisons
3. Use a modeling tool Modeling tools below Implement the same small problem in one tool and inspect solver output One week
Reproducible model
4. Add process detail Chemical engineering cases Add balances, properties, kinetics, equipment limits, or operating choices Two to four weeks
Physically checked case
5. Complete a project Assignment ideas Compare a baseline, verify feasibility, test uncertainty, and explain the decision Three to six weeks
Model, evidence, and recommendation

Optimization problem workflow

  1. State the engineering decision and what a useful answer would change.
  2. List sets, indices, inputs, decision variables, units, bounds, and uncertainty.
  3. Write the objective and every constraint in words before writing equations or code.
  4. Count degrees of freedom and check balances, signs, units, domains, and physical limits.
  5. Classify the model and identify convexity, discreteness, dynamics, nonsmooth terms, and nonlinearity.
  6. Solve a small or simplified case by hand or with an independent method.
  7. Choose software and a solver that support the problem class.
  8. Inspect termination, feasibility, residuals, active constraints, optimality evidence, and solution sensitivity.
  9. Try alternative initial points, bounds, data, and scenarios where the method requires them.
  10. Explain the engineering decision, uncertainty, safety implications, and known limits.

Courses, books, and teaching materials

Course models

Courses that instructors can adopt or adapt
Resource Audience and level What is included Best use Access and limits
Design Optimization
Brigham Young University
Instructor and learner
Upper undergraduate or graduate
Syllabus, course schedule, Python and MATLAB examples, linear and nonlinear methods, discrete decisions, case studies, activities, and projects Full engineering optimization course Free online. Check individual downloads for reuse terms.
Optimization for Decision Science
University of Notre Dame
Instructor and learner
Upper undergraduate or graduate
Open Jupyter Book with formulation, linear and nonlinear models, Pyomo, network models, scheduling, and assignments Notebook-centered course and self-study Free online. Check the repository for current code and license details.
Notre Dame Pyomo Cookbook Instructor and learner
Introductory to advanced
Notebooks on blending, production, scheduling, estimation, reactors, control, and many mathematical programming patterns Ready examples and assignments Text is CC BY-NC-ND and code is MIT. Run older notebooks before class.
Process Optimization
LearnCHE and McMaster
Instructor and learner
Upper undergraduate
Archived chemical engineering course with lessons, assignments, solutions, and process examples Course structure and legacy assignments Free archive from 2014. Review software and links before use. Reuse terms vary.
Optimization Methods
MIT OpenCourseWare
Instructor and learner
Advanced undergraduate or graduate
Lecture notes, assignments, exams, linear and nonlinear methods, networks, dynamic programming, and integer optimization Methods course and problem sets Free under MIT OpenCourseWare terms. Examples are not chemical engineering specific.
Computational Optimization Open Textbook
Cornell University
Instructor and learner
Intermediate to advanced
Student-contributed chapters on algorithms, model classes, and applications Topic reference and student reading Open to read. Depth and style vary, so instructors should review assigned pages.

Books and open references

References for formulation, methods, and engineering applications
Resource and author Level and publication Topics and best use Access and limits
Engineering Design Optimization
Martins and Ning
Advanced undergraduate or graduate
2022
Theory, algorithms, multidisciplinary design, examples, code, and data Free to read online with copyright retained. The printed book is commercial.
Hands-On Mathematical Optimization with Python
Postek, Zocca, Gromicho, and Kantor
Introductory to intermediate
2025
Jupyter notebooks on LP, MIP, networks, scheduling, blending, refinery planning, and uncertainty Notebook code is MIT licensed. The printed book is sold separately.
Convex Optimization
Boyd and Vandenberghe
Advanced or graduate
2004
Convex analysis, duality, modeling, algorithms, and exercises Free to read online with copyright retained. Not chemical engineering specific.
Engineering Optimization: Applications, Methods, and Analysis
Rhinehart
Upper undergraduate or graduate
2018
Engineering applications, formulation, numerical methods, and analysis Commercial textbook. Confirm student cost and availability.
Design Optimization Book Chapters
Hedengren
Upper undergraduate or graduate
Living online chapters
Engineering examples and chapters aligned with the BYU course Free online. Check rights for any redistribution.
Engineering Optimization
Rao
Intermediate to advanced
Fifth edition, 2019
Broad methods reference with engineering applications Commercial publisher access.
Optimization of Chemical Processes
Edgar, Himmelblau, and Lasdon
Advanced chemical engineering
Second edition, 2001
Chemical process formulation, nonlinear methods, process design, and operations Free 25.5 MB CACHE archive. Check copyright and redistribution terms before modifying or reposting it. Files and software are legacy.

Match the problem to a method

A first map from model structure to teaching methods and software
Problem type Typical chemical engineering use What to teach Possible tools Watch for
LP Blending, production planning, allocation, and network flow Linearity, active constraints, dual values, and sensitivity HiGHS through SciPy, SCIP, Gurobi, GAMS, AMPL, Pyomo, or JuMP Incorrect units, missing bounds, and interpreting duals after model changes
MILP Scheduling, equipment selection, process synthesis, and logistics Binary decisions, formulations, relaxations, branch and bound, and gap HiGHS, SCIP, OR-Tools, Gurobi, GAMS, AMPL, Pyomo, or JuMP Weak big-M values, symmetry, long solve times, and accepting a solution without a gap
Smooth NLP Reactor design, parameter estimation, economics, and continuous process design Gradients, KKT conditions, local solutions, scaling, and initialization SciPy, Ipopt, Knitro, CONOPT, CasADi, GEKKO, GAMS, Pyomo, or JuMP Local optima, infeasible starts, poor scaling, and incorrect derivatives
Nonconvex NLP or MINLP Phase equilibrium, process synthesis, pooling, and rigorous flowsheets Convex relaxations, bounds, global search, and valid termination claims BARON, Couenne, EAGO, SCIP for supported models, Gurobi for supported structures, or APOPT Local solutions presented as global, loose bounds, discontinuities, and high computation
Dynamic optimization Batch operation, grade transition, startup, energy use, and optimal control Discretization, path constraints, controls, states, estimation, and time grids GEKKO, CasADi, Pyomo.DAE, JuMP ecosystem, or IDAES Discretization error, initialization, stiffness, and hidden infeasibility
Stochastic or robust optimization Planning under uncertain demand, price, feed, kinetics, or reliability Scenarios, recourse, risk measures, robustness, and value of information Pyomo, JuMP, GAMS, AMPL, or specialized packages Unsupported distributions, too few scenarios, and confusing robustness with probability
Multiobjective optimization Cost, emissions, safety, water, energy, and product quality tradeoffs Pareto sets, scaling, preferences, and decision support pymoo, Pyomo, JuMP, GAMS, or custom methods Arbitrary weights, incomparable units, and claiming one solution is best without preferences
Derivative-free optimization Expensive simulators, laboratory experiments, nonsmooth models, and black-box tuning Budgets, noise, exploration, repeatability, and benchmark comparisons pymoo, SciPy, commercial tools, or specialized libraries No optimality proof, stochastic variation, high evaluation cost, and unsafe experiments

The NEOS Guide explains common problem types and algorithms. The PLATO Optimization Software Guide helps compare software, test results, and problem classes.

Modeling tools and solvers

Modeling languages, frameworks, and numerical libraries

Tools for expressing optimization models and connecting to solvers
Tool Teaching use Runs where and data location Access and limits
AMPL Readable algebraic models for LP, MIP, NLP, and many solver backends Desktop, notebook, or hosted services
Data location depends on the chosen setup
Commercial with free learning options. The Community Edition supports learning, open projects, and noncommercial prototyping. It has no model-size limits with selected open solvers, needs internet for its cloud license, and does not expire. Commercial solver trials last 30 days. AMPL for Courses gives approved classes a time-limited bundle with additional solvers.
GAMS Algebraic modeling, large model library, and broad solver access Desktop, server, or cloud
Data location depends on deployment
Commercial. Free personal and academic options differ in eligibility and solver access. Some have no model-size limits.
Pyomo Python models for linear, integer, nonlinear, dynamic, stochastic, and other optimization Local Python, notebook, server, or cloud BSD. Solvers are installed and licensed separately.
JuMP Julia algebraic modeling with strong tutorials and solver interfaces Local Julia, notebook, server, or cloud MPL-2.0. Students need Julia and a compatible solver.
CasADi Algorithmic differentiation, nonlinear optimization, optimal control, and dynamic models Local Python, MATLAB, or C++ LGPL. CasADi is a framework, not a complete solver. Advanced users must choose and configure a solver.
GEKKO Algebraic and dynamic optimization, estimation, control, and engineering models Python with hosted or local solving MIT. Remote mode sends a model to a service. Use GEKKO(remote=False) when work must stay local.
CVXPY Teaching convex modeling and disciplined convex programming in Python Local Python or notebook Apache 2.0. Models must follow supported curvature rules. It is not a general nonconvex modeling tool.
SciPy.optimize Direct Python exercises in local and constrained minimization, least squares, roots, linear programming, mixed-integer linear programming, and derivative-free methods Local Python or notebook
Data stay local unless the notebook is hosted
BSD-3-Clause. It is a numerical library, not an algebraic modeling language. Capabilities differ by method. Check scaling, starts, repeatability, status, and whether a result is local.
Google OR-Tools Routing, scheduling, assignment, network flow, constraint programming, LP, and MIP Local Python, C++, Java, or C# Apache 2.0. Strong for discrete decisions and operations research. CP-SAT requires integer variables and coefficients. It is not a general smooth NLP tool.

Solvers, solver collections, and numerical support

Tools that solve optimization models or support their numerical linear algebra
Tool Problem classes Runs where and data location Access and limits
HiGHS LP, MIP, and QP Local library, command line, Python, Julia, SciPy, and other interfaces MIT. Good open default for linear and mixed-integer teaching. SciPy uses HiGHS in linprog and milp.
SCIP and PySCIPOpt MIP, constraint integer programming, and supported bounded MINLP models Local C library, command line, Python wrapper, and modeling-system interfaces Apache 2.0 for current releases. PySCIPOpt can be installed with pip. Global claims require supported bounded models, suitable tolerances, and a completed solve.
Ipopt Large smooth constrained NLP Local library through many modeling tools EPL-2.0. Finds a local solution and does not prove a global optimum for nonconvex models.
BARON Deterministic global NLP and MINLP Local through supported modeling systems or hosted through NEOS Proprietary with paid academic licensing. The unlicensed local mode is limited to 10 variables, 10 constraints, and 50 nonlinear operations. Separate modeling-system licenses may be needed. NEOS receives the submitted model.
Bonmin MINLP with exact methods for convex models and heuristic use on nonconvex models Local library and modeling-system interfaces EPL-1.0. Open source. Installation, documentation, and compiled dependencies are legacy.
Couenne Global optimization for factorable nonconvex MINLP Local library and modeling-system interfaces EPL. Open source with legacy setup. Finite bounds are important. Only a completed solve within stated tolerances supports a global certificate.
Artelys Knitro Smooth NLP, QP, QCQP, SOCP, nonlinear least squares, complementarity, and supported MILP or MINLP Local through Python, MATLAB, modeling systems, and other interfaces Commercial. Approved courses can receive full-featured 12-month teaching licenses. Nonconvex NLP results are generally local, and nonconvex MINLP methods are heuristic.
MOSEK LP, convex QP and QCQP, conic, semidefinite, and supported mixed-integer convex models Local library through Python and many modeling tools Commercial. Eligible academic users can obtain a free renewable 365-day personal license without model-size limits. The academic license excludes the AMPL shell. It is not a general nonconvex NLP solver.
Gurobi Optimizer LP, MIP, QP, QCP, and supported convex and nonconvex structures Local, server, or cloud depending on the license Commercial. Eligible academic users can obtain free full-featured licenses without model-size limits. Account and institutional eligibility still apply. See Gurobi for Academics.
EAGO Deterministic global optimization for nonconvex NLP and MINLP in Julia Local Julia MIT. Global methods need valid variable bounds and can be computationally expensive.
CONOPT Large smooth NLP Usually local through GAMS and supported systems Commercial local NLP solver. Qualified academics can request a full no-size-limit license for noncommercial teaching and research.
APOPT NLP and MINLP with engineering and dynamic optimization interfaces Download or hosted solve through APMonitor and GEKKO Free to use. Source and reuse terms are not stated as clearly as for open-source solvers. Hosted use sends the model to a service.
COIN-OR Projects Open solver and operations research software collection Mostly local libraries and command-line tools Open source with project-specific licenses. Choose a project that matches the model class.
HSL MA57 and HSL MA97 Sparse linear algebra used inside nonlinear solvers such as Ipopt
Not standalone optimization solvers
Compiled local libraries with BLAS and LAPACK No-cost personal academic teaching and research licenses are available to eligible users. Redistribution and sharing are restricted. Compilation adds setup effort.
NEOS Server Remote access to many optimization solvers Hosted service
Submitted models and data leave the device
Free public service. Do not submit proprietary, personal, export-controlled, or restricted data. Queue and solver limits vary.
pymoo Multiobjective and evolutionary optimization Local Python Apache 2.0. Stochastic methods do not by themselves prove global optimality.

Chemical engineering cases, model libraries, and benchmarks

Use a small verified case before assigning a large flowsheet. Confirm the software, solver, data rights, file size, and expected run time in the student environment.

Process and design cases

Cases for formulation, computation, and engineering interpretation
Resource Engineering use Level and scale Access and limits
ND Pyomo Cookbook Blending, production, scheduling, parameter estimation, reactors, and control Introductory to advanced
Short notebooks to projects
Text is CC BY-NC-ND and code is MIT. Check older dependencies.
IDAES HDA Flowsheet Multi-unit steady-state flowsheet with recycle, simplified properties, reaction, separation, costing, and process optimization Advanced
Multi-unit flowsheet
Open source. Requires IDAES, Pyomo, compatible solvers, and careful initialization.
WaterTAP Flowsheets Water treatment design, costing, technology selection, energy, and resource recovery Advanced
Unit models to treatment trains
Open source. Installation and solver setup are substantial.
BioSTEAM Biorefinery simulation, techno-economic analysis, process design, and uncertainty studies Intermediate to advanced
Python processes and full biorefineries
Open source. Verify property models, process assumptions, and version-specific examples.
Gurobi Refinery Planning Demo Planning and optimization in a refinery setting Intermediate
Guided commercial demo
Public demonstration. Gurobi and account or license access may be needed for full use.
EAGO ModelingToolkit Examples Global optimization of chemical process models including reactor and separator structures Advanced
Course-sized Julia examples
MIT. Global solve performance depends strongly on bounds and formulation.
BYU Application Project Student-selected engineering optimization with Python or MATLAB Intermediate to advanced
Multiweek project
Free project guidance. Students must source data and document rights.
Biomass Utilization Superstructure Optimization-based synthesis and analysis of biomass-to-fuel strategies Advanced
Browser application
Public web application. Treat results as a teaching model and verify current availability.
CEPAC Process Systems Modules Process analysis, simulation, design, and optimization modules Intermediate to advanced
Varied modules
Older educational collection. Test links and software before class.
Dynamic Optimization
BYU
Optimal control, estimation, differential equations, batch and trajectory problems Advanced
Full course or selected problems
Free online. Some workflows use hosted solves unless configured locally.

Model libraries and benchmark sets

Models for method comparison, testing, and advanced projects
Resource Best use Scale Access and limits
GAMS Model Library Documented examples across model classes and application areas Small examples to large models Public documentation. Running models requires compatible GAMS and solver access.
MINLPLib Advanced testing of mixed-integer nonlinear formulations and solvers Large benchmark collection The library site states CC BY 4.0. Check each model's origin and attribution. Many cases are too difficult for an introductory course.
MIPLIB Mixed-integer solver testing and performance studies Curated benchmark collection Public benchmark. Models are not mainly chemical engineering examples.
NL4Opt Testing conversion of natural-language problems into simple linear programs About 1,100 short LP examples MIT. Problems are simple and mainly useful for LLM formulation studies.

Data, uncertainty, and design of experiments

Resources for optimization when models depend on data or uncertain inputs
Resource Best use Questions to ask
Pyomo.DoE Model-based design of experiments and parameter information Are the noise model, prior values, candidate experiments, and identifiability assumptions reasonable?
Reaction Model-Based Design of Experiments
Notre Dame
Course-sized chemical reaction example Does the proposed experiment distinguish parameters and remain safe and practical?
IDAES Surrogate Examples Surrogates inside process models and optimization Is the optimizer leaving the training region? Are physical constraints and uncertainty checked?
CACHE Data-Driven Engineering resources Data quality, time series, hybrid models, uncertainty, and engineering datasets Are source, license, sampling, leakage, extrapolation, and drift documented?

For multiple objectives and Pareto-set activities, see pymoo in the solver table. Ask students to check objective scaling, sampling, stochastic variation, and reproducibility.

GenAI and agentic optimization

LLMs can help translate a problem, draft code, explain solver output, and explore scenarios. They can also invent functions, omit constraints, reverse signs, use the wrong units, misclassify a model, or claim optimality without evidence.

Teach a structured workflow

AI-assisted work that keeps the optimization model open to review
Stage Better prompt or activity Required student evidence
Baseline Formulate a small version without AI and calculate one feasible point or bound Student-written formulation and independent result
Clarify Ask the assistant to list missing decisions, data, units, bounds, constraints, assumptions, and uncertainty as questions Final problem statement with answers and sources
Plan Ask for sets, variables, objective, constraints, problem class, possible solvers, validation tests, and likely failure modes Reviewed plan with accepted and rejected suggestions
Implement Generate one model block or test at a time and require current documentation links for library calls Version history, running code, and source record
Audit Ask for a hostile review of units, indices, signs, bounds, balances, feasibility, scaling, termination, gap, KKT conditions, and limiting cases Independent calculations and corrected model
Compare Compare one-shot prompting with structured planning and a corrected formulation Error table, solution differences, and explanation of why the final model is better
Decide Use the tool to organize scenarios and claims that need evidence Engineering recommendation, sensitivity results, and known limits

Examples for LLM and agent studies

Resources for teaching natural-language modeling and tool-using workflows
Resource Best use Runs where and data location Access and limits
OptiGuide LLM-assisted what-if questions around a verified optimization model Local code plus an LLM service unless adapted for a local model MIT research prototype. The repository permits evaluation but prohibits scraping its content for model training. Protect data, restrict tools, and verify every model change.
AMPLbot Natural-language help with AMPL formulation and code Hosted assistant
Prompts go to a service
Vendor tool. Confirm account, privacy, retention, cost, and course access.
ORLM Advanced research on language models for operations research formulation Local or hosted depending on the model and hardware Repository code is Apache 2.0. Model weights use separate Llama terms. Current evaluation uses COPT, training needs substantial GPU resources, and generated formulations require careful review.
CACHE Programming GenAI guide Local models, commercial assistants, coding agents, privacy choices, prompting, and course redesign Local and hosted options Check campus policy and current product terms.
CACHE Agentic Engineering resources Agent foundations, tool use, evaluation, logging, and responsible AI Local and hosted options Start with limited, reversible tasks and fixed tests.

For a small local benchmark of natural-language to linear-program conversion, see NL4Opt in the benchmark table.

Safe defaults for optimization agents

Use the NIST Generative AI Profile to build a risk register, test plan, source record, and incident exercise.

  • Begin with a verified model and allow the agent to query it before allowing any model edits.
  • Do not send proprietary plant data, student records, credentials, unpublished work, or restricted files to an unapproved service.
  • Give tools the smallest needed permissions and restrict files, commands, solvers, network access, cost, and run time.
  • Log prompts, generated formulations, tool calls, code changes, model versions, solver output, and final decisions.
  • Use fixed validation cases that test feasibility, units, balances, objective calculations, and known solutions.
  • Require a person to approve model changes and any decision that affects equipment, safety, purchasing, schedules, grades, or external systems.
  • Keep a simple baseline and stop when the model becomes infeasible, unbounded, numerically unreliable, or outside its approved use.

Assessment and optimization review

Grade the formulation, checks, and decision evidence, not just the objective value. A solver status or confident generated explanation is not proof that the engineering model is correct.

Evidence of individual understanding

Assessment methods that work with or without AI tools
Method What it reveals Example
Formulate before coding Understanding of the decision and mathematical structure Submit the symbol table, objective, constraints, bounds, units, and assumptions first
Small hand-check Whether the model and objective are understood Calculate a feasible point, bound, relaxation, or tiny instance independently
Staged submission Planning, revision, and debugging Submit problem statement, model, tests, scenarios, and recommendation in stages
Live modification Ownership of code and formulation Change a bound, price, capacity, constraint, or initial point and predict the effect
Oral check Individual understanding in teamwork Explain one variable, constraint, solver message, active bound, and tradeoff
Error diagnosis Critical review skill Repair a plausible indexing, units, big-M, sign, scaling, or termination error
Method comparison Whether solver choice is justified Compare a local result, global bound, relaxation, heuristic, or alternative formulation

Optimization model review checklist

Questions to ask before accepting a solution
Review area Questions Evidence
Decision Does the objective represent the stated decision? Are alternatives, time horizon, stakeholders, and acceptance criteria clear? Problem statement and objective calculation
Variables and indices Are domains, units, bounds, sets, and indices complete and used consistently? Symbol table and dimensional checks
Physics and chemistry Do balances, properties, kinetics, equipment limits, phase behavior, and operating rules match the system? Independent engineering calculations and limiting cases
Feasibility Are all constraints satisfied within meaningful tolerances? Is any slack artificial or too costly? Constraint residuals, slack report, and reconstructed balances
Problem class Is the model truly linear, convex, smooth, integer, dynamic, stochastic, or nonconvex as claimed? Structure review and software documentation
Numerics Are scaling, initial values, derivatives, tolerances, discretization, and big-M values defensible? Solver log, derivative check, and sensitivity tests
Termination What does the solver status actually guarantee? Is there an optimality gap, bound, KKT check, or only a feasible local point? Complete solver report and accurate claim
Alternatives Do different starts, formulations, solvers, scenarios, or relaxations change the decision? Comparison table and explanation
Uncertainty How do prices, demand, measurements, properties, kinetics, and equipment availability affect the result? Sensitivity, scenario, robust, or stochastic analysis
Safety and use Could the optimizer exploit an unsafe or unrealistic omission? Which decisions still require human approval? Hazard and operability review with explicit limits
Reproducibility Can another person reproduce the result with documented data, versions, solver settings, seeds, and hardware? Fresh run and complete source record

Student AI-use record

Ask students to report the tool, product, and model, date and version, local or cloud deployment, files or context shared, important prompts or a concise interaction summary, suggestions accepted, changed, and rejected, model and solver checks, sources, usage or cost when relevant, and remaining limitations. Students remain responsible for the model and decision they submit.

More learning and research context

Additional learning and research connections
Resource Best use Notes
Center for Optimization and Statistical Learning Research context connecting optimization and machine learning Research center, not a ready course.
AlphaOpt Short introductory optimization videos Supplemental video collection. Review individual topics and depth.

Suggest a resource or correction

When suggesting a resource, include its audience, prerequisites, problem class, expected time, setup needs, language, solver, data size, license, available assignments, and known limits.

Send feedback to Dr. John Hedengren at Brigham Young University or Dr. Matthew Stuber at the University of Connecticut.

(last updated: 2026/08/10)

Follow Us

    

Contact Us

CACHE Corporation
P.O. Box 126
Notre Dame, IN 46556
Phone: (574) 631-5687
cache@cache.org

Join Us

Subscribe to CACHE newsletter 

Contact us to join CACHE as an academic or industrial affiliate

Theme by Danetsoft and Danang Probo Sayekti inspired by Maksimer