- #1
madness
- 815
- 70
- TL;DR Summary
- How can I analytically or numerically maximise an expression involving matrix exponentials?
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?
Thanks for your help!
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?
Thanks for your help!
Last edited: