Está en la página 1de 60

MT227 Control Moderno y Óptimo

La Función de Hamilton
Temario
• Principio del Máximo
• Regulador Lineal Óptimo
• Fundamentos sobre las ecuaciones de Hamilton para
resolver problemas de Control Óptimo
• Aplicaciones sobre las ecuaciones de Hamilton
• Ejercicios adicionales sobre la ecuación algebraica de
Riccati.
1

Principio del Máximo


Principio del Máximo

Propuesto por Pontryagin (1962) y está basado en el método de cálculo de variaciones


y que resulta como una solución de problemas de control óptimo.

Si consideramos el índice de comportamiento


𝑡𝑓
𝑡𝑓
𝐽 =  𝐱, 𝑡 +  𝐱, u, 𝑡 𝑑𝑡
𝑡𝑜
𝑡𝑜

Para determinar la ley de control óptima que minimiza J, para resolver el problema, se
usara el método de multiplicadores de Lagrange y que es definido como
𝑡𝑓
𝑡𝑓
𝐽′ =  𝐱, 𝑡 +  𝐱, 𝑢, 𝑡 + 𝑇 𝑡 [𝐟 𝐱, u, 𝑡 − 𝐱] d𝑡
𝑡𝑜
𝑡𝑜

Al resolver, se hace que 𝐽= 𝐽’ . Para 𝐽’ se introduce la función hamiltoniana, definido como


Principio del Máximo
𝐻 𝐱, u, , 𝑡 =  𝐱, 𝑢, 𝑡 + 𝑇 𝐱 =  𝐱, 𝑢, 𝑡 + 𝑇 𝑓(𝐱, 𝑢, 𝑡)

Donde  es el multiplicador de Lagrange

 𝐱, 𝑢, 𝑡 = 𝐻 𝐱, u, , 𝑡 − 𝑇 𝐱 =  𝐱, 𝑢, 𝑡 − 𝑇 𝑓(𝐱, 𝑢, 𝑡)

Aplicando integración por partes, resulta


𝑡𝑓
′ 𝑡𝑓 𝑇
𝐽 = [ 𝐱, 𝑡 −  𝐱] + [𝐻 𝐱, u, , 𝑡 − 𝑇 𝐱] d𝑡
𝑡𝑜
𝑡𝑜
Para pequeñas variaciones de 𝐽′

𝑡𝑓
𝑇
𝜕 𝑡𝑓
𝑇
𝜕𝐻 𝑇
𝜕𝐻
𝐽′ = [𝐱 [ − ]] + 𝐱 +  + u d𝑡
𝜕𝐱 𝑡𝑜 𝜕𝑥 𝜕u
𝑡𝑜

La condición necesaria para obtener un máximo o mínimo es cuando 𝐽′ = 0


Principio del Máximo
Según esto, resulta cuatro ecuaciones

𝜕𝐻 𝜕𝐻 𝜕𝐻
= − =0 = 𝐱 = 𝑓(𝐱, u, 𝑡) Son las ecuaciones canónicas
𝜕𝑥 𝜕u 𝜕 hamiltonianas
Con las condiciones de contorno
𝜕
𝐱 𝑇 − =𝟎 Con las condiciones para t = 𝑡𝑜 y 𝑡𝑓
𝜕𝐱

Ejemplo. Minimice el índice de comportamiento


𝑡𝑓 1
1 2
𝐽=  𝐱, 𝐱, 𝑡 𝑑𝑡 = 𝑢 𝑑𝑡
2
𝑡𝑜 0
0 1 0
Donde la planta es modelada como sigue 𝑥= 𝑥+ u
0 −1 1
𝑥1 0 0 𝑥1 1 4
Las condiciones de contorno son 𝐱 0 = = y 𝐱 1 = =
𝑥2 0 0 𝑥2 1 2
Principio del Máximo
La función hamitoniana tiene la forma

1 2 𝑇
1 2 0 1 𝑥1 0
𝐻 𝐱, u, , 𝑡 = 𝑢 +  𝐀𝐱 + 𝐁u = 𝑢 + 1 2 + u
2 2 0 −1 𝑥2 1
1 2
𝐻 𝐱, u, , 𝑡 = 𝑢 + 1 𝑥2 − 2 𝑥2 + 2 𝑢
2
Las ecuaciones canónicas
hamiltonianas
𝜕𝐻
𝜕𝐻 𝜕𝑥1 −1 0
= − = = (1)
𝜕𝑥 𝑑𝐻 −2 1 − 2
𝜕𝐻 𝑑𝑥2
=0 𝑢 + 2 = 0 (2)
𝜕u
𝜕𝐻 𝑥1 𝑥2
= 𝐱 = 𝑓(𝐱, u, 𝑡) = −𝑥 + 𝑢 (3)
𝜕 𝑥2 2
Principio del Máximo

−1 0
De la ecuación (1) =
−2 1 − 2

Si 1 = 0, entonces 1 (𝑡) = 𝐴1
1
2 = −1 + 2 𝑠2 (𝑠) − 2 (0) = − + 2
𝑠
1 𝐴1
𝑠 − 1 2 (𝑠) = 2 0 − = 𝐴2 −
𝑠 𝑠
𝐴1 𝐴2
2 𝑠 = − +
𝑠 𝑠−1 (𝑠 − 1)
2 𝑡 = 𝐴1 1 − 𝑒 𝑡 + 𝐴2 𝑒 𝑡

De la ecuación (2)
𝑢 + 2 = 0 𝑢 = −2 = −𝐴1 1 − 𝑒 𝑡 − 𝐴2 𝑒 𝑡
Principio del Máximo
De la ecuación (3)

Si 𝑥2 = −𝑥2 + 𝑢, entonces 𝑥2 = −𝑥2 −𝐴1 1 − 𝑒 𝑡 − 𝐴2 𝑒 𝑡

