På svenska Print Search Contact

Optimization and Systems Theory
KTH / Engineering Science / Mathematics / Optimization and Systems Theory

SF2822 Applied Nonlinear Optimization, 7.5hp, 2018/2019

(The page is under construction. This may not be the final version. However, the dates of compulsory lectures are fixed and will not be changed.)

Instructor and examiner

Anders Forsgren (andersf@kth.se), room 3533, Lindstedtsv. 25, tel 790 71 27.
Office hours: Monday 11-12. (Or by agreement.)

Exercise leader and project leader

David Ek (daviek@kth.se), room 3736, Lindstedtsv. 25, tel. 790 62 94.
Office hours: By agreement.

Course material

(The course material is not yet available.)
  • Linear and Nonlinear Optimization, second edition, by I. Griva, S. G. Nash och A. Sofer, SIAM, 2009.
    (The book can be ordered from several places. Please note that you can become a SIAM member for free and obtain a discount at the SIAM bookstore.)
  • Exercises in applied nonlinear optimization, 2018/2019. Available via Canvas.
  • Supplementary course material in applied nonlinear optimization, 2018/2019. Available via Canvas.
  • Lecture notes in applied nonlinear optimization, 2018/2019. Can be downloaded from this web page, see the schedule below. Also available via Canvas.
  • GAMS, A user's guide. Available at the GAMS web site.
  • GAMS. GAMS is installed in the KTH linux computer rooms. It may also be downloaded from the GAMS web site for use on a personal computer.
  • Two project assignments that are handed out during the course, April 5 and April 25 respectively.

Additional notes that may be handed out during the course are also included.

Course goals

After completed course, the student should be able to:
  • explain fundamental concepts of nonlinear programming;
  • explain how fundamental methods for nonlinear programming work;
  • illustrate how these methods work by solving small problems by hand calculations;
  • starting from a suitably modified real problem, formulate a nonlinear program; make a model in a modeling language and solve the problem;
  • analyze the solutions of the optimization problem solved, and present the analysis in writing as well as orally;
  • interact with other students when modeling and analyzing the optimization problems.


The examination is in two parts, projects and final exam. To pass the course, the following is required:
  • Pass project assignment 1, with presence at compulsory presentation lecture on Thursday April 25, and presence at the following dicussion session.
  • Pass project assignment 2, with presence at compulsory presentation lecture on Friday May 10, and presence at the following dicussion session.
  • Pass final exam. Please note that advance application for participation in examinations is compulsory according to KTH's rules. This is done via "My Pages" for master students and via a particular form for PhD students. More information can be found here.

Course registration

Due to the project based nature of this course, students must register no later than April 2. Registration is made by the students online following KTH standard procedures. PhD students are not able to register online but register via e-mail to Anders Forsgren.

Project assignments

The project assignments are performed in groups, where the instructor determines the division of groups. This division is changed between the two assignments. Assignment 1 is carried out using the modeling language GAMS. For project 2, there is a choice between a modeling assignment, to be carried out using GAMS, or a method assignment, to be carried out using Matlab. The project assignments must be carried out during the duration of the course and completed by the above mentioned presentation lectures. It is the responsibility of each student to allocate time so that the project group can meet and function. Presence at the presentation lectures is compulsory. For passing the projects, the following requirements must be fulfilled:
  • No later than the night before the presentation lecture, each group must hand in a well-written report which describes the exercise and the group's suggestion for solving the exercise. Suitable word processor should be used. The report should be on a level suitable for another participant in the course who is not familiar with the group's specific problem.
  • When handing in the report, each student should append an individual sheet with a brief self-assessment of his/her contribution to the project work, quantitatively as well as qualitatively.
  • At the presentation lecture, all assignments will be presented and discussed. Each student is expected to be able to present the assignment of his/her group. In particular, each student is expected to take part in the discussion. The presentation and discussion should be on a level such that students having had the same assignment can discuss, and students not having had the same assignment can understand the issues that have arisen and how they have been solved.
  • Each group should make an appointment for a discussion session with the course leaders. There is no presentation at this session, but these sessions are in the form of a 15 minutes question session, one group at a time. There will be times available the days after the presentation session. One week prior to the presentation lecture, a list of available times for discussion sessions will be made available at Doodle, reachable from the course home page. Each group should sign up for a discussion session prior to the presentation lecture.
  • Each participant in the course must contribute to the work of the group. Each group must solve their task independently. Discussion between the groups is encouraged, but each group must individually solve the assignments. It is not allowed to use solutions made by others in any form. If these rules are violated, disciplinary actions in accordance with the KTH regulations will be taken.

Each project assignment is awarded a grade which is either fail or pass with grading E, D, C, B and A. Here, the mathematical treatment of the problem as well as the report and the oral presentation or discussion is taken into account. Normally, the same grade is given to all members of a group.

