Adjoint sensitivity methods

Lead Research Organisation: University of Oxford
Department Name: Maths Modelling of Random Systems CDT


The derivative of a function measures the sensitivity of the target output variable to changes in the input parameters. Several applications require the calculation of derivatives with respect to a large number of input parameters. The financial market, for example, is driven by many factors (e.g. interest rates) and it is key to understand how changes in each factor can affect the price of a financial product.

If we individually compute derivatives for each input parameter, computational cost scales linearly with the number of input parameters. Linear cost is often not good enough for a large/vast amount number of input parameters. Instead, using an adjoint formulation yields a surprising result: "Given a computer program to compute a scalar output, we can obtain the sensitivity of that output to all the program's inputs for a cost which is no more than a factor 4 greater than the original evaluation cost." (Preprint of the book "Smoking Adjoints" by Prof. Mike Giles). These adjoint sensitivity methods go under the name of automatic (or algorithmic) differentiation in computer science, backpropagation in machine learning, and AAD in finance.

In finance, asset price dynamics are often assumed to follow a (random) model. A necessary requirement of a good model is that it is able to match prices observed in the market as accurately as possible. In practice, a financial model often has free parameters that are calibrated in such a way that minimizes the difference between prices resulting from the model and prices observed in the market. In order to find the best choice for the free parameters, one might proceed iteratively with the search direction given by the sensitivity of the price difference to changes in the free parameters (gradient-based optimization approach). Thus, one needs to compute derivatives for each iteration. While adjoint sensitivity methods guarantee the efficient computation of derivatives of one financial product, each financial product requires a new sensitivity computation. As a consequence, computational cost increases as the number of financial products increases. This research project develops a technique to render computational cost independent of the number of financial products used in the calibration procedure.

By decreasing degree of relevance, this project falls within the following EPSRC research areas: (1) Numerical Analysis, (2) Operational Research, (3) Artificial Intelligence Technologies. The research project is in collaboration with HSBC. The aim of our collaboration is to compute adjoint sensitivities of a financial workflow with multiple components that are approximated by neural networks.


10 25 50

Studentship Projects

Project Reference Relationship Related To Start End Student Name
EP/S023925/1 31/03/2019 29/09/2027
2435699 Studentship EP/S023925/1 30/09/2020 29/09/2024 Filippo De Angelis