Simulación y Optimización de Procesos Químicos Titulación ...

36
José A. Caballero Simulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA. Citar como: J.A. Caballero Suárez, material docente para la asignatura Simulación y Optimización de procesos Químicos, Octubre 2009. Universidad de Alicante. Programación Cuadrática Métodos de Penalización Programación Cuadrática Sucesiva Gradiente Reducido Simulación y Optimización de Procesos Químicos Titulación: Ingeniería Química. 5º Curso Optimización. Octubre de 2009. José A. Caballero

Transcript of Simulación y Optimización de Procesos Químicos Titulación ...

Page 1: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

Programación Cuadrática

Métodos de Penalización

Programación Cuadrática Sucesiva

Gradiente Reducido

Simulación y Optimización de Procesos Químicos

Titulación: Ingeniería Química. 5º Curso

Optimización.

Octubre de 2009. José A. Caballero

Page 2: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

Programación Cuadrática

Sea el Problema

1min :

2. .

z

s a

= +

≤≥

T Tc x x Q x

A x b

x 0

Nota: 2 2 21 1 2 2 3 3

1,2 1 2 1,3 1 3 2,3 2 3

1 1 2 2 3 3

....

... ...

...

Si f a x a x a x

b x x b x x b x x

c x c x c x d

= + + + ++ + + +

+ + + +

1 12 13

12 2 23

13 23 3

2

2

2

a b b

b a bQ

b b a

=

L

L

L

M M M O

Reordenando el problema queda:

1min :

2. .

z

s a

= +

− ≤− ≤

T Tc x x Q x

A x b 0

x 0

L = T T T T1c x + x Q x +µ (Ax - b)+ v (-x)

2

Q es una matriz simétrica y definida positiva

> ∀ ≠Tx Q x 0 x 0

Page 3: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

L = T T T T1c x + x Q x +µ (Ax - b)+ v (-x)

2

Programación Cuadrática

Función de Lagrange

Condiciones de Optimalidad de KKT

( )≤

T

T

T

c +Qx + A µ - v = 0

Ax - b 0

µ Ax - b = 0

v x = 0Condiciones de Complementariedad

Añadiendo variables de holgura a la restricción:

h h= ⇒Ax - b + x 0 Ax -b = - x

Sustituyendo en la condición de complementariedad

( ) ( ) 0T T h T h⇒ =µ Ax - b =µ -x = 0 µ x

Page 4: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

Programación Cuadrática

Con lo que queda:

;

h

h

+ =

T

T T

c +Qx + A µ - v = 0

Ax - b x 0

µ x = 0 v x = 0 ;

h

h

− − +

+ =

T

T T

Qx A µ v = c

Ax x b

µ x = 0 v x = 0

Pasando los términos constantes a la derecha

“Las dos primeras ecuaciones se pueden resolver utilizando una fase I delmétodo simplex. Si además se tiene la precaución de no permitir que en la base(utilizando el criterio de entrada) aparezcan simultáneamenteµ y xh ó v y x, laFase I del simplex resuelve tambiénel problema.”

Page 5: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

Programación Cuadrática

Ejemplo: 2 21 2 1 1 2 2

1 2

1 2

min : 4 6 2 2 2

. . 2 2

0; 0

z x x x x x x

s a x x

x x

= − − + + ++ ≤≥ ≥

Escrito en forma matricial

( ) ( )

( )

1 11 2

2 2

1

2

1

1 2 1

4 21min : 4, 6 ,

2 42

. . 1, 2, 1 2

0; 0; 0

h

h

x xz x x

x x

x

s a x

x

x x x

= − − +

=

≥ ≥ ≥

2 21 2 1 1 2 2

1 2 1

1 2 1

min : 4 6 2 2 2

. . 2 2

0; 0; 0

h

h

z x x x x x x

s a x x x

x x x

= − − + + +

+ + =

≥ ≥ ≥

Transformar el problema a forma estándar

Page 6: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

;

h

h

− − +

+ =

T

T T

Qx A µ v = c

Ax x b

µ x = 0 v x = 0

Recordando que el problema a resolver es:( ) ( )

( )

1 11 2

2 2

1

2

1

1 2 1

4 21min : 4, 6 ,

2 42

. . 1, 2, 1 2

0; 0; 0

h

h

x xz x x

x x

x

s a x

x

x x x

= − − +

=

≥ ≥ ≥

Programación Cuadrática

1 1

2 2

1 2 1

1 1 1 2 2

v4 2 1 4

