| Time: | TR 8:40-9:55 |
| Place: | Olin 255 |
| Instructor: | Michael Todd, 229 Rhodes Hall, 255-9135, miketodd@orie.cornell.edu |
| TAs: | Nidhi Sawhney (TR labs), 294 Rhodes Hall, nidhi@orie.cornell.edu |
| Alper Yildirim (MW labs), 292 Rhodes Hall, yildirim@orie.cornell.edu | |
| Mike Auerbach (F lab), 338 Upson Hall, mla15@cornell.edu | |
| Graders: | Marilena Ioannidou, 358 Upson Hall, mmi2@cornell.edu |
| Amar Sapra, 291 Rhodes Hall, sapra@orie.cornell.edu | |
| Office Hours: | MJT: T 5:30-6:30; W 1:30-2:30; R 10:15-11:15 (229); |
| NS: Sun 4-6 (258); | |
| AY: Sun 6-8 (258); | |
| MA: R 7-9 (258); | |
| MI: MW 10-11 (258); | |
| AS: F 5-7 (258). | |
| All rooms in Rhodes Hall (after hours enter from Upson 3rd floor). | |
| Texts: | Introduction to Mathematical Programming, |
| Hillier and Lieberman, McGraw-Hill, 1995; | |
| AMPL: A Modeling Language for Mathematical Programming, | |
| Fourer, Gay, and Kernighan, Duxbury, 1993. | |
| Work: | weekly homeworks (15%), 2 prelims (25%, 25%), final (35%) |
Prerequisites: linear algebra (from Math 294 or 221).
Goals: this course is designed to give you
(i) the ability to formulate a range of important decision problems as linear programming problems;
(ii) an appreciation of the power and usefulness of solution algorithms;
(iii) knowledge of two different kinds of algorithm: simplex and interior-point methods; and
(iv) an understanding of how to use output from algorithms not only to get the best solution for the current problem, but also to find how the solution changes with the input parameters (sensitivity analysis).
Outline (tentative)
Week 1: formulation (product mix, diet, transportation, blending problems)
(H&L Chapter 3)
Week 2: geometry, extreme points, basic feasible solutions
(H&L Chapter 4.1, 5.1)
Week 3: the simplex method in equation and tableau format
(H&L Chapter 4.2 - 4.5)
Week 4: extensions (artificial variables, 2 phase method, bounded variables)
(H&L Chapter 4.6, 7.3)
Week 5: the revised simplex method
(H&L Chapter 5.2 - 5.3) (Prelim 1 on September 28)
Week 6: duality
(H&L Chapter 6.1 - 6.4)
Week 7: sensitivity analysis
(H&L Chapter 6.5 - 6.7)
Week 8: dual simplex algorithm
(H&L Chapter 7.1 - 7.2) OVER
Week 9: the transportation problem and integrality of basic solutions
(H&L Chapter 8.1)
Week 10: the transportation simplex algorithm and sensitivity analysis
(H&L Chapter 8.2)
Week 11: problems with the simplex method: computational complexity
(H&L Chapter 4.9 and notes)
Week 12: nonlinear programming and Newton's method for
nonlinear equations and
unconstrained optimization
(H&L Chapter 13.5 and notes) (Prelim 2 on November 16)
Week 13: the barrier problem and primal-dual interior point methods for LP
(H&L Chapter 13.10 and 7.4 and notes)
| set | PROD; | # products |
| set | PLANT; | # plants |
| param | time {PLANT,PROD} | > = 0; |
| # hours in each plant for one batch of each product | ||
| param | avail {PLANT} | > 0; |
| # hours available in each plant | ||
| param | profit {PROD}; | # profit per batch for each product |
| var | Make {PROD} | > = 0; |
| # batches produced for each product | ||
| maximize | total_profit: | sum {p in PROD} profit[p] * Make[p]; |
| # Objective: total profits from all products | ||
| subject to | Time {q in PLANT}: | sum {p in PROD} time[q,p] * Make[p] < = avail[q]; |
| # Constraint: time used in each plant | ||
| # cannot exceed availability |
| set | PROD | := | doors | windows; | |
| set | PLANT | := | 1 | 2 | 3; |
| param | time: | doors | windows | := | |
| 1 | 1 | 0 | |||
| 2 | 0 | 2 | |||
| 3 | 3 | 2; | |||
| param | avail | := | |||
| 1 | 4 | ||||
| 2 | 12 | ||||
| 3 | 18; | ||||
| param | profit | := | |||
| doors | 3 | ||||
| windows | 5; |