𝑥2 + 𝑥2 = −𝐴1 1 − 𝑒 𝑡 − 𝐴2 𝑒 𝑡
1 1 1
𝑠𝑥2 𝑠 −𝑥2 0 + 𝑥2 𝑠 = −𝐴1 − − 𝐴2
𝑠 𝑠−1 𝑠−1
1 1 1
𝑠 + 1 𝑥2 𝑠 − 𝐴4 = −𝐴1 − − 𝐴2
𝑠 𝑠−1 𝑠−1
1 1 1
𝑥2 𝑠 = −𝐴1 − 𝐴2 + 𝐴
𝑠 𝑠 − 1 (𝑠 + 1) (𝑠 − 1)(𝑠 + 1) 𝑠 + 1 4

1 −𝑡 1 𝑡 1 −𝑡 1 𝑡
𝑥2 𝑡 = 𝐴1 1 − 𝑒 − 𝑒 + 𝐴2 ( 𝑒 − 𝑒 ) + 𝐴4 𝑒 −𝑡
2 2 2 2
Principio del Máximo
Si 𝑥1 = 𝑥2 , entonces
𝑠𝑥1 𝑠 −𝑥1 0 = 𝑥2 𝑠 𝑠𝑥1 𝑠 = 𝐴3 + 𝑥2 𝑠
1 1 1 1
𝑥1 𝑠 = −𝐴1 2 − 𝐴2 + 𝐴3 + 𝐴4
𝑠 𝑠 − 1 (𝑠 + 1) 𝑠 𝑠−1 𝑠+1 𝑠 𝑠(𝑠 + 1)

Aplicando transformada inversa

1 −𝑡 1 𝑡 1 −𝑡 1 𝑡
𝑥1 𝑡 = 𝐴1 𝑡 + 𝑒 − 𝑒 + 𝐴2 1 − 𝑒 − 𝑒 + 𝐴3 + 𝐴4 (1 − 𝑒 −𝑡 )
2 2 2 2

Hallando los coeficientes mediante las condiciones de contorno


1 (𝑡) = 𝐴1

2 𝑡 = 𝐴1 1 − 𝑒 𝑡 + 𝐴2 𝑒 𝑡
1 1 1 1
𝑥1 𝑡 = 𝐴1 𝑡 + 𝑒 −𝑡 − 𝑒 𝑡 + 𝐴2 1 − 𝑒 −𝑡 − 𝑒 𝑡 + 𝐴3 + 𝐴4 (1 − 𝑒 −𝑡 ) 𝑥1 0 = 0 𝐴3 = 0
2 2 2 2
1 1 1 1 𝑥2 0 = 0 𝐴4 = 0
𝑥2 𝑡 = 𝐴1 1 − 𝑒 −𝑡 − 𝑒 𝑡 + 𝐴2 ( 𝑒 −𝑡 − 𝑒 𝑡 ) + 𝐴4 𝑒 −𝑡
2 2 2 2
Principio del Máximo
1 (𝑡) = 𝐴1

2 𝑡 = 𝐴1 1 − 𝑒 𝑡 + 𝐴2 𝑒 𝑡

1 1 1 1
𝑥1 𝑡 = 𝐴1 𝑡 + 𝑒 −𝑡 − 𝑒 𝑡 + 𝐴2 1 − 𝑒 −𝑡 − 𝑒 𝑡 𝑥1 1 =4 𝐴1 = 40.59
2 2 2 2
1 1 1 1 𝑥2 2 =2 𝐴2 = −20.46
𝑥2 𝑡 = 𝐴1 1 − 𝑒 −𝑡 − 𝑒 𝑡 + 𝐴2 ( 𝑒 −𝑡 − 𝑒 𝑡 )
2 2 2 2

4 = 𝐴1 1 + 0.5𝑒 −1 − 0.5𝑒 1 + 𝐴2 1 − 0.5𝑒 −1 − 0.5𝑒 1


2 = 𝐴1 1 − 0.5𝑒 −1 − 0.5𝑒 1 + 𝐴2 0.5𝑒 −1 − 0.5𝑒 1

1 1 1 1
𝑥1 𝑡 = 40.59 𝑡 + 𝑒 −𝑡 − 𝑒 𝑡 − 20.46 1 − 𝑒 −𝑡 − 𝑒 𝑡
2 2 2 2

1 1 1 1
𝑥2 𝑡 = 40.59 1 − 𝑒 −𝑡 − 𝑒 𝑡 − 20.46 ( 𝑒 −𝑡 − 𝑒 𝑡 )
2 2 2 2

𝑢 = −2 = −40.59 1 − 𝑒 𝑡 + 20.46𝑒 𝑡


Principio del Máximo
Graficando en Matlab los resultados obtenidos

clc
close all
t=0:0.01:1;
x1=40.59*(t+0.5*exp(-t)-0.5*exp(t))-20.46*(1-0.5*exp(-t)-0.5*exp(t));
x2=40.59*(1-0.5*exp(-t)-0.5*exp(t))-20.46*(0.5*exp(-t)-0.5*exp(t));
%u=-40.59*(1-exp(t))+20.46*exp(t);
%plot(t,x1,'r',t,x2,'b',t,u,'k') x2
plot(t,x1,'r',t,x2,'b')
grid

x1
2

Regulador Lineal Óptimo


Regulador Lineal Óptimo

Consideremos un sistema homogéneo, cuya condición inicial de x es diferente que cero.


La finalidad es lograr llevar a x al punto de equilibrio, es decir 𝑥(𝑡𝑓 ) ≈ 0, minimizando
el gasto energético.

Cabe resaltar que , el índice de comportamiento debe incluir al menos tres características

• La amplitud de la ley de control óptima u(t) debiera ser tan pequeño como sea posible.
• La amplitud de x(t) debiera ser pequeño evitando saturaciones o sobrecarga de gasto de
energía en el sistema que se está controlando.
• El valor final de x(t) debiera estar lo más cercano posible al punto de equilibrio del
sistema.

Según esto, sea el sistema expresado en espacio de estados y con condición inicial 𝐱 𝑜

