, curso 2014–2015 master en modelización e ... · notas sobre teoría de control, curso...

14
Notas sobre Teoría de Control, curso 2014–2015 Master en Modelización e Investigación Matemática, Estadística y Computación CONTROL ÓPTIMO: TIEMPO DISCRETO EDUARDO MARTÍNEZ En multitud de ocasiones la ley de control de un determinado sistema de control se decide por criterios de maximización de beneficios o mini- mización de esfuerzos. A tal fin, se define una función en el espacio de trayectorias del sistema y se aplican técnicas de optimización, especial- mente adaptadas a la estructura de nuestro problema. Veremos dos de estas técnicas: la programación dinámica y el principio del máximo de Pontryagin, que proporcionan visiones complementarias del problema. 1. Programación dinámica Se considera un sistema de control en tiempo discreto x t+1 = f t (x t ,u t ), t =0, 1,...,N - 1, (Σ) y una función de coste J ( x 0 , {u t } N -1 t=0 ) = K N (x N )+ N -1 X t=0 K t (x t ,u t ). Fijado un punto inicial x 0 , buscamos los controles u 0 ,u 1 ,...,u N -1 que hacen que se minimice el valor de J, donde x 0 ,x 1 ,...,x N es la trayec- toria asociada a dichos controles mediante (Σ). En las expresiones anteriores, f t (x, u) y K t (x, u) son funciones defi- nidas en algún subconjunto de R n × R p , para t =0, 1,...,N - 1, con valores en R n y R, respectivamente, mientras que K N (x) es una función real definida en algún subconjunto de R n . Denotemos por u * 0 ,u * 1 ,...,u * N -1 dichos controles óptimos, que su- pondremos únicos, y por x * 0 ,x * 1 ,...,x * N la trayectoria asociada, donde obviamente x * 0 = x 0 . La clave del método de programación dinámica está en el siguiente razonamiento, que se conoce con el nombre de principio de optima- lidad de Bellman. Consideramos para cada 0 i<N el problema minimizar J i ( x * i , {u t } N -1 t=i ) = K N (x N )+ N -1 X t=i K t (x t ,u t ) sujeto a x t+1 = f t (x t ,u t ), t = i, i +1,...,N - 1 x i = x * i . Es evidente que la solución a dicho problema es u * i ,u * i+1 ,...,u * N -1 , sien- do la trayectoria asociada x * i ,x * i+1 ,...,x * N , ya que en caso contrario si u + i ,u + i+1 ,...,u + N -1 minimiza J i entonces u * 0 ,u * 1 ,...,u * i-1 ,u + i ,u + i+1 ,...,u + N -1 1

Upload: others

Post on 15-Apr-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: , curso 2014–2015 Master en Modelización e ... · Notas sobre Teoría de Control, curso 2014–2015 Master en Modelización e Investigación Matemática, Estadística y Computación

Notas sobre Teoría de Control, curso 2014–2015Master en Modelización e Investigación Matemática, Estadística y Computación

CONTROL ÓPTIMO: TIEMPO DISCRETO

EDUARDO MARTÍNEZ

En multitud de ocasiones la ley de control de un determinado sistemade control se decide por criterios de maximización de beneficios o mini-mización de esfuerzos. A tal fin, se define una función en el espacio detrayectorias del sistema y se aplican técnicas de optimización, especial-mente adaptadas a la estructura de nuestro problema. Veremos dos deestas técnicas: la programación dinámica y el principio del máximo dePontryagin, que proporcionan visiones complementarias del problema.

1. Programación dinámica

Se considera un sistema de control en tiempo discreto

xt+1 = ft(xt, ut), t = 0, 1, . . . , N − 1, (Σ)

y una función de coste

J(x0, {ut}N−1

t=0

)= KN(xN) +

N−1∑t=0

Kt(xt, ut).

Fijado un punto inicial x0, buscamos los controles u0, u1, . . . , uN−1 quehacen que se minimice el valor de J, donde x0, x1, . . . , xN es la trayec-toria asociada a dichos controles mediante (Σ).

En las expresiones anteriores, ft(x, u) y Kt(x, u) son funciones defi-nidas en algún subconjunto de Rn × Rp, para t = 0, 1, . . . , N − 1, convalores en Rn y R, respectivamente, mientras que KN(x) es una funciónreal definida en algún subconjunto de Rn.

Denotemos por u∗0, u∗1, . . . , u∗N−1 dichos controles óptimos, que su-pondremos únicos, y por x∗0, x∗1, . . . , x∗N la trayectoria asociada, dondeobviamente x∗0 = x0.

La clave del método de programación dinámica está en el siguienterazonamiento, que se conoce con el nombre de principio de optima-lidad de Bellman. Consideramos para cada 0 ≤ i < N el problema