v2 4 2 6

2 2

0 ; v 0; v 0

h

h

x

x

x x x

x x x

µ

µ

− − − + = −

+ + =

= = =

Q TA c

Page 7: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

Programación Cuadrática

Reescribir el problema obligando a que los coeficientes de la parte derecha sean positivos

1 2 1

1 2 2

1 2 1

4 2 v 4

2 4 2 v 6

2 2h

x x

x x

x x x

µµ

+ + − =+ + − =

+ + =

Añadir, si es necesario variables artificiales, y resolver fase I del simplex

1 2

1 2 1 1

1 2 2 2

1 2 1

max:

4 2 v 4

2 4 2 v 6

2 2

a a

a

a

h

x x

x x x

x x x

x x x

µ

µ

− −

+ + − + =

+ + − + =

+ + =

Page 8: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

Programación Cuadrática

1 2 1 2 1 1 2

1

2

1

0 0 0 0 0 0 1 1

v v

1 4 2 1 1 0 0 1 0 4

1 2 4 2 0 1 0 0 1 6

0 1 2 0 0 0 1 0 0 2

6 6 3 1 1 0 1 1

6 6 3 1 1 0 0 0

h a a

a

a

h

x x x x x

x

x

x

Z

W

µ− −

− −

− −

− − − − −− −

Entran x1 o x2 ( o incluso µ); Si entrase x1 entonces v1 no puede ser parte de la baseSi entrase x2 entonces v2 no podría ser parte de la baseSi entrase µ entonces no podría ser parte de la base

1hx

Ejemplo:

Page 9: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

Programación Cuadrática

1 2 1 2 1 2

1

2

1

0 0 0 0 0 0 1

v v

0 1 1 2 1 4 1 4 0 0 0 1

1 0 3 3 2 1 2 1 0 1 4

0 0 3 2 1 4 1 4 0 1 0 1

0 3 3 2 1 2 1 0 1

0 3 3 2 1 2 1 0 0

h a

a

h

x x x x

x

x

x

Z

W

µ−

− −

−− − − −

Entra x2. v2 no podría formar parte de la base. Si fuese así entraría el siguiente candidato.

Ejemplo:

Page 10: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

1 2 1 2 1 2

1

2

2

0 0 0 0 0 0 1

v v

0 1 0 1 3 1 3 0 1 3 0 2 3

1 0 0 2 0 1 2 1 2

0 0 1 1 6 1 6 0 2 3 0 2 3

0 0 2 0 1 2 1

0 0 2 0 1 2 0

h a

a

x x x x

x

x

x

Z

W

µ−

− −

− − −−− −

− −

Entra µ. La variable de holgura no podría formar parte de la base.

Programación Cuadrática

Ejemplo:

Page 11: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

1 2 1 2 1

1

2

0 0 0 0 0 0

v v

0 1 0 0 1 3 1 6 1 3 1 3

0 0 0 1 0 1 2 2 1

0 0 1 0 1 6 1 12 2 3 5 6

0 0 0 0 0 2

0 0 0 0 0 0

hx x x

x

x

Z

W

µ

µ− −

− −−

Programación Cuadrática

Sustituyendo en la F.O del problema original vemos que el óptimo es– 25/6

Ejemplo:

Page 12: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

Métodos de Penalización

La idea es transformar un NLP con restricciones es una secuencia de problemas sin restricciones, y el mismo resultado

min : ( )

. . ( ) 0

( ) 0

f x

s a h x

g x

=≤

min : ( , , , )P f g h r

Penalización Clásica { }2 2( , ) ( ) ( ) max 0, ( )i ji j

P x r f x r h x g x

= + + ∑ ∑

El problema se vuelve mal condicionado incluso para valores pequeños del término de penalización. No funciona excepto para problemas muy simples.

Page 13: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

0.5

0.5

0.5

1

1

1

1

2

2

2

2

2

2

3

3

3

3

33

3

4

4 4

4

4

44

4

5

5 5

5

5

55

5

6

6 6

6

6

6 6

6

7

7

7

7

8

8

8

8

9

9

9

9-1 -0.5 0 0.5 1 1.5 2 2.5 3

-0.5

0

0.5

1

1.5

2

2.5

3

3.5

4

4.5

-1 -0.5 0 0.5 1 1.5 2 2.5 3-0.5

0

0.5

1

1.5

2

2.5

3

3.5

4

4.5

-1 -0.5 0 0.5 1 1.5 2 2.5 3-0.5

0

0.5

