fbpx
Wikipedia

Algebraic Riccati equation

An algebraic Riccati equation is a type of nonlinear equation that arises in the context of infinite-horizon optimal control problems in continuous time or discrete time.

A typical algebraic Riccati equation is similar to one of the following:

the continuous time algebraic Riccati equation (CARE):

or the discrete time algebraic Riccati equation (DARE):

P is the unknown n by n symmetric matrix and A, B, Q, R are known real coefficient matrices, with Q and R symmetric.

Though generally this equation can have many solutions, it is usually specified that we want to obtain the unique stabilizing solution, if such a solution exists.

Origin of the name edit

The name Riccati is given to these equations because of their relation to the Riccati differential equation. Indeed, the CARE is verified by the time invariant solutions of the associated matrix valued Riccati differential equation. As for the DARE, it is verified by the time invariant solutions of the matrix valued Riccati difference equation (which is the analogue of the Riccati differential equation in the context of discrete time LQR).

Context of the discrete-time algebraic Riccati equation edit

In infinite-horizon optimal control problems, one cares about the value of some variable of interest arbitrarily far into the future, and one must optimally choose a value of a controlled variable right now, knowing that one will also behave optimally at all times in the future. The optimal current values of the problem's control variables at any time can be found using the solution of the Riccati equation and the current observations on evolving state variables. With multiple state variables and multiple control variables, the Riccati equation will be a matrix equation.

The algebraic Riccati equation determines the solution of the infinite-horizon time-invariant Linear-Quadratic Regulator problem (LQR) as well as that of the infinite horizon time-invariant Linear-Quadratic-Gaussian control problem (LQG). These are two of the most fundamental problems in control theory.

A typical specification of the discrete-time linear quadratic control problem is to minimize

 

subject to the state equation

 

where x is an n × 1 vector of state variables, u is a k × 1 vector of control variables, A is the n × n state transition matrix, B is the n × k matrix of control multipliers, Q (n × n) is a symmetric positive semi-definite state cost matrix, and R (k × k) is a symmetric positive definite control cost matrix.

Induction backwards in time can be used to obtain the optimal control solution at each time,[1]

 

with the symmetric positive definite cost-to-go matrix P evolving backwards in time from   according to

 

which is known as the discrete-time dynamic Riccati equation of this problem. The steady-state characterization of P, relevant for the infinite-horizon problem in which T goes to infinity, can be found by iterating the dynamic equation repeatedly until it converges; then P is characterized by removing the time subscripts from the dynamic equation.

Solution edit

Usually solvers try to find the unique stabilizing solution, if such a solution exists. A solution is stabilizing if using it for controlling the associated LQR system makes the closed loop system stable.

For the CARE, the control is

 

and the closed loop state transfer matrix is

 

which is stable if and only if all of its eigenvalues have strictly negative real part.

For the DARE, the control is

 

and the closed loop state transfer matrix is

 

which is stable if and only if all of its eigenvalues are strictly inside the unit circle of the complex plane.

A solution to the algebraic Riccati equation can be obtained by matrix factorizations or by iterating on the Riccati equation. One type of iteration can be obtained in the discrete time case by using the dynamic Riccati equation that arises in the finite-horizon problem: in the latter type of problem each iteration of the value of the matrix is relevant for optimal choice at each period that is a finite distance in time from a final time period, and if it is iterated infinitely far back in time it converges to the specific matrix that is relevant for optimal choice an infinite length of time prior to a final period—that is, for when there is an infinite horizon.

It is also possible to find the solution by finding the eigendecomposition of a larger system. For the CARE, we define the Hamiltonian matrix

 

Since   is Hamiltonian, if it does not have any eigenvalues on the imaginary axis, then exactly half of its eigenvalues have a negative real part. If we denote the   matrix whose columns form a basis of the corresponding subspace, in block-matrix notation, as

 

then

 

is a solution of the Riccati equation; furthermore, the eigenvalues of   are the eigenvalues of   with negative real part.

For the DARE, when   is invertible, we define the symplectic matrix

 

Since   is symplectic, if it does not have any eigenvalues on the unit circle, then exactly half of its eigenvalues are inside the unit circle. If we denote the   matrix whose columns form a basis of the corresponding subspace, in block-matrix notation, as

 

where   and   result from the decomposition[2]

 

then

 

is a solution of the Riccati equation; furthermore, the eigenvalues of   are the eigenvalues of   which are inside the unit circle.

See also edit

