This course will teach students constrained optimization problems and associated solution methods, how to implement and apply linear and mixed integer linear programs to solve such problems using Julia/JuMP, and the practical application of such techniques in energy systems engineering.

The course will first introduce students to the theory and mathematics of constrained optimization problems and provide a brief introduction to linear programming, including problem formation and solution algorithms.

Next, to build hands-on experience with optimization methods for energy systems engineering, the course will introduce students to several canonical problems in electric power systems planning and operations, including: economic dispatch, unit commitment, optimal network power flow, and capacity planning.

Finally, several datasets of realistic power systems are provided which students will use in conjunction with building a model for a course project that answers a specific power systems question.

Course structure

The course will consist of lectures, labs, and seminars where students will engage with foundational concepts, hands-on applications in an algebraic modeling language, and methods and limitations of the state-of-the-art.

Course materials

Course materials and sample code will be available publicly at the course repo throughout the term. These are being jointly developed with Prof. Jesse Jenkins for use also in a course at a Princeton (MAE / ENE 539).

Course schedule

This course will be taught remote in FA20.

View on Schedule of Classes