Supplementary Material, Winter'11

This webpage contains files used during the lectures. Additional material/links are also included. Be aware that this webpage is continually being polished/changed. (See previous lecture outlines for F08.)

Lectures Date Subjects Covered Lecture Contents/Supplementary Materials
Last Lecture 36 Mon Apr. 4 Outline/Summary of Course
  • Announcements:
  • Topics Covered in Course: (The list of topics covered is given in detail in the lecture outlines below. We present a quick ouline here - in reverse order. We include a few suggested exercises.)
    1. Nonlinear Optimization: Geometry of optimization problems; convex functions and sets; optimality (KKT) conditions
        Exercises in class notes starting page 140, e.g.: 9.1-1),10); 9.2-5); 9.3-2); 9.6; 9.8
    2. Dynamic Programming: principle of optimality; stages and states; shortest path problems; investment problems
    3. Network Flows: modelling as LP/AMPL; max-flow problem and the F-F algorithm.
    4. Integer Programming: formulations; logical constraints; LP relaxations; convex hull; branch-and-bound; valid inequalities; cutting planes (Gomory/Chvatal)
    5. Robust optimization: Soyster and Bertsimas-Sim model
        See problems in class notes.
    6. LP; primal and dual simplex methods; Sensitivity Analysis
        See problems in class notes.
Week 12, Lecture 33-35 Mon-Fri Mar. 28-Apr. 1 Dynamic Programming; Nonlinear Programming; Integer Programming
Week 11, Lecture 30-32 Mon-Fri Mar. 21-25 Network Flows
  • Announcements:
    • The Network Flow problem on assignment 5 has been modified, i.e. please use dynamic programming instead of the Ford-Fulkerson algorithm.
    • It is the students' responsibility to ensure that groups have 3 members. Marks will be deducted if you do not attempt to get 3 members in each group.
    • April 2011 Math. Awareness Month - complex systems
  • Topics:
    • Network Flows/Models: examples are shortest path problems (with Dijkstra's dynamic programming algorithm), max-flow problems (including special cases assignment and transportation problems)
Week 10, Lecture 28-29 Wed-Fri Mar. 16-18 Solving Integer Programs
( IP Strong Formulations/cutting planes )
Network Flows
  • Announcements:
    • It is the students' responsibility to ensure that groups have 3 members. Marks will be deducted if you do not attempt to get 3 members in each group.
    • The projects have been marked; see the Projects link for the marks file.
  • Topics:
    • Cutting Plane Methods (Chvatal-Gomory Cuts; Gomory Cuts) with example
    • Network Flows/Models: three examples.
Week 10, Lecture 27 Mar. 14 Solving Integer Programs
( branch-and-bound;
IP Strong Formulations/cutting planes )
Network Flows
Topics:
  • Branch & Bound Methods summary/review (dual simplex method!) (fathom using: infeasibility; bounds; feasibility)
    Cutting Plane Methods (Chvatal-Gomory Cuts; Gomory Cuts) with example
    Network Flows
Week 9, Lecture 24-26 Mar. 7-11 Branch & Bound Methods; cutting planes
  • solution to assign 3 is available - see Assignments link
  • Branch & Bound Methods (fathom using: infeasibility; bounds; feasibility)
    Cutting Plane Methods (Chvatal-Gomory Cuts; Gomory Cuts)
  • Clarification of bonus question on Assignment 4.
Week 8, Lecture 23 Mar. 4 Integer Programming
( IP Strong Formulations) comparing formulations)
Week 8, Lecture 22 Wed. Mar. 2 Integer Programming
( IP Strong Formulations)
Week 8, Lecture 21 Mon. Feb. 28 Integer Programming
( IP Strong Formulations)
  • Announcements:
    • Mathematical Modeling with MATLAB Products - March 10/webinar
    • Gurobi 4.0 and AMPL V20101113 have been installed on all nexus machines (including Terminal servers). This means that AMPL and Gurobi 4.0 can be used from MC3006, MC3009, MC3008, and MC3010. You can use remote desktop to mef-nts.math.uwaterloo.ca to use them (mstsc in search box on a PC/laptop).
      You can also logon to fe03.student.math.uwaterloo.ca for ampl.

      Note: there is no shortcut on the "All programs" menu for AMPL, you need to use command prompt to invoke AMPL/SW. (Also use option solver gurobi_ampl.)

    • Assignment 3 and project 1 are due soon!!
        Project, Due Wed, Mar 2 (see Projects link for details):
      • current list of chosen stations (Please do not choose a station already on this list. Please change your station (if possible) if it is repeated on the list.)

  • Topics:
