This project was part of the Advanced Applied Optimisation module, which loosely followed Convex Optimization by Stephen Boyd and Lieven Vandenberghe (Stanford). The coursework focused on building classifiers using optimisation techniques in CVXPy, without relying on standard machine learning libraries.
The goal was to apply concepts such as convexity, slack variables, and regularisation to real datasets, and to compare how different models (linear, quadratic, polynomial, and multi-class) handle classification problems.