Section outline
-
The course will, through presentation of actual working cases and project work, enable the student to produce and/or appropriately use software tools for the support to complex decisions (mainly at the corporate/industrial level), in particular those based on mathematical optimization techniques. The course is focused on practical aspects of these tools (modeling languages and systems, solvers and interfaces, algorithmic parameters, ...) and has a strong project aspect in order to familiarize the students, in particular, with the specific computer science aspects of these activities. However, since these tools are based on complex algorithmic schemes and rigorously defined mathematical properties, it is at the same time necessary to provide the students with appropriate consciousness of these foundational aspects, in particular whenever this is necessary to better understand their use or design more efficient and effective approaches; a particularly relevant case is that of handling the issue of uncertainty in the data of the problem.
Program:
Introduction (6 hours)
-
Decision theory, the decision process in a business environment
-
Structure of Model-Driven Decision Support Systems
-
Review of mathematical optimization (10 hours)
Linear Programming (LP) problems
Integer Linear Programming (ILP) problems
Algorithms for LP
Algorithms for ILP
LP and ILP solvers (16 hours)
LP and ILP solvers: software structure.
Instances: API, modeling languages, modeling systems
Practical issues in the solution of LPs and ILPs
Methodologies to improve solver effectiveness (16 hours)
The general principle: develop a better formulation
Cutting planes
Dynamic programming
Column generation and decomposition