Many practical problems such as train and airline scheduling, vehicle routing, production planning, resource management and telecommunications network design can be modelled as integer (or mixed-integer) programs. This module presents a comprehensive theory of and exact and approximate algorithms for integer programming and a wide variety of its applications. Starting from formulations and illustrative examples of integer programs to optimality, relaxation to methods such as branch and bound, cutting planes and valid inequalities, Lagrangean relaxation and heuristic methods. Basic computational complexity theory will be also introduced. Modern semi-definite programming (SDP) technique dealing with integer programming is optional and at the discretion of the lecturer in charge.
Learning Outcomes
Students will understand that integer programming problems arise in many fields such as engineering, economics, and management. They will understand basic theory and algorithms for integer programs and understand why integer programs are hard to handle in general. They will know how to use the basic techniques of integer programming (branch-bound, relaxation, cutting-plane, heuristics, etc.) to solve integer programming models for a variety of managerial and other practical problems. They will be able to solve an IP problem efficiently by taking into account the particular structure of the problem and interpret the results obtained. They will be able to explain the difference between discrete and continuous optimisation, and understand the uniqueness of the techniques for solving integer programs.
Assessment
21625-01 : Raw Module Mark : Coursework (100%)
Assessment Methods & Exceptions
90% based on a 1.5 hour written examination in the Summer Term; 10% based on work during term-time.