1

1.5

2

2.5

3

3.5

4

4.5

-1 -0.5 0 0.5 1 1.5 2 2.5 3-0.5

0

0.5

1

1.5

2

2.5

3

3.5

4

4.5

r = 0 r = 1

r = 10 r = 100

Métodos de Penalización

Ejemplo

( ) ( )2 21 2

1 2

min : 1 2

. . 4 0

x x

s a x x

− + −+ − =

( ) ( )( )

2 21 2

21 2

( , ) 1 2

4

P x r x x

r x x

= − + − +

+ + −

Page 14: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

Métodos de Penalización

Penalización Exacta { }1 2 1 2( , , ) ( ) ( ) max 0, ( )i j i i j ji j

P x w w f x w h x w g x= + +∑ ∑

w1, w2 son factores de penalización positivos.

Sea x* un mínimo local del problema original, entonces si e cumple que:

1 1

2 2

1,....

1...

i i

j j

w i m

w j m

λ

µ

≥ =

≥ =

x* es un mínimo del problema de penalización

No existe problema de mal condicionamiento, ni es necesario llevar w1, w2 hasta infinito.

Sin embargo, el problema es no diferenciable.

Page 15: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

Métodos de Penalización

Lagrangiana Aumentada

Función de penalización derivable y exacta.

2( ) ( ) ( )i i ii i

LA f x h x r h xλ= + +∑ ∑

Donde λ es el multiplicador de KKT y r es un parámetro de penalización

Page 16: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

Esquema básico de aplicación de L.A.

Inicialización Seleccionar un valor de λ, y un valor inicial para x y valores positivos para los parámetros de penalización r

{ }( ) max ( )kiViol x h x=Hacer

Iteración k:

Métodos de Penalización

1

1

1

( )

1( ) ( )

41

( ) ( )4

1( ) ( ) 10

4

k

k k

k k

ki i i

Si Viol x Fin

Si Viol x Viol x ir a bucle externo

Si Viol x Viol x reemplazar el parámetro de penalización de

todas las h x Viol x por r r

ε−

=

>

> =

Bucle interno: minimizar la función de penalización con los parámetros seleccionados

Bucle externo: Actualización del multiplicador (Bazaraá, pag 496)

1 2 ( )k k ki i i ir h xλ λ+ = +

Page 17: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

Programación Cuadrática Sucesiva

El objetivo es resolver el siguiente problema de optimización

min : ( )

. . ( )

( )n

f

s a =≤

∈ℜ

x

h x 0

g x 0

x

La función de Lagrange es entonces:

( ) ( ) ( )i i j ji j J

L f x h x g xλ µ∈

= + +∑ ∑

Comenzamos suponiendo que se conoce el conjunto de restricciones activas J.

N variablesm1 restricciones de igualdadm2 restricciones de desigualdad activas

min : ( )

. . ( )

f

s a =x

h x 0

( ) 0jg j J Restricciones activas= ∈x

Page 18: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

Programación Cuadrática Sucesiva

El sistema se puede resolver aplicando el método de Newton:

Supongamos que hemos terminado la iteración k, y comenzamos la k+1.

k

ki

kj

x valor del vector x en la iteración k

valor del multiplicador asociado a la restricción i en la iteración k

valor del multiplicador asociado a la restricción j en la iteración k

λ

µ

=

=

=

Las condiciones de optimalidad de primer orden de KKT son:

( ) ( ) ( ) 0

( ) 0

( ) 0i

j

x i i j ji j J

i

j

L f x h x g x

L h x i

L g x j J

λ

µ

λ µ∈

∇ = ∇ + ∇ + ∇ =

∇ = = ∀

∇ = = ∀ ∈

∑ ∑ Sistema de ecuaciones

N+m1+m2 ecuaciones y variables

Page 19: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

( ) ( ) ( ) 0

( ) 0

( ) 0i

j

x i i j ji j J

i

j

L f x h x g x

L h x i

L g x j J

λ

µ

λ µ∈

∇ = ∇ + ∇ + ∇ =

∇ = = ∀

∇ = = ∀ ∈

∑ ∑Sistema de ecuaciones

N+m1+m2 ecuaciones y variables

( ) ( ) ( )k k k k ki i j j

i j J

f x h x g xλ µ∈

∇ + ∇ + ∇ +∑ ∑

( ) ( ) ( ) ( ) ( ) ( )k k k k k k k kxx i xx i j xx j

i j J

f x x x h x x x g x x xλ µ∈

