/EDUCATION/MATH3082
MATH3082: Optimisation
Third Year, 2025/26 · Semester 2
Overall mark 88%
Linear and nonlinear optimisation, with a group study of electricity dispatch, resource limits, and emissions constraints.
SKILLS Mathematical Modelling · Linear Programming · Convex Optimisation · Sensitivity Analysis
TECHNOLOGIES Julia · JuMP · HiGHS · Gurobi · Jupyter
What the module covered
This module covered linear programming, the simplex method, duality, complementary slackness, and sensitivity analysis. It also introduced convex and nonlinear optimisation, gradient and Newton methods, quadratic programming, and the Karush–Kuhn–Tucker conditions.
For the group coursework, we modelled electricity generation over peak and base-load periods in Julia using JuMP. Starting with a least-cost dispatch model, we added a generator’s weekly energy limit, an emissions cap, and the option to leave some demand unmet at a penalty. The notebooks compared simplex and interior-point methods and examined generation schedules, marginal prices, and sensitivity to the load-shedding penalty.
What I took from it
The energy problems connected abstract optimisation concepts to a model with interpretable variables and constraints. A resource limit could couple decisions across time periods, while dual values explained the marginal cost of meeting demand or tightening a constraint. The solver comparison also needed care: these were small problems, and timing differences alone were not enough to judge how the methods would scale.