Final exam

The final exam consists of five exercises and gives a maximum of 50 points. At the exam, the grades F, Fx, E, D, C, B and A are awarded. For a passing grade, normally at least 22 points are required. At the exam, in addidion to writing material, no other material is allowed at the exam. Normally, the grade limits are given by E (22-24), D (25-30), C (31-36), B (37-42) and A (43-50).

The grade Fx is normally given for 20 or 21 points on the final exam. An Fx grade may be converted to an E grade by a successful completion of two supplementary exercises, that the student must complete independently. One exercise among the theory exercises handed out during the course, and one exercise which is similar to one exercise of the exam. These exercises are selected by the instructor, individually for each student. Solutions have to be handed in to the instructor and also explained orally within three weeks of the date of notification of grades.

The final exam is given Friday May 31, 8.00-13.00.

Final grade

By identitying A=7, B=6, C=5, D=4, E=3, the final grade is given as

round( (grade on proj 1) + (grade on proj 2) + 2 * (grade on final exam) ) / 4),

where the rounding is made to nearest larger integer in case of a tie.

Preliminary schedule

(Lecture notes are not yet available.)

"L" means lecture, "E" means exercise session, "P" means project sesstion.
Type Day Date Time Room Subject
L1.Mon Mar 18 15-17 U31 Introduction. Nonlinear programming models. (pdf)
L2.Thu Mar 21 10-12 U31 Optimality conditions for linearly constrained problems. (pdf)
L3.Fri Mar 22 13-15 K51 Optimality conditions for nonlinearly constrained problems. (pdf)
E1.Mon Mar 25 15-17 U21 Optimality conditions.
L4.Thu Mar 28 10-12 U31 Unconstrained optimization. (pdf)
L5.Fri Mar 29 13-15 U21 Unconstrained optimization, cont. (pdf)
E2.Mon Apr 1 15-17 Q21 Unconstrained optimization.
P1.Wed Apr 3 8-10 Q21 Introduction to GAMS.
P2.Fri Apr 5 10-12 Gul GAMS excercise session.
L6.Mon Apr 8 15-17 Q21 Equality-constrained quadratic programming. (pdf)
E3.Tue Apr 9 10-12 U41 Equality-constrained quadratic programming.
L7.Wed Apr 10 8-10 Q21 Inequality-constrained quadratic programming. (pdf)
L8.Thu Apr 11 10-12 U31 Inequality-constrained quadratic programming, cont.
E4.Fri Apr 12 13-15 K51 Inequality-constrained quadratic programming.
L9.Wed Apr 24 8-10 U21 Sequential quadratic programming. (pdf)
P3.Thu Apr 25 10-12 U31 Presentation of project assignment 1.
E5.Fri Apr 26 13-15 U21 Sequential quadratic programming.
L10.Thu May 2 10-12 M33 Sequential quadratic programming, cont.
Interior methods for nonlinear programming. (pdf)
L11.Fri May 3 13-15 U31 Interior methods for nonlinear programming, cont. (pdf)
E6.Thu May 9 10-12 U31 Interior methods for nonlinear programming.
P4.Fri May 10 13-15 U21 Presentation of project assignment 2.
L12.Mon May 13 15-17 K51 Semidefinite programming.
E7.Thu May 16 10-12 U31 Semidefinite programming.
E8.Fri May 17 13-15 U21 Selected topics.

Overview of course contents

  • Unconstrained optimization
    Fundamental theory, in particular optimality conditions.
    Linesearch algorithms, steepest descent, Newton's method.
    Conjugate directions and the conjugate gradient method.
    Quasi-Newton methods.
    (Chapters 11, 12.1-12.3 and 13.1-13.2 in Griva, Nash and Sofer.)
  • Constrained nonlinear optimization
    Fundamental theory, optimality conditions, Lagrange multipliers and sensitivity analysis.
    Quadratic programming.
    Primal methods, in particular active-set methods.
    Penalty and barrier methods, in particular primal-dual interior methods.
    Dulal methods, local duality, separable problems.
    Lagrange methods, in particular sequential quadratic programming.
    (Chapters 3, 14.1-14.7, 14.8.1, 15.1-15.5, 16.1-16.3 and 16.7 in Griva, Nash and Sofer.)
  • Semidefinite programming
    Fundamental theory.
    (Chapter 16.8 in Griva, Nash and Sofer. Separate article in the supplementary course material. Fundamental concepts only.)

Welcome to the course!

Course web page: http://www.math.kth.se/optsyst/grundutbildning/kurser/SF2822/.

Published by: Optimization and Systems Theory, KTH
Anders Forsgren, andersf@kth.se

Last updated: 2018-11-06