𝐱 = 𝐀𝐱 + 𝐁𝑢
𝐱 𝑡𝑜 = 𝐱 𝑜
Regulador Lineal Óptimo
La misión es encontrar la ley de control u que minimiza el índice de comportamiento J
𝑡𝑓
1 𝑇 1
𝐽 = 𝐱 𝑡𝑓 𝐒𝐱(𝑡𝑓 ) + 𝐱 𝑇 𝑡 𝐐 t 𝐱 𝑡 + 𝐮𝑇 𝑡 𝐑 t 𝐮 𝑡 d𝑡
2 2
𝑡𝑜

La finalidad de J es minimizar la energía disipada para ejercer el control deseado en x.


La solución al problema es aplicando el principio del máximo. Para ello, se define el
Hamiltoniano.
𝐻 𝐱, u, , 𝑡 = 𝐱 𝑇 𝑡 𝐐 t 𝐱 𝑡 + 𝐮𝑇 𝑡 𝐑 t 𝐮 𝑡 + 𝑇 [𝐀(𝑡)𝐱(𝑡) + 𝐁(𝑡)𝐮(t)]

Donde 𝑇 es el multiplicador de Lagrange y también es conocido como el vector de


coestados del sistema, como una variable complementaria.
Se define el nuevo índice de comportamiento 𝐽′ para determinar el regulador óptimo.
Regulador Lineal Óptimo
𝑡𝑓
1 𝑇 1
𝐽′ = 𝐱 𝑡𝑓 𝐒𝐱(𝑡𝑓 ) + 𝐱 𝑇 𝑡 𝐐 t 𝐱 𝑡 + 𝐮𝑇 𝑡 𝐑 t 𝐮 𝑡 …
2 2
𝑡𝑜

+𝑇 [𝐀 𝑡 𝐱 𝑡 + 𝐁 𝑡 𝐮 t − 𝐱(𝑡)] 𝑑𝑡

𝑡𝑓
1 𝑇
O bien 𝐽′ = 𝐱 𝑡𝑓 𝐒𝐱(𝑡𝑓 ) + [𝐻 𝐱, u, , 𝑡 − λ𝑇 𝐱(𝑡)] d𝑡
2
𝑡𝑜

Aplicando la metodología para esta integral, resulta que para los sistemas lineales
𝑡𝑓
′ 𝑇
𝜕𝐻 𝑇
𝜕𝐻
𝐽 = 𝐒𝐱 𝑡𝑓 − λ(𝑡𝑓 ) + 𝐱 +  + u d𝑡
𝜕𝐱 𝜕u
𝑡𝑜

Para minimizar el gasto de energía, 𝐽′ = 0


Regulador Lineal Óptimo
Según esto, resulta cuatro ecuaciones

𝜕𝐻
= − = 𝐐𝐱 + 𝐀𝑇 
𝜕𝑥
𝜕𝐻
= 0 = 𝐑𝑢 + 𝐁 𝑇  𝑢 = −𝐑−1 𝐁 𝑇  La ley de control u
𝜕u
lo haremos depender de 𝐏𝐱
𝜕𝐻
= 𝐱 = 𝐀𝐱 + 𝐁u Son las ecuaciones canónicas
𝜕
hamiltonianas

Con las condiciones de contorno


𝜕
𝑡 = 𝑡𝑓 = 𝟎 𝐒𝐱 𝑡𝑓 = λ(𝑡𝑓 )
𝜕𝐱

Ahora bien, haciendo  = 𝐏𝐱 𝐒𝐱 𝑡𝑓 = 𝐏(𝑡𝑓 )𝐱(𝑡𝑓 ) 𝐏(𝑡𝑓 ) = 𝐒


 = 𝐏𝒙 + 𝐏𝐱
Regulador Lineal Óptimo
𝐱 = 𝐀𝐱 + 𝐁u = 𝐀𝐱 − 𝐁(𝐑−1 𝐁 𝑇 ) = 𝐀𝐱 − 𝐁(𝐑−1 𝐁 𝑇 𝐏𝐱)
Como
 = 𝐏𝒙 + 𝐏𝐱 = −(𝐐𝐱 + 𝐀𝑇 𝐏𝐱)
 = 𝐏𝒙 + 𝐏[𝐀𝐱 − 𝐁(𝐑−1 𝐁 𝑇 𝐏𝐱)] = − 𝐐𝐱 + 𝐀𝑇 𝐏𝐱 = − 𝐐𝐱 + 𝐀𝑇 
Se aprecia que
𝐏 + 𝐀𝑇 𝐏 + 𝐏𝐀 − 𝐏𝐁𝐑−1 𝐁 𝑇 𝐏 + 𝐐 𝐱 = 𝟎 Ecuación diferencial de Riccati

Finalmente
u = −𝐑−1 𝐁 𝑇 𝐏𝐱
u = 𝐊𝐱

La matriz de Kalman se define como 𝐊 = −𝐑−1 𝐁 𝑇 𝐏


Regulador Lineal Óptimo
Uniendo las ecuaciones de estado 𝐱 y el de coestado 

𝐱 = 𝐀𝐱 − 𝐁𝐑−1 𝐁 𝑇 
 = −𝐐𝐱 − 𝐀𝑇 

𝑥 𝐀 −𝐁𝐑−1 𝐁 𝑇 𝑥
= A, B, Q y R son matrices invariantes en el tiempo
 −𝐐 −𝐀𝑇 
−1
𝐀 −𝐁𝐑−1 𝐁 𝑇
La matriz de transición  𝑠 = 𝑠𝐈 −
−𝐐 −𝐀𝑇

Ejemplo 1
Considere el sistema escalar 𝑥(𝑡) = 𝑢(𝑡) y 𝑥 0 = 1

𝐽= 𝑥 2 + 𝑢2 𝑑𝑡
El índice de comportamiento
0

Determine la ley de control óptima 𝑢(𝑡) y además halle 𝑥(𝑡)


Regulador Lineal Óptimo
solución
Como 𝑡𝑓 →  𝑆 = 0, Sx 𝑡𝑓 = λ 𝑡𝑓 = 0 𝑎 = 0, 𝑏 = 1 𝑄(𝑡) = 2
𝑅(𝑡) = 2