minimizar Ji(x∗i , {ut}N−1

t=i

)= KN(xN) +

N−1∑t=i

Kt(xt, ut)

sujeto a xt+1 = ft(xt, ut), t = i, i+ 1, . . . , N − 1

xi = x∗i .

Es evidente que la solución a dicho problema es u∗i , u∗i+1, . . . , u∗N−1, sien-

do la trayectoria asociada x∗i , x∗i+1, . . . , x∗N , ya que en caso contrario si

u+i , u+i+1, . . . , u

+N−1 minimiza Ji entonces u∗0, u∗1, . . . , u∗i−1, u

+i , u

+i+1, . . . , u

+N−1

1

Page 2: , curso 2014–2015 Master en Modelización e ... · Notas sobre Teoría de Control, curso 2014–2015 Master en Modelización e Investigación Matemática, Estadística y Computación

2 EDUARDO MARTÍNEZ

nos daría un menor valor de J que la sucesión de controles óptimosu∗0, u

∗1, . . . , u

∗N−1.

Teniendo esto en cuenta, para utilizar el método de programacióndinámica definimos la sucesión de funciones reales Vt : Rn → R, parat = 0, . . . , N , por medio de la recurrencia regresiva

VN(x) = KN(x), Vt(x) = mınu

{Kt(x, u) + Vt+1(ft(x, u))}.

En ocasiones escribiremos Jt(x, u) para la función a minimizar en cadapaso

Jt(x, u) = Kt(x, u) + Vt+1(ft(x, u)).

Teorema 1.1: Supongamos que para cada t = N−1, N−2, . . . , 2, 1, 0y para cada x ∈ Rn, el problema

mınu

{Kt(x, u) + Vt+1(ft(x, u))}

tiene solución única u = ht(x), y sea Vt(x) el valor mínimo de dichoproblema. Entonces la sucesión dada por

x∗0 = x0

u∗t = ht(x∗t )

x∗t+1 = ft(x∗t , u

∗t )

t = 0, 1, . . . , N − 1,

minimiza la función de coste total J(x0, {ut}N−1

t=0

)y su valor mínimo es

V0(x0).Dem. Los dos últimos sumandos de la función J dependen solo de uN−1

mientras que el resto dependen de todas las variables ut. De esta forma

J(x0, {ut}N−1

t=0

)=

N−2∑t=0

Kt(xt, ut) +KN−1(xN−1, uN−1) +KN(xN)

=N−2∑t=0

Kt(xt, ut) +KN−1(xN−1, uN−1) + VN(xN)

=N−2∑t=0

Kt(xt, ut) +KN−1(xN−1, uN−1) + VN(fN−1(xN−1, uN−1))

=N−2∑t=0

Kt(xt, ut) + JN−1(xN−1, uN−1)

Page 3: , curso 2014–2015 Master en Modelización e ... · Notas sobre Teoría de Control, curso 2014–2015 Master en Modelización e Investigación Matemática, Estadística y Computación

CONTROL ÓPTIMO: TIEMPO DISCRETO 3

Separando dichos términos obtenemos

mınu0,u1,...,uN−1

J(x0, {ut}N−1t=i ) =

= mınu0,u1,...,uN−2

{N−2∑t=0

Kt(xt, ut) + mınuN−1

JN−1(xN−1, uN−1)}

= mınu0,u1,...,uN−2

{N−2∑t=0

Kt(xt, ut) + VN−1(xN−1)},

donde el mínimo del último sumando se obtiene para uN−1 = hN−1(xN−1),es decir, VN−1(xN−1) = JN−1(xN−1, hN−1(xN−1)).

Repitiendo el mismo razonamiento,N−3∑t=0

Kt(xt, ut) +KN−2(xN−2, uN−2) + VN−1(xN−1) =

=N−3∑t=0

Kt(xt, ut) + JN−2(xN−2, uN−2)

y procediendo iterativamente de la misma manera

mınu0,u1,...,uN−1

J(x0, {ut}N−1t=i ) =

= mınu0,u1,...,uN−2

{N−2∑t=0

Kt(xt, ut) + VN−1(xN−1)}

= mınu0,u1,...,uN−2

{N−3∑t=0

Kt(xt, ut) + JN−2(xN−2, uN−2)}

= mınu0,u1,...,uN−3

{N−3∑t=0

Kt(xt, ut) + mınuN−2

JN−2(xN−2, uN−2)}

= mınu0,u1,...,uN−3

{N−3∑t=0

Kt(xt, ut) + VN−2(xN−2)}

...

= mınu0

{K0(x0, u0) + V1(x1)

}= mın

u0

J0(x0, u0)

= V0(x0),

donde, en cada paso, el mínimo en el último sumando se obtiene paraut = ht(xt), obteniéndose el valor mínimo Vt(xt) = Jt(xt, ht(xt)).

