# Elementwise Derivative of a Matrix Exponential

• A

## Summary:

How can I analytically or numerically maximise an expression involving matrix exponentials?

## Main Question or Discussion Point

Hi all. A problem has arisen whereby I need to maximize a function which looks like $$f(A) = \mathbf{w}^T \left[\int_0^t e^{\tau A} M e^{\tau A^T} d\tau \right]^{-1} \mathbf{w}$$ with respect to the nxn matrix A (here, M is a covariance matrix, so nxn symmetrix and positive-definite, w is an n-dimensional vector, so f(A) is a scalar). I want to differentiate wrt elements of A, and by using some matrix identities I can make some headway into this. But eventually I have to differentiate the matrix exponential wrt its elements. This looks to be a challenging problem - similar problems seem to have arisen in the context of optimal control theory but I'm not sure this one has been addressed. I'm happy to use a numerical approach in the end, but would like to derive some gradient that can be climbed, perhaps using an approximation to the derivative of the matrix exponential.

I found this paper on the directional derivative of the matrix exponential (https://www.sciencedirect.com/science/article/pii/S0196885885710172). Am I correct in saying that my problem reduces to taking directional derivatives along the matrix direction $$\mathbf{w} \mathbf{w}^T$$? If so, maybe these results could be used. Otherwise, each elementwise derivative is actually a directional derivative itself, but I'd need to find n^2 of them which would be computationally intensive. If not, is there perhaps some other more general way of numerically taking derivatives of difficult matrix functions such as this?

Last edited:

Related Linear and Abstract Algebra News on Phys.org
fresh_42
Mentor
How do you define the integral of a matrix?

It's an elementwise integral. This is a standard integral called the controllability Gramian, whose solution is given by a Lyapunov equation.

I've now managed to differentiate the function f(A) with respect to the elements of A and optimise numerically. However it's very slow as I have to solve two Lyapunov equations for each element of A I want to get the derivative of, which for now is all N^2 elements. And I have to do this iteratively as I climb the gradient to optimise f(A). I'm hoping there is a way to increase efficiency by only differentiating along directions that affect f(A).