𝑥 𝐀 −𝐁𝐑−1 𝐁 𝑇 𝑥
=
 −𝐐 −𝐀𝑇 
𝑥 0 −0.5 𝑥
= 𝑥 0 =1
 −2 0 

Se tiene que 𝑥 = −0.5


𝑥 = −0.5 = −0.5 −2𝑥 = 𝑥 𝑥 𝑡 = 𝐴𝑒 −𝑡 + 𝐵𝑒 𝑡
 𝑡 = −2𝐴𝑒 −𝑡 − 2𝐵𝑒 𝑡

Tomando en cuenta las condiciones iniciales y finales para 𝑥 y  𝐴 =1y𝐵 =0

𝑢 𝑡 = 𝑥 𝑡 = −𝑒 −𝑡 donde 𝑥 𝑡 = 𝑒 −𝑡
Regulador Lineal Óptimo
Ejemplo 2
Considere el sistema escalar 𝑥(𝑡) = 𝑢(𝑡) y 𝑥 0 = 𝑥𝑜
𝑡𝑓
1 2
El índice de comportamiento 𝐽= 𝑠𝑥 (𝑡𝑓 ) 𝑢2 𝑑𝑡
2
𝑡𝑜

Determine la ley de control óptima 𝑢(𝑡) como una función de 𝑥(𝑡)


solución
1
El hamiltoniano está dado por 𝐻 = 𝑢2 + 𝑢
2
𝜕𝐻
= − = 0  = 𝐴1
𝜕𝑥
𝜕𝐻 𝑢 = − = −𝐴1
=0=𝑢+
𝜕u
𝜕𝐻
=𝐱=𝑢 Con la condición de contorno λ 𝑡𝑓 = s𝑥 𝑡𝑓 = 𝑝(𝑡𝑓 )𝑥(𝑡𝑓) 𝑝 𝑡𝑓 = 𝑠
𝜕
Regulador Lineal Óptimo
Aplicando la ecuación diferencial de Riccati

𝑝 + 𝑎𝑇 𝑝 + 𝑝𝑎 − 𝑝𝑏𝑟 −1 𝑏 𝑇 𝑝 + 𝑞 = 0 𝑎 = 0, 𝑏 = 1, 𝑞 = 0, 𝑟 = 1

𝑝 − 𝑝2 = 0

𝑑𝑝 1 𝑡𝑓
= 𝑑𝑡 E integrando de 𝑡 a 𝑡𝑓 − = 𝑡𝑓 − 𝑡
𝑝2 𝑝 𝑡

1
𝑝 𝑡 =
1
+ 𝑡𝑓 − 𝑡
𝑠

1
Como la ley de control es 𝑢 = − = −𝑝 𝑡 𝑥 𝑡 = 𝑥(𝑡)
1
+ 𝑡𝑓 − 𝑡
𝑠
Regulador Lineal Óptimo
Ejemplo 3
Considere el sistema escalar 𝑥 𝑡 = −𝑎𝑥 𝑡 + 𝑏𝑢(𝑡) y 𝑥 0 = 𝑥𝑜
𝑡𝑓
1 2
El índice de comportamiento 𝐽= 𝑠𝑥 (𝑡𝑓 ) 𝑢2 𝑑𝑡
2
𝑡𝑜

Determine la ley de control óptima 𝑢(𝑡) como una función de 𝑥(𝑡)


solución
1
El hamiltoniano está dado por 𝐻 = 𝑢2 + (−𝑎𝑥 + 𝑏𝑢
2
𝜕𝐻
= − = −a
𝜕𝑥
𝜕𝐻
= 0 = 𝑢 + 𝑏
𝜕u Con la condición de contorno
𝜕𝐻
= 𝐱 = −𝑎𝑥 + 𝑏𝑢 λ 𝑡𝑓 = s𝑥 𝑡𝑓 = 𝑝(𝑡𝑓 )𝑥(𝑡𝑓) 𝑝 𝑡𝑓 = 𝑠
𝜕
Regulador Lineal Óptimo
Aplicando la ecuación diferencial de Riccati

𝑝 + 𝑎𝑇 𝑝 + 𝑝𝑎 − 𝑝𝑏𝑟 −1 𝑏 𝑇 𝑝 + 𝑞 = 0 𝑎 = 0, 𝑏 = 1, 𝑞 = 0, 𝑟 = 1

𝑝 − 2𝑎𝑝 − 𝑏 2 𝑝2 = 0
Regulador Lineal Óptimo
3

Fundamentos sobre las ecuaciones de


Hamilton para resolver problemas de
Control Óptimo
Fundamentos sobre las Funciones de Hamilton

Puesto que el estudio de los sistemas físicos vistos en Control Óptimo, ameritan que
la manera de obtener la matriz K de control dinámico puede ser determinado a
través de las funciones de Hamilton (1833), que básicamente puede interpretarse
como la energía total del sistema [energía potencial + energía cinética] y esta
formulación puede realizarse a través de un sistema de ecuaciones de primer orden,
que se escriben en la función H, denominado el hamiltoniano.

𝜕𝐿
Si 𝑝𝑖 = , donde 𝐻 𝑞, 𝑝, 𝑡 = 𝑞𝑖 𝑝𝑖 − 𝐿(𝑞𝑗 𝑞𝑗 , 𝑡)
𝜕 𝑞𝑖
𝑖
Se dice que el hamiltoniano H es la transformación L de Legendre de la operación
denominada el lagrangiano.

Donde 𝑞, 𝑞 y 𝑡 son las variables del sistema original. En el sistema transformado 𝑞 y 𝑡


son los estados originales del sistema, y por tanto a 𝑝 se le denomina coestado o
estado complementario porque originalmente no es un estado formal del sistema.
Fundamentos sobre las Funciones de Hamilton

Se cumplen las siguientes ecuaciones canónicas de Hamilton

Según definición Según aplicación

𝜕𝐻 𝜕𝐻
1) Ecuación de estado = 𝑞𝑗 =𝑥
𝜕𝑝𝑗 𝜕

