optimización dinámica de procesosprada/optimizaciondinamica.pdf · 2021. 7. 6. · optimización...
TRANSCRIPT
Optimización dinámica de procesos
Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y
Automática Universidad de Valladolid, España
1
2
Reactor
FT
FC
FC
TT AT
MPC
Comp.
Refrigerante
u1 u2
Alimentación
Temp TT
SP Temp SPComp.
FT
Función de costo económica:
(Flujo producto*concentración*precio-
– materia prima*precio –
-Flujo refrigerante*precio)*
tiempo
Optimizador Económico (RTO)
Max Beneficio
Con las mismas restricciones y el modelo estacionario del MPC
Operación óptima (económica)
3
Ejemplo: Reactor químico
3 3
Row material: Product A Ti, q, cAi
Reactor
TT AT
Coolant
Products: A, B A → B
T x Tri
ART
E
AAiA ceV)cc(q
dtdcV −β−−=
conversion x c/cxccc
AiB
AAiB
=−=
)TT(UA)TT(cFdt
dTcV rrriprrrr
prrr −+−ρ=ρ
)TT(UAHVkc)TT(cqdtdTcV rAipp −−−−ρ=ρ
maxrrminr
maxmin
min
maxmin
FFFqqq1xx
TTT
≤≤≤≤≤≤
≤≤
Max J = q cB
4 0)u,x(g0)u,x,x(F
dt)u,x(LJminT
0u
≤=
= ∫
Economic cost function
0)u,x(g0)u,x(f
)u,x(Jminu
≤=
0)u,x(g0)u,x,x(F
dt)SPx(JminT
0
2
u
≤=
−= ∫
Operación dinámica de procesos óptima (económica)
Proceso
Control básico
MPC
RTO
Proceso
Control basico
MPC con un objetivo económico directo
Dinámico SP
Dinámico
Estático
4
Transitorio óptimo
5
Materia prima: A Ti, q, cAi
Reactor
TT AT
Refrig.
Productos: A, B A → B
T x Tri
¿Como llegar al punto de operación óptimo en mínimo tiempo respetando las restricciones?
ART
E
AAiA ceV)cc(q
dtdcV −β−−=
)TT(UA)TT(cFdt
dTcV rrriprrrr
prrr −+−ρ=ρ
)TT(UAHVkc)TT(cqdtdTcV rAipp −−+−ρ=ρ
5
Parametrización de un modelo dinámico
q, Sin
V, X S, P
Modelo de producción de un producto P por microorganismos X que se alimentan de un sustrato S
6
SKS
KSSK
SV)0(VqV
P)0(PPP
S)0(SqSYX
YXS
X)0(XXXX
0
m
i
2
m
m
0
0
0insx
0
+ν
=ν++
µ=µ
==
=ν=
=+σ
+µ
−=
=σ−µ=
Parametrización de un modelo dinámico
q, Sin
V, X S, P
7
tiempo
u
tiempo
y
ym(p)
Datos experimentales q = u(t)
Parametrización de un modelo dinámico
q, Sin
V, X S, P
[ ]∫ −+−=νµ
T
0
2meas
2measX,K,,K,
dt)ss()PP()u(Jmin0im0m
K0 > 0, µm > 0, ….
8
SKS
KSSK
SV)0(VqV
P)0(PPP
S)0(SqSYX
YXS
X)0(XXXX
0
m
i
2
m
m
0
0
0insx
0
+ν
=ν++
µ=µ
==
=ν=
=+σ
+µ
−=
=σ−µ=
q = u(t)
Control Predictivo (MPC)
[ ] [ ]∑ ∑=
−
=++∆β++−+=
2N
1Nj
1Nu
0j
22
),..1t(u),t(u)jt(u)jt(w)jt(yJmin
Sujeto al modelo dinámico del proceso Cumpliendo unas restricciones sobre las MV y CV (OP/PV)
9
Maximizar la producción de P en un tiempo dado
q, Sin
V, X S, P
Path constraint
¿Como alimentar el reactor respetando restricciones y maximizando P?
10
SKS
KSSK
SV)0(VqV
P)0(PPP
S)0(SqSYX
YXS
X)0(XXXX
0
m
i
2
m
m
0
0
0insx
0
+ν
=ν++
µ=µ
==
=ν=
=+σ
+µ
−=
=σ−µ=
q = u(t)
Maximizar la producción de P en un tiempo dado
XUP P X S
q q, Sin
V, X S, P
11
Solución no-trivial
Optimización dinámica (DO)
0zuxg0zuxh
xxzuxfx
uxu
≤=
==
= ∫
),,(),,(
)t(),,,(dtd
dt),(L)(Jmin
00
t
tt,x),t(u
f
0f0
Muchos tipos:
Problemas de valor inicial Problemas TPBV Problemas de tiempo mínimo DAE u ODE Híbridos Coste algebraico o integral ….
DAE
Dynamic Optimization (DO)
Algunas de las restricciones son ecuaciones diferenciales
Las decisiones se toman a lo largo del tiempo
Son problemas mas intensivos en cálculo que los NLP
12
Optimización dinámica
0)u,x(g0)u,x,x(F
dt)u,x(L)u(JminT
0u
≤=
= ∫
Función de coste J
Modelo DAE
Restricciones
u puede ser un conjunto de parámetros o un conjunto de variables que evolucionan a lo largo del tiempo
u
time
x
time
Dos problemas: Número infinito de variables de decisión y de restricciones
x estados
u variables de decisión
límite
13
Métodos de solución
Se calculan las condiciones necesarias de optimalidad
mediante cálculo de variaciones
Problema de contorno en dos puntos
Métodos indirectos
Se aproxima la solución mediante discretización de las
variables dependientes del tiempo
Programación no-lineal NLP
Métodos Directos
0)u,x(g0)u,x,x(F
dt)u,x(L)u(JminT
0u
≤=
= ∫
x estados
u variables de decisión
14
Función de coste J
Modelo DAE
Restricciones
Parametrización del vector de control (CVP)
u u1
u2
u3 u4
∆t
tiempo
u u1 u2
u3 u4
∆t
tiempo
ui = pi ui = pi t + bi
0))p(u,x(g0))p(u,x,x(F
dt))p(u,x(L)p(JminT
0p
≤=
= ∫
pi = ui , ti
t1 t2 t3
u1
u2
u3
u4 u
tiempo
15
Parametrización
u u1 u2
u3 u4
∆t
time
u6 u7 u8
u u1
u2
u5
u9
u3
u4 u5
time
1. Comenzar con una parametrización sencilla
2. Refinarla incrementando los parámetros hasta identificar patrones
3. Redefinir la parametrización en base a los patrones para reducir el número de parámetros
u10
16
Métodos de solución
0))p(u,x(g0))p(u,x,x(F
dt))p(u,x(L)p(JminT
0p
≤=
= ∫
Enfoque secuencial Enfoque simultaneo
Convertir el problema en uno NLP de gran tamaño mediante su discretización total
CVP mas resolver las ecuaciones DAE externamente mediante simulación
NLP Se aplica una parametrización u(p)
17
Enfoque secuencial
0))p(u,x(g0))p(u,x,x(F
dt))p(u,x(L)p(JminT
0p
≤=
= ∫
El optimizador solo considera a u(p) como variables del problema
El modelo DAE se resuelve rigorosamente
Dificultades con las restricciones de camino, sistemas inestables y el cálculo de gradientes
Solución con software NLP
Optimizador NLP de J(u(p)) con respecto a p
Simulador dinámico que calcula los valores de x, z
solución del DAE, así como de J(x,u), g(x,u,z)
Valores de J(u), g(u)
Valores de p
Múltiples llamadas al simulador desde el código NLP 18
Restricciones de camino
Diversas estrategias
Path Constraints
19
Gradientes, ecuaciones de sensibilidad
0pu
uFs
xF
dtds
xF
ii
i =∂∂
∂∂
+∂∂
+∂∂
0)u,x,x(F =
iii
i
T
0iii
pu
ug
px
xg
dpdg
dtpu
uL
px
xL
dpdJ
∂∂
∂∂+
∂∂
∂∂=
∂∂
∂∂+
∂∂
∂∂= ∫
0))p(u,x(g0))p(u,x,x(F
dt))p(u,x(L)p(JminT
0p
≤=
= ∫
pxs∂∂= sensibilidades
Normalmente en NLP se requieren los gradientes ¿Diferencias finitas?
Pueden obtenerse integrando el sistema extendido / Sistema adjunto:
Comparten el Jacobiano del sistema original Integradores como DASPK3.0, IDAS.. dan las sensibilidades
20
Software
Entornos de simulación unidos a solvers NLP Asistentes para la definición del problema y generación automática de código de optimización EcosimPro, gProms, Dymola,..
Muy importante el cálculo de sensibilidades para la calidad de la solución. Errores relativos Simulación / Optimización 21
Ejemplo: Reactor químico
22 22
Row material: Product A Ti, q, cAi
Reactor
TT AT
Coolant
Products: A, B A → B
T x Tri
ART
E
AAiA ceV)cc(q
dtdcV −β−−=
conversion x c/cxccc
AiB
AAiB
=−=
)TT(UA)TT(cFdt
dTcV rrriprrrr
prrr −+−ρ=ρ
)TT(UAHVkc)TT(cqdtdTcV rAipp −−−−ρ=ρ
maxrrminr
maxmin
min
maxmin
FFFqqq1xx
TTT
≤≤≤≤≤≤
≤≤
Max J = q cB
Con / sin sensibilidades
23
Software: Ecosimpro
Simulation environments with optimization
Multiple shooting
time
u0 u1 u2
u3 z1
z2 z3
x
t1 t2 t3
Dividir el horizonte en n intervalos [ti , ti+1] y resolver el problem DO incorporando los valores iniciales zi en cada intervalo como nuevas variables de decisión, pero…
∑ ∫−
=
+=1n
0i
t
t iii dt))z,u),t(x(LJ 1i
ixi x en el intervalo i
Multiple shooting
time
u0 u1 u2
u3
z1
z2
z3
x
t1 t2 t3
…imponiendo la condición de que el estado final de una etapa debe ser igual l inicial de la siguiente para asegurar su continuidad
0z)t(x 1i1ii =− ++
Multiple shooting
Ventajas: – La inicialización de x puede
estar mas cerca de la trayectoria deseada, lo que facilita la convergencia
– Las restricciones de camino pueden imponerse sobre zi
– La evolución de la etapa i es independiente de la etapa i+1
– Facilita la paralelización – Permite el uso de métodos
secuenciales con sistemas inestables
Desventajas: – Mayor complejidad
n,....,0i0z)t(x
0)t,u,z(gz)t(x
0)t,u,x,x(F
Jmin
1i1ii
iiii
iii
iiii
v
==−≤
==
++
∑ ∫−
=
+=1n
0i
t
t iii dt))z,u),t(x(LJ 1i
i
}u,z,...,u,z,...,u,z,u{v 1n1nii110 −−=
time
u0 u1u2
u3
z1
z2z3
x
t1 t2 t3
28
MPC + MHE
Proceso Optimizador
DAE ecuaciones
Función objetivo, restricciones
Optimización dinámica
Simulador
Estimador de estados / MHE
0))p(u,x(g0))p(u,x,x(F
dt))p(u,x(L)p(JminT
0p
≤=
= ∫
x(0) = xp
Enfoque simultaneo
29
0))p(u),tt(x,t
)t(x)tt(x(F =∆+∆
−∆+
0))p(u,x(g0))p(u,x,x(F
dt))p(u,x(L)p(JminT
0p
≤=
= ∫
0))p(u,x,x(F =
Discretizar totalmente las ecuaciones
[ ] t)p,j(u),j(x(LN
0j∆∑
=
∫T
0dt))p(u,x(L
t = 0, ∆t, 2∆t,…… Sistema de ecuaciones algebraicas
Enfoque simultaneo
30
0))p(u,x(g0))p(u,x,x(F
dt))p(u,x(L)p(JminT
0p
≤=
= ∫
[ ]
0p))1,-u(N1),-g(x(N 0))p,1N(u),1N(x),N(x(F.....
0p))u(2,g(x(2), 0))p,2(u),2(x),3(x(F0p))u(1,g(x(1), 0))p,1(u),1(x),2(x(F0p))u(0,g(x(0), 0))p,0(u),0(x),1(x(F
t)p,j(u),j(x(LJminN
0jx,p
≤=−−
≤=≤=≤=
∆=∑=
El número de variables de decisión y ecuaciones se incrementa de acuerdo a la discretización.
Facilita la imposición de restricciones de camino y el cálculo de gradientes
Puede haber problemas con la discretización de las DAE
x(i) y p son variables de decisión
Solución con software NLP
Discretización
31
tiempo
La integración de sistemas stiff usa métodos de paso y estructura variable para mantener el error de integración bajo cotas. El uso de métodos de paso fijo obliga a usar un gran número de intervalos, resultando en un alto número de ecuaciones y variables y no garantiza la calidad
x
Colocación ortogonal por elementos finitos ¿nº de elementos?
Colocación en elementos finitos
x
tiempo
tk-1 tk tk+1 …
El horizonte temporal se divide en K intervalos o elementos (tk-1 , tk] de longitud ∆k = tk – tk-1
En cada intervalo (tk-1 , tk] la solución x se aproxima por un polinomio, que es una aproximación continua suave dentro del elemento, pero permite discontinuidades en los perfiles de la señal de control entre elementos
Hay muchos tipos de aproximaciones polinómicas que pueden ussarse
El numero K de elementos no tiene que ser grande necesariamente
Elemento k Elemento k+1
Approximación Polinomial
x
tiempo
Una posibilidad es aproximar la evolución temporal de las variables mediante una combinación lineal de polinomios conocidos Pj(τ) de orden P. Normalmente se utilizan polinomios de interpolación de Lagrange
∑
∑
=
−
=
∆τ
≈
∈τ∆τ+=
τ≈
P
0j k
kjj
k1k
P
0jkjj
)(P)t(
]1,0(tt
)(P)t(
xx
xx
Colocación en elementos finitos
τ = 0 τ = 1 xkj parámetros a determinar k = 1,…,K
τ Tiempo normalizado
tk-1 tk tk+1 …
Elemento k Elemento k+1 El horizonte temporal se divide en K intervalos o elementos (tk-1 , tk] de longitud ∆k
Polinomios de interpolación de Lagrange
kjkj1kkj
P
ji,0i ij
ij
x)t(x)t(x
)(P
=∆τ+=
τ−ττ−τ=τ
−
≠=∏
x
time τ = 0 τ1 … τj
xk1 xk2 xkj
Se seleccionan P+1 puntos de interpolation τ0 = 0, τ1,.., τP
τ = 1
Los parámetros xkj tienen un significado claro usando los polinomios de Lagrange
τi < τi+1
tk-1 tk tk+1 …
∑
∑
=
−
=
∆τ
≈
∈τ∆τ+=
τ≈
P
0j k
kjj
k1k
P
0jkjj
)(P)t(
]1,0(tt
)(P)t(
xx
xx
Elemento k
Elemento k+1
xkP
Polinomios de interpolación de Lagrange
35
=τ−ττ−τ
τ−ττ−τ
τ−ττ−τ
=
=τ−ττ−τ
τ−ττ−τ
τ−ττ−τ
=
=τ−ττ−τ
τ−ττ−τ
τ−ττ−τ
=
=τ−ττ−τ
τ−ττ−τ
τ−ττ−τ
=
τ−ττ−τ
=τ ∏≠=
23
2
13
1
03
03
32
3
12
1
02
02
31
3
21
2
01
01
30
3
20
2
10
10
P
ji,0i ij
ij
P
P
P
P
)(P ∑=
τ≈P
0jkjj )(P)t( xx
Si t coincide con τj , p.e. τ2, todos los Pj son cero excepto P2 que vale 1, luego:
kjkj1kkj x)t(x)t(x =∆τ+= −
Los coeficientes xkj coinciden con los valores de la variable x en el punto τj del elemento k
Colocación en elementos finitos
0))p(u,,)(P
(F
0))p(u,x,x(F
ki
P
0j k
kjij =∆τ
=
∑=
xx
Las ecuaciones DAE deben cumplirse en los puntos de colocación τi : Esto proporciona un conjunto de ecuaciones que permiten calcular los valores de los coeficientes desconocidos xki
Los P+1 puntos de colocación se sitúan en instante fijos τi en cada elemento k. Existen diferentes métodos para escoger su posición
x
time τ = 0 τ1 … τj
xk1 xk2 xkj
τ = 1
k = 1,..K
tk-1 tk tk+1 …
Elemento k xkP
Colocación ortogonal
0))p(u,,)(P
(F ki
P
0j k
kjij =∆τ
∑=
xx
Las ecuaciones no se imponen en τ0 = 0, en su lugar, se utilizan, bien las condiciones iniciales en t = 0, o se impone la continuidad de los estados entre elementos. Esto da suficientes ecuaciones adicionales para calcular todos los xkj
x
tiempo τ = 0 τ1 … τj
¿Donde deben situarse los puntos de colocación τi para obtener la mejor estimación de x(t)?
xk1 xk2 xkj
τ = 1
Para reducir P, se escogen polinomios ortogonales:
ji0d)(P)(P i
1
0 j ≠=τττ∫
tk-1 tk tk+1 …
k = 1,..K i = 1, …P
xkP
Colocación ortogonal
2j
0
P
0jj
jjPLegendreP
j)jP)(1jP(
1
)1()(P
++−=γ
=γ
γτ−=τ ∑=
−
2j
0
P
0jj
jjPRadauP
j)1jP)(1jP(
1
)1()(P
+++−=γ
=γ
γτ−=τ ∑=
−
Los puntos de colocación τI, i = 1,…,P se toman como las raíces de polinomios tipo Gauss-Jacobi típicamente:
P τ0 es siempre = 0
Da mas exactitud Da mas robustez
Colocación ortogonal
x
time
Se fuerza la continuidad de la evolución de los estados entre elementos (tk-1 , tk]
Los métodos simultáneos de solución son adecuados para sistemas inestables
tk-1 tk tk+1 …
0100
P,k0,1kk
)t()t(
xxxxxx
==
== +
Colocación ortogonal
Las variables de control, si se desea, pueden también aproximarse por polinomios de interpolación de Lagrange en cada elemento finito (tk-1 , tk]
u
time
La continuidad de los perfiles de las señales de control no se impone entre elementos finitos (tk-1 , tk]
tk-1 tk tk+1 …
]1,0(tt
)(P
)(P)t(
k1k
P
ji,1i ij
ij
P
1jkjj
∈τ∆τ+=
τ−ττ−τ=τ
τ≈
−
≠=
=
∏
∑ uu
Ejemplo
3)0(x1x2xx 2 −=+−=
Integrar entre t = 0 y 1 Se selecciona K = 2 elementos finitos de igual tamaño ∆k = (1 – 0)/2 = 0.5 P = 3 , 4 puntos de colocación
x
tk-1 tk τ = 0 τ1 … τ2
xk1 xk2 xkP
τ = 1
Los puntos de colocación de Radau para P =3 son: τ0 = 0 τ1 = 0.155051 τ2 = 0.644949 τ3 = 1
Example
kjkj1k
23
23
2
13
1
03
03
23
32
3
12
1
02
02
23
31
3
21
2
01
01
23
30
3
20
2
10
10
P
ji,0i ij
ij
x)t(x
0.33332.6667-3.3333P
1.3821-10.2963-8.9141P
10.048825.6296- 15.5808P
191810P
)(P
=∆τ+
τ+ττ=τ−ττ−τ
τ−ττ−τ
τ−ττ−τ
=
ττ+τ=τ−ττ−τ
τ−ττ−τ
τ−ττ−τ
=
τ+ττ=τ−ττ−τ
τ−ττ−τ
τ−ττ−τ
=
+τ−τ+τ−=τ−ττ−τ
τ−ττ−τ
τ−ττ−τ=
τ−ττ−τ=τ
−
≠=∏
Los puntos de colocación de Radau para P =3 son : τ0 = 0 τ1 = 0.155051 τ2 = 0.644949 τ3 = 1
]1,0(tt)(P)t( k1k
P
0jkjj ∈τ∆τ+=τ≈ −
=∑ xx
Example
Los puntos de colocación de Radau para P =3 son : τ0 = 0 τ1 = 0.155051 τ2 = 0.644949 τ3 = 1
3)0(x1x2xx 2 −=+−=
125.0)(P 2
3
0j
kjj +−=τ
∑=
xxx
k = 1,2
0.33335.3333-01)(P
1.3821-5925.02-26.7423)(P
10.048851.2592-7423.64)(P
93630)(P
)(P)t(
23
22
21
20
P
0j k
kjj
+ττ=τ
τ+τ=τ
+ττ=τ
−τ+τ−=τ
∆τ
≈∑=
xx
]1,0(tt
)t(
k1k
kjkj1k
∈τ∆τ+=
=∆τ+
−
− xx
Ejemplo
125.0)(P
ki2ki
3
0j
kjij +−=τ
∑=
xxx
En los puntos de colocación τi : k = 1,2 i = 1, …3
3)0(x1x2xx 2 −=+−= 125.0)(P 2
3
0j
kjj +−=τ
∑=
xxx
k = 1,2
3,2,1i)1x2x(5.0
0.3333)x5.3333-01(1.3821)x-5925.02-26.7423(
10.0488)x51.2592-7423.64(x)93630(
i12i1
13i2i12i
2i
11i2i10i
2i
=+−=
=+ττ+τ+τ+
++ττ+−τ+τ−
3,2,1i)1x2x(5.0
0.3333)x5.3333-01(1.3821)x-5925.02-26.7423(
10.0488)x51.2592-7423.64(x)93630(
i22
i2
23i2i22i
2i
21i2i20i
2i
=+−=
=+ττ+τ+τ+
++ττ+−τ+τ−
8 incógnitas, 6 ecuaciones
Ejemplo
x
t0 =0 t1 τ = 0 τ1 … τ2
x11 x12 x13
τ = 1 t2 =1
x10
0100
P
0jj,kjP,k0,1kk
)t(
)1(P)t(
xxx
xxxx
==
=== ∑=
+
3)0(
)1(P)5.0(
10
3
0jj1j1320
−==
=== ∑=
xx
xxxx
8 incógnitas, 8 ecuaciones La continuidad de estados entre elementos y las condiciones iniciales proporcionan las ecuaciones restantes
Elemento 1 Elemento 2
Ejemplo
Solución exacta / solución mediante colocación ortogonal
Software
47
CasADi es un entorno simbólico para optimización numérica que facilita la discretización e implementa diferenciación automática (gradientes y Hesianos). Genera código C e implementa interfaces a códigos DAE y de optimización como SUNDIALS, IPOPT etc. Se gestiona desde una interfaz con Python
Entornos de modelado y optimización GAMS, AIMMS, XPRESS, Gurobi,… pueden usarse tras la discretización
Solución eficiente de problemas de gran escala
48
Diferenciación Automática
48
Ejemplo::
𝑓 = 𝑥1𝑥2 + sin 𝑥1
¿𝜕𝑓𝜕𝑥1
?
Estabilidad EMPC
49
)u,x(fxvu
XzUvXz
xz)v,z(fz
)v,z(L)z()v(Jmin
kk1k
*0k
fNjj
k0jj1j
1N
0jjjNv
==
∈∈∈
==
+Φ=
+
+
−
=∑ El estudio de estabilidad
del EMPC difiere del NMPC usado para control en que, en este último caso, se conoce el objetivo al que se quiere llegar en el futuro, lo que no ocurre en el caso del EMPC
Aunque el enfoque de garantía de estabilidad es similar al del caso NMPC, normalmente la función de costo debe modificarse con términos de regularización (desviaciones cuadráticas respecto al óptimo en estado estacionario) para asegurar el cumplimiento de ciertas hipótesis.
Para estabilizar las soluciones en lazo cerrado, se suele añadir una penalización terminal Φ definida positiva, como en el caso del NMPC
Estabilidad NMPC
50
z(0)
z(N)
Normalmente se acompaña de una restricción adicional que fuerza el estado en T a estar dentro de una región terminal que contiene al óptimo, en la cual se supone existe una ley de control u = c(x) que mantendría la evolución del sistema dentro de la región terminal. Se supone además que: Existen métodos
para el diseño de la región terminal y la ley de control asociada, pero pueden no ser fáciles de aplicar
)x()u,x(L)x(Xx))x(c,x(L)x()x(
2kk1
fkkk1k
α≤≤α
∈∀−≤Φ−Φ +
)u,x(fxvu
XzUvXz
xz)v,z(fz
)v,z(L)z()v(Jmin
kk1k
*0k
fNjj
k0jj1j
1N
0jjjNv
==
∈∈∈
==
+Φ=
+
+
−
=∑
Con α1 , α2 funciones positivas definidas
Estabilidad EMPC
51
)x()u,x(L)x( 2kk1 α≤≤α
Con EMPC, en el cual un objetivo estable no se conoce de antemano, la suposición
no tiene, en general, por qué cumplirse. Para que se cumpla, y poder aplicar así las condiciones de garantía de estabilidad del NMPC, hay que modificar la formulación del problema añadiendo términos de regularización en la función de costo, que involucran el óptimo (z*, v*) en estado estacionario calculado mediante:
UvXz)v,z(fz
)v,z(Lminv,z
∈∈=
2
Q
1N
0j*
j
*j
jj
2
P
*NNv vv
zz5.0)v,z(Lzz5.0)z(min ∑
−
= −−
++−+Φ
Operación y Control de procesos
Del seguimiento de consignas y el rechazo de perturbaciones a operar una planta dinámicamente con un objetivo económico
Marco: NMPC económico/ Operación óptima de procesos
El desarrollo de este tipo de sistemas es complejo y a veces específico, pero hay herramientas y desarrollos que lo empiezan a hacer posible
52