1) Ability to formulate combinatorial and network flow optimization problems.
2) Knowledge of algorithms for combinatorial optimization.
3) Ability to use and adapt standard combinatorial optimization algorithms to specific application contexts.
Prerequisites
Basic notions of Operations Research and Linear Algebra.
Teaching Methods
Lessons
Further information
E-learning with Moodle
Type of Assessment
Oral examination.
The oral examination focuses on questions relating to models and algorithms for solving a particular combinatorial optimization problem addressed during the course.
In order to pass the exam, students must show that they have a basic knowledge of the subjects, be able to recognize the structure of a problem and discuss mathematical models and algorithms for its resolution, dealt with in the course .
Course program
Integer Programming and Combinatorial Optimization
Part I. Modeling with binary and integer variables
• Network flow problems: a quick review of well-solved problems
• Assignment and matching problems
• Covering, packing, partitioning problems
• Spanning tree problem
• Vehicle Routing problem
•Multicommodity flows
• Network design
Part II. Algorithms to solve Combinatorial Optimization problems
• Linear and Lagrangean relaxations
• Polyhedral theory: generation of valid inequalities, strong valid inequalities and facets
• The Cutting Plane approach (row generation)
• The column generation approach: master problem and pricing subproblems
• Branch & Cut
• Decomposition algorithms
Part III. Data-uncertainty and robustness
• Re-establishment tools in the design of robust networks.
Alternative frameworks: (i) protection and (ii) restoration.
What is necessary to restore: link vs path, link restoration vs path restoration
Resource management: dedicated vs shared.
• Robust optimization.