Optimization project - 2015

From Optimization for Chemical Engineering: 4G3
Jump to: navigation, search

The project will involve the following steps:

  1. Select a topic of interest to you (and acceptable to the instructor)
  2. Investigate model-based methods in this topic for design, operations, and so forth; at this stage, you should be able to identify the key tradeoffs and potential benefits for optimization
  3. Define a meaningful problem that is new or an extension of a published problem
  4. Build a model and apply an optimization method to solve the problem
  5. Analyze the results
  6. Write a formal report on the project (see details below)

Grading of the report by the instructor. A grading rubric will be made available prior to the deadline.

Technical details

It would be wise to define a problem that can be performed using software available at McMaster: MATLAB (optimization toolbox) for small LPs and NLPs, or GAMS for large LPs and for medium to large NLPs, or for problems with integer (discrete) and continuous variables (MILPs).

Project topic

In 200 words or less, describe your optimization problem, source of model and data, and question(s) to be answered. Explain why (you think) an optimum (i) exists and (ii) is not obvious. Please also briefly describe why you are interested in the topic. You have already done this in a prior assignment, but now is a chance to improve/modify that topic.

Send the email to myself, and the course TAs. We will either accept your project (with guidance) or ask you to redefine/rework it to be more suitable. Send emails by Monday, 09 March, at 14:00.


A meeting schedule will be posted where your project is discussed with the TAs and myself during tutorial times; some times outside the tutorial hours might also be available. The meeting is graded, and counts 15% of your project grade. Lack of preparedness will be the main reason for losing grades in this portion.


The project report must be complete and concise. (It is often easier to write a long report than a short one!) A rough guideline is 10 pages for the body; though this is flexible depending on how many tables and figures you include in the body of the report. The report will have a half-page cover letter (executive summary) that will be graded too. Reports are due by Wednesday, 08 April at 16:00; however I am considering allowing reports to be due by 13 April at 16:00, given the lighter exam schedule for most of you.

Assume your audience is a supervisor at work that has taken an optimization course, but is not as current with the technology as you. Excellent documentation is critical! During your career, you will receive recognition based as much on your communication as your work. When preparing the report, please consider the following:

  • An overview of the problem and degrees of freedom that exist
  • An explanation of the important trade-offs that led to the need for optimization
  • An explanation of why you selected the model structure and optimization technology (LP, NLP, MILP…)
  • An explanation of the cases investigated (not just giving the data, explaining why these were meaningful cases). Several case studies, using variations of your base case should be reported.
  • A summary of the findings of the study, and
  • Recommendations for further study

Data will be concisely documented in the body or appendices as appropriate. The models in the report will be documented clearly and the equations should be explained. For example, “component material balance” written next to the equation.

No program/code listings will be in the report. You will send these separately to myself. Please submit your report at http://yint.org/4G3-project. The code you submit (Excel, MATLAB, GAMS, or Python) will contain headings and comments to enable another engineer to maintain, debug and enhance your program.

A form will be posted shortly that you will use to submit the report, and the code.

Example topics

These are not projects that you can pick; these are listed here to generate new ideas for yourself.

Topics from Rardin, "Optimization in Operations Research"

Example number Title Comments
4.3 Tubular Products Operations Planning Planning problem that involves balances on the time a process can be used
4.4 Canadian Forest Products Production planning that rounds integer variables because they are large and rounding introduces little error
4.5 Ohio National Bank Shift Scheduling Must have enough productivity every hour
8.1 Bank Three Investment Multi-objective (profit and risk)
8.3 Hazardous Waste Disposal Reduce transportation costs but consider risk to population along the routes
11.3 Emergency Medical Service Location Minimize the number of sites while ensuring good response times
11.11 Wastewater Network Design Minimize the cost while transporting and processing all waste
11.12 Processor scheduling and sequencing Dynamic optimization with some integer variables
14.3 Oxygen production system design Size the system components so as to minimize (capital + operating) cost
14.4 Pfizer Optimal Lot Sizing Minimize the total annual cost subject to production constraints and limited production time

Edgar, Himmelblau and Lasond: "Optimization of Chemical Processes", 2nd Edition: the book has many problem statements with formulations and solutions – see Part III, Chapters 11 to 16.

H. P. Williams, "Model Building in Mathematical Programming": This book has many problem statements with formulations and solutions. It is strongest in problems with integer variables, although it has a selection of all-continuous variable problems as well.

Some other potential projects that have been covered by students in this course in prior years are listed here:

Project Details
Schedule courses for the chemical engineering department This project will consider students involved in different programs, distinguish between required and elective courses, account on instructor constraint, etc., in the objective of maximizing student comfort for example.
Develop a program to optimize the operation of a continuous process plant Possible processes include ethylene production and petroleum refinery, but you are encouraged to propose others; basic data for many processes are available in encyclopedias and reference books (please locate basic information before proposing); you will select a process that has data easily available (see, e.g., the encyclopedias by Kirk Othmer and by Uhlmann) and, of course, has an interesting trade off for optimization.
Develop a program to optimize the design of an individual process unit This project may include capital and operating costs, the time-value of money, ancillary equipment (exchangers), and civil engineering; possible process units include: distillation, pumping/compression and piping, reactor and separation, shell and tube heat exchanger, batch trajectory, etc.; you will select equipment that has data easily available (e.g., the encyclopedias by Kirk Othmer and by Uhlmann, or specialized texts on the equipment)
Develop and optimize a model of an anaerobic digester for wastewater treatment This project will consider biogas production and discharge regulations; a variety of models for anaerobic digestion can be found in the literature, which typically carry a lot of uncertainty...
Optimize a problem with significant uncertainty (e.g., wastewater treatment) You will define the uncertainty and solve the problem so that all cases within the uncertainty are feasible and the solution is optimal; this is a simple approach to what is called stochastic programming.
Optimize the tuning of a control system using standard PID controllers, or cascade controllers. The objective will be to determine the best tuning in the sense of one or several control objectives; this will involve selecting a process unit (and corresponding state-space model), control structure (pairing), and disturbance scenario