∇ − + ∇ − + ∇ − +∑ ∑

( ) ( ) ( ) ( ) 0k k k ki i i j j j

i j J

h x g xλ λ µ µ∈

∇ − + ∇ − =∑ ∑

( ) ( ) ( ) 0

( ) ( ) ( ) 0

k k ki i

k k kj j

h x h x x x i

g x g x x x j J

+ ∇ − = ∀

+ ∇ − = ∀ ∈

Programación Cuadrática Sucesiva

KKT

Valor en el punto xk

Linealización con respecto a x en el punto xk

Linealizaciones con respecto a λ y a µ

Linealización de las Restricciones

Page 20: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

( ) ( ) ( )

( ) ( ) ( ) ( ) ( ) ( )

( ) ( ) ( ) ( ) 0

( ) ( ) ( ) 0

( ) ( ) ( ) 0

k k k k ki i j j

i j J

k k k k k k k kxx i xx i j xx j

i j J

k k k ki i i j j j

i j J

k k ki i

k k kj j

f x h x g x

f x x x h x x x g x x x

h x g x

h x h x x x i

g x g x x x j J

λ µ

λ µ

λ λ µ µ

∇ + ∇ + ∇ +

∇ − + ∇ − + ∇ − +

∇ − + ∇ − =

+ ∇ − = ∀

+ ∇ − = ∀ ∈

∑ ∑

∑ ∑

∑ ∑

Programación Cuadrática Sucesiva

( , , ) ( )k k k kxx i jL x x xλ µ∇ −

Page 21: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

Simplificando queda:

( ) ( ) ( ) ( , , ) ( ) 0

( ) ( ) ( ) 0

( ) ( ) ( ) 0

k k k k k k ki i j j xx i j

i j J

k k ki i

k k kj j

f x h x g x L x x x

h x h x x x i

g x g x x x j J

λ µ λ µ∈

∇ + ∇ + ∇ + ∇ − =

+ ∇ − = ∀

+ ∇ − = ∀ ∈

∑ ∑

Que escrito en forma matricial, y llamando ( )kd x x= −

( ) ( ) ( ) ( , , ) 0

( ) ( ) 0

( ) ( ) 0

k k T k T k k k kxx i j

k T k k

k T k k

f x h x g x L x d

h x h x d

g x g x d

λ µ λ µ∇ +∇ +∇ +∇ =

+∇ =

+∇ =

Programación Cuadrática Sucesiva

Page 22: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

Consideremos ahora el siguiente problema cuadrático

1min : ( ) ( , , )

2

. . ( ) ( ) 0

( ) ( ) 0

i j

T k k T k k k kxx

k T k k

k T k k

f x d d L x d

s a h x h x d

g x g x d

λ µ∇ + ∇

+ ∇ =

+ ∇ =

Programación Cuadrática Sucesiva

( ) ( ) ( ) ( , , ) 0

( ) ( ) 0

( ) ( ) 0

k k T k T k k k kxx i j

k T k k

k T k k

f x h x g x L x d

h x h x d

g x g x d

λ µ λ µ∇ +∇ +∇ +∇ =

+∇ =

+∇ =

Resulta que las condiciones de KKT de este problema son

Utilizar el método de Newtonpara resolver el sistema deecuaciones que viene de aplicarlas condiciones de KKT a unNLP es equivalente a resolverun Problema Cuadrático, encada iteración.

Page 23: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

Programación Cuadrática Sucesiva

Extensión a sistemas con desigualdades:

Trivial: Dejar que en cada iteración sea el QP el que decida cuál es el conjunto de restricciones activas

1min : ( ) ( , , )

2

. . ( ) ( ) 0

( ) ( ) 0

i j

T k k T k k k kxx

k T k k

k T k k

f x d d L x d

s a h x h x d

g x g x d

λ µ∇ + ∇

+ ∇ =

+ ∇ ≤

La programación cuadrática sucesiva suele presentar convergencia muy rápida hacia la solución

Son algoritmos de camino no-factible: Buscan el óptimo a la vez que convergen las restricciones. Los puntos intermedios de búsqueda no tienen por que ser factibles.

Page 24: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

Programación Cuadrática Sucesiva

Algunos problemas con SQP:

1. Si la Hessiana de la Lagrangiana no es definida positiva puede que el problemacuadrático no genere una dirección de descenso.En ese caso se suele sustituir la matriz Hessiana por una matriz B utilizando un métodocuasi-Newton. Dicha matriz es simétrica y definida positiva:

