MATH3404 Optimisation Theory