MATH2070/MATH2970 Optimisation and Financial
Optimisation and Financial
Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: THEend8_
MATH2070/MATH2970
Optimisation and Financial
Mathematics
As the name suggests, there are two key parts to this course.
Optimisation is about how to use mathematics to make optimal decisions.
• Maximise profit
• Maximise efficiency of a product design
• Minimise transportation cost of deliveries
• Maximise predictive power of AI
We will mostly focus on optimising linear quantities with linear constraints, “linear pro-
gramming”. This is one of the most widely used (and profitable!) concepts in mathematics.
We will then look at nonlinear problems, which are more complicated but still very
important (e.g. science, engineering, machine learning). The techniques here will be useful
in the financial mathematics section too.
Optimisation and Financial Mathematics
Financial mathematics is exactly as the name suggests: the mathematics of financial
markets.
Modern finance requires a quantitative understanding of economics, markets and
decision-making.
Since it relies on predicting the future, managing uncertainty is a key aspect of financial
mathematics (less common in models for physics, engineering, etc.).
We will try to answer three basic questions:
• How do you make financial decisions based on an uncertain future?
• How can you construct a mathematical model of financial markets (e.g. stock
markets)?
• How do you find an optimal investment strategy? — this is optimisation!
2
CHAPTER 1. COURSE OVERVIEW 3
About me
My background:
• Bachelor’s degree in maths, computer science & mathematical economics (ANU)
• Risk management quant, Macquarie Group: expert in modelling ‘market risk’
• DPhil in maths (Oxford): academic research in optimisation algorithms
• Joined USyd in 2022
Course Content
• Optimisation (≈ 6 weeks)
– Linear Programming (theory and methods)
– Nonlinear optimisation with and without constraints (theory)
• Probability review (≈ 1 week)
• Financial Mathematics (≈ 5 weeks)
– Utility Theory (decision-making with uncertainty)
– Portfolio Theory (investment decision-making, modelling financial markets)
• Revision (≈ 1 week)
There are no assigned textbooks (lectures are self-contained) but some good references
are given in the reading list on Canvas.
Prerequisites
• Single-variable calculus (e.g. MATH1X21) and linear algebra (e.g. MATH1X02)
• MATH2970: advanced versions or ≥ 65 in mainstream versions
• Formal prerequisites on unit outlines
Software
Being able to use and write software is an important part of this course.
We will using Python, one of the most popular programming languages in use today.
• I recommend using Anaconda (https://www.anaconda.com/products/individu
al)
– Contains Python plus many standard packages for doing mathematics (linear
algebra, optimisation, etc).
– Free, so you can install it on your own computer
• Information about installing Python and writing/running code is on Canvas
CHAPTER 1. COURSE OVERVIEW 4
Format
The contact hours for the course are
• 3hrs of lectures per week (Tue 1–2pm & 3–4pm, Wed 10–11am)
• Weekly 1hr labs, covering coding (starting in week 1, not running week 13)
• Weekly 1hr tutorials, covering theory (starting in week 2, running until end of
semester)
Lectures are in-person (but recorded), labs and tutorials are in-person only.
Communication
• Check Canvas & Ed for all announcements and resources
• Please post general questions about admin or course content in the Ed discussion
forum
• Send me an email for confidential matters ([email protected])
Assessment
Assessment
• Assignment 15%: pen-and-paper assignment, due week 6
• Online quiz 10%: short quiz in week 9
• Computer project 15%, due week 13
• Final exam 60%
• MATH2970: same but some extra/harder questions
Late submissions of assignments allowed for up to 10 days (5% per penalty day or
extension).
See unit outline (link on Canvas) for details.
Generative AI/ChatGPT
You have probably heard lots about ChatGPT and other generative AI tools.
You are not allowed to use such tools for assessment in this course (but I wouldn’t
recommend it anyway).
Image: Wall Street Journal, https://www.wsj.com/articles/ai-bot-chatgpt-needs-some-hel
p-with-math-assignments-11675390552
Chapter 2
Introduction to Optimisation
Optimisation
In general, optimisation is about choosing the best inputs, according to some measure
of ‘best’.
Mathematically speaking, an optimisation problem comprises:
• Input values we can control
• Optional constraints on the allowed inputs (e.g. all values must be ≥ 0)
• A quantity depending on the input values that we want to maximise or minimise
The input values are called decision variables and the quantity of interest is called the
objective function.
Simple Example
Find the dimensions of a cylinder with surface area S which maximises the volume V .
How would we write this formally (mathematically)?
Optimisation
Simple Example
Find the dimensions of a cylinder with surface area S which maximises the volume V .
The decision variables are the cylinder dimensions: radius r ∈ R and height h ∈ R.
The objective is V = πr2h (maximise). The constraints are 2πr2 + 2πrh = S for some
parameter S ≥ 0 (given input value, not being optimised), plus the hidden constraints
r ≥ 0 and h ≥ 0 (not given explicitly, implied by context!).
We write the problem mathematically as
max
r,h∈R
V (r, h) = πr2h,
s.t. 2πr2 + 2πrh = S, (“s.t.” = “subject to”)
r, h ≥ 0.
We write the decision variables under the max (or min), it helps to distinguish them from
parameters.
5
CHAPTER 2. INTRODUCTION TO OPTIMISATION 6
Optimisation: General Case
In general, a mathematical optimisation problem looks like
min
x∈Rn
f(x),
s.t. x ∈ Ω,
where x ∈ Rn are the decision variables, the objective function is f : Rn → R and the
constraints are represented by the set Ω ⊆ Rn.
This represents the constraints geometrically (the feasible region of space).
Usually we will write constraints as equations/inequalities, which implies a feasible
region (all x satisfying the (in)equations). For example, for the cylinder problem
Ω = {(r, h) ∈ R2 : 2πr2 + 2πrh = S, r ≥ 0, h ≥ 0}.
We usually write min rather than max (change max to min by taking negative of
objective function).
Motivation
Question
Why should we care about optimisation?
Optimisation naturally arises in the world:
• Molecules interact in chemical reactions to form new components until the potential
energy of their electrons is minimised
• Light follows the path which minimises travel time
• Soap films
• Evolution
• Classical mechanics (Lagrangian/Hamiltonian mechanics)
Motivation
Question
Why should we care about optimisation?
People try to make optimal decisions:
• Designing a portfolio of investments to maximise expected return (or minimise risk).
We will discuss this a lot in the second half of this course!
• Designing a product to minimise manufacturing costs and/or maximise product
performance
• Minimising boarding times at airports, or finding the order of plane takeoff to
minimise time
• Minimising fuel costs in transportation schedules (while making all deliveries)
• Minimising electricity generation costs while meeting all demand
• Training an AI model by maximising its predictive ability
Chapter 3
Linear Programming
Introduction
Our first category of optimisation problem is linear programming (LP). For LPs, we
have
• The objective function is linear in x
• The constraints are linear or affine (linear + constant) equalities/inequalities in x
Note: “programming” refers to planning, not computer coding (program = term for a
specific plan, often military logistics). Early history:
• Leonid Kantorovich (Russian mathematician, 1939): “The mathematical method of
production planning and organization”
• Tjalling Koopmans (Dutch mathematician/economist, 1942): solving shipping prob-
lems using LP
• George Dantzig (American mathematician, 1947): published the first algorithm to
solve any LP problem, called the simplex method.
Kantorovich and Koopmans received the 1975 Nobel Prize in Economics “for their
contributions to the theory of optimum allocation of resources”.
Importance of LPs
LPs are probably the most important category of optimisation problem for real-world
problems:
• Scheduling of workers, timetabling, ...
• Production management, managing factory lines...
• Transportation: selection of routes, allocation of resources, ...
USyd’s course QBUS2310 is entirely about solving business management problems
with optimisation, mostly linear programming!