Fórmula BFGS:

1

1 1 1

1

( , , ) ( , , )

( ) ( )

( ) ( )

k k k

k k k k k k k

k k k T k k k Tk k

k T k k k T k

s x x

y L x L x

B s s B y yB B

s B s y s

λ µ λ µ

+

+ + +

+

= −

=∇ −∇

= − +

Page 25: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

2. Si el SQP no converge directamente, en cada iteración es conveniente realizar unabúsqueda unidireccional. Sin embargo dicha búsqueda debe tratar de minimizar laLagrangiana y no sólo la función objetivo. Existen varias alternativas, la más corriente estratar de minimizar unafunción de mérito. p.e.:

Programación Cuadrática Sucesiva

Algunos problemas con SQP:

Penalización Exacta:

{ }( , ) ( ) ( ) max 0, ( )i i ji j

P x w f x w h x g x= + +∑ ∑

Lagrangiana Aumentada:

( )22( ) ( ) ( ) ( ) ( ) max 0, ( )2

T Tp i j

i j

x f x g x h x h x g xρµ λ Ψ = + + + + ∑ ∑

Page 26: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

Programación Cuadrática Sucesiva

Algoritmo Básico

1.- Sea k = 0; B0 = I . Suponer punto inicial xk

2.- Evaluar la función, las restricciones y sus gradientes en el punto xk

( ); ( ); ( ); ( ); ( ); ( )k k k k k kf x g x h x f x h x g x∇ ∇ ∇

3.- Resolver el problema cuadrático para obtener d, λk+1, µk+1

1min : ( )

2

. . ( ) ( ) 0

( ) ( ) 0

T k k T k k

k T k k

k T k k

f x d d B d

s a h x h x d

g x g x d

∇ +

+∇ =

+∇ ≤

Page 27: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

Programación Cuadrática Sucesiva

Algoritmo Básico (cont)

4.- Comprobar convergencia

( )( )

1 1

1

, ,

, , ( ) ( ) ( )

k k k

k k

L x

donde L x f x h x g x

x x d

λ µ ε

λ µ λ µ

α

+ +

+

∇ ≤

∇ =∇ +∇ +∇

= +

PararSi

Si no(α=1 paso de Newton; si no búsqueda unidireccional usando función de méritoregión de confiabilidad o filtro)

5.- Actualizar Hessiana utilizando BFGS

1

1 1 1

1

( , , ) ( , , )

( ) ( )

( ) ( )

k k k

k k k k k k k

k k k T k k k Tk k

k T k k k T k

s x x

y L x L x

B s s B y yB B

s B s y s

λ µ λ µ

+

+ + +

+

= −

=∇ −∇

= − +

6.- Hacer k = k+1 y volver al paso 2.

Page 28: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

Gradiente Reducido

Sea el problema min : ( )

. .

0

f x

s a Ax b

x

=≥

Función objetivo no lineal

Restricciones lineales en forma estándar(m restricciones, n variables; n ≥m)

Es posible hacer una partición de variables

D

I

xx

x

=

Variables dependientes o Básicas ( m variables)

Variables independientes o no-básicas (n-m variables)

También es posible particionar la matriz A

A = (B| N) B = (m x m) invertibleN = m x (n-m)

Page 29: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

Gradiente Reducido

Es posible despejar las variables dependientes en función de las independientes

1 1;D I D IAx b Bx Nx b x B b B N x− −= ⇒ + = ⇒ = −

O sea1 1

I

I

B b B N xx

x

− −=

Si se sustituye en la función objetivo, pasamos a tener un problema sin restricciones

1 1min : ( ) ( , ) ( , )D I I If x f x x f B b B N x x− −= = −

Las condiciones de optimalidad requieren que la derivada respecto a las variables independientes sea cero

Page 30: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

Gradiente Reducido

1 1min : ( ) ( , ) ( , )D I I If x f x x f B b B N x x− −= = −

1( ) ( )I D

T T TDx x R

I I D I

dxdf f ff x f x B N g

dx x x dx−∂ ∂= + = ∇ −∇ =

∂ ∂

Gradiente Reducido

Por otra parte, considere que nos movemos en un ∆x en el problema anterior

( )1 1 1 1 11

1 1

k kk kI ID D

k k k kI I I I

B b B N x B b B N xx xx

x x x x

− − + − −+

+ +

− − −− ∆ = =

− −

1

I IB N

x xI

− −= ∆ = ∆

Z

Matriz de transformación

1B N

I

