Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Semana 5 Parte 1
Semana 5 Parte 1
Semana 5 Parte 1
Introducción:
Vamos a desarrollar la Teoría del Control Óptimo, mediante el cual pueden desarrollarse problemas
de optimización más complejo. El problema básico a resolver es el siguiente:
𝑇
𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑎𝑟 𝑣 = ∫ 𝑓(𝑡, 𝑦, 𝑢)𝑑𝑡
0
𝑦 ′ = 𝑔(𝑡, 𝑦, 𝑢)
(1)
𝑦(0) = 𝑦0 (𝑦0 𝑑𝑎𝑑𝑜)
𝑠𝑢𝑗𝑒𝑡𝑜 𝑎
𝑦(𝑇) = 𝑦𝑇 (𝑦𝑇 𝑙𝑖𝑏𝑟𝑒)
𝑢(𝑡) ∈ Ω, ∀ 𝑡 ∈ [0, 𝑇]
En este problema de control óptimo intervienen 3 variables:
El tiempo
Variable de estado y
La variable de control u
Una vez seleccionado el valor óptimo de la variable de control en un instante de tiempo, la función
𝑔(∙) determina la dirección de crecimiento de la variable de estado y, y también su trayectoria en el
tiempo.
Si tenemos una función objetivo 𝑓(𝑥1 , 𝑥2 , … , 𝑥𝑛 ), junto con sus restricciones 𝑔1 (𝑥1 , 𝑥2 , . . 𝑥𝑛 ) = 𝑏1 ,
… 𝑔𝑚 (𝑥1 , 𝑥2 , … 𝑥𝑛 ) = 𝑏𝑚 y una variable auxiliar , conocida como multiplicador de Lagrange. Se
construye la siguiente función:
En el control óptimo, dada la función 𝑓(𝑡, 𝑦, 𝑢), la ecuación de movimiento 𝑦 ′ = 𝑔(𝑡, 𝑦, 𝑢) y una
variable auxiliar 𝜆(𝑡), denominada variable de coestado. Construimos la función Hamiltoniana:
𝜕𝐻
>0
𝜕𝑢
La segunda condición constituye la ecuación de movimiento de la variable de estado.
La tercera condición representa la ecuación de movimiento de la variable de coestado.
Ambas ecuaciones simultáneas, b) y c), se denominan sistema canónica o sistema Hamiltoniano.
Ejemplo:
Hallar las trayectorias 𝑦 ∗ (𝑡), 𝑢∗ (𝑡), 𝜆∗ (𝑡) que resuelven el problema:
1
𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑎𝑟 𝑣 = ∫ (𝑦 + 𝑢)𝑑𝑡
0
𝑦 ′ = 1 − 𝑢2
𝑠𝑢𝑗𝑒𝑡𝑜 𝑎
𝑦 (0) = 1
Solución:
Formamos la función Hamiltoniana:
𝐻 (𝑡, 𝑦, 𝑢, 𝜆) = 𝑦 + 𝑢 + 𝜆(1 − 𝑢2 )
Vamos a maximizar esta función respecto a la variable de control. En este caso, observamos que el
Hamiltoniano no es lineal respecto a u.
Usando las condiciones de maximización:
𝜕𝐻
(𝑡, 𝑦, 𝑢, 𝜆) = 1 − 2𝜆𝑢 = 0
𝜕𝑢
𝜕2𝐻
(𝑡, 𝑦, 𝑢, 𝜆) = −2𝜆 ≤ 0
𝜕𝑢2
De este modo, obtenemos:
1
𝑢 ∗ (𝑡 ) = , 𝜆≥0
2𝜆
Ahora planteamos las ecuaciones de movimiento para las variables de estado y coestado:
𝜕𝐻
𝑦′ = = 1 − 𝑢2
𝜕𝜆
𝜕𝐻
𝜆′ = − = −1
𝜕𝑦
Integrando la segunda ecuación, tenemos que 𝜆∗ (𝑡) = −𝑡 + 𝑐1
Hallamos 𝑐1 usando la condición 𝜆(1) = 0:
0 = 𝜆(1) = −1 + 𝑐1 ⇒ 𝑐1 = 1
Así, 𝜆∗ (𝑡) = −𝑡 + 1
Además, si 𝑡 ∈ [0,1], entonces 0 ≤ 𝜆 ≤ 1, el cual satisface la condición de la segunda deriva de H
en el principio del máximo.
La trayectoria de control óptimo es:
1 1
𝑢 ∗ (𝑡 ) = ∗
=
2𝜆 2(1 − 𝑡)
Por otro, reemplazando la expresión de 𝑢∗ en la ecuación de movimiento de y:
1
𝑦′ = 1 −
4(1 − 𝑡 )2
Integrando ambos lados de la ecuación:
1
𝑦 ∗ (𝑡 ) = 𝑡 − + 𝑐2
4(1 − 𝑡 )
Usamos la condición inicial:
1 5
1 = 𝑦(0) = − + 𝑐2 ⇒ 𝑐2 =
4 4
Por tanto,
1 5
𝑦 ∗ (𝑡 ) = 𝑡 − +
4(1 − 𝑡 ) 4
Así, las sendas halladas cumplen las condiciones del principio del máximo y resuelven el problema.
Ejemplo:
Hallar las trayectorias 𝑦 ∗ (𝑡), 𝑢∗ (𝑡), 𝜆∗ (𝑡) que resuelven el problema:
4
𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑎𝑟 𝑣 = ∫ 3𝑦𝑑𝑡
0
𝑦′ = 𝑦 + 𝑢
𝑠𝑢𝑗𝑒𝑡𝑜 𝑎 𝑦 (0) = 5
𝑢(𝑡) ∈ [0,2]
Solución:
Formamos la función Hamiltoniana:
𝐻 (𝑡, 𝑦, 𝑢, 𝜆) = 3𝑦 + 𝜆(𝑦 + 𝑢)
En este caso, la función depende de manera lineal de u. Entonces la variable de control óptima se
ubicará en la frontera del conjunto Ω
𝜕𝐻
(𝑡, 𝑦, 𝑢, 𝜆) = 𝜆
𝜕𝑢
Si 𝜆 > 0, entonces H es una función creciente con respecto a la variable de control y el valor
óptimo es 𝑢∗ (𝑡) = 2
Si 𝜆 < 0, entonces H es una función decreciente con respecto a la variable de control y el
valor óptimo es 𝑢∗ (𝑡) = 0
En la siguiente gráfica se ilustran ambos casos:
Para hallar la senda de control óptima debemos determinar cuál de estos dos casos está verificando
la variable de coestado .
La tercera condición del principio del máximo nos dará la respuesta:
𝜕𝐻
𝜆′ = − = −3 − 𝜆
𝜕𝑦
𝜆′ + 𝜆 = −3
Es una ecuación diferencial lineal de primer orden, cuya solución viene dada por:
𝜆∗ (𝑡) = 𝑐1 𝑒 −𝑡 − 3
Usamos la condición 𝜆(4) = 0, obtenemos:
𝜆∗ (𝑡) = 3𝑒 4−𝑡 − 3
La senda óptima de la variable de coestado es exponencialmente decreciente y toma valores
positivos en todo 𝑡 ∈ [0, 4]. Entonces, estamos en el primer caso y por tanto, el control óptimo es
𝑢∗ (𝑡) = 2.
Usando la segunda condición del principio del máximo:
𝜕𝐻
𝑦′ = = 𝑦 + 𝑢∗ = 𝑦 + 2
𝜕𝜆
𝑦′ − 𝑦 = 2
Tenemos nuevamente una ecuación diferencial lineal, cuya solución es, junto con la condición
inicial 𝑦(0) = 5, es:
𝑦 ∗ (𝑡) = 7𝑒 𝑡 − 2
Por lo tanto, las sendas óptimas halladas satisfacen las condiciones del principio del máximo y
resuelven el problema propuesto.
Ejemplo:
Hallar las trayectorias 𝑦 ∗ (𝑡), 𝑢∗ (𝑡), 𝜆∗ (𝑡) que resuelven el problema:
5
𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑎𝑟 𝑣 = ∫ (𝑢𝑦 − 𝑢2 − 𝑦 2 )𝑑𝑡
1
𝑦′ = 𝑦 + 𝑢
𝑠𝑢𝑗𝑒𝑡𝑜 𝑎
𝑦 (1) = 2
Solución:
La función Hamiltoniana del problema es:
𝐻 (𝑡, 𝑦, 𝑢, 𝜆) = 𝑢𝑦 − 𝑢2 − 𝑦 2 + 𝜆(𝑦 + 𝑢)
En este caso, la función Hamiltoniana depende de manera no lineal de u, por tanto, se debe cumplir:
𝜕𝐻
= 𝑦 − 2𝑢 + 𝜆 = 0
𝜕𝑢
𝜕2𝐻
= −2 ≤ 0
𝜕𝑢2
𝜆+𝑦
Luego, 𝑢∗ = 2
𝜆+𝑦 3 1
𝑦′ = 𝑦 + = 𝑦+ 𝜆
{ 2 2 2
𝜆 + 𝑦 3 3
𝜆′ = − + 2𝑦 − 𝜆 = 𝑦 − 𝜆
2 2 2
Expresamos este sistema matricialmente:
3 1
𝑦′
( ) = (2 2 ) (𝑦)
𝜆′ 3 3 𝜆
−
2 2
Calculamos 𝐴 − 𝜆𝐼 = 0:
3 1
−𝜆
|2 2 | = 0 ⇔ (𝜆 − 3) (𝜆 + 3) − 3 = 0
3 3 2 2 4
− −𝜆
2 2
9 3
𝜆2 − − = 0 ⇔ 𝜆2 − 3 = 0 ⇔ 𝜆 = ±√3
4 4
Cuando 𝜆 = √3:
3 1
− √3 𝑘 0
(𝐴 − √3𝐼)𝐾 = (2 2 ) ( 1) = ( )
3 3 𝑘2 0
− − √3
2 2
3 1
𝑘1 − √3𝑘1 + 𝑘2 = 0
{2 2
3 3
𝑘 − 𝑘 − √3𝑘2 = 0
2 1 2 2
3
Si tomamos 𝑘2 = 2 − √3 en la segunda ecuación:
3 3 3
𝑘1 − ( + √3) ( − √3) = 0
2 2 2
3 9 3
𝑘1 = ( − 3) = −
2 4 4
1
𝑘1 = −
2
El autovector es:
1
−
𝐾= ( 2 ) ó𝐾 = ( 1 )
3 2√3 − 3
− √3
2
Cuando 𝜆 = −√3:
3 1
+ √3 𝑘 0
(𝐴 − √3𝐼)𝐾 = (2 2 ) ( 1) = ( )
3 3 𝑘2 0
− + √3
2 2
3 1
𝑘1 + √3𝑘1 + 𝑘2 = 0
{2 2
3 3
𝑘 − 𝑘 + √3𝑘2 = 0
2 1 2 2
3
Si tomamos 𝑘2 = − 2 − √3 en la segunda ecuación:
3 3 3
𝑘1 − (− + √3) ( + √3) = 0
2 2 2
3 9 3
𝑘1 = (3 − ) =
2 4 4
1
𝑘1 =
2
El autovector es:
1
2 1
𝐾= ( ) ó𝐾= ( )
3 −3 − 2√3
− − √3
2
Así, la solución viene dada por:
𝑦 1 1
( ) = 𝑐1 ( ) 𝑒 √3𝑡 + 𝑐2 ( ) 𝑒 −√3𝑡
𝜆 2√3 − 3 −3 − 2√3
O, equivalentemente:
2 = 𝑦(1) = 𝑐1 𝑒 √3 + 𝑐2 𝑒 −√3
Al resolver el sistema, obtenemos 𝑐1 ≈ 4.73 y 𝑐2 ≈ 11.3.
Finalmente, las sendas óptimas son:
Condición de Transversalidad:
El problema de control óptimo (1) puede modificarse asumiendo un valor final de la variable de
estado determinad (𝑦𝑇 , 𝑇 fijo), un horizonte de tiempo indeterminado (T libre) o un valor final de la
variable de estado que depende del tiempo (curva terminal 𝑦𝑇 = Φ(𝑇)).
Para resolver el problema de control óptimo en estos tres casos, es necesario contar con condiciones
de transversalidad distintas a las establecidas en el principio del máximo.
La condición de transversalidad genérica para estos tres casos se obtiene a partir de los dos últimos
términos de la condición de transversalidad para problemas de cálculo de variaciones:
[𝐻]𝑡=𝑇 Δ𝑇 − 𝜆(𝑇)Δ𝑦𝑇 = 0 (3)
Casos Especiales de la Condición de Transversalidad:
Caso 1: Valor Terminal y Horizonte Temporal Fijo
Cuando el valor terminal de la variable de estado y el horizonte temporal se encuentran prefijados,
se cumple que Δ𝑇 = 0 y Δ𝑦𝑇 = 0, por tanto, la condición (3) se satisface automáticamente. Para
hallar la solución del problema de control óptimo, basta emplear la condición 𝑦(𝑇) = 𝑦𝑇 , pues T y
yT son dados.
Ejemplo:
Hallar las trayectorias 𝑦 ∗ (𝑡), 𝑢∗ (𝑡), 𝜆∗ (𝑡) que resuelven el problema:
1
𝑢1−𝜃
𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑎𝑟 𝑣=∫ 𝑑𝑡
0 1−𝜃
𝑦 ′ = −𝑦 − 𝑢 , 𝜃 ∈ (0,1)
𝑠𝑢𝑗𝑒𝑡𝑜 𝑎 𝑦 (0) = 2
𝑦 (1) = 1
Solución:
La función Hamiltoniana es:
𝑢1−𝜃
𝐻 (𝑡, 𝑦, 𝑢, 𝜆) = + 𝜆(−𝑦 − 𝑢)
1−𝜃
En este caso, el Hamiltoniano constituye una función no lineal, por tanto, usamos las condiciones
de optimización:
𝜕𝐻
= 𝑢−𝜃 − 𝜆 = 0
𝜕𝑢
𝜕2𝐻
= −𝜃𝑢−𝜃−1 ≤ 0
𝜕𝑢2
1
Luego, 𝑢−𝜃 = 𝜆 ⇒ 𝑢∗ (𝑡) = 𝜆−𝜃 .
Planteamos las ecuaciones de movimiento para las variables de estado y coestado:
𝜕𝐻
𝑦′ = = −𝑦 − 𝑢
𝜕𝜆
𝜕𝐻
𝜆′ = − =𝜆
𝜕𝑦
Resolvemos la segunda ecuación diferencial por variables separables y obtenemos:
𝜆∗ (𝑡) = 𝑐1 𝑒 𝑡
Reemplazamos el valor óptimo de la variable de coestado en la variable de control:
1 1 1 𝑡
−
𝑢∗ (𝑡) = 𝜆∗ (𝑡)−𝜃 = (𝑐1 𝑒 𝑡 )−𝜃 = 𝑐1 𝜃 𝑒 −𝜃
Ejemplo:
Hallar las trayectorias 𝑦 ∗ (𝑡), 𝑢∗ (𝑡), 𝜆∗ (𝑡) que resuelven el problema:
𝑇
𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑎𝑟 𝑣 = ∫ (−𝑢2 − 𝑢𝑡)𝑑𝑡
0
𝑦′ = 𝑢 (𝑇 𝑙𝑖𝑏𝑟𝑒)
𝑠𝑢𝑗𝑒𝑡𝑜 𝑎 𝑦(0) = 1
𝑦 (𝑇 ) = 5
Solución:
La función Hamiltoniana es:
𝐻 (𝑡, 𝑦, 𝑢, 𝜆) = −𝑢2 − 𝑢𝑡 + 𝜆𝑢
Estamos en el caso no lineal del Hamiltoniano con respecto a la variable de control. Aplicamos el
principio del máximo:
𝜕𝐻
= −2𝑢 − 𝑡 + 𝜆 = 0
𝜕𝑢
𝜕2𝐻
= −2 < 0
𝜕𝑢2
𝜆−𝑡
A partir de la primera ecuación, tenemos que 𝑢∗ (𝑡) = .
2
𝑐1 − 𝑇 2 𝑐1 − 𝑇 𝑐1 − 𝑇
−( ) −( ) 𝑇 + 𝑐1 ( )=0
2 2 2
𝑐1 − 𝑇 𝑐1 − 𝑇
( ) [− ( ) − 𝑇 + 𝑐1 ] = 0
2 2
Tenemos dos situaciones:
𝑐1 − 𝑇 𝑐1 − 𝑇
=0𝑜 −( ) − 𝑇 + 𝑐1 = 0
2 2
𝑐1 −𝑇
Si = 0 ⇒ 𝑐1 = 𝑇
2
𝑐1−𝑇 𝑐1 −𝑇
Si − ( ) − 𝑇 + 𝑐1 = 0 ⇒ 𝑐1 − 𝑇 = ( ) ⇒ 2𝑐1 − 2𝑇 = 𝑐1 − 𝑇 ⇒ 𝑐1 = 𝑇
2 2
𝐻 (𝑡, 𝑦, 𝑢, 𝜆) = −√1 + 𝑢2 + 𝜆𝑢
Esta función es no lineal con respecto a la variable de control.
Aplicamos las condiciones de maximización:
𝜕𝐻 𝑢
=− +𝜆=0
𝜕𝑢 √1 + 𝑢2
𝑢2
2 −√1 + 𝑢2 + 2 2
𝜕 𝐻 √1 + 𝑢2 = −1 − 𝑢 + 𝑢 = −(1 + 𝑢2 )−32 < 0
= 3
𝜕𝑢2 1 + 𝑢2 (1 + 𝑢 2 )2
De este modo,
𝑢
= 𝜆 ⇒ 𝑢2 = 𝜆2 (1 + 𝑢2 ) ⇒ 𝑢2 (1 − 𝜆2 ) = 𝜆2
√1 + 𝑢2
2
𝜆2 𝜆
𝑢 = 2
⇒ 𝑢 ∗ (𝑡 ) =
1−𝜆 √1 − 𝜆2
Las ecuaciones de movimiento para las variables de estado y coestado son:
𝜕𝐻
𝑦′ = =𝑢
𝜕𝜆
𝜕𝐻
𝜆′ = − =0
𝜕𝑦
Entonces, 𝜆∗ (𝑡) = 𝑐1 y así,
𝑐1
𝑢 ∗ (𝑡 ) =
√1 − 𝑐12
Por otro lado,
𝑐1
𝑦′ =
√1 − 𝑐12
Integrando esta ecuación diferencial, tenemos:
𝑐1
𝑦 ∗ (𝑡 ) = 𝑡 + 𝑐2
√1 − 𝑐12
′]
𝑐12 𝑐12
[𝐻 − 𝜆Φ 𝑡=𝑇 = −√1 + + + 2𝑇𝑐1 = 0
1 − 𝑐12 √1 − 𝑐12
1 𝑐12
− + + 2𝑇𝑐1 = 0
√1 − 𝑐12 √1 − 𝑐12
1 − 𝑐12
2𝑇𝑐1 = = √1 − 𝑐12
√1 − 𝑐12
𝑐1 1
=
√1 − 𝑐12 2𝑇
19
20 − 2𝑇 2 = 1 ⇒ 19 = 2𝑇 2 ⇒ 𝑇 = √
2
Luego,
𝑐12 1 𝑐12 1
2 = 2
⇒ 2 =
1 − 𝑐1 4𝑇 1 − 𝑐1 38
1
38𝑐12 = 1 − 𝑐12 ⇒ 39𝑐12 = 1 ⇒ 𝑐1 = √
39
1
𝑦 ∗ (𝑡 ) = √ 𝑡
38
1
𝜆∗ ( 𝑡 ) = √ 𝑡
39
1
𝑢 ∗ (𝑡 ) = √
38