Por tanto, el valor mínimo de la función de coste es V0(x0) y seobtiene para los valores de ut indicados en el enunciado. �

Page 4: , curso 2014–2015 Master en Modelización e ... · Notas sobre Teoría de Control, curso 2014–2015 Master en Modelización e Investigación Matemática, Estadística y Computación

4 EDUARDO MARTÍNEZ

Si el problema consiste en maximizar en vez de minimizar, simple-mente podemos cambiar máximo por mínimo en todo lo que se hadiscutido. Alternativamente, podemos cambiar el signo a la función yminimizar.Ejemplo 1.2 (Asignación de recursos): Se posee una cantidad A derecursos que se puede asignar a diversas actividades (N actividades).La cantidad asignada a la actividad k-ésima es uk, y el beneficio pro-porcionado por dicha actividad es gk(uk). Se pretende maximizar elbeneficio total.

Supondremos para simplificar que gk(u) =√u. Tenemos que resolver

el problema

maxN−1∑k=0

√uk sujeto a

N−1∑k=0

uk = A.

Este problema es equivalente al problema de control que tiene porecuaciones del sistema1

xt+1 = xt − ut,

con puntos inicial y final fijos

x0 = A, xN = 0,

y función objetivo

J(x0, {ut}N−1t=0 ) =

N−1∑t=0

√ut.

Además tenemos las restricciones 0 ≤ ut ≤ xt, para todo t (no puedoasignar más recursos que los que tengo).

Dado que KN = 0, tenemos VN(x) = 0. El primer término a calculares VN−1(x) que se obtiene maximizando

√u + VN(x − u) =

√u, cuyo

valor máximo se obtiene para u = x (ya que 0 ≤ u ≤ x) y su valormáximo es VN−1(x) =

√x. Para N − 2 tengo que maximizar

√u +

VN−1(x − u) =√u +

√x− u cuyo valor máximo es VN−2(x) =

√2x,

que se obtiene u = hN−2(x) = x/2.Es fácil ver que, en general Vt(x) =

√(N − t)x, obteniéndose dicho

valor para ut = ht(x) = x/(N − t). Por tanto, la mejor estrategia esasignar ut = xt/(N − t), y el valor óptimo es V0(x0) =

√Nx0 =

√NA.

La asignación a realizar es u0 = A/N , de donde x1 = x0 − u0 =A−A/N = (N − 1)/A, u1 = x1/(N − 1) = A/N , y así sucesivamente,es decir, ut = A/N y xt = A(N − t)/N .

1Esta forma de entender el problema consiste es pensar que vamos asignandorecursos a cada actividad sucesivamente, siendo xt la cantidad de recursos que nosqueda después de asignar recursos a las primeras t − 1 actividades, y siendo ut lacantidad de recursos que se le asigna a la t-ésima actividad.

Page 5: , curso 2014–2015 Master en Modelización e ... · Notas sobre Teoría de Control, curso 2014–2015 Master en Modelización e Investigación Matemática, Estadística y Computación

CONTROL ÓPTIMO: TIEMPO DISCRETO 5

Como era de esperar, dada la simetría de problema, la estrategiaóptima consiste en asignar la misma cantidad de recursos a cada unade las actividades. /

Ejemplo 1.3 (Agente comercial: compraventa de bienes): Supongamosque disponemos de un cierto número de bienes gt y una cierta canti-dad de dinero mt. Cada día t podemos vender una cantidad de bienesut (comprar si es negativa) y se conoce el precio πt por unidad de di-cho bien en dicho día. Además, mantener cada unidad de nuestro bienen nuestra cartera/almacén genera un gasto s cada día. Lo que buscanuestro agente de ventas es maximizar el capital al final de un ciertonúmero N de días. Existe además una restricción en la cantidad de pro-ducto que puede comprar/vender diariamente, siendo esta no superiora k.

