Learning and Optimisation