Articulo de referencia

Ecuación algebraica de Riccati

Una ecuación algebraica de Riccati es un tipo de ecuación no lineal que surge en el contexto de problemas de control óptimo de horizonte infinito en tiempo continuo o discreto ....

Una ecuación algebraica de Riccati es un tipo de ecuación no lineal que surge en el contexto de problemas de control óptimo de horizonte infinito en tiempo continuo o discreto .

Una ecuación algebraica de Riccati típica es similar a una de las siguientes:

la ecuación algebraica de Riccati en tiempo continuo (CARE):

APAG+PAGAPAGBR1BPAG+Q=0{\displaystyle A^{\top }P+PA-PBR^{-1}B^{\top }P+Q=0}

o la ecuación algebraica de Riccati en tiempo discreto (DARE):

PAG=APAGA(APAGB)(R+BPAGB)1(BPAGA)+Q.{\displaystyle P=A^{\top }PA-(A^{\top }PB)(R+B^{\top }PB)^{-1}(B^{\top }PA)+Q.}

P es la matriz simétrica desconocida de n por n y A , B , Q , R son matrices de coeficientes reales conocidas , siendo Q y R simétricas.

Aunque generalmente esta ecuación puede tener muchas soluciones, normalmente se especifica que queremos obtener la única solución estabilizadora, si es que existe tal solución.

Origen del nombre

Estas ecuaciones reciben el nombre de Riccati debido a su relación con la ecuación diferencial de Riccati . De hecho, la ecuación CARE se verifica mediante las soluciones invariantes en el tiempo de la ecuación diferencial de Riccati con valores matriciales asociada. En cuanto a la ecuación algebraica de Riccati en tiempo discreto, o DARE, se verifica mediante las soluciones invariantes en el tiempo de la ecuación de diferencias de Riccati con valores matriciales (que es el análogo de la ecuación diferencial de Riccati en el contexto de LQR en tiempo discreto).

Contexto de la ecuación algebraica de Riccati en tiempo discreto

En los problemas de control óptimo de horizonte infinito , se considera el valor de una variable de interés en un futuro arbitrariamente lejano, y se debe elegir de forma óptima el valor de una variable controlada en el presente, sabiendo que el comportamiento será óptimo en todo momento futuro. Los valores óptimos actuales de las variables de control del problema en cualquier momento se pueden encontrar mediante la solución de la ecuación de Riccati y las observaciones actuales de las variables de estado en evolución. Con múltiples variables de estado y múltiples variables de control, la ecuación de Riccati se convierte en una ecuación matricial .

La ecuación algebraica de Riccati determina la solución del problema del regulador lineal-cuadrático invariante en el tiempo con horizonte infinito (LQR), así como la del problema de control lineal-cuadrático-gaussiano invariante en el tiempo con horizonte infinito (LQG). Estos son dos de los problemas más fundamentales en la teoría de control .

Una especificación típica del problema de control lineal cuadrático en tiempo discreto es minimizar

t=1T(incógnitatQincógnitat+tRt){\displaystyle \sum _{t=1}^{T}(x_{t}^{\top }Qx_{t}+u_{t}^{\top }Ru_{t})}

sujeto a la ecuación de estado

incógnitat=Aincógnitat1+Bt1,{\displaystyle x_{t}=Ax_{t-1}+Bu_{t-1},}

donde x es un vector n × 1 de variables de estado, u es un vector k × 1 de variables de control, A es la matriz de transición de estado n × n , B es la matriz n × k de multiplicadores de control, Q ( n × n ) es una matriz de costos de estado simétrica semidefinida positiva y R ( k × k ) es una matriz de costos de control simétrica definida positiva.

La inducción hacia atrás en el tiempo se puede utilizar para obtener la solución de control óptima en cada momento, [ 1 ]

t=(BPAGt+1B+R)1(BPAGt+1A)incógnitat,{\displaystyle u_{t}^{*}=-(B^{\top }P_{t+1}B+R)^{-1}(B^{\top }P_{t+1}A)x_{t},}

con la matriz de costos restantes simétrica definida positiva P que evoluciona hacia atrás en el tiempo desde P T = Q según

PAGt1=Q+APAGtAAPAGtB(BPAGtB+R)1BPAGtA,{\displaystyle P_{t-1}=Q+A^{\top }P_{t}AA^{\top }P_{t}B(B^{\top }P_{t}B+R)^{-1}B^{\top }P_{t}A,\,}

que se conoce como la ecuación de Riccati dinámica en tiempo discreto de este problema. La caracterización en estado estacionario de P , relevante para el problema de horizonte infinito en el que T tiende a infinito, se puede obtener iterando la ecuación dinámica repetidamente hasta que converja; entonces P se caracteriza eliminando los subíndices de tiempo de la ecuación dinámica.

Solución

Por lo general, quienes resuelven el problema intentan encontrar la única solución estabilizadora, si es que existe. Una solución es estabilizadora si, al utilizarla para controlar el sistema LQR asociado, el sistema de lazo cerrado se vuelve estable.

Para el CUIDADO, el control es K=R1BPAG{\displaystyle K=R^{-1}B^{\top }P} y la matriz de transferencia de estado de lazo cerrado es ABK=ABR1BPAG{\displaystyle A-BK=A-BR^{-1}B^{\top }P} que es estable si y solo si todos sus valores propios tienen una parte real estrictamente negativa.