References edit

  1. ^ Chow, Gregory (1975). Analysis and Control of Dynamic Economic Systems. New York: John Wiley & Sons. ISBN 0-471-15616-7.
  2. ^ William Arnold; Alan Laub (1984). "Generalized Eigenproblem Algorithms and Software for Algebraic Riccati Equations".
  • Peter Lancaster; Leiba Rodman (1995), Algebraic Riccati equations, Oxford University Press, p. 504, ISBN 0-19-853795-6
  • Alan J. Laub, "A Schur method for solving algebraic Riccati equations", Laboratory for Information and Decision Systems, MIT (Report LIDS-R-859).

External links edit

  • CARE solver help of MATLAB Control toolbox.
  • DARE solver help of MATLAB Control toolbox.
  • Python CARE and DARE solvers.
  • Mathematica function to solve the continuous-time algebraic Riccati equation.
  • Mathematica function to solve the discrete-time algebraic Riccati equation.

algebraic, riccati, equation, algebraic, riccati, equation, type, nonlinear, equation, that, arises, context, infinite, horizon, optimal, control, problems, continuous, time, discrete, time, typical, algebraic, riccati, equation, similar, following, continuous. An algebraic Riccati equation is a type of nonlinear equation that arises in the context of infinite horizon optimal control problems in continuous time or discrete time A typical algebraic Riccati equation is similar to one of the following the continuous time algebraic Riccati equation CARE ATP PA PBR 1BTP Q 0 displaystyle A T P PA PBR 1 B T P Q 0 or the discrete time algebraic Riccati equation DARE P ATPA ATPB R BTPB 1 BTPA Q displaystyle P A T PA A T PB R B T PB 1 B T PA Q P is the unknown n by n symmetric matrix and A B Q R are known real coefficient matrices with Q and R symmetric Though generally this equation can have many solutions it is usually specified that we want to obtain the unique stabilizing solution if such a solution exists Contents 1 Origin of the name 2 Context of the discrete time algebraic Riccati equation 3 Solution 4 See also 5 References 6 External linksOrigin of the name editThe name Riccati is given to these equations because of their relation to the Riccati differential equation Indeed the CARE is verified by the time invariant solutions of the associated matrix valued Riccati differential equation As for the DARE it is verified by the time invariant solutions of the matrix valued Riccati difference equation which is the analogue of the Riccati differential equation in the context of discrete time LQR Context of the discrete time algebraic Riccati equation editIn infinite horizon optimal control problems one cares about the value of some variable of interest arbitrarily far into the future and one must optimally choose a value of a controlled variable right now knowing that one will also behave optimally at all times in the future The optimal current values of the problem s control variables at any time can be found using the solution of the Riccati equation and the current observations on evolving state variables With multiple state variables and multiple control variables the Riccati equation will be a matrix equation The algebraic Riccati equation determines the solution of the infinite horizon time invariant Linear Quadratic Regulator problem LQR as well as that of the infinite horizon time invariant Linear Quadratic Gaussian control problem LQG These are two of the most fundamental problems in control theory A typical specification of the discrete time linear quadratic control problem is to minimize t 1T xtTQxt utTRut displaystyle sum t 1 T x t T Qx t u t T Ru t nbsp subject to the state equation xt Axt 1 But 1 displaystyle x t Ax t 1 Bu t 1 nbsp where x is an n 1 vector of state variables u is a k 1 vector of control variables A is the n n state transition matrix B is the n k matrix of control multipliers Q n n is a symmetric positive semi definite state cost matrix and R k k is a symmetric positive definite control cost matrix Induction backwards in time can be used to obtain the optimal control solution at each time 1 ut BTPt 1B R 1 BTPt 1A xt displaystyle u t B T P t 1 B R 1 B T P t 1 A x t nbsp with the symmetric positive definite cost to go matrix P evolving backwards in time from PT Q displaystyle P T Q nbsp according to Pt 1 Q ATPtA ATPtB BTPtB R 1BTPtA displaystyle P t 1 Q A T P t A A T P t B B T P t B R 1 B T P t A nbsp which is known as the discrete time dynamic Riccati equation of this problem The steady state characterization of P relevant for the infinite horizon problem in which T goes to infinity can be found by iterating the dynamic equation repeatedly until it converges then P is characterized by removing the time subscripts from the dynamic equation Solution editUsually solvers try to find the unique stabilizing solution if such a solution exists A solution is stabilizing if using it for controlling the associated LQR system makes the closed loop system stable For the CARE the control is K R 1BTP displaystyle K R 1 B T P nbsp and the closed loop state transfer matrix is A BK A BR 1BTP displaystyle A BK A BR 1 B T P nbsp which is stable if and only if all of its eigenvalues have strictly negative real part For the DARE the control is K R BTPB 1BTPA displaystyle K R B T PB 1 B T PA nbsp and the closed loop state transfer matrix is A BK A B R BTPB 1BTPA displaystyle A BK A B R B T PB 1 B T PA nbsp which is stable if and only if all of its eigenvalues are strictly inside the unit circle of the complex plane A solution to the algebraic Riccati equation can be obtained by matrix factorizations or by iterating on the Riccati equation One type of iteration can be obtained in the discrete time case by using the dynamic Riccati equation that arises in the finite horizon problem in the latter type of problem each iteration of the value of the matrix is relevant for optimal choice at each period that is a finite distance in time from a final time period and if it is iterated infinitely far back in time it converges to the specific matrix that is relevant for optimal choice an infinite length of time prior to a final period that is for when there is an infinite horizon It is also possible to find the solution by finding the eigendecomposition of a larger system For the CARE we define the Hamiltonian matrix Z A BR 1BT Q AT displaystyle Z begin pmatrix A amp BR 1 B T Q amp A T end pmatrix nbsp Since Z displaystyle Z nbsp is Hamiltonian if it does not have any eigenvalues on the imaginary axis then exactly half of its eigenvalues have a negative real part If we denote the 2n n displaystyle 2n times n nbsp matrix whose columns form a basis of the corresponding subspace in block matrix notation as U1 1U2 1 displaystyle begin pmatrix U 1 1 U 2 1 end pmatrix nbsp then P U2 1U1 1 1 displaystyle P U 2 1 U 1 1 1 nbsp is a solution of the Riccati equation furthermore the eigenvalues of A BR 1BTP displaystyle A BR 1 B T P nbsp are the eigenvalues of Z displaystyle Z nbsp with negative real part For the DARE when A displaystyle A nbsp is invertible we define the symplectic matrix Z A BR 1BT A 1 TQ BR 1BT A 1 T A 1 TQ A 1 T displaystyle Z begin pmatrix A BR 1 B T A 1 T Q amp BR 1 B T A 1 T A 1 T Q amp A 1 T end pmatrix nbsp Since Z displaystyle Z nbsp is symplectic if it does not have any eigenvalues on the unit circle then exactly half of its eigenvalues are inside the unit circle If we denote the 2n n displaystyle 2n times n nbsp matrix whose columns form a basis of the corresponding subspace in block matrix notation as U1 1U2 1 displaystyle begin pmatrix U 1 1 U 2 1 end pmatrix nbsp where U1 1 displaystyle U 1 1 nbsp and U2 1 displaystyle U 2 1 nbsp result from the decomposition 2 Z U1 1U1 2U2 1U2 2 L1 1L1 20L2 2 U1 1TU2 1TU1 2TU2 2T displaystyle Z begin pmatrix U 1 1 amp U 1 2 U 2 1 amp U 2 2 end pmatrix begin pmatrix Lambda 1 1 amp Lambda 1 2 0 amp Lambda 2 2 end pmatrix begin pmatrix U 1 1 T amp U 2 1 T U 1 2 T amp U 2 2 T end pmatrix nbsp then P U2 1U1 1 1 displaystyle P U 2 1 U 1 1 1 nbsp is a solution of the Riccati equation furthermore the eigenvalues of A B R BTPB 1BTPA displaystyle A B R B T PB 1 B T PA nbsp are the eigenvalues of Z displaystyle Z nbsp which are inside the unit circle See also editLyapunov equation Schur decomposition Sylvester equationReferences edit Chow Gregory 1975 Analysis and Control of Dynamic Economic Systems New York John Wiley amp Sons ISBN 0 471 15616 7 William Arnold Alan Laub 1984 Generalized Eigenproblem Algorithms and Software for Algebraic Riccati Equations Peter Lancaster Leiba Rodman 1995 Algebraic Riccati equations Oxford University Press p 504 ISBN 0 19 853795 6 Alan J Laub A Schur method for solving algebraic Riccati equations Laboratory for Information and Decision Systems MIT Report LIDS R 859 External links editCARE solver help of MATLAB Control toolbox DARE solver help of MATLAB Control toolbox Online CARE solver for arbitrary sized matrices Python CARE and DARE solvers Mathematica function to solve the continuous time algebraic Riccati equation Mathematica function to solve the discrete time algebraic Riccati equation Retrieved from https en wikipedia org w index php title Algebraic Riccati equation amp oldid 1192627177, wikipedia, wiki, book, books, library,

article

, read, download, free, free download, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, picture, music, song, movie, book, game, games.