Theory and methods:
The simplex method and interior point methods for linear programming. Utlization of problem structure, e.g., decomposition and column generation. Stochastic programming, methods and utilization of problem structure. Branch-and-bound methods for integer programming. Lagrangian relaxation and subgradient methods for integer programming problems with special structure.
Projects:
This part of the course consists of modeling practical optimization problems and using available optimization software to solve them. The projects are carried out in small groups. An important aspect of the course is cooperation within the group as well as presentations in talking and in writing.
The overall goal of the course is on the one hand that the student should master models, methods and theory for different forms of nonlinear optimization, on the other hand that the student should be able to model and by a suitable modeling language solve realistic optimization problems, as well as presenting the results orally and in writing.
Upon completion of the course the student should be able to:
- Explain how the steepest-descent method, the method of conjugate gradients and quasi-Newton methods fork for minimizing a strictly convex quadratic function.
- Explain how active-set methods for convex quadratic programs work.
- Explain how sequential quadratic programming methods work.
- Explain how primal-dual interior methods for quadratic and nonlinear programming problems work.
- From a problem description formulate a nonlinear programming problem and solve it using the modeling language used in the course.
- Interpret the solutions of the solved problems by fundamental concepts such as sensitivity analysis.
- Given suitable assumptions derive optimality conditions for nonlinear programming problems.
- Make use of suitable optimality conditions to determine if a given point is a local, or even a global, minimizer for a given nonlinear programming problem.
- Explain if a solution of a real problem is a local or a global solution, given properties of the problem functions.
- Explain what relaxation is.
- Relate the modeling to the student's own field of research.
Students who have acquired deeper knowledge of the course are in addition expected to:
- In applicable cases be able to determine the quality of solutions by relating to convex relaxations of the problems.
- Explain how quasi-Newton methods for nonlinear programming problems work.
- Give examples on how sequential quadratic programming methods and interior methods may be modified to nonconvex problems and state fundamental aspects of merit functions in such methods.
- Define semidefinite programming problems and explain how primal-dual methods for semidefinite programming work.