\[\begin{align} \text{minimize} \qquad & \mathbf{c} \mathbf{x} \\ \text{subject to} \qquad & \mathbf{Ax} \leq \mathbf{b} \\ & \phantom{\mathbf{A}}\mathbf{x} \geq \mathbf{0} \end{align}\]

This course will be an intensive study of Linear Programming (LP) and Network Optimization problems. LP deals with the problem of minimizing or maximizing a linear function in the presence of linear equality and/or inequality constraints. Both the general theory and characteristics of LP optimization problems as well as effective solution algorithms and applications will be addressed. The course is a good one for students who are planning to apply Operations Research (OR) tools in all areas of application in the public and private sectors including production or manufacturing problems, service/logistics related problems, and various problems involving network flows as well as to learn an optimization software tool.

Syllabus (Fall 2015)


  • Nature and examples of LP problems
  • Review of Linear Algebra and Convex Analysis
  • The Simplex Method
  • Duality and Sensitivity
  • Dantiz-Wolfe Decomposition
  • Robust Linear Optimization
  • Network Flow Problems
  • Network Simplex Method
  • Transportation Problem
  • Assignment Problem
  • Max Flow Problem
  • Shortest Path Problem
  • Robust Shortest Path Problem

Julia, Gurobi, and JuMP

This course involves homework assignments that require optimization software. In particular, the students will learn how to use The Julia Language with the Gurobi Optimizer and the JuMP package.

Students are encouraged to install Julia and Gurobi on their own computer. Students need to access the following web document, for installation help and example codes: http://stom.chkwon.net/julia/

Students basically needs to go through the following steps:

  1. Install Gurobi
  2. Install Julia
  3. Install JuMP
  4. Solve an LP problem