A matrix difference equation is a difference equation in which the value of a vector (or sometimes, a matrix) of variables at one point in time is related to its own value at one or more previous points in time, using matrices. The order of the equation is the maximum time gap between any two indicated values of the variable vector. For example,
Contents
- Non homogeneous first order case and the steady state
- Stability of the first order case
- Solution of the first order case
- Extracting the dynamics of a single scalar variable from a first order matrix system
- Solution and stability of higher order cases
- Nonlinear matrix difference equations Riccati equations
- References
is an example of a second-order matrix difference equation, in which x is an n × 1 vector of variables and A and B are n×n matrices. This equation is homogeneous because there is no vector constant term added to the end of the equation. The same equation might also be written as
or as
The most commonly encountered matrix difference equations are first-order.
Non-homogeneous first-order case and the steady state
An example of a non-homogeneous first-order matrix difference equation is
with additive constant vector b. The steady state of this system is a value x* of the vector x which, if reached, would not be deviated from subsequently. x* is found by setting
where
Stability of the first-order case
The first-order matrix difference equation [xt - x*] = A[xt-1-x*] is stable—that is,
Solution of the first-order case
Assume that the equation has been put in the homogeneous form
and so forth, so that by mathematical induction the solution in terms of t is
Further, if A is diagonalizable, we can rewrite A in terms of its eigenvalues and eigenvectors, giving the solution as
where P is an n × n matrix whose columns are the eigenvectors of A (assuming the eigenvalues are all distinct) and D is an n × n diagonal matrix whose diagonal elements are the eigenvalues of A. This solution motivates the above stability result:
Extracting the dynamics of a single scalar variable from a first-order matrix system
Starting from the n-dimensional system
where the parameters
Thus each individual scalar variable of an n-dimensional first-order linear system evolves according to a univariate nth degree difference equation, which has the same stability property (stable or unstable) as does the matrix difference equation.
Solution and stability of higher-order cases
Matrix difference equations of higher order—that is, with a time lag longer than one period—can be solved, and their stability analyzed, by converting them into first-order form using a block matrix. For example, suppose we have the second-order equation
with the variable vector x being n×1 and A and B being n×n. This can be stacked in the form
where
Also as before, this stacked equation and thus the original second-order equation are stable if and only if all eigenvalues of the matrix L are smaller than unity in absolute value.
Nonlinear matrix difference equations: Riccati equations
In linear-quadratic-Gaussian control, there arises a nonlinear matrix equation for the reverse evolution of a current-and-future-cost matrix, denoted below as H. This equation is called a discrete dynamic Riccati equation, and it arises when a variable vector evolving according to a linear matrix difference equation is controlled by manipulating an exogenous vector in order to optimize a quadratic cost function. This Riccati equation assumes the following, or a similar, form:
where H, K, and A are n×n, C is n×k, R is k×k, n is the number of elements in the vector to be controlled, and k is the number of elements in the control vector. The parameter matrices A and C are from the linear equation, and the parameter matrices K and R are from the quadratic cost function. See here for details.
In general this equation cannot be solved analytically for
In most contexts the evolution of H backwards through time is stable, meaning that H converges to a particular fixed matrix H* which may be irrational even if all the other matrices are rational. See also Stochastic control#Discrete time.
A related Riccati equation is
in which the matrices X, A, B, C, and E are all n×n. This equation can be solved explicitly. Suppose
so by induction the form
Thus