2) Ecuación de coestado 𝜕𝐻 𝜕𝐻
= −𝑝𝑗 = −
𝜕𝑞𝑗 𝜕𝑥

3) Ecuación estacionaria 𝜕𝐻 𝜕𝐿 𝜕𝐻 𝜕𝐿
=− =− =0
𝜕𝑡 𝜕𝑡 𝜕𝑢 𝜕𝑢
Problema de Control Óptimo
El problema de control óptimo tiene solución, si u(t) es óptimo, es decir,
cumple las siguiente condiciones.
𝑞, 𝑡, 𝑝 𝑞, 𝑡 𝑝, 𝑞, 𝑡
𝐻 𝑥, 𝑢, = 𝑓𝑜 𝑥, 𝑢 + 𝑇 𝑓(𝑥, 𝑢)

Función del índice de Dinámica del Sistema


comportamiento
Co-estado – var aumentada
de tamaño n (como x)
Se satisface u(t) en las siguientes ecuaciones:
𝜕𝐻
1) Ecuación de estado 𝑥 = 𝐴𝑥 + 𝐵𝑢 =
𝜕
𝜕𝐻𝑇
2) Ecuación de coestado =− =0
𝜕𝑥
𝜕𝐻
3) Ecuación estacionaria =0
𝜕𝑢
Generalización del Problema de Control Óptimo
Modelo del sistema 𝑥 = 𝐴𝑥 + 𝐵𝑢, 𝑥 0 = 𝑥𝑜
𝑇
1 𝑇 1
Índice de comportamiento 𝐽= 𝑥 𝑇 𝑆 𝑇 𝑥 𝑇 + 𝑥 𝑇 𝑄𝑥 + 𝑢𝑇 𝑅𝑢 𝑑𝑡
2 2
0

Donde Q y S(T) son semi-definidos positivos; R es definido positivo. Q, S(T) y R son todos
simétricos. T es fijo. Se desea determinar u*(t) sobre el intervalo [0, T] para minimizar J.
1 𝑇
El hamiltoniano es 𝐻 = 𝑥 𝑄𝑥 + 𝑢𝑇 𝑅𝑢 + 𝑇 (𝐴𝑥 + 𝐵𝑢)
2
Ecuación de co-estado  = −𝐻𝑥 = −𝑄𝑥 − 𝐴𝑇 
Estacionariedad 𝐻𝑢 = 0 = 𝑅𝑢 + 𝐵 𝑇  𝑢 = −𝑅 −1 𝐵 𝑇 

Condiciones de contorno
𝑥 0 = 𝑥𝑜
 𝑇 = 𝑆 𝑇 𝑥(𝑇)
Generalización del Problema de Control Óptimo

El problema a resolver es

𝑥 = 𝐴𝑥 + 𝐵𝑢 = 𝐴𝑥 − 𝐵𝑅−1 𝐵𝑇 , 𝑥 0 = 𝑥𝑜
 = −𝑄𝑥 − 𝐴𝑇 ,  𝑇 = 𝑠 𝑇 𝑥(𝑇)

Este sistema de ecuaciones puede ser escrito como sistema hamiltoniano

𝑥 A −BR−1 BT 𝑥
Como una matriz =
 −Q −AT 
Solución al problema de Control Óptimo
1. Ecuación de Estado Nota p = 

(a)

2. Ecuación de co-estado
(b)

3. Condición de contorno

(c)

4. Condición estacionaria
(d)

5. Condición de estado final


(e)
Generalización del Problema de Control Óptimo
Solución con realimentación

Asuma  𝑡 = 𝑆 𝑡 𝑥 𝑡 , donde 𝑆 𝑇 es dado


Esto da el control de realimentación de lazo cerrado 𝑢 = −𝑅 −1 𝐵𝑇 𝑆𝑥
el problema se conlleva a
𝑥 = 𝐴𝑥 − 𝐵𝑅−1 𝐵𝑇  = 𝐴𝑥 − 𝐵𝑅−1 𝐵𝑇 𝑆𝑥 = (𝐴 − 𝐵𝑅−1 𝐵𝑇 𝑆)𝑥
 = 𝑆𝑥 + 𝑆𝑥 = 𝑆𝑥 + 𝑆 𝐴 − 𝐵𝑅−1 𝐵𝑇 𝑆 𝑥 = −𝑄𝑥 − 𝐴𝑇 𝑆𝑥

Obteniéndose la ecuación matricial de Riccati

−𝑆 = 𝐴𝑇 𝑆 + 𝑆𝐴 − 𝑆𝐵𝑅 −1 𝐵𝑇 𝑆 + 𝑄 Con S(T) dada

El cual puede ser resuelto hacia atrás en el tiempo


Generalización del Problema de Control Óptimo

El control óptimo es 𝑢 𝑡 = −𝑅−1 𝐵𝑇 𝑆 𝑡 𝑥(𝑡)


K
Se puede escribir 𝑢 𝑡 = −𝐾 𝑡 𝑥(𝑡)

Donde K(t) [ganancia de Kalman] es K 𝑡 = 𝑅−1 𝐵𝑇 𝑆 𝑡

r=0 -x(t) u(t) x(t)


K(t)   Ax  Bu
x
+ -
controlador planta
“dependiente del tiempo”
4

Condición para resolver problemas


de Control Óptimo
Ejemplos de aplicación
Llenado de un embalse
Se vacía el agua de un embalse a una tasa siempre creciente. Para compensar esta pérdida de
agua, se requiere elevar el nivel del agua en el embalse por encima de su altura inicial
mediante el bombeo de agua dulce. El costo de esta operación por unidad de tiempo es
proporcional al cuadrado de la tasa de bombeo, y queremos ajustar esta tasa para minimizar
el costo.

Se planteará el problema de dos formas


diferentes dependiendo del conocimiento
que se tenga del instante final t1.