Week 7, Lecture 20 Fri. Feb. 18 IP Strong Formulations
  • Announcements: Assignment 3 is ready.
Week 7, Lecture 19 Wed. Feb. 16 Integer Programming-piecewise linear functions
  • Announcements: Assignment 3 is ready.
  • summary of formulation of integer programs: contingency; multiple choice; logical (big-M); alternatives; conditional; k-fold alternatives; compound alternatives
  • Facility Location
    AMPL files considered: kilroy.mod; kilroy.dat; runkilroy.
  • Modeling piecewise linear functions
Week 7, Lecture 18 Mon. Feb. 14 Integer Programming -Modeling pure IP; cardinality constraints; forcing/implication/exlusion; fixed charge; either/or; ...
AMPL files considered: gandhi.mod; gandhi.dat; rungandhi; gandhi.txt.
Week 6, Lecture 17 Fri. Feb. 11 Robust Optimization
Week 6; Lecture 16 Wed. Feb. 9 Robust Optimization
  • Announcements:
    • Midterm exam 4:30-6PM Fri. Feb 18, MC1085; will cover the first four chapters of the Course Notes; and it will cover the AMPL material used in e.g. the homework.
      (INFORM instructor if there is a scheduling conflict; covers all of the first four chapters)
  • Decision making under uncertainty; Soyster's model;
    SoyRobustFarmer.mod, SoyRobustFarmer.dat, runSoyRobustFarmer
Week 6; Lecture 15 Mon. Feb. 7 Modelling Uncertainty
  • Announcements:
    • Midterm exam 4:30-6PM Fri. Feb 18, MC1085
      (INFORM instructor if there is a scheduling conflict; covers all of the first four chapters)
    • Braess paradox also wiki page
  • Decision making under uncertainty: facility location 2-stage stochastic optimization with recourse; and robust optimization; the farmer's problem
Week 5; Lecture 14 Fri. Feb. 4 Modelling Uncertainty
  • Announcements:
    • You can get/install wget yourself, e.g. see the link GNU Wget. You can then use this in e.g. a loop in windows such as: FOR %variable IN (set) DO command [command-parameters]
    • A corresponding loop in unix would be e.g.
      for year in 2010 2009 1954 1955 1933 1932
      do
        echo $f
        wget ftp://ftp.ncdc.noaa.gov/pub/data/gsod/$year/710010-12345-$year.op.gz
        wget ftp://ftp.ncdc.noaa.gov/pub/data/gsod/$year/710010-99999-$year.op.gz
      done
      
  • Decision making under uncertainty; facility location deterministic example; AMPL files: facstoch.mod; facstoch.dat; runfacstoch;
Week 5; Lecture 13 Wed. Feb. 2 Sensitivity Analysis; Parametric Programming
  • Announcements:
    • Please start on getting the data for the project. See the Projects link at the top.
  • Review of sensitivity analysis (using revised simplex method), cont... MATLAB files: feb2.m, logfeb2.txt,
Sensitivity Analysis via AMPL
parametric programming parametric programming outline
Week 5; Lecture 12 Mon. Jan. 31 Sensitivity Analysis; Dual Simplex Method; Parametric Programming
Week 4; Lecture 11 Fri. Jan. 28 Sensitivity Analysis cont...
  • Announcements:
    • Please start on getting the data for the project. See the Projects link at the top.
  • Review of sensitivity analysis using the Revised Simplex Method: adding a new product, pricing out a new product; changes in objective function coefficients
