Skip to main content Skip to navigation

MA934-15 Numerical Algorithms and Optimisation

Department
Warwick Mathematics Institute
Level
Taught Postgraduate Level
Module leader
Radu Cimpeanu
Credit value
15
Module duration
5 weeks
Assessment
20% coursework, 80% exam
Study location
University of Warwick main campus, Coventry
Introductory description

N/A.

Module aims

Numerical Algorithms and Optimisation teaches students the theory and implementation of a set of computational algorithms that provide the fundamental toolkit for advanced data analysis, simulation and optimisation. The syllabus will be drawn from the following list of topics: algorithmic structures (iteration, recursion, memoization) and computational complexity, data structures (linked lists, stacks and queues, binary indexed trees), sorting and search algorithms, Fast Fourier Transform, automatic differentiation, linear systems and the Conjugate Gradient algorithm, Singular Value Decomposition, convex and nonconvex optimisation, constrained optimisation, linear programming, Dijkstra's algorithm and dynamic programming, discrete-event simulation.

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.

  • algorithmic structures (iteration, recursion, memoization) and computational complexity
  • data structures (linked lists, stacks and queues, binary indexed trees)
  • sorting and search algorithms
  • Fast Fourier Transform and its applications
  • Topics in numerical linear algebra: solving linear systems, conjugate gradient algorithm, singular value decomposition
  • unconstrained continuous optimisation: multivariate minimisation, Nelder-Mead algorithm, automatic differentiation, gradient descent
  • constrained continuous optimisation: method of Lagrange multipliers, linear programming
  • discrete optimisation: Dijkstra's algorithm, dynamic programming, combinatorial optimisation
Learning outcomes

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

  • Students should be able to demonstrate a deep fundamental understanding of the most important computational algorithms used for advanced data analysis, mathematical modelling and optimisation of complex systems. They should be able to apply both discrete and continuous approaches depending on the requirements of a particular problem. They should understand algorithmic structures like iteration, recursion and memorization and be able to apply them.
  • Mathematical manipulation and computational problem-solving techniques.
  • Identify the most appropriate approach for computational solution of a mathematical problem and understand problems that can arise such as numerical error, poor conditioning or instability. Appreciate the computational complexity of an algorithm and the practical constraints it imposes on problem solving. Read and understand relevant research papers.
  • Write efficient Julia code for computational solution of analysis and optimisation problems, select appropriate data structures and algorithms, present and visualise algorithm outputs and results of analyses in a clear and informative way.
Indicative reading list

W. H. Press et al., “Numerical recipes in C”, Cambridge University Press
Research articles to be provided to the students

Subject specific skills

See learning outcomes.

Transferable skills

Students will acquire key reasoning and problem solving skills which will empower them to address new problems with confidence.

Study time

Type Required
Lectures 10 sessions of 2 hours (13%)
Tutorials 10 sessions of 2 hours (13%)
Private study 110 hours (73%)
Total 150 hours
Private study description

Review lectured material and work on set exercises.

Costs

No further costs have been identified for this module.

You must pass all assessment components to pass the module.

Assessment group D
Weighting Study time
Assessed coursework 20%
Written examination 40%

WILL BE CONDUCTED ONLINE IN 2020/21

Oral examination 40%
Feedback on assessment

Written feedback on written assignments plus informal oral feedback during classwork sessions
Oral feedback on the oral examination
Written feedback on the class test

Past exam papers for MA934

Courses

This module is Core for:

  • RMAA-G1PG Postgraduate Research Mathematics of Systems
    • Year 1 of G1PG Mathematics of Systems
    • Year 1 of G1PG Mathematics of Systems
  • TMAA-G1PF Postgraduate Taught Mathematics of Systems
    • Year 1 of G1PF Mathematics of Systems
    • Year 1 of G1PF Mathematics of Systems

This module is Optional for:

  • Year 2 of TPXA-F345 Postgraduate Taught Modelling of Heterogeneous Systems (PGDip)

This module is Option list B for:

  • Year 1 of TPXA-F345 Postgraduate Taught Modelling of Heterogeneous Systems (PGDip)