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 tiempo discreto .
Una ecuación algebraica típica de Riccati es similar a una de las siguientes:
la ecuación de Riccati algebraica de tiempo continuo (CARE):
o la ecuación de Riccati algebraica de tiempo discreto (DARE):
P es la matriz simétrica desconocida de n por n y A , B , Q , R son matrices de coeficientes reales conocidas .
Aunque generalmente esta ecuación puede tener muchas soluciones, generalmente se especifica que queremos obtener la única solución estabilizadora, si existe tal solución.
Origen del nombre
El nombre Riccati se le da a estas ecuaciones debido a su relación con la ecuación diferencial de Riccati . De hecho, el CARE se verifica mediante las soluciones invariantes en el tiempo de la matriz asociada valorada en la ecuación diferencial de Riccati. En cuanto al DARE, se verifica mediante las soluciones invariantes en el tiempo de la ecuación en diferencias de Riccati con valores matriciales (que es análoga a la ecuación diferencial de Riccati en el contexto de tiempo discreto LQR).
Contexto de la ecuación algebraica de Riccati en tiempo discreto
En los problemas de control óptimo de horizonte infinito , uno se preocupa por el valor de alguna variable de interés arbitrariamente en el futuro y debe elegir de manera óptima un valor de una variable controlada en este momento, sabiendo que también se comportará de manera óptima en todo momento en el futuro. futuro. Los valores actuales óptimos de las variables de control del problema en cualquier momento se pueden encontrar utilizando la solución de la ecuación de Riccati y las observaciones actuales sobre las variables de estado en evolución. Con múltiples variables de estado y múltiples variables de control, la ecuación de Riccati será 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 (LQR) de horizonte infinito, así como la del problema de control lineal-cuadrático-gaussiano invariante en el tiempo (LQG) del horizonte infinito . Estos son dos de los problemas más fundamentales de la teoría del control .
Una especificación típica del problema de control cuadrático lineal en tiempo discreto es minimizar
sujeto a la ecuación estatal
donde y 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 semidefinida positiva simétrica , y R ( k × k ) es una matriz de costos de control definida positiva simétrica.
La inducción hacia atrás en el tiempo se puede utilizar para obtener la solución de control óptima en cada momento, [1]
con la matriz de costo para llevar definida positiva simétrica P evolucionando hacia atrás en el tiempo desde de acuerdo a
que se conoce como la ecuación dinámica de Riccati en tiempo discreto de este problema. La caracterización de estado estable de P , relevante para el problema del horizonte infinito en el que T va al infinito, se puede encontrar iterando la ecuación dinámica repetidamente hasta que converja; entonces P se caracteriza por eliminar los subíndices de tiempo de la ecuación dinámica.
Solución
Por lo general, los solucionadores intentan encontrar la solución estabilizadora única, si existe. Una solución es estabilizar si su uso para controlar el sistema LQR asociado hace que el sistema de circuito cerrado sea estable.
Para el CARE, el control es
y la matriz de transferencia de estado de bucle cerrado es
que es estable si y solo si todos sus valores propios tienen una parte real estrictamente negativa.
Para el DARE, el control es
y la matriz de transferencia de estado de bucle cerrado es
que es estable si y solo si todos sus valores propios están estrictamente dentro del círculo unitario del plano complejo.
Se puede obtener una solución a la ecuación algebraica de Riccati mediante factorizaciones matriciales o iterando sobre la ecuación de Riccati. Se puede obtener un tipo de iteración en el caso de tiempo discreto utilizando la ecuación dinámica de Riccati que surge en el problema de horizonte finito: en el último tipo de problema, cada iteración del valor de la matriz es relevante para la elección óptima en cada período que es una distancia finita en el tiempo desde un período de tiempo 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 antes de un período final, es decir, para cuando hay un horizonte infinito.
También es posible encontrar la solución encontrando la descomposición propia de un sistema más grande. Para el CARE, definimos la matriz hamiltoniana
Desde es hamiltoniano, si no tiene valores propios en el eje imaginario, entonces exactamente la mitad de sus valores propios tienen una parte real negativa. Si denotamos el matriz cuyas columnas forman una base del subespacio correspondiente, en notación de matriz de bloques, como
luego
es una solución de la ecuación de Riccati; Además, los valores propios de son los valores propios de con parte real negativa.
Para el DARE, cuando es invertible, definimos la matriz simpléctica
Desde es simpléctica, si no tiene valores propios en el círculo unitario, entonces exactamente la mitad de sus valores propios están dentro del círculo unitario. Si denotamos el matriz cuyas columnas forman una base del subespacio correspondiente, en notación de matriz de bloques, como
dónde y resultado de la descomposición [2]
luego
es una solución de la ecuación de Riccati; Además, los valores propios de son los valores propios de que están dentro del círculo unitario.
Ver también
Referencias
- ^ Chow, Gregory (1975). Análisis y control de sistemas económicos dinámicos . Nueva York: John Wiley & Sons. ISBN 0-471-15616-7.
- ^ William Arnold; Alan Laub (1984). "Algoritmos generalizados de problemas propios y software 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 de Schur para resolver ecuaciones algebraicas de Riccati
enlaces externos
- Ayuda del solucionador CARE de la caja de herramientas MATLAB Control.
- Ayuda del solucionador DARE de la caja de herramientas MATLAB Control.
- Solucionador de CARE en línea para matrices de tamaño arbitrario.
- Solucionadores de Python CARE y DARE.
- 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.