Week 4; Lecture 10 Wed. Jan. 26 Sensitivity Analysis
  • Announcements:
    • A preliminary outline of the project is available at the project list.
    • Reminder: Please send in your list of project groups. Try and meet at the end of class if you do not have a group yet.
    • manual of how to use gurobi with ampl (option gurobi_option)
  • Try NEOS Sovers, e.g. LP with the MOSEK solver (and e.g. diet problem), or NLP with LOQO
  • Review of sensitivity analysis
Week 4; Lecture 9 Mon. Jan. 24 Simplex Method cont...
  • Announcements:
    • Assignment 2 is ready.
    • Assignments are due in class before start of class 9:30-&epsilon AM, or under the door MC6065 by midnight-&epsilon before the due date; late assignments are not accepted
  • Review of the (revised) simplex method (with an economic interpretation): shadow prices; changes in the data (additional reference - paper by Ward/Wendell
Modelling with AMPL (sets before variables) In modelling, we see that it helps to find the sets before the decision variables, e.g. for (a simplified version of) problem 3 in assignment 1: ass1p3.mod; ass1p3.dat.
Week 3; Lecture 8 Fri. Jan. 21 (Revised) Simplex Method
  • Announcements:
    • Assignments are due in class before start of class 9:30-&epsilon AM, or under the door MC6065 by midnight-&epsilon before the due date; late assignments are not accepted)
    • Please form groups for the projects. Please give the instructor the names in class or by email.
    • The book: Title: AMPL: A modeling language for mathematical programming. Call Number: QA402.5 .f688 2003 is on reserve in Davis Centre library.
    • Midterm Exam, Feb.18 Fri: 4:30 - 6:00pm, MC 1085
      (make-up 6:00-7:30pm; room announced in person; ONLY those that INFORM the instructor can take the make-up exam.)
  • Minimum Cost Flow Problem
  • Review/example of the (revised) simplex method (with an economic interpretation).
Week 3; Lecture 7 Wed. Jan. 19 LP Formulations (and AMPL)
  • for the third floor machines, please use the AMPL command: option solver gurobi_ampl; since the cplex solver is not installed. See the AMPL FAQ for more details.
  • Multiple time periods, Section 2.4: steelT.mod; steelT.dat; model steelT.mod; data steelT.dat; solve; display Make; display Inv; display Sell;
  • Scheduling, Section 2.5 in the notes. (airline crew scheduling, text Chap 12.2 (set partitioning with column generation using knapsack problem.)
  • Modeling problems with piecewise linear functions, and with absolute values, e.g. minimize |x|. (Section 2.5 in the notes, Chapter 14.2 in text)
Duality
(Revised) Simplex Method
duals of different types of LP models
Review of the simplex method (with an economic interpretation).
Sensitivity Analysis via AMPL AMPL data file: gtc-resconst.dat. Model is resconstr.mod. Transcript of AMPL session gtc.log.
A listing of sensitivity-analysis and some other useful AMPL commands: ampl-cmd.txt.
See also: Some Hints for Getting More from AMPL and CPLEX, including list of all the cplex options available in AMPL; The CPLEX distribution of AMPL examples can be found here.
Week 3; Lecture 6 Mon. Jan. 17 LP Formulations;
Duality in LP
  • (continued from lecture 4)
  • Multiple Period Problem (Investing)
  • LP Review - Duality Derivation of the linear programming dual for different forms of LP done using a game theory approach; including an economic interpretation. (The diet problem was used to illustrate the approach.)
Week 2; Lecture 4-5 Fri. Jan. 14 LP Formulations (and AMPL) multiple sets again: (From AMPL-a tutorial [pdf- pgs 7-11]
Week 2; Lecture 3 Mon. Jan. 10 Software (AMPL/Solvers) cont...
Week 1; Lecture 2 Fri. Jan. 7 Building Math. Models
  • Two models from Course Notes, Chapter 2, Pages 9-12:
      Resource Constraint Problem; Blending Problem.
  • Emphasizing sets during three steps of finding:
    1. Decision Variables
    2. Objective Function
    3. Constraints
Week 1; Lecture 1 Wed. Jan. 5 Introduction/Administrivia/LP-review