Para el DARE, el control es K=(R+BPAGB)1BPAGA{\displaystyle K=(R+B^{\top }PB)^{-1}B^{\top }PA} y la matriz de transferencia de estado de lazo cerrado es ABK=AB(R+BPAGB)1BPAGA{\displaystyle A-BK=AB(R+B^{\top }PB)^{-1}B^{\top }PA} que es estable si y solo si todos sus autovalores están estrictamente dentro del círculo unitario del plano complejo .

La solución a la ecuación algebraica de Riccati se puede obtener mediante factorizaciones matriciales o iterando sobre la ecuación de Riccati. Un tipo de iteración se puede obtener en el caso de tiempo discreto utilizando la ecuación dinámica de Riccati que surge en el problema de horizonte finito: en este último tipo de problema, cada iteración del valor de la matriz es relevante para la elección óptima en cada período que se encuentra a una distancia finita en el tiempo de un período final, y si se itera infinitamente hacia atrás en el tiempo, converge a la matriz específica que es relevante para la elección óptima un período de tiempo infinito anterior a un período final , es decir, para cuando hay un horizonte infinito.

También es posible encontrar la solución hallando la descomposición en valores propios de un sistema más grande. Para el CARE, definimos la matriz hamiltoniana.Z=(ABR1BQA){\displaystyle Z={\begin{pmatrix}A&-BR^{-1}B^{\top }\\-Q&-A^{\top }\end{pmatrix}}} Dado que Z es hamiltoniano, si no tiene ningún valor propio en el eje imaginario, entonces exactamente la mitad de sus valores propios tienen una parte real negativa. Si denotamos la matriz de 2 n × n cuyas columnas forman una base del subespacio correspondiente, en notación de matriz de bloques, como (U1,1U2,1){\displaystyle {\begin{pmatrix}U_{1,1}\\U_{2,1}\end{pmatrix}}} entonces PAG=U2,1U1,11{\displaystyle P=U_{2,1}U_{1,1}^{-1}} es una solución de la ecuación de Riccati; además, los valores propios deABR1BPAG{\displaystyle A-BR^{-1}B^{\top }P}son los valores propios de Z con parte real negativa.

Para el DARE, cuando A es invertible, definimos la matriz simpléctica.Z=(A+BR1B(A1)QBR1B(A1)(A1)Q(A1)){\displaystyle Z={\begin{pmatrix}A+BR^{-1}B^{\top }(A^{-1})^{\top }Q&-BR^{-1}B^{\top }(A^{-1})^{\top }\\-(A^{-1})^{\top }Q&(A^{-1})^{\top }\end{pmatrix}}} Dado que Z es simpléctica, si no tiene ningún valor propio en el círculo unitario, entonces exactamente la mitad de sus valores propios están dentro del círculo unitario. Si denotamos la matriz de 2 n × n cuyas columnas forman una base del subespacio correspondiente, en notación de matriz de bloques, como (U1,1U2,1){\displaystyle {\begin{pmatrix}U_{1,1}\\U_{2,1}\end{pmatrix}}} donde U 1,1 , U 2,1 resultan de la descomposición [ 2 ]Z=(U1,1U1,2U2,1U2,2)(Λ1,1Λ1,20Λ2,2)(U1,1U2,1U1,2U2,2){\displaystyle Z={\begin{pmatrix}U_{1,1}&U_{1,2}\\U_{2,1}&U_{2,2}\end{pmatrix}}{\begin{pmatrix}\Lambda _{1,1}&\Lambda _{1,2}\\0&\Lambda _{2,2}\end{pmatrix}}{\begin{pmatrix}U_{1,1}^{\top }&U_{2,1}^{\top }\\U_{1,2}^{\top }&U_{2,2}^{\top }\end{pmatrix}}} entonces PAG=U2,1U1,11{\displaystyle P=U_{2,1}U_{1,1}^{-1}} es una solución de la ecuación de Riccati; además, los valores propios deAB(R+BPAGB)1BPAGA{\displaystyle AB(R+B^{\top }PB)^{-1}B^{\top }PA}son los valores propios de Z que se encuentran dentro del círculo unitario.

Véase también

Referencias

  1. Chow, Gregory (1975). Análisis y control de sistemas económicos dinámicos . Nueva York: John Wiley & Sons. ISBN 0-471-15616-7.
  2. ^ William Arnold; Alan Laub (1984). "Software y algoritmos de problemas propios generalizados para ecuaciones algebraicas de Riccati" .
  • Peter Lancaster; Leiba Rodman (1995), Ecuaciones algebraicas de Riccati , Oxford University Press , pág.  504, ISBN 0-19-853795-6
  • Alan J. Laub, "Un método Schur para resolver ecuaciones algebraicas de Riccati" , Laboratorio de Sistemas de Información y Decisión, MIT (Informe LIDS-R-859).
  • Ayuda del solucionador CARE de la caja de herramientas de control de MATLAB.
  • Ayuda del solucionador DARE de la caja de herramientas de control de MATLAB.
  • Solucionador CARE en línea para matrices de tamaño arbitrario.
  • Solucionadores CARE y DARE en Python.
  • Función de Mathematica para resolver la ecuación algebraica de Riccati en tiempo continuo.
  • Función de Mathematica para resolver la ecuación algebraica de Riccati en tiempo discreto.