Primero para un problema de tiempo final fijo,


t1 = 1, donde el nivel requerido debe alcanzarse
en un tiempo especificado;
Segundo se plantea el problema de tiempo
final t1, libre.
Llenado de un embalse
El modelo de espacio estado 𝑥 = −𝑣 + 𝑢 v es la tasa a que el agua es vaciada
𝑥 0 =0 (1) x es la altura del agua
𝑥 𝑡1 =1 u es la tasa de bombeo
𝑡1
1
El índice de comportamiento está dado por 𝐽= 𝑢2 𝑑𝑡 (2)
2 0
que mide la cantidad de energía
utilizada en bombear el agua dulce.
Supongamos que la función v(t)
𝐻(𝑥, 𝑢, ) = 𝑓𝑜 𝑥, 𝑢 + 𝑇 𝑓(𝑥, 𝑢)
tiene la forma: v(t) = t 1 2
El Hamiltoniano tiene 𝐻= 𝑢 + (−𝑡 + 𝑢)
2
la forma
a) Con tiempo final fijo 𝜕𝐻
igual a t1 = 1. Ecuación de estado 𝑥= = −𝑡 + 𝑢
𝜕

Las ecuaciones que 𝜕𝐻


Ecuación de co-estado =− =0
tienen que cumplir el 𝜕𝑥
control y la trayectoria 𝜕𝐻
Condición estacionaria =𝑢+ =0
óptimas son: 𝜕𝑢
Llenado de un embalse
En este caso puesto que tanto t1 como x(t1) son fijos, se cumple que

Por la ecuación de co-estado  𝑡 =𝐴 A constante

Por la condición estacionaria: 𝑢 𝑡 = − 𝑡 = −𝐴


1
Por la ecuación de estado: 𝑥 = −𝑡 − 𝐴 𝑥 𝑡 = − 𝑡 2 − 𝐴𝑡 + 𝐵
2
las condiciones que deben cumplirse son
1 3
𝑥 0 =0 B=0 y 𝑥 1 =1 − −𝐴 =1 𝐴=−
2 2
Por tanto la expresión de x∗ (t) y u∗ (t) quedan como

1 3
𝑥∗ 𝑡 = − 𝑡2 + 𝑡
2 2

3
𝑢 𝑡 =
2
𝑡1
1 9
El valor del índice de comportamiento óptimo 𝐽∗ = 𝑢2 𝑑𝑡 =
2 0 8
Llenado de un embalse
b) Si ahora consideramos a t1 libre, entonces dt1  0 y la condición de contorno que se
debe cumplir es

donde se ha tenido en cuenta que φ ≡ 0, ψ ≡ 0 y dx (t1) = 0.


De la ecuación anterior podemos obtener t1, utilizando la ecuación del Hamiltoniano H
1 2
𝐻 𝑡1 = 𝑢 𝑡1 +  𝑡1 −𝑡1 + 𝑢 𝑡1 =0
2

Como 𝑢 𝑡 = − 𝑡 = −𝐴, para t ∈ [0, t1]


1 2 1
𝐴 + 𝐴 −𝑡1 − 𝐴 = 0 𝑡1 = − 𝐴
2 2
Esta ecuación junto con las condiciones de 𝑥 0 = 0 B=0
contorno inicial y final 1
𝑥 𝑡1 = 1 − 𝑡12 − 𝐴𝑡1 = 1
2
Llenado de un embalse
1
resuelven el problema, puesto que como 𝑡1 = − 𝐴 𝐴 = −2𝑡1
2
1 2 3 2 2
2
− 𝑡1 + 2𝑡1 = 1 𝑡 =1 𝑡1 =
2 2 1 3
2 2
Luego, 𝐴=−
3
Y las expresiones de 𝑥 ∗ (t) y 𝑢∗ (t) son

1 2 2
𝑥∗ 𝑡 = − 𝑡2 + 𝑡
2 3
2 2
𝑢∗ 𝑡 =
3

y el índice de comportamiento óptimo tiene el valor de


2 3 2
𝑡1

1 ∗ 2
1 2 2 18 2
𝐽 = 𝑢 𝑑𝑡 = 𝑑𝑡 = = 1.08866
2 0 2 3 23 3
0

Este valor óptimo es menor que el valor de 9/8 = 1.125 que se obtenía cuando se fijaba el
tiempo final t1.
Un segundo método de solución del problema de control óptimo

Dada la planta de la figura

𝑥=𝑢 u(t)
1 x(t) 𝑥 0 =1
s
planta
Determine la ley de control óptimo u* para minimizar el índice de comportamiento J
𝑇
1
𝑚𝑖𝑛 𝐽 = 𝑥 2 + 0.25𝑢2 𝑑𝑡
u(t) 2
0

Sol. La función hamiltoniana es


1 2
H ( x, u,  )  f0 ( x, u)  T f ( x, u) = 𝑥 + 0.25𝑢2 + 𝑢
2
Un segundo método de solución del problema de control óptimo
Aplicando las condiciones de optimalidad
1 2
1. El hamiltoniano es 𝐻 = 𝑥 + 0.25𝑢2 + 𝑢
2

2. La ecuación de co-estado  = −𝐻𝑥 = −𝑥

3. Estacionariedad 𝐻𝑢 = 0 = 0.25𝑢 +  𝑢 = −4

4. Condiciones de contorno 𝑥 0 =1
 𝑇 =0

En consecuencia, el problema de valores de contorno es

𝑥 = −4, 𝑥(0) = 1
 = −𝑥, (𝑇) = 0
Un segundo método de solución del problema de control óptimo
Podemos escribir el problema de contorno de la siguiente manera

𝑥 = −4, 𝑥(0) = 1 𝑥 𝑥 0 −4
=𝐀 Donde 𝐀 =
 = −𝑥, (𝑇) = 0 𝑦  −1 0

La solución será de la forma

𝑥(𝑡)
= 1 𝒆1 𝑒 1 𝑡 + 2 𝒆2 𝑒 2𝑡
(𝑡)

