CS416-15 Optimisation Methods

Academic year
25/26
Department
Computer Science
Level
Undergraduate Level 4
Module leader
Fanghui Liu
Credit value
15
Module duration
10 weeks
Assessment
Multiple
Study location
University of Warwick main campus, Coventry

Introductory description

At their core, many real-world problems involve optimisation problems that are complex and challenging, and they require principled mathematical and algorithmic solutions. Companies such as Google and Facebook use powerful algorithmic primitives such as gradient descent to solve a host of challenging problems. These primitives in turn are based on a beautiful mathematical theory developed in the context of convex and discrete optimisation, especially in the era of modern machine learning.

Module aims

The aim is to learn the mathematical and algorithmic foundations underpinning optimization problems that are ubiquitous in applications in machine learning, data analysis, and scientific computing.

There are several interrelated aims of this module:
(1) to expose students to optimisation methods that have found significant applications in machine learning
(2) to develop a toolkit of mathematical methods that can be used to tackle real-world problems
(3) to rigorously analyse these methods.

Outline syllabus

This is an indicative module outline only to give an indication of the sort of topics that may be covered. Actual sessions held may differ.

Some of the following topics will be discussed. The selection of topics may vary from year to year.

Convex optimisation methods and their applications in machine learning.
Gradient descent, Stochastic Gradient Descent.
Newton's methods, adaptive methods.
Constrained optimization, KKT condition.
Projected gradient descent.
Typical applications in machine learning, e.g., least squares and linear regression, over-parameterization, min-max optimization, edge of stability.

Learning outcomes

By the end of the module, students should be able to:

Indicative reading list

Please see Talis Aspire link for most up to date list.

View reading list on Talis Aspire

Subject specific skills

  1. Learn basic optimisation methods which are ubiquitous in applications in machine learning, data analysis and scientific computing.
  2. Strengthen the mathematical background in analysis and algebra.
  3. Learn how to analyse optimisation methods with mathematical rigor.
  4. Get programming experience by developing these methods in software and see different scenarios of application

Transferable skills

  1. Develop analytical thinking by working with mathematical concepts.
  2. Develop research & problem solving skills, particularly for mathematical problems. Students are exposed to some paradigms of optimisation, and later they develop their own approach to solve problems.
  3. Communication skills - Learn how to express themselves with mathematical precision.

Study time

Type Required
Lectures 20 sessions of 1 hour (13%)
Seminars 10 sessions of 1 hour (7%)
Practical classes 10 sessions of 1 hour (7%)
Private study 110 hours (73%)
Total 150 hours

Private study description

Private study and revision.

Costs

No further costs have been identified for this module.

You do not need to pass all assessment components to pass the module.

Students can register for this module without taking any assessment.

Assessment group D5
Weighting Study time Eligible for self-certification
Practical Assignment 1 15% Yes (extension)

Lab Exercise

Practical assignment 2 15% Yes (extension)

Lab Exercise

In-person Examination 70% No

CS416 exam


  • Answerbook Pink (12 page)
  • Students may use a calculator
Assessment group R3
Weighting Study time Eligible for self-certification
In-person Examination 100% No

CS416 resit examinations


  • Answerbook Pink (12 page)
  • Students may use a calculator
Feedback on assessment

Past exam papers for CS416

Pre-requisites

We shall assume the standard general background that 3rd year Computer Science and Discrete Mathematics students have.

Courses

This module is Optional for:

  • Year 5 of UCSA-G504 MEng Computer Science (with intercalated year)
  • Year 4 of UCSA-G503 Undergraduate Computer Science MEng

This module is Option list A for:

  • Year 4 of USTA-G304 Undergraduate Data Science (MSci)

This module is Option list B for:

  • Year 4 of UCSA-G4G3 Undergraduate Discrete Mathematics
  • Year 5 of UCSA-G4G4 Undergraduate Discrete Mathematics (with Intercalated Year)