Las ecuaciones que rigen la evolución del sistema son{mt+1 = mt + πtut − sgt

gt+1 = gt − ut.

La función a maximizar es J((m0, g0), {ut}N−1t=0 ) = mN+πNgN , teniendo

en cuenta que |ut| ≤ k.Por tanto, nuestras variables de estado son (m, g), el control es u, los

costes son Kt(m, g, u) = 0 para 0 ≤ t ≤ N − 1 y KN(m, g) = m+ πNg,y la aplicación del sistema es

ft((m, g), u) = (m+ πtu− sg, g − u), t = 0, 1, . . . , N − 1.

(t = N) La función valor óptimo en el paso t = N es claramente VN(m, g) =m+ πNg.

(t = N − 1) En el paso t = N − 1, tenemos que maximizar

KN−1(m, g, u) + VN(fN−1(m, g, u)) = 0 + VN(m+ πN−1u− sg, g − u)

= m+ πN−1u− sg + πN(g − u)

= m+ (πN − s)g + (πN−1 − πN)u,

que tiene el máximo para u = k si πN−1−πN > 0 o para u = −ksi πN−1 − πN < 0, siendo el valor máximo

VN−1(m, g) = m+ (πN − s)g + k|πN−1 − πN |.(t = N − 2) En el paso t = N − 2 tenemos que maximizar

KN−2(m, g, u) + VN−1(fN−2(m, g, u)) =

= 0 + VN−1(m+ πN−2u− sg, g − u)

= m+ πN−2u− sg + (πN − s)(g − u) + k|πN−1 − πN |= m+ (πN − 2s)g + k|πN−1 − πN |+ (πN−2 − πN + s)u

que tiene el máximo cuando u = k, si πN−2−πN+s > 0, o cuandou = −k, si πN−2 − πN + s > 0, siendo dicho valor máximo

VN−2(m, g) = m+ (πN − 2s)g + k|πN−1 − πN |+ k|πN−2 − πN + s|.

Page 6: , curso 2014–2015 Master en Modelización e ... · Notas sobre Teoría de Control, curso 2014–2015 Master en Modelización e Investigación Matemática, Estadística y Computación

6 EDUARDO MARTÍNEZ

(t = t) Si se realizan algunos pasos más, es fácil inducir la fórmula

Vt(m, g) = m+(πN − s(N − t)

)g + k

N−1∑i=t

|πi − πN + (N − i− 1)s|,

que se obtiene para u = ht(m, g), donde

ht(m, g) =

{k si πt − πN + (N − t− 1)s > 0

−k si πt − πN + (N − t− 1)s < 0 .

Como ejercicio, demuéstrese por inducción que dicha fórmula esválida.

En consecuencia, el valor óptimo de la función objetivo es

V0(m, g) = m+ (πN − sN)g + kN−1∑i=0

|πi − πN + (N − i− 1)s|,

que se obtiene con la estrategia

u = ht(m, g) =

{k si πt − πN + (N − t− 1)s > 0

−k si πt − πN + (N − t− 1)s < 0 ./

Ejemplo 1.4 (Problemas LQ): Se denominan genéricamente proble-mas LQ aquellos problemas de control óptimo en los cuales el sistemade control es un sistema lineal (L)

xt+1 = Axt +But,

y la función objetivo es una función cuadrática (Q) en todas las varia-bles (de estado y de control)

J(x0, {ut}N−1t=0 ) = xTNMxN +

N−1∑t=0

(xTt Qxt + uTt Rut + 2uTt Sxt).

Se supondrá que la matriz R es simétrica y definida positiva, que lamatriz M es simétrica y semidefinida positiva, y que la matriz simétrica[Q,ST;S,R] es también semidefinida positiva.Teorema 1.5: La ley de control óptimo para el problema LQ:

minimizar xTNMxN +N−1∑k=0

[xTt Qxt + uTt Rut + 2uTt Sxt]

sujeta a xt+1 = Axt +But,

viene dada por el feedback lineal

u∗t = ht(x∗t ) = Ftx

∗t ,

obteniéndose el valor mínimo de la función de coste

J(x0, {u∗t}N−1t=0 ) = xT0M0x0,

Page 7: , curso 2014–2015 Master en Modelización e ... · Notas sobre Teoría de Control, curso 2014–2015 Master en Modelización e Investigación Matemática, Estadística y Computación

CONTROL ÓPTIMO: TIEMPO DISCRETO 7

donde las matrices Ft están definidas por

Ft = −(R +BTMt+1B)−1(S +BTMt+1A),

y la sucesión de matrices Mt viene dada por la ley de recurrencia re-gresiva {

Mt = Q+ ATMt+1A− FTt (R +BTMt+1B)Ft

MN =M.

Dem. Tenemos que

KN(x) = xTMx y Kt(x, u) = xTQx+ uTRu+ 2uTSx.

Probaremos que Vt(x) = xTMtx, donde Mt son las matrices indica-das en el enunciado del teorema. La demostración la realizamos porinducción (regresiva) en t.

Para t = N tenemos VN(x) = xTMNx y KN(x) = xTMx, que soniguales ya que MN =M .

Supuesto cierto que Vt(x) = xTMtx, veamos que Vt−1(x) = xTMt−1x,con ut−1 = Ft−1x, y Ft−1,Mt−1 definidas en términos de Mt como seindica en el enunciado.

Tenemos

Jt−1(x, u) = Kt−1(x, u) + Vt(ft−1(x, u))

= xTQx+ uTRu+ 2uTSx+ (Ax+Bu)TMt(Ax+Bu)

= uT(R +BTMtB)u+ 2uT(BTMtA+ S)x+ xT(Q+ ATMtA)x.

Cada una de las funciones Kt(x, u) es semidefinida positiva, de don-de se deduce que tanto Jt(x, u) como Vt(x) son también semidefinidaspositivas2. Por tanto, cada una de las matrices Mt es semidefinida po-sitiva. Como además R es estrictamente definida positiva, tenemos queR+BTMtB es definida positiva (en particular es invertible). De aquí sededuce que Jt−1 tiene un único punto crítico (con respecto a la variableu) que es el punto de mínimo buscado. Para hallarlo, derivamos conrespecto a u e igualamos a cero,

(R +BTMtB)u+ (S +BTMtA)x = 0,

de donde se obtiene

u∗ = −(R +BTMtB)−1(S +BTMtA)x = Ft−1x.

Sustituyendo ahora u por Ft−1x en Jt obtenemos el valor óptimo

Vt−1(x) = xT[FTt−1(R +BTMtB)Ft−1 + 2FT

t−1(BTMtA+ S) + (Q+ ATMtA)

]x

= xT(−FT

t−1(R +BTMtB)Ft−1 + (Q+ ATMtA))x,

2Jt es suma de semidefinidas positivas y Vt es el valor mínimo de una semidefinidapositiva.

Page 8: , curso 2014–2015 Master en Modelización e ... · Notas sobre Teoría de Control, curso 2014–2015 Master en Modelización e Investigación Matemática, Estadística y Computación

8 EDUARDO MARTÍNEZ

donde se ha tenido en cuenta que (BTMtA+S) = −(R+BTMtB)Ft−1.Por tanto, la matriz de la forma cuadrática Vt−1 esMt−1, lo que concluyela prueba. �

Nótese que de la demostración del teorema se deduce que las matricesMt son todas semidefinidas positivas.

Existen multitud de ejemplos de sistemas físicos que se describen deesta manera. El resultado del teorema muestra que el controlador seimplementa por medio de realimentación lineal de estados. Más aún,las matrices Ft, aunque dependan del tiempo, pueden construirse re-cursivamente e independientemente de la observación del sistema. /

2. Principio del máximo de Pontryagin

El segundo de los métodos que vamos a estudiar se obtiene al aplicarel conocido método de los multiplicadores de Lagrange al problema encuestión.

Dados dos puntos x0 y xN , arbitrarios pero fijos, consideremos elproblema de control óptimo

minimizarN−1∑k=0

Kt(xt, ut)

sujeto a xt+1 = ft(xt, ut), t = 0, 1, . . . , N − 1.

Para simplificar, supondremos inicialmente que el dominio es unabierto en el que solo hay un punto crítico, que es el punto de mínimobuscado. Además, supondremos que las ligaduras son independientesen el punto de óptimo. Veremos más adelante cómo proceder cuandoesto no ocurre.

La función de Lagrange definida a partir de los datos anteriores es

L = K0(x0, u0) +K1(x1, u1) + · · ·+KN−1(xN−1, uN−1)+

+ pT0 [x1 − f0(x0, u0)] + pT1 [x2 − f1(x1, u1)] + · · ·· · ·+ pTN−1[xN − fN−1(xN−1, uN−1)].

Dado que los puntos x0 y xN están prefijados, las variables de las que de-pende la función de Lagrange son (x1, . . . , xN−1, p0, . . . , pN−1, u0, . . . , uN−1).

La derivada de L con respecto a ut da∂Kt

∂u(xt, ut)− pTt

∂ft∂u

(xt, ut) = 0.

La derivada de L con respecto a xt da∂Kt

∂x(xt, ut) + pTt−1 − pTt

∂ft∂x

(xt, ut) = 0,

y finalmente, la derivada de L con respecto a pt da

xt+1 − ft(xt, ut) = 0.

Page 9: , curso 2014–2015 Master en Modelización e ... · Notas sobre Teoría de Control, curso 2014–2015 Master en Modelización e Investigación Matemática, Estadística y Computación

CONTROL ÓPTIMO: TIEMPO DISCRETO 9

Estas ecuaciones pueden reescribirse de forma adecuada como sigue.Definimos la función

Ht(x, p, u) = pTft(x, u)−Kt(x, u),

que se denomina Hamiltoniano de Pontryagin. En términos de ésta,las ecuaciones para los puntos críticos son

0 =∂Ht

∂u(xt, pt, ut) t = 0, . . . , N − 1

pt−1 =∂Ht

∂x(xt, pt, ut) t = 1, . . . , N − 1

xt+1 =∂Ht

∂p(xt, pt, ut) t = 0, . . . , N − 1 .

que se denominan ecuaciones de Hamilton-Pontryagin.Es conveniente definir p−1 por medio de

p−1 =∂H0

∂x(x0, p0, u0) = pT0

∂f0∂x

(x0, u0)−∂K0

∂x(x0, u0).

De esta manera, los tres bloques de ecuaciones de Hamilton-Pontryaginse deben satisfacer para t = 0, . . . , N − 1. Asumiremos este convenioen lo que sigue.Nota 2.1: Nótese que no se obtiene ninguna condición sobre el valordel multiplicador pN−1, que debe obtenerse a partir de las ecuacionesanteriores. Por otro lado, nótese que, mientras que las ecuaciones parax son ecuaciones en diferencias progresivas, las ecuaciones para p sonecuaciones en diferencias regresivas. �Nota 2.2: En el caso general de un dominio no abierto, o cuando exis-ten otros puntos críticos de L, un análisis más detallado del problemamuestra que la condición ∂Ht

∂u(xt, pt, u) = 0 debe sustituirse por la si-

guiente condición de optimalidad del Hamiltoniano: el valor de ut es lasolución del problema de optimización

maxu

H(xt, pt, u),

para los valores actuales de xt y pt. Las ecuaciones a resolver son en-tonces

ut = argmaxu

Ht(xt, pt, u)

pt−1 =∂Ht

∂x(xt, pt, ut)

xt+1 =∂Ht

∂p(xt, pt, ut),

(PMP)

para t = 0, . . . , N − 1.Obsérvese que, mientras que el problema original es un problema de

minimización, en cada paso el valor del Hamiltoniano debe maximizarsecon respecto a la variable u. �

Page 10: , curso 2014–2015 Master en Modelización e ... · Notas sobre Teoría de Control, curso 2014–2015 Master en Modelización e Investigación Matemática, Estadística y Computación

10 EDUARDO MARTÍNEZ

Ejemplo 2.3 (Asignación de recursos): Volvemos a considerar el pro-blema de la asignación de recursos, que ya estudiamos en el ejemplo 1.2,y planteamos de la forma

minimizar −N−1∑k=0

√ut

sujeto a xt+1 = xt − ut,

con puntos inical y final fijos x0 = A y xN = 0. Además, tenemos larestricción 0 ≤ u ≤ x.

La función Hamiltoniana es

Ht(x, p, u) = p(x− u) +√u.

La derivada con respecto a u, igualada a cero da

−p+ 1

2√u= 0.

La derivada con respecto a p nos da simplemente la ecuación del sistemade control

xt+1 =∂Ht

∂p(xt, ut) = xt − ut,

y la derivada con respecto a x nos da la evolución de las variables pt

pt−1 =∂Ht

∂x(xt, pt) = pt.

De esta última obtenemos que pt es constante (no depende de t) y laecuación para u implica que ut también es constante ut ≡ u. La soluciónde xt+1 = xt − ut es xt = x0 − tu = A − tu, e imponiendo xN = 0obtenemos A = Nu. Por tanto, la asignación debe ser u = A/N paracada actividad. El valor óptimo es

∑N−1t=0

√A/N =

√NA. /

Nota 2.4: Hemos supuesto que las funciones de ligadura tienen, en elpunto de óptimo, diferenciales linealmente independientes. Para detec-tar cuando esto no ocurre, podemos proceder como sigue. Una combi-nación lineal de las ligaduras se obtiene de la expresión de L si supo-nemos que todas las funciones Kt son nulas. Por tanto, las ecuacionesobtenidas entonces son válidas, de donde se deducen las condiciones

0 = pTt∂ft∂u

(xt, ut)

pTt−1 = pTt∂ft∂x

(xt, ut)

xt+1 = ft(xt, ut),

para (p0, p1, . . . , pN−1) 6= (0, . . . , 0).De las ecuaciones anteriores, se deduce que si pτ = 0, para algún

tiempo τ , entonces pt = 0 para todo t ≤ τ . En particular, pN−1 6= 0equivale a la condición anterior (p0, p1, . . . , pN−1) 6= (0, . . . , 0).

Page 11: , curso 2014–2015 Master en Modelización e ... · Notas sobre Teoría de Control, curso 2014–2015 Master en Modelización e Investigación Matemática, Estadística y Computación

CONTROL ÓPTIMO: TIEMPO DISCRETO 11

Estas condiciones pueden re-escribirse en términos de la función

H0t (x, p, u) = pTft(x, u),

0 =∂H0

t

∂u(xt, pt, ut)

pt−1 =∂H0

t

∂x(xt, pt, ut)

xt+1 =∂H0

t

∂p(xt, pt, ut),

t = 0, . . . , N − 1

con pN−1 6= 0. Las soluciones de estas ecuaciones que minimizan nuestrafunción objetivo se denominan soluciones anormales. �

Condiciones en la frontera. Debemos destacar que, en el problemageneral que hemos resuelto, hemos impuesto que los extremos x0 y xNson fijos. En muchos problemas se deben imponer otras condicionesdistintas a dichos puntos o bien se añade un coste terminal a la funciónobjetivo que penalice ciertos valores del punto final. Estás condicionesno cambian las ecuaciones obtenidas anteriormente (PMP), sino quesolamente añaden condiciones a los multiplicadores inicial p0 y finalpN−1.

Veamos algunos ejemplos:Punto final libre y coste terminal. A la función de coste J se leañade KN(xN) (como se hizo inicialmente en el estudio medianteprogramación dinámica). Por tanto, la función de Lagrange esahora L = L+KN(xN), donde L es la función de Lagrange queusamos anteriormente, y donde ahora xN es una variable. De laderivada de L con respecto a xN igualada a cero resulta

pN−1 = −∂KN

∂x(xN),

que nos proporciona el valor final del multiplicador pt.Punto final ligado. Se impone que el punto final satisfaga unacierta ecuación ψ(xN) = 0. Dado que ésta es una ligadura nueva,se debe multiplicar por un nuevo multiplicador ν y sumar a lafunción de Lagrange, que resulta L = L − νψ(xN), donde denuevo xN es una variable. La derivada de L con respecto a xNigualada a cero da

pN−1 = ν∂ψ

∂x(xN),

que, de nuevo, nos proporciona el valor final del multiplicadorpt, aunque ν debe ser determinado. En particular, si se permiteque el punto final xN sea completamente arbitrario, entoncespN−1 = 0.

Page 12: , curso 2014–2015 Master en Modelización e ... · Notas sobre Teoría de Control, curso 2014–2015 Master en Modelización e Investigación Matemática, Estadística y Computación

12 EDUARDO MARTÍNEZ

Punto inicial ligado. Si es al punto inicial a quien le impone-mos que satisfaga una cierta ecuación ψ(x0) = 0, el análisis essimilar. Esta nueva ligadura se debe multiplicar por un nuevomultiplicador ν y sumar a la función de Lagrange, que resultaL = L−νψ(x0), donde x0 no está fijado y es ahora una variable.La derivada de L con respecto a x0 igualada a cero da

p−1 = ν∂ψ

∂x(x0).

En particular, si se permite que el punto inicial x0 sea comple-tamente arbitrario, entonces p−1 = 0.

Ejercicio 2.5: Hallar las condiciones que se obtienen al imponer variasde las condiciones anteriores: ligadura inicial y final, ligadura final ycoste terminal, etc..Ejemplo 2.6 (Compraventa de bienes): Consideremos de nuevo elejemplo 1.3 de un agente comercial. Como el problema original es demaximización, para adecuarlo a nuestra teoría, debemos cambiar elsigno del coste terminal, de forma que KN(m, g) = −m − πNg, juntocon Kt = 0 para t = 0, . . . , N − 1. Denotando por (p, q) a los multipli-cadores, el Hamiltoniano es

Ht(m, g, p, q, u) = p(m+ πtu− sg) + q(g − u).

La evolución del multiplicador p viene dada por

pt−1 =∂Ht

∂m(mt, gt, pt, qt, ut) = pt,

por lo que pt es constante. Como el valor terminal es

pN−1 = −∂KN

∂m(mN , gN) = 1,

se deduce que pt = 1 para todo t = 0, 1, . . . , N . Para el momento qtenemos

qt−1 =∂Ht

∂g(mt, gt, pt, qt, ut) = qt − pts = qt − s.

Como el valor terminal es

qN−1 = −∂KN

∂g(mN , gN) = πN

se deduce que qt = πN − s(N − t− 1).Sustituyendo estos valores en el Hamiltoniano se obtiene

Ht(mt, gt, pt, qt, u) = mt + πtu− sgt + (gt − u)(πN − s(N − t− 1))

= mt + (πN − s(N − t))gt + (πt − πN + s(N − t− 1))u,

que tiene un máximo con respecto a u en

u∗t =

{k si πt − πN + s(N − t− 1) > 0

−k si πt − πN + s(N − t− 1) < 0 .

Page 13: , curso 2014–2015 Master en Modelización e ... · Notas sobre Teoría de Control, curso 2014–2015 Master en Modelización e Investigación Matemática, Estadística y Computación

CONTROL ÓPTIMO: TIEMPO DISCRETO 13

Obtenemos, por tanto, la misma respuesta que por medio del método deprogramación dinámica. Para obtener el valor óptimo se deben resolverlas ecuaciones de recurrencia originales con el valor de u∗t obtenido. /

Ejemplo 2.7 (Problemas LQ): Consideremos de nuevo un problemaLQ como en el ejemplo 1.4. El Hamiltoniano de Pontryagin es

H(x, p, u) = pT(Ax+Bu)− 1

2(xTQx+ uTRu+ 2uTSx).

La derivada con respecto a u es

BTp−Ru− Sx = 0,

de donde obtenemos u = R−1(BTp−Sx). Sustituyendo en la aplicacióndel sistema obtenemos

xt+1 = [A−BR−1S]xt +BR−1BTpt.

Derivando con respecto a x obtenemos

pt−1 = ATpt −Qxt − STut = [AT − STR−1BT]pt + [STR−1S −Q]xt.

Por tanto las ecuaciones quedan{xt+1 = [A−BR−1S]xt +BR−1BTpt

pt−1 = [STR−1S −Q]xt + [AT − STR−1BT]pt.

El punto final es libre, por lo que pN−1 = 0. /

Relación con la programación dinámica. Comparando la condi-ción de punto crítico para el Hamiltoniano u 7→ Ht(xt, pt, u) con lacondición de punto crítico para la función u 7→ Jt(xt, u) = Kt(xt, u) +Vt+1(ft(xt, u)), es decir,

−pTt∂ft∂u

(xt, ut) +∂Kt

∂u(xt, ut) = 0

frente a

∂Vt+1

∂u(ft(x, u))

∂ft∂u

(xt, ut) +∂Kt

∂u(xt, ut) = 0,

se deduce que la relación entre ambos métodos debe venir dada pormedio de

pt = −∂Vt+1

∂x(xt+1).

Veamos que, bajo condiciones adecuadas de regularidad de las funcionesque han ido apareciendo, esto es cierto.Teorema 2.8: Supongamos que la función valor óptimo Vt(x) es di-ferenciable, que el punto de máximo u = ht(x) se sitúa siempre en elinterior de su dominio, siendo también la función ht diferenciable. Sea(x∗t , u

∗t ) la sucesión de estados y controles óptimos, y definamos

p∗t = −∂Vt+1

∂x(x∗t+1).

Page 14: , curso 2014–2015 Master en Modelización e ... · Notas sobre Teoría de Control, curso 2014–2015 Master en Modelización e Investigación Matemática, Estadística y Computación

14 EDUARDO MARTÍNEZ

Entonces (x∗t , p∗t , u

∗t ) satisface las ecuaciones de Hamilton-Pontryagin.

Dem. En efecto, por un lado, es evidente que x∗t+1 = f(x∗t , u∗t ). Por otro

lado, u∗t es un punto crítico de Jt(x, u) = Kt(x, u) + Vt+1(ft(x, u)), porlo que

0 =∂Jt∂u

(x∗t , u∗t )

=∂Kt

∂u(x∗t , u

∗t ) +

∂Vt+1

∂x(x∗t+1)

∂ft∂u

(x∗t , u∗t )

=∂Kt

∂u(x∗t , u

∗t )− p∗t

T∂ft∂u

(x∗t , u∗t )

=∂Ht

∂u(x∗t , u

∗t ).

Antes de verificar la última ecuación, notemos lo siguiente. Parax fijo, el mínimo de Jt(x, u) se obtiene en u = ht(x), por lo queJt(x, ht(x)) = Vt(x). Derivando esta relación en x = x∗t y teniendoen cuenta que ht(x∗t ) = u∗t obtenemos

∂Vt∂x

(x∗t ) =∂Jt∂x

(x∗t , u∗t ) +

∂Jt∂u

(x∗t , u∗t )∂ht∂x

(x∗t ) =∂Jt∂x

(x∗t , u∗t ).

Teniendo este resultado en cuenta, la ecuación para la evolución delmomento es∂Ht

∂x(x∗t , p

∗t , u

∗t )− p∗t−1

T = −p∗t−1T + p∗t

T∂ft∂x

(x∗t , u∗t )−

∂Kt

∂x(x∗t , u

∗t )

=∂Vt∂x

(x∗t )−∂Vt+1

∂x(x∗t+1)

∂ft∂x

(x∗t , u∗t )−

∂Kt

∂x(x∗t , u

∗t )

=∂Vt∂x

(x∗t )−∂

∂x[Vt+1 ◦ ft +Kt](x

∗t , u

∗t )

=∂Vt∂x

(x∗t )−∂Jt∂x

(x∗t , u∗t )

= 0.

Esto prueba el teorema. �

Ejercicio 2.9: Los problemas LQ fueron estudiados en el ejemplo 1.4utilizando programación dinámica y en el ejemplo 2.7 utilizando el prin-cipio del máximo de Pontryagin. Por medio del teorema 2.8 relacionaambos resultados, comprobando en dicho caso que se obtiene la mismasolución por ambos métodos.

Eduardo Martínez: IUMA and Departamento de Matemática Aplica-da, Facultad de Ciencias, Universidad de Zaragoza, 50009 Zaragoza,Spain

E-mail address: [email protected]