− −=

Z

Page 31: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

Gradiente Reducido

Si se desarrolla en serie f(x)

1 1( ) ( ) ( ) ( ) ...

2k k T T

xxf x f x f x x x f x x+ = + ∇ ∆ + ∆ ∇ ∆ +

Recordando que Ix Z x∆ = ∆ y sustituyendo

1 1( ) ( ) ( ) ( ) ...

2k k T T T

I I xx If x f x f x Z x x Z f x Z x+ = + ∇ ∆ + ∆ ∇ ∆ +

TRg RH

( )

( )

T TR

TR xx

g f x Z

H Z f x Z

=∇

= ∇

Gradiente Reducido

Hessiana Reducida

Page 32: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

Gradiente Reducido

1 1( ) ( ) ...

2R

k k T TI I R If x f x g x x H x+ = + ∆ + ∆ ∆ +

Tenemos por lo tanto un problema sin restricciones, para resolverlo sepuede utilizar cualquiera de los métodos para problemas sinrestricciones

Por ejemplo, si se utiliza el método de Newton debemos resolver: 0I

f

x

∂ =∂

Eliminando los términos de orden superior a dos y derivando con respecto a las variables independientes un paso del método de Newton sería:

0I

kR Rg H x+ ∆ =

Nota: La Hessiana se puede actualizar utilizando BFGS (u otra similar).

Page 33: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

Gradiente Reducido

Extensión a sistemas con restricciones no lineales

min : ( )

. . ( ) 0

f x

s a h x =

Sólo restricciones de igualdad. Si aparecen desigualdades se transforman en igualdades a través de variables de holgura.

( ) 0 ( ) 0g x g x s≤ ⇒ + =Se linealiza la restricción

min : ( )

. . ( ) ( ) 0k k k

f x

s a h x h x x+∇ ∆ =El problema se ha transformado en uno equivalente al caso cuando aparecen restricciones lineales

( )kJ x Jacobiano

Así pues:

[ ], BB I

N

B JJ J J

N J

==

=D

I

xx

x

=

1( ) ( )I D

T T TR x x B Ng f x f x J J−=∇ −∇

Page 34: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

Gradiente Reducido

Esquema Básico de un algoritmo de Gradiente Reducido (con restauración de factibilidad)

1.- Inicializar el problema y obtener un punto factible inicial. Si el punto inicial no es factible resolver un problema de factibilidad inicial (p.e. usando este mismo método)

min

. . ( )

u

s a h x u=∑

2.- Dividir las variables en dependientes e independientes

3.- Evaluar la dirección de búsqueda en el espacio de variables reducido (método de Newton, máximo descenso u otro)

4.- Hacer una búsqueda unidireccional variando sólo las variables independientes.

5.- Recuperar la factibilidad: Se mantienen fijas las variables independientes y se resuelve el sistema de ecuaciones –en función sólo de las variables dependientes-

6.- Comprobar convergencia. Si no converge volver al punto 2

Page 35: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

Códigos de Ordenador

Fuentes para conseguir códigos de optimización sin restricciones

Harwell (HSL)IMSLNAg Netlib (www.netlib.org)

MINPACKTOMS Algorithms etc…

Estas fuentes contienen varios métodos

Cuasi-NewtonGauss-NewtonNewton DispersoGradiente Conjugado, etc.

Page 36: Simulación y Optimización de Procesos Químicos Titulación ...

José A. CaballeroSimulación y Optimización de Procesos Químicos. Esta obra está bajo una licencia Reconocimiento-No comercial-Sin obras derivadas 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-nd/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.Citar como: J.A. Caballero Suárez, material docente para la asig natura Simulación y Optimización de procesos Químico s, Octubre 2009. Universidad de Alicante.

Fuentes para conseguir códigos de optimización con restricciones

Quizás los mejores códigos disponibles hoy en día sean:

GRG2/CONOPT GRG2 es el solver de Excel. Gradiente reducido con restauraciónCONOPT aparece en GAMS (y otros sistemas de modelado y es quizásel más robusto de todos

MINOS Gradiente reducido sin restauración (disponible en GAMS)SQPSNOPT Disponible en GAMS usa rSQP (SQP proyectado en el espacio de variables

reducidasIPOPT Método de barrera

Algoritmos SQP se pueden encontrar en:

HSL, NaG, IMSL librerías de métodos numericosNPSOL Standford System Optimization LabSNOPT Standford System Optimization LabIPOPT: www.coin-or.org

Códigos de Ordenador