Integer programming presents us with great computational challenges. This course covers methods for dealing with such problems either exactly, or, when this is not practically feasible, through heuristic techniques providing us with upper and lower bounds on the objective function. Techniques covered include branch and bound, cutting planes, Lagrange- and LP-relaxation. Basic complexity theory is presented. In the computer laborations we implement some of the algorithms and techniques covered during the course.
The course requires 90 ECTS including 15 ECTS in Computer Programming, a course in Linear Algebra and a course in Linear Programming. Proficiency in English and Swedish equivalent to the level required for basic eligibility for higher studies.