Mathematical optimisation theory and applications

Lecturers

Dr Hoa T. Bui, Curtin University and Dr Vinesha Peiris, Curtin University

Synopsis

Techniques of mathematical optimisation are ubiquitous in today’s world. They form the backbone of operations research and associated tools like Gurobi. They motivate the popular backpropagation method used in training neural networks. And they are foundational in modern machine learning and data science, where their canonical problem structures are used to model essential applications such as classification and regression. In this course, we sample the discipline with a big-picture approach from duality theory and generalised convexity to algorithms and their important applications such as locations problems, scheduling problems and approximation problems. By the end of the course, students will apply their knowledge to real-world applications, utilising the popular tools such as Gurobi.

Course Overview

Week 1: 

  • We will introduce the essentials of convex optimisation theory, with a particular focus on duality theory, with emphasis on intuitively gleaning why that theory is so flexible.

Week 2:

  • We will study duality in integer programming and its applications in outer approximation methods and generalised Bender decomposition methods — the most important techniques to tackle large scale mixed integer linear/nonlinear problems.

Week 3:

  • We will study many powerful algorithms that the convex optimisation theory motivates. Particular emphasis will be given to (Augmented) Lagrangian duality, and its utility for reformulating constrained problems into unconstrained ones.

Week 4:

  • We will learn the basics of approximation theory and apply optimisation and approximation techniques to tackle applications in deep learning and neural networks.

Prerequisites

  • At a minimum, the successful student will have taken courses in linear algebra and real analysis, and they should be familiar with the basics of programming (an introductory course or equivalent experience in C++, Julia, Python, Matlab, or similar should suffice). We will provide detailed instructions in advance of the class for students to install Anaconda Python and other add-ons prior to the course. If students run into problems, we can work to sort those problems out in week 1. We will not begin programming until week 2.

Assessment

  • TBA

Attendance requirements

  • TBA

Resources/pre-reading

TBA

Not sure if you should sign up for this course?

Check back for pre-enrolment QUIZ details so you can self-evaluate and get a measure of the key foundational knowledge required.

Dr Hoa T. Bui, Curtin University

Dr Vinesha Peiris, Curtin University