Donde 1 y 2 son los eigenvalores de A y e1 y e2 son los


eigenvectores que son calculados de la siguiente manera:
Un segundo método de solución del problema de control óptimo

 4
𝐈2 − 𝐀 = =0 2 − 4 = 0 =2
1 
 1 = 2, 2 = −2

Además
 −4 2 2
𝐴𝑑𝑗 𝐈2 − 𝐀 = 𝒆1 = , 𝒆2 =
−1  −1 1

En consecuencia

𝑥(𝑡) 2 2𝑡 2 −2𝑡
= 1 𝑒 + 2 𝑒 ; 𝑥 0 = 1,  𝑇 = 0
(𝑡) −1 1

Donde 1 y 2 son evaluados con las condiciones de frontera x(0) y (T)

21 + 22 = 1 1 1
1 = 4𝑇
, 2 =
-1 𝑒 2𝑇 + 2 𝑒 −2𝑇 = 0 2(1 + 𝑒 ) 2(1 + 𝑒 −4𝑇 )
Un segundo método de solución del problema de control óptimo
Finalmente

𝑥(𝑡) 1 2 2𝑡 1 2 −2𝑡
= 𝑒 + 𝑒
(𝑡) 4𝑇
2(1 + 𝑒 ) −1 2(1 + 𝑒 −4𝑇 ) 1
Por los tanto
1 2𝑡
1 −2𝑡
 𝑡 =− 𝑒 + 𝑒
2(1 + 𝑒 4𝑇 ) 2(1 + 𝑒 −4𝑇 )
La señal de control óptimo u* y la respuesta al estado x* son

2 2
𝑢∗ 𝑡 = −4 𝑡 = 𝑒 2𝑡 − 𝑒 −2𝑡
1 + 𝑒 4𝑇 1 + 𝑒 −4𝑇


1 2𝑡
1 −2𝑡
𝑥 𝑡 = − 𝑡 = 𝑒 − 𝑒
1 + 𝑒 4𝑇 1 + 𝑒 −4𝑇
Un segundo método de solución del problema de control óptimo

Nota: para un T grande

2 t
u (t )  2e
*

2 t
x (t )  e
*

-2e-2t 1 e-2t
s
u(t) x(t)
planta

Nota: El control óptimo determinado es en lazo abierto


Un segundo método de solución del problema de control óptimo
Solución con realimentación
Asumiendo  𝑡 = 𝑠 𝑡 𝑥(𝑡), donde s(T) = 0
u(t) 1 x(t)
luego  𝑡 = 𝑠 𝑡 𝑥 𝑡 + 𝑠(𝑡)𝑥 𝑡 s
planta
Como 𝑥 = −4 𝑦  = −𝑥

-k(t)
Reemplazando en la ecuación de co-estado
−𝑥 = 𝑠𝑥 + 𝑠 −4 = 𝑠𝑥 − 4𝑠 𝑠𝑥
ganancia
−𝑥 = 𝑠𝑥 − 4𝑠 2 𝑥 2
𝑠 = 4𝑠 − 1
Resolviendo la ecuación diferencial
𝑑𝑠 −1
2
= 4𝑑𝑡 2𝑡𝑎𝑛ℎ 2𝑠 = −4𝑡 + 𝐶 Como s(T)=0 C = 4T
𝑠 − 0.25
1
tanh−1 2𝑠 = 2(𝑇 − 𝑡) s(t) = tanh[2(𝑇 − 𝑡)]
2
Un segundo método de solución del problema de control óptimo
Solución con realimentación
u(t) 1 x(t)
En consecuencia, la ley de control u(t) resulta
s
𝑢 𝑡 − 4 𝑡 = −4𝑠 𝑡 𝑥 𝑡 = −𝑘 𝑡 𝑥(𝑡)
planta
1
Como s(t) = 2 tanh[2(𝑇 − 𝑡)]
Entonces -k(t)
𝑘 𝑡 = 2tanh[2(𝑇 − 𝑡)] ganancia

Nota: Como T  , k  2 Este diagrama puede ser redibujado como

u(t)
+ 1 x(t)
ref = 0 k(t)
- s
ganancia planta
Resultados con Matlab

optimal control of a single integrator


1
0
u(t)
-1
-2
0 0.5 1 1.5 2 2.5 3 3.5 4
1

0.5
x(t)
0
0 0.5 1 1.5 2 2.5 3 3.5 4
2

1
k(t)
0
0 0.5 1 1.5 2 2.5 3 3.5 4
t
Control sub-óptimo Usando el valor de estado estacionario

k (t )  2, t  0  T
comparison of optimal and sub-optimal control T = 4
1

0
u(t)
-1

-2
0 0.5 1 1.5 2 2.5 3 3.5 4

1
Jopt = 0.2533
Jsub_opt = 0.2533
0.5
x(t)

0
0 0.5 1 1.5 2 2.5 3 3.5 4
t
comparison of optimal and sub-optimal control T = 1
0

-0.5

-1
u(t)
-1.5

-2
0 0.2 0.4 0.6 0.8 1

1
Jopt = 0.2442
Jsub_opt = 0.2487
0.5
x(t)

0
0 0.2 0.4 0.6 0.8 1
t
5

Ejercicios sobre la ecuación


algebraica de Riccati (ARE)
Problemas sobre Riccati
Problema 1
Considere el siguiente modelo de un sistema dinámico: 𝑥 = 2𝑢1 + 2𝑢2 𝑥 0 =3

así como el índice de desempeño asociado 𝐽 = 𝑥 2 + 𝑟𝑢12 + 𝑟𝑢22 𝑑𝑡
0

donde r > 0 es un parámetro.

