- Matrix difference equation
-
A matrix difference equation[1][2] 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. Occasionally, the time-varying entity may itself be a matrix instead of a vector. The order of the equation is the maximum time gap between any two indicated values of the variable vector. For example,
- xt = Axt − 1 + Bxt − 2
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
- xt + 2 = Axt + 1 + Bxt
or as
- xn = Axn − 1 + Bxn − 2.
The most commonly encountered matrix difference equations are first-order.
Non-homogeneous first-order matrix difference equations 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 xt = xt − 1 = x * in the difference equation and solving for x* to obtain
where I is the n×n identity matrix, and where it is assumed that [I − A] is invertible. Then the non-homogeneous equation can be rewritten in homogeneous form in terms of deviations from the steady state:
Stability of the first-order case
The first-order matrix difference equation [xt - x*] = A[xt-1-x*] is stable -- that is, xt converges asymptotically to the steady state x* -- if and only if all eigenvalues of the transition matrix A (whether real or complex) have an absolute value which is less than 1.
Solution of the first-order case
Assume that the equation has been put in the homogeneous form yt = Ayt − 1. Then we can iterate and substitute repeatedly from the initial condition y0, which is the initial value of the vector y and which must be known in order to find the solution:
- y1 = Ay0,
- y2 = Ay1 = AAy0 = A2y0,
- y3 = Ay2 = AA2y0 = A3y0,
and so forth. By induction, we obtain the solution in terms of t:
- yt = Aty0 = PDtP − 1y0,
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: At shrinks to the zero matrix over time if and only if the eigenvalues of A are all less than unity in absolute value.
Extracting the dynamics of a single scalar variable from a first-order matrix system
Starting from the n-dimensional system yt = Ayt − 1, we can extract the dynamics of one of the state variables, say y1. The above solution equation for yt shows that the solution for y1,t is in terms of the n eigenvalues of A. Therefore the equation describing the evolution of y1 by itself must have a solution involving those same eigenvalues. This description intuitively motivates the equation of evolution of y1, which is
where the parameters ai are from the characteristic equation of the matrix A:
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
- xt = Axt − 1 + Bxt − 2
with the variable vector x being n×1 and A and B being n×n. This can be stacked in the form
where I is the n×n identity matrix and 0 is the n×n zero matrix. Then denoting the 2n×1 stacked vector of current and once-lagged variables as zt and the 2n×2n block matrix as L, we have as before the solution
- zt = Ltz0.
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 evolution backwards through time 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 to be controlled by manipulating an exogenous vector in order to optimize a quadratic cost function. This Riccati equation assumes the following form 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.
In general this equation cannot be solved analytically for Ht in terms of t ; rather, the sequence of values for Ht is found by iterating the Riccati equation. However, it was shown in [3] that this Riccati equation can be solved analytically if R is the zero matrix and n=k+1, by reducing it to a scalar rational difference equation; moreover, for any k and n if the transition matrix A is nonsingular then the Riccati equation can be solved analytically in terms of the eigenvalues of a matrix, although these may need to be found numerically.[4]
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.
A related Riccati equation[5] is
- Xt + 1 = − (E + BXt)(C + AXt) − 1
in which the matrices X, A, B, C, and E are all n×n. This equation can be solved explicitly. Suppose , which certainly holds for t=0 with N0 = X0 and with D0 equal to the identity matrix. Then using this in the difference equation yields
- = − (EDt + BNt)[CDt + ANt] − 1
so by induction the form holds for all t. Then the evolution of N and D can be written as
Thus
References
- ^ Cull, Paul; Flahive, Mary; and Robson, Robbie. Difference Equations: From Rabbits to Chaos, Springer, 2005, chapter 7; ISBN 0-387-23234-6.
- ^ Chiang, Alpha C., Fundamental Methods of Mathematical Economics, third edition, McGraw-Hill, 1984: 608–612.
- ^ Balvers, Ronald J., and Mitchell, Douglas W., "Reducing the dimensionality of linear quadratic control problems," Journal of Economic Dynamics and Control 31, 2007, 141–159.
- ^ Vaughan, D. R., "A nonrecursive algebraic solution for the discrete Riccati equation," IEEE Transactions on Automatic Control 15, 1970, 597-599.
- ^ Martin, C. F., and Ammar, G., "The geometry of the matrix Riccati equation and associated eigenvalue method," in Bittani, Laub, and Willems (eds.), The Riccati Equation, Springer-Verlag, 1991.
See also
- Matrix differential equation
- Difference equation
- Dynamical system
- Matrix Riccati equation#Mathematical description of the problem and solution
Categories:- Linear algebra
- Recurrence relations
Wikimedia Foundation. 2010.