Management of energy systems is one of the biggest challenges of our time. The daily demand for energy increases constantly for many reasons, including the worldwide spreading of the electrification/decarbonization of vehicles used for public and private transportation. Moreover, the wide use of renewable energies, also aimed at limiting polluting emissions, can create instability in the networks and uncertainty in energy production. The current production sources and the current infrastructure for transmission and distribution are likely to soon become insufficient to cope with these changes. Decision makers will, thus, need efficient and effective tools aimed at helping them to optimize operational and strategic decisions to be taken in the short, medium, and long term.

This course aims at providing the students with the background in mathematical optimization needed to play a fundamental role in the decision-making processes in energy systems. Mathematical optimization allows to formally state an extremely large variety of optimization problems as a so-called mathematical formulation. Once the problem is formalized, its optimal solution can be found by properly using mathematical optimization solvers or devising algorithms tailored for the specific problem.

In this course, we will code the formulations and run solvers thanks to the modeling language AMPL. Each of the lectures will focus on a particular optimization aspect and one or more energy applications. The applications covered will be: production, transmission, distribution of energy; energy markets; renewable energies; smart grids. All these problems are challenging because they include technical, economic, political, and ethical issues.

Warning: this is a course offered by the Computer Science Department. Basic knowledge of Unix OS and of shell commands is requested.