Sol
1. Primero encontramos las solución de ARE correspondiente al controlador lineal por
realimentación de estados óptimo, tenemos
𝐀 = 0, 𝐁 = 2 2 , 𝐐 = 1, 𝐑 = 𝑟, 𝐏 = 𝑝
La ARE para este problema es
𝐐 + 𝐀T 𝐏 + 𝐏𝐀 − 𝐏𝐁𝐑−𝟏 𝐁 T 𝐏 = 𝟎
1 2
1 + 0 𝑝 + 𝑝 0 − 𝑝 22 𝑝 =0
𝑟 2
8
1 − 𝑝2 = 0
𝑟
Problemas sobre Riccati
𝑟
cuya solución es 𝑝=
8

2. Ahora escribimos el sistema en lazo cerrado que se obtiene usando el controlador


óptimo. El controlador óptimo tienen la forma:

−1 𝑇
1 2 𝑟 1 1
𝑢 = −𝑅 𝐵 𝑃𝑥 = − 𝑥=− 𝑥
𝑟 2 8 2𝑟 1

Entonces, el sistema en lazo cerrado óptimo es descrito por


1 1 4
𝑥 = 𝐵𝑢 = 2 2 − 𝑥 =− 𝑥
2𝑟 1 2𝑟

3. Finalmente, encontramos el valor de J para el sistema en lazo cerrado óptimo.


Tenemos que
 𝑟 9 𝑟
𝐽= 𝑥 2 + 𝑟𝑢12 + 𝑟𝑢22 𝑑𝑡 = 𝑥 0 𝑇 𝐏𝑥 0 = 3 3=
0 8 2 2
Problemas sobre Riccati
Ejemplo integrador doble con LQR en estado estacionario

Problema 2
Considere un integrador doble descrito por la ecuación espacio de estado:
0 1 0
𝑥= 𝑥+ 𝑢
0 0 1
El controlador tiene que minimizar el siguiente índice de desempeño:

𝐽= 𝑥 𝑇 𝑄𝑥 + 𝑢2 𝑑𝑡
Sol. 0
Aquí las matrices han sido seleccionadas como:
𝑟𝑝 0
𝐐=
0 𝑟𝑣
>0
Aplicando Riccati

𝐀T 𝐏 + 𝐏𝐀 − 𝐏𝐁𝐑−𝟏 𝐁 T 𝐏 + 𝐐 = 𝟎
Problemas sobre Riccati
𝐀T 𝐏 + 𝐏𝐀 − 𝐏𝐁𝐑−𝟏 𝐁 T 𝐏 + 𝐐 = 𝟎
-1
0 0 𝑝11 𝑝12 𝑝11 𝑝12 0 1 𝑝11 𝑝12 0 R 𝑝11 𝑝12 𝑟𝑝 0
1 0 𝑝12 𝑝22 + 𝑝12 𝑝22 0 -
0 𝑝12 𝑝22 1 [1/][0 1] 𝑝12 𝑝22 + 0 𝑟𝑣
=𝟎

donde rp y rv son los pesos de posición y velocidad, respectivamente. Con los valores
dados la ecuación algebraica de Riccati resulta en las siguientes ecuaciones:
𝑝 𝑝12 , es la solución del ARE. Resolviendo estas ecuaciones algebraicas
Donde, 𝐏 = 𝑝11 𝑝22 se obtiene la solución definida positiva única:
12
1 2
0 = 𝑟𝑝 − 𝑝12 𝑝11 = 𝑟𝑝 2 𝑟𝑝  + 𝑟𝑣 

1 𝑝12 = 𝑟𝑝 
0 = 𝑝11 − 𝑝12 𝑝22

1 2 𝑝22 = 2 𝑟𝑝  + 𝑟𝑣 
0 = 𝑟𝑣 + 2𝑝12 − 𝑝22

El controlador resulta en el control por realimentación de estados con la señal de control:
𝑢 = −𝐾∞ 𝑥 = − 𝑅 −1 𝐵𝑇 𝑃∞ 𝑥
𝑟𝑝 2 𝑟𝑝  + 𝑟𝑣  𝑟𝑝 
1 𝑟𝑝 𝑟𝑝 𝑟𝑣
𝑢=− 0 1 𝑥=− 2 + 𝑥
   
𝑟𝑝  2 𝑟𝑝  + 𝑟𝑣 
Problemas sobre Riccati
Resolviendo la ARE usando el método del autovector

Se presenta un método para resolver la ARE referido como el método del autovector.
Para ello representemos la ARE en la forma

𝐴 −𝐵𝑅 −1 𝐵𝑇 𝐼𝑛
𝑃 − 𝐼𝑛 𝑇 =0
−𝑄 −𝐴 𝑃

La matriz 2n×2n al centro de la expresión es denominada matriz Hamiltoniana.


Se usa el símbolo H para denotar a la matriz.

Hamiltoniana, esto es, 𝐴 −𝐵𝑅 −1 𝐵𝑇


𝐇=
−𝑄 −𝐴𝑇

𝐼𝑛
Entonces, la ARE puede ser representada como 𝑃 − 𝐼𝑛 𝐇 =0
𝑃
Problemas sobre Riccati
Problema 3

Considere el siguiente modelo de un sistema dinámico 𝑥 = 2𝑥 + 𝑢



así como el índice de desempeño asociado 𝐽= 𝑥 2 + 𝑟𝑢2 𝑑𝑡
0

Encuentre el valor de r tal que el sistema en lazo cerrado óptimo tenga un polo en −3.
Solución

𝐀 = 2, 𝐁 = 1, 𝐑 = 𝑟, 𝐐 = 1
𝐴 −𝐵𝑅 −1 𝐵𝑇
Construyendo la matriz Hamiltoniana asociada 𝐇=
−𝑄 −𝐴𝑇

1 1
𝐇 = 2 −1(𝑟 )(1) = 2 − 𝑟
−1 −2 −1 −2
Problemas sobre Riccati
La ecuación característica de H es

1 1
det s𝐈 − 𝐇 = 𝑠 − 2 𝑟
2
=𝑠 −4− =0
𝑟
1 𝑠+2
Para que la raíz s = -3, se tiene que

1
𝑟=
5
Bibliografía

 Ingeniería de Control Moderno. K. Ogata. Pearson.


 Matlab www.mathworks.com

También podría gustarte