Course Title: Optimisation

Part A: Course Overview

Course Title: Optimisation

Credit Points: 12.00


Course Code




Learning Mode

Teaching Period(s)


City Campus


171H School of Science


Sem 2 2021,
Sem 2 2022

Course Coordinator: Andrew Eberhard

Course Coordinator Phone: +61 3 9925 2616

Course Coordinator Email:

Course Coordinator Location: 15.04.004

Course Coordinator Availability: By appointment, by email

Pre-requisite Courses and Assumed Knowledge and Capabilities

You are assumed to have completed an introductory course in vector calculus, and have some familiarity with computing and the writing of simple programs in the MATLAB programming language:

Math1142/MATH1144: Calculus and Analysis 1&2 or equivalent
Math2311 – Applied Linear Algebra or equivalent
Math2109 – Mathematical Computing and Algorithms or equivalent course in MATLAB programming language. 

Course Description

Optimisation problems arise in many areas of engineering, science, economic modelling, resource modelling and operations research. These problems can arise via the need to find a best approximation or ‘fit’ to a set of data or to use finite resources equitably and efficiently. Indeed, many physical laws are governed by the principle of least action. The solution of such problems often requires the use of modern digital computers and algorithms to approximate a solution. This course gives an introduction to the main ideas behind these algorithms and the mathematical theory underpinning their use. We consider what leads to convergence and efficiency for various algorithms. MATLAB, a modern computer programming language will be used to implement some algorithms to illustrate these principles. Skills in formulation and the reformulation of optimization problems will be introduced both in problem classes and using specific examples. Certain problem classes have associated with them an efficient solver and we will practise calling standard solvers for these problems and interpreting the output. Examples of problems will be sort from statistics, machine learning and mathematical modelling.

Objectives/Learning Outcomes/Capability Development

This course contributes to the following Program Learning Outcomes for BP083 Bachelor of Science (Applied Mathematics and Statistics) and BP331 Bachelor of Analytics):   PLO2. Knowledge and Technical Competence: • use the appropriate and relevant, fundamental and applied mathematical and statistical knowledge, methodologies and modern computational tools.   PLO3. Problem-solving: • synthesise and flexibly apply knowledge to characterise, analyse and solve a wide range of problems • balance the complexity / accuracy of the mathematical / statistical models used and the timeliness of the delivery of the solution.

Course Learning Outcomes (CLOs):

On completion of this course, you should be able to :

  1. Model a real-word problem as an optimisation program and discuss the limits of the model and how its solutions can contribute to decision-making
  2. Contrast the relationship between different formulations of the same problem and how these solutions relate to each other.
  3. Explain how the mathematical basis for optimisation methods can be related poor behaviour of an algorithm when applied to a particular problem, and recommend an ameliorated strategy.
  4. Differentiate between various optimisation problem classes and explain which optimisation solver is suitable for each class of problem. Call on some of these solvers to solve problems and interpreting the output.
  5. Analyse the mathematical properties of an optimisation problem and select the most appropriate methods to solve it.

Overview of Learning Activities

Hand-written assignments will be used to reinforce conceptual material introduced in the online videos. For example, you may be asked to solve simple optimisation problems using optimality conditions and to work through an iteration of an algorithm by hand so as to become familiar with its logic. You will also test the performance of these algorithms using code provided by the lecturer, written in a modern programming language. Weekly computer laboratory sessions will be used to help you understand the use of computer programming languages to code algorithms. Lectorial Q&A sessions will also help you to understand the lecture materials (for instance, when it is appropriate to use a particular method). Activities are designed to encourage decision making with regards to the relevance of algorithms for the solution of a particular problem, how these solvers work and how they may fail to converge, how to call the standard solvers and how to interpret the output.

The assessment will be a combination of hand-written work, computer generated output in conjunction with a written interpretation of this output and an end-of-semester online test.

Overview of Learning Resources

Typeset lecture notes will (where possible) be provided each week. There is no prescribed textbook but a number of recommended references exist in the RMIT central library. A website will be used to distribute assignments and teaching materials.

A Library Guide is available at:

Overview of Assessment

Assessment Tasks:

Assessment Task 1: Two take home written assignments
Weighting 2 x 15%.= 30%
This assessment task supports CLOs 1, 2 , 3, 4, 5,

Assessment Task 2: Practical computer laboratory session
Weighting 50 %
This assessment task supports CLOs 3,4,5

Assessment Task 3: End of semester online, timed, summative quiz
Weighting 20%
This assessment supports CLOs 1, 2, 3, 4, 5