Computational Methods in Optimization

Ects : 5
Volume horaire : 18

Description du contenu de l'enseignement :
An introduction to mathematical optimization, including techniques for the solution and analysis of deterministic linear models used in operations research. Primary types of models addressed are linear programming, network flow, and integer linear programming. The course emphasizes the application of mathematics to the solution of optimization problems, effective modeling of optimization problems, the use of algebraic modeling languages, and the use of commercial solvers like CPLEX and JuMP, a domain-specific modeling language for mathematical optimization embedded in Julia. This course addresses a wide range of topics related to the computational methods encountered in optimization applications. The lectures cover both the theoretical aspects of computation and computation in practice, attempting to bridge the gap between the two. Assigned exercises will focus on employing the computational methods discussed in class to real-world applications. Typical coverage will include data structures, design and analysis of algorithms (column generation and constraints separations), programming paradigms and languages, development tools and environments, numerical analysis, and implementation. Different families of exact methods will be presented in detail with a special attention to branch-and-cut and branch-and-price algorithms. The course aims to develop the capacity of analysis and modelling of decision problems, emphasizing the proper solving techniques and algorithms as well. Several sessions will be devoted to discussing and solving case studies coming from real-world application in data science.