This graduated-level course introduces analytic tools and optimization methods that are suitable for large-scale problems arising in data science applications. The course presents both basic and advanced concepts of optimization and explores several algorithms that are efficient for networks problems.
The student will acquire the ability to formulate, in mathematical terms, problems related to profit maximization and cost minimization, optimization of resources, and traffic network equilibria.
The goals of the course are:
Knowledge and understanding: the aim of the course is to acquire advanced knowledge that allows students to study optimization problems and model techniques of large-scale decision-making problems. The students will be able to use algorithms for both linear and nonlinear programming problems.
Applying knowledge and understanding: students will acquire knowledge useful to identify and model real-life decision-making problems. In addition, through real examples, the student will be able to implement correct solutions for complex problems.
Making judgments: students will be able to choose and solve autonomously complex decision-making problems and to interpret the solutions.
Communication skills: students will acquire base communication and reading skills using technical language.
Learning skills: the course provides students with theoretical and practical methodologies and skills in to deal with large-scale optimization problems.
There will be both classroom lessons and laboratory lessons. For each topic, exercises will be solved by the teacher or proposed to students.
Should teaching be carried out in mixed mode or remotely, it may be necessary to introduce changes with respect to previous statements, in line with the programme planned and outlined in the syllabus.
Learning assessment may also be carried out on line, should the conditions require it.
Linear Programming (LP) (about 13 h)
LP models; Graphical method; Simplex method; Duality; Sensitivity analysis
Integer Linear Programming (ILP) (about 9 h)
Branch & Bound method; 0-1 programming; Knapsack problem
Software (about 5 hours)
Excel, Mathematica, Wolfram Code, Lingo
Network problems (about 13 h)
Graphs (Kruskal, Dijkstra, Bellman-Kalaba algorithms)