Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización...

52
Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática Universidad de Valladolid, España 1

Transcript of Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización...

Page 1: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

Optimización dinámica de procesos

Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y

Automática Universidad de Valladolid, España

1

Page 2: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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)

Page 3: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 4: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 5: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 6: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

=ν++

µ=µ

==

=ν=

=+σ

−=

=σ−µ=

Page 7: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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)

Page 8: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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)

Page 9: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 10: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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)

Page 11: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 12: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 13: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 14: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 15: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 16: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 17: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 18: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 19: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

Restricciones de camino

Diversas estrategias

Path Constraints

19

Page 20: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 21: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 22: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 23: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

Con / sin sensibilidades

23

Page 24: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

Software: Ecosimpro

Simulation environments with optimization

Page 25: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 26: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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 =− ++

Page 27: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 28: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 29: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 30: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 31: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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?

Page 32: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 33: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 34: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 35: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 36: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 37: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 38: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 39: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

==

== +

Page 40: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 41: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 42: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 43: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 44: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 45: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 46: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

Ejemplo

Solución exacta / solución mediante colocación ortogonal

Page 47: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 48: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

48

Diferenciación Automática

48

Ejemplo::

𝑓 = 𝑥1𝑥2 + sin 𝑥1

¿𝜕𝑓𝜕𝑥1

?

Page 49: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 50: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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

Page 51: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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 ∑

= −−

++−+Φ

Page 52: Optimización dinámica de procesosprada/Optimizaciondinamica.pdf · 2021. 7. 6. · Optimización dinámica de procesos Prof. Cesar de Prada Dpt. Ingeniería de Sistemas y Automática

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