optimización de procesos - iqcelaya.itc.mxvicente/notasseminario1.pdf · Índice de contenido 1...

90
Optimización de Procesos Optimización de Procesos Vicente Rico Ramírez Vicente Rico Ramírez Departamento de Departamento de Ingeniería Química Ingeniería Química Instituto Tecnológico de Instituto Tecnológico de Celaya Celaya

Upload: ledien

Post on 03-Feb-2018

221 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Optimización de ProcesosOptimización de Procesos

Vicente Rico RamírezVicente Rico RamírezDepartamento de Departamento de

Ingeniería QuímicaIngeniería QuímicaInstituto Tecnológico de Instituto Tecnológico de

CelayaCelaya

Page 2: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Índice de ContenidoÍndice de Contenido1 Introducci1 Introduccióónn

1.1 La Ingenier1.1 La Ingenieríía de Procesosa de Procesos1.2 Modelaci1.2 Modelacióón y Grados de Libertadn y Grados de Libertad1.3 Representaci1.3 Representacióón Matemn Matemáática Generalizada de un Problema de Optimizacitica Generalizada de un Problema de Optimizacióónn1.4 Tipos de Problemas de Optimizaci1.4 Tipos de Problemas de Optimizacióónn1.5 Regi1.5 Regióón Factiblen Factible1.6 Convexidad1.6 Convexidad

2. T2. Téécnicas de Optimizacicnicas de Optimizacióónn2.1 Programaci2.1 Programacióón Lineal: Mn Lineal: Méétodo todo SimplexSimplex2.2 Programaci2.2 Programacióón No Linealn No Lineal

2.2.1 Optimizaci2.2.1 Optimizacióón sin restriccionesn sin restricciones2.2.2 Optimizaci2.2.2 Optimizacióón con Restricciones de Igualdadn con Restricciones de Igualdad2.2.3 Optimizaci2.2.3 Optimizacióón con Restricciones de Desigualdadn con Restricciones de Desigualdad

2.3 La Programaci2.3 La Programacióón Mixtan Mixta--Entera en el DiseEntera en el Diseñño de Procesoso de Procesos2.4 Programaci2.4 Programacióón Mixta Entera Lineal: Mn Mixta Entera Lineal: Méétodo de todo de ““Branch and BoundBranch and Bound””2.5 Programaci2.5 Programacióón Mixtan Mixta--Entera No Lineal: MEntera No Lineal: Méétodo todo ““Outer ApproximationOuter Approximation””

3. El Ambiente de Modelaci3. El Ambiente de Modelacióón GAMS y sus Resolvedoresn GAMS y sus Resolvedores

Page 3: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Índice de ContenidoÍndice de Contenido4. Aplicaciones en Ingenier4. Aplicaciones en Ingenieríía Qua Quíímicamica

5. Introducci5. Introduccióón a la Optimizacin a la Optimizacióón Bajo Incertidumbren Bajo Incertidumbre5.1 Tipos de Problemas de Programaci5.1 Tipos de Problemas de Programacióón Estocn Estocáásticastica5.2 El M5.2 El Méétodo de Descomposicitodo de Descomposicióón Estocn Estocáásticastica

6. Introducci6. Introduccióón a la Optimizacin a la Optimizacióón n MultiobjetivoMultiobjetivo6.1 M6.1 Méétodos de Solucitodos de Solucióónn

7. Control 7. Control ÓÓptimo y Optimizaciptimo y Optimizacióón Dinn Dináámicamica7.1 El Principio del M7.1 El Principio del Mááximoximo7.2 Programaci7.2 Programacióón Dinn Dináámicamica7.3 Programaci7.3 Programacióón Dinn Dináámica Estocmica Estocáásticastica

Page 4: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

3 Etapas en la Ingeniería de Procesos 3 Etapas en la Ingeniería de Procesos ””Process Systems EngineeringProcess Systems Engineering””

•• Síntesis (o Diseño)Síntesis (o Diseño)

•• Simulación (o Análisis)Simulación (o Análisis)

•• OptimizaciónOptimización

Page 5: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Síntesis (o Diseño ) de ProcesosSíntesis (o Diseño ) de Procesos

Materia Prima

(condiciones iniciales)

Productos Bajo

Especificación

Determinación de la Estructura del ProcesoEstructura del Procesopara realizar la transformación deseada

Page 6: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Análisis (o Simulación ) de ProcesosAnálisis (o Simulación ) de Procesos

Dadas las condiciones de entrada y la estructura del proceso, determinar las variables de salidavariables de salida

Materia Prima

(condiciones iniciales)

Productos Bajo

Especificación

Page 7: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Optimización de ProcesosOptimización de Procesos

Definir una función objetivofunción objetivo y determinar los mejores valores de lasmejores valores de las variables de diseñovariables de diseño

D, Pureza

Alimentación

Minimizar CostoMinimizar Costo

N=?N=?

R=?R=?

P=?P=?

Page 8: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Interacción entre Etapas de la Ingeniería de Interacción entre Etapas de la Ingeniería de ProcesosProcesos

La optimizaciónoptimización requiere de la solución de problemas de simulaciónsimulación en cada iteraciónLa optimizaciónoptimización es una herramienta imprescindible en el diseñodiseño de un proceso

DiseñoDiseño

SimulaciónSimulación

OptimizaciónOptimización

Page 9: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Introducción: Algunos Conceptos Introducción: Algunos Conceptos en la Optimización de Procesosen la Optimización de Procesos

Page 10: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Representación Matemática de la FisicoquímicaRepresentación Matemática de la Fisicoquímicadel proceso:del proceso:

Previo a la Optimización: Previo a la Optimización: ModelaciónModelación

Balances de MasaBalances de EnergíaRelaciones TermodinámicasEcuaciones de DiseñoBalances de MomentumRestricciones Particulares

Sistema de Sistema de Ecuaciones Ecuaciones No LinealesNo Lineales

Page 11: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Análisis de Grados de LibertadAnálisis de Grados de Libertad

Para un sistema de M EcuacionesM Ecuaciones y N VariablesN Variables, el número de grados de libertad, FF, está dado por:

F = N F = N -- MMTres casos:

F = 0 El sistema tiene solución UNICAUNICAF F > > 11 El sistema puede OPTIMIZARSEOPTIMIZARSEF < 0 El sistema está sobre especificado:

MODELO INCORRECTOMODELO INCORRECTO

Page 12: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Simulación u Optimización?Simulación u Optimización?Grados de Libertad

F = Número de Variables – Número de EcuacionesF = N - M

Simulación ó AnálisisF=0

El sistema debe ser consistente

OptimizaciónF>1

Función Objetivo: Maximizarutilidades, Minimizar costos, etc.

Función ObjetivoFunción Objetivo: obtención de diseños obtención de diseños óptimosóptimos

Page 13: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Simulación u Optimización?Simulación u Optimización?

0,3

2

21

21

21

≥=

=+

xxxx

xx0,2

21

21

≥=+

xxxx

022 =−=F112 =−=F

21min xx −Solución únicaSolución única

SimulaciónSimulación

Soluciones posibles:Soluciones posibles:

Función objetivo

MM

05.0

12

25.1

10

21 xx

5.05.1

2

1

==

xx

Solución óptimaSolución óptima

OptimizaciónOptimización

Page 14: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

M = 900 N = 1000M = 900 N = 1000

¿ Como seleccionar 100 Variables de Diseño ?

Matriz de Incidencia

f1f2f3

x1 x2 x3 x4

XX XX X X

Selección de Variables de DiseñoSelección de Variables de Diseño

( ) 01053

02)ln(

433

23

422

11

=−+−==−−==−=

xxxfxxf

xf

Page 15: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Variable de Diseño: Cualquiera de xVariable de Diseño: Cualquiera de x22, x, x33 y xy x44

f1f2f3

x1 x2 x3 x4

XX XX X X

Trayectorias de Trayectorias de StewardSteward

Page 16: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

• Variables DiscretasDiscretas y ContinuasContinuas• Restricciones (Ecuaciones, Desigualdades)

LinealesLineales y No LinealesNo Lineales

Representación Matemática del Representación Matemática del Problema de OptimizaciónProblema de Optimización

1,0,0),(0),(..

),(min

∈∈≤=

yRxyxgyxhts

yxf

n

Page 17: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

1,0,0),(0),(..

),(min

∈∈≤=

yRxyxgyxhts

yxf

n

Minimizar CostosMaximizar Utilidades

Balances de Materia, Energía,Relaciones de Equilibrio, etc.

Decisiones discretas:¿ Equipo Existe ?

Temperatura,Presión, etc.

Límites:0< Comp <1

El Modelo MatemáticoEl Modelo Matemático

Page 18: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

¿ Restricción Lineal o No Lineal ?¿ Restricción Lineal o No Lineal ?

¿ Variable Continua o Discreta ?¿ Variable Continua o Discreta ?

132 =+ yx

13 =+ yyx ( ) 1ln2 =+ yx

200 K < Temperatura < 500 KT = 253.75 KT = 493.68 K

yy=0 y=1

EquipoNo Existe

EquipoExiste

Page 19: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Clasificación de Técnicas de OptimizaciónClasificación de Técnicas de Optimización

Tipos de VariablesTipos de Variables

Enteras Continuas Enteras+Continuas

Tipos de RestriccionesTipos de Restricciones

ProgramaciónLinealLineal

ProgramaciónNo LinealNo Lineal

ProgramaciónEnteraEntera

Tipos de RestriccionesTipos de Restricciones

ProgramaciónMixta EnteraMixta Entera

LinealLineal

ProgramaciónMixta EnteraMixta Entera

No LinealNo Lineal

Page 20: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Tipos de Problemas de Optimización Tipos de Problemas de Optimización (Determinística, Estado Estable)(Determinística, Estado Estable)

** Programación Lineal (Programación Lineal (LPLP))

** Programación Mixta Entera Lineal (Programación Mixta Entera Lineal (MILPMILP))

** Programación No Lineal (Programación No Lineal (NLPNLP))

** Programación Mixta Entera No lineal (Programación Mixta Entera No lineal (MINLPMINLP))

Page 21: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Región Factible y ConvexidadRegión Factible y Convexidad

nRxxgxhts

xf

∈≤=0)(0)(..

)(min

NLPNLP

Page 22: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Función ConvexaFunción Convexa

f(x) es convexa si para toda x1 y x2 ε R:

f(x)

x1 x2

f(x)

x1 x2

[ ] )1,0(),()1()()1( 2121 ∈∀−+≤−+ ααααα xfxfxxf

Función Convexa o No ConvexaFunción Convexa o No Convexa

ConvexaConvexa No No ConvexaConvexa

Page 23: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

FunciónFunción

[ ] )()1()()1( 2121 xfxfxxf αααα −+≤−+

Función Convexa?Función Convexa?

No No ConvexaConvexa

)3,1(6116)( 23 Intervaloxxxxf −+−=

)3()75.0()1(25.0)5.2( fff +≤

0375.0 ≤−

0)1()( 1 == fxf 0)3()( 2 == fxf

25.0=α

)3()25.0()1(75.0)5.1( fff +≤

0375.0 ≤ No se cumpleNo se cumple75.0=α

Page 24: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Región Factible. Definición:Región Factible. Definición:

Convexa o No Convexa?Convexa o No Convexa?Convexa si para toda x1 y x2 ε FR:

( ) ( ) nRxxgxhxFR ∈≤== ,0,0

x2

x1

x2 x1

)1,0(,)1( 21 ∈∀∈−+= ααα FRxxx

Región Factible y ConvexaRegión Factible y Convexa

ConvexaConvexa No No ConvexaConvexa

Page 25: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Técnicas de OptimizaciónTécnicas de Optimización

Page 26: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Técnicas de OptimizaciónTécnicas de Optimización

** Métodos SimplexMétodos Simplex y Puntos Interiores (y Puntos Interiores (LPLP))

** ““Branch and BoundBranch and Bound” (Ramificación y ” (Ramificación y

Acotamiento) (Acotamiento) (MILPMILP))

** Estrategia del Conjunto ActivoEstrategia del Conjunto Activo, SQP , SQP

(Programación Cuadrática Sucesiva) ((Programación Cuadrática Sucesiva) (NLPNLP))

** ““Outer ApproximationOuter Approximation” y Descomposición de ” y Descomposición de

Benders (Benders (MINLPMINLP))

Page 27: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Programación LinealProgramación Lineal

Page 28: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Forma GeneralForma General

n

T

Rxx

bxAtsxc

∈≥≤0

..min

251353318025

200300

1

21

21

21

≤≤+≤+

+

xxxxxasujeto

xxMaximize

=

200300

c

=

2

1

xx

x

=

03

13

25A

=

25135180

b

Programación LinealProgramación Lineal

Page 29: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Método SimplexMétodo Simplex

El óptimo se encuentra siempre El óptimo se encuentra siempre en un punto “esquina”en un punto “esquina”

g2=0

Si la función objetivodisminuye en esta dirección

Regiónde

búsqueda

g1=0

Este sería el punto óptimo

Page 30: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

1) Introducir variables “slack” para convertir desigualdades en igualdades. El número de grados de libertad no cambia.

2) Utilizar x=0 como punto inicial

3) Construir Matriz de Coeficientes

4) Efectuar pasos de eliminación Gaussiana hasta no obtener valores negativos en el renglón correspondiente a la función objetivo

Método SimplexMétodo Simplex

251353318025

1

21

21

≤≤+≤+

xxxxx

251353318025

31

221

121

=+=++=++

sxsxxsxx

Page 31: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

x1 x2 s1 s2 s3 b

5 2 1 0 0 180 s1

3 3 0 1 0 135 s2

1 0 0 0 1 25 s3

-300 -200 0 0 0 0 f

s3 x2 s1 s2 s3 b

0 2 1 0 -5 55 s1

0 3 0 1 -3 60 s2

1 0 0 0 1 25 x1

0 -200 0 0 300 7500 f

Método SimplexMétodo Simplex

Matriz de Matriz de CoeficientesCoeficientes

Punto inicialPunto inicialx1 = 0x2=0

s1 = 180s2=135s3 = 25

Eliminación Gaussiana

Page 32: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

El pivote en los pasos de eliminación Gaussianase escoge de modo que:

• Columna: el coeficiente de la función objetivo es el más negativo

• Renglón: la menor proporción entre b y el coeficiente de la columna seleccionada

PivoteoPivoteo en el Método en el Método SimplexSimplex

Page 33: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

s2 x2 s1 s2 s3 b

0 -3 1 -5/3 0 -45 s1

1 1 0 1/3 0 45 x1

0 -1 0 -1/3 1 -20 s3

0 300 0 100 0 1350 f

Renglón PivoteRenglón Pivote

¿Qué ocurre si no se toma la menor proporción?

Page 34: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

s3 s2 s1 s2 s3 b

0 0 1 -2/3 -3 15 s1

0 1 0 1/3 -1 20 x2

1 0 0 0 1 25 x1

0 0 0 200/3 100 11500 f

Método SimplexMétodo SimplexEliminación Gaussiana

Page 35: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

1. En cada punto esquina, un número de variables igual al número de grados de libertad del problema valen cero

2. Las variables cuyo valor es cero se denominan no básicasno básicas

3. Cada punto de la trayectoria se dice que es una solución básicasolución básica

4. El algoritmo concluye cuando ya no hay coeficientes negativos en el renglón de la función objetivo

Notas en el Método SimplexNotas en el Método Simplex

Page 36: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Método SimplexMétodo Simplex

251353318025

200300

1

21

21

21

≤≤+≤+

+

xxxxxasujeto

xxMaximize

x1

x2

( )90,0

( )45,0

( )0,0

( )5.27,25

( )20,25

( )0,25El óptimo en el punto (25,20)El óptimo en el punto (25,20)

Page 37: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Programación No LinealProgramación No Lineal

Page 38: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Optimización Sin RestriccionesOptimización Sin Restricciones

Condición necesarianecesaria: es un punto crítico de f(x)si se cumple que

( )nRxxf

∈min

x

( ) 01=

∂∂

∂∂

=∇

nxf

xf

xf M

Condiciones de OptimalidadCondiciones de Optimalidad

Se obtiene un sistema Se obtiene un sistema de de nn Ecuaciones con Ecuaciones con nnVariables Variables xx

Page 39: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Optimización Sin RestriccionesOptimización Sin Restricciones

( )nRxxf

∈min

( ) 01=

∂∂

∂∂

=∇

nxf

xf

xf M

Condiciones de OptimalidadCondiciones de Optimalidad

Page 40: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Condición suficientesuficiente: La Matriz Matriz HessianaHessiana de la función objetivo es definida positiva

∂∂

∂∂∂

∂∂∂

∂∂

=21

2

12

221

2

21

2

xf

xxf

xxf

xf

H

( ) ( ) ( ) xHxxxfxfxxf TT∆∆+∆∇+=∆+ 2

1

021 ≥∆∆ xHxT

Hessiana para el caso de 2 variables2 variables

Page 41: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Optimización Sin RestriccionesOptimización Sin Restricciones

( ) 22

212

1 26)(min xxxx −+−

13

2

1

==

xx

H es positiva definidaH es positiva definida

Optimo GlobalOptimo Global

( ) 02262

2

1 =

−−

=∇xx

xf

=

2002

H

Page 42: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Optimización Con m Restricciones de IgualdadOptimización Con m Restricciones de Igualdad

Función de Lagrange (función escalar):Función de Lagrange (función escalar):

Condiciones de OptimalidadCondiciones de Optimalidad

( )

nRxxhts

xf

∈= 0)(..

min

( ) ( ) ( ) ( )∑+=+=m

jjj

T xhxfxhxfxL λλλ )(,

λλ se denominan multiplicadores de se denominan multiplicadores de Lagrange y constituyen Lagrange y constituyen mm variables variables adicionales en el problemaadicionales en el problema

Page 43: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Condición necesaria:Condición necesaria:Obtener un punto crítico (estacionario) para la función de Lagrangefunción de Lagrange

Condición suficiente: La Matriz Matriz HessianaHessiana de la función de Lagrangefunción de Lagrange es definida positiva

( ) ( ) 0)(,=∇+∇=

∂∂

∑j

jj xhxfxxL λλ

( ) ( ) 0,==

∂∂ xhxL

λλ

Se obtiene un sistema Se obtiene un sistema de de n+mn+m Ecuaciones Ecuaciones con con n+mn+m Variables Variables x x y y λλ

Page 44: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Optimización con Optimización con Restricciones de IgualdadRestricciones de Igualdad

( )02..

26)(min

21

22

212

1

=−−−+−

xxtsxxxx

( ) 01

12262

)( 12

1 =

+

−−

=∇+∇ ∑ λλxx

xhxfj

jj

( ) 0221 =−−= xxxh

02022062

21

12

11

=−−=−−=+−

xxxx

λλ

Page 45: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Optimización Con m Restricciones de Igualdad y r de Optimización Con m Restricciones de Igualdad y r de DesigualdadDesigualdad

Función de Lagrange Aumentada (función escalar):Función de Lagrange Aumentada (función escalar):

Condiciones de OptimalidadCondiciones de Optimalidad

( ) ( ) ( ) ( ) ( )∑∑==

++=++=r

kkk

m

jjj

TT xgxhxfxgxhxfxL11

)()(,, µλµλµλ

µµ se denominan multiplicadores de se denominan multiplicadores de KarushKarush--KuhnKuhn--TuckerTucker y constituyen y constituyen rr variables variables adicionales en el problemaadicionales en el problema

nRxxgxhts

xf

∈≤=0)(0)(..

)(min

Page 46: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Condición necesaria:Condición necesaria:Obtener un punto crítico (estacionario) mediante el Teorema de KarushTeorema de Karush--KuhnKuhn--TuckerTucker

Condición suficiente: La Matriz Matriz HessianaHessiana de la función de Lagrange Aumentadafunción de Lagrange Aumentada es definida positiva

Se obtiene un sistema Se obtiene un sistema de de n+m+r n+m+r Ecuaciones Ecuaciones con con n+m+rn+m+r Variables Variables x, x, µµ y y λλ

( ) ( ) 0)()(,, =∇+∇+∇=∂

∂∑∑k

kkj

jj xgxhxfx

xL µλµλ

( ) ( ) 0,,

==∂

∂xh

xLλ

µλ

( ) ( ) 0=⋅ xgx kkµ

( ) 0≤xgk( ) 0≥xkµ

Page 47: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Condición necesaria:Condición necesaria:

( ) ( ) 0)()(,, =∇+∇+∇=∂

∂∑∑k

kkj

jj xgxhxfx

xL µλµλ

( ) ( ) 0,,

==∂

∂xh

xLλ

µλ ( ) ( ) 0=⋅ xgx kkµ

( ) 0≤xgk( ) 0≥xkµ

Page 48: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Optimización con Optimización con Restricciones de Restricciones de

DesigualdadDesigualdad

( ) 021

111

13

)( 212

1 =

+

−+

−−

=∇+∇ ∑ µµµxx

xhxfk

kk

( ) ( )

0221

0..32

1min

212

211

2122

21

≤−−=≤+−=

−−+=

xxgxxgts

xxxxxf

Note:Note:

( )( ) 022

1012

13

212

211

212

211

=−−=+−=−+

=+−

xxxx

xx

µµ

µµµµ

Page 49: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Solución al Conjunto de Ecuaciones KKT

( ) 0)()( =∇+∇+∇ ∑∑k

kkj

jj xgxhxf µλ

( ) 0=xh

( ) ( ) 0=⋅ xgx kkµ

( ) 0≤xgk( ) 0≥xkµ

( ) 0=xgk( ) 0<xgk

Programación No LinealProgramación No LinealEstrategia del Conjunto Activo (Estrategia del Conjunto Activo (Active Active SetSet StrategyStrategy))

DesigualdadesDesigualdades

ActivaActiva InactivaInactiva

Page 50: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

01 == kgkJ

001 =>⇒∅= kkgJ µ

( ) 0)()(1

=∇+∇+∇ ∑∑∈Jk

kkj

jj xgxhxf µλ

( ) 0=xh

( ) 10 Jkxgk ∈=

Programación No LinealProgramación No LinealEstrategia del Conjunto ActivoEstrategia del Conjunto Activo

1) Definir conjunto activo. Inicialmente:

2) Formular ecuaciones KKT

Page 51: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

a) Eliminar de J1 la restricción con el µi más negativo

b) Añadir a J1 todas las restricciones violadas para hacerlas activas

c) Regresar a 2)

00)( ≥≤ kk yxg µ

0/0)( <> kk oyxg µ

0)( >xgk

Programación No LinealProgramación No LinealEstrategia del Conjunto ActivoEstrategia del Conjunto Activo

3) Si para toda k OK

OK. Se ha obtenido la solución

Si cualquier

Page 52: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Condiciones de KarushCondiciones de Karush--KuhnKuhn--Tucker (Iteración 1):Tucker (Iteración 1):

Estrategia del Conjunto Activo: EjemploEstrategia del Conjunto Activo: EjemploProgramación No LinealProgramación No Lineal

( ) ( )

0022

10..

321min

23

212

211

2122

21

≤−=≤−−=≤+−=

−−+=

xgxxg

xxgtsxxxxxf

01 == kgkJ ( ) 0)()(1

=∇+∇+∇ ∑∑∈Jk

kkj

jj xgxhxf µλ

001 =>⇒∅= kkgJ µ

( ) 013

)(2

1 =

−−

=∇+∇ ∑ xx

xhxfk

kkµ

00013

3

2

1

2

1

=====

µµµxx

Verificando restricciones y µ´s:

000

01!!!02/1

02

3

2

1

3

2

1

===<−=

>=<−=

µµµ

gg

g Activar g2

22 =J

Page 53: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

nRxxgxhts

xfmin

∈≤=0)(0)(..

)(

Condiciones de optimalidad(Karush-Khun-Tucker)

Iteración de Newton

Programa cuádratico

Sistema de EcuacionesNo Lineales

Programación Cuadrática Sucesiva (SQP) Programación Cuadrática Sucesiva (SQP) Programación No LinealProgramación No Lineal

Page 54: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Programación MixtaProgramación Mixta--EnteraEntera

Page 55: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

z2

z1

x2

x1

x010 kmol/hr BA

I

II

=selectednotisIreactorif

selectedisIreactorify

01

1

=selectednotisIIreactorif

selectedisIIreactorify

01

21,0,0,

0200201067.08.00.65.54.65.7min

2121

2211

21

2211

=≥≤−≤−

=++++=

yyxxyxyx

xxasujetoxyxyC

Representación de Procesos en Representación de Procesos en Términos de Variables BinariasTérminos de Variables Binarias

Page 56: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

1) NOT1) NOT

2) OR (exclusivo)2) OR (exclusivo)

3) OR (inclusivo)3) OR (inclusivo)

4) AND4) AND

5) 5) IfIf--ThenThen

6) 6) IffIff--ThenThen

7) Teorema de 7) Teorema de MorganMorgan

8) Distribución de 8) Distribución de ANDAND

j

j

yp−¬

1

1=+∨

ji

ji

yypp

Relaciones LógicasRelaciones Lógicas

1≥+∨

ji

ji

yypp

jiji

jiji

yyyypppp≤≥+−

∨¬→11

( )( ) BABA

BABA¬∨¬⇔∧¬¬∧¬⇔∨¬

1,1 ≥≥∧

ij

ji

yypp

( ) ( ) ( )CBCACBA ∨∧∨⇔∨∧

ji

ji

yypp

=↔

Page 57: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Representando AlternativasRepresentando Alternativas

≥≥=∨

≥≤=

0,1

5

0,1

2

21

1

21

2

21

1

21

1

xxx

xxy

xxx

xxy

( )( )

( )1

1112

12

21

11

121

121

=+−≤−−−≥−−≤−

yyyMx

yMxxyMxx

Big Big -- MM ConvexConvex HullHull

( )( )( )0,11

1515

21

21

221

221

≥−−≥−−−≥−−≤−

xxyMx

yMxxyMxx

222

121

212

111

22221

11211

MyxMyxMyxMyx

xxxxxx

≤≤≤≤

=+=+

0,,,1

0502

22211211

21

212

111

2212

2111

≥=+

≥≤

=−=−

xxxxyy

yxyx

xxxx

Page 58: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Procedimiento:Procedimiento:

1)1) Resolver el problema como si todas las variables fueran continuas (problema LP). Es decir, relajar las variables binarias. A este nivel se le conoce como “Root Node” (Nodo raíz)

• El valor de la función objetivo en el nodo raíz es un límite inferior a su valor en la solución

• Si la solución del nodo raíz es entera, tal solución es la solución del problema

2)2) Realizar una búsqueda de ramificación ordenada mediante la adición de restricciones enteras

Programación MixtaProgramación Mixta--Entera LinealEntera Lineal

Método de “Método de “Branch and Bound” (Ramificación y Acotamiento)” (Ramificación y Acotamiento)

Page 59: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

0<y2<1 0<y3<1

0<y1<1 0<y2<1 0<y3<1 Relajado

y1=1

y1=0 y2=1

y2=0 y3=1

y3=0

Para m variables binarias, el número de posibles nodos es 2m+1- 1

Método de “Método de “Branch and Bound” (Ramificación y Acotamiento)” (Ramificación y Acotamiento)

Page 60: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

1)1) La función objetivo en i es un límite inferior a la función objetivo en k.

2)2) Si algún nodo resulta en una solución entera, el valor de la función objetivo en tal nodo es un límite superior de la solución

3)3) Si i es infactible o ilimitado, entonces k también lo es

k

i

3 Reglas en el Método de “3 Reglas en el Método de “Branch and Bound”:”:

Page 61: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Método de “Método de “Branch and Bound”: Ejemplo”: Ejemplo

1,0,,,09385

023..23min

321

321

321

321

∈≥−≤−−−≤+++−

+++=

yyyxyyy

yyyxtsyyyxz

y3=0

y3=1

y2=0

y2=1

y2=0

y2=1

y1=0

y1=1

[ ]6333.0,1,0

=z

[ ]5.60,5.0,1

=z

[ ]90,1,1

=z

[ ]8.50,1,2.0

=z

[ ]75.6

1,075.0,0=z

[ ]81,1,0

=z

infactibleinfactible

infactibleinfactible

infactibleinfactible15123

1 =−=

+m

m

Page 62: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Algoritmo Algoritmo GeneralGeneral

NO

SI

Nueva y

ZL

ZU

Seleccionar un valor inicial para y

Resolver el NLP resultante S(yk)

Resolver el Problema Maestro MILP

ZL<ZU ?

Solución

Programación MixtaProgramación Mixta--Entera No LinealEntera No Lineal

Page 63: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Problema MaestroProblema Maestro

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

Tk

RRxy

aAyByxxxgxg

xxxfxfycasujetoZ

nm

kTkk

kTkkT

∈∀

∈∈∈

≤≤+−∇+

−∇++≥

=

α

α

α

1,0

0

min

( )

= k

kk

ydevaloresposibleslosySdeóptimasoluciónlaesxk

T

Programación MixtaProgramación Mixta--Entera No LinealEntera No Lineal

Algoritmo “Algoritmo “Outer Approximation” (DICOPT+++)” (DICOPT+++)

nm

T

RxyayAyBxg

xfyc

∈∈≤

≤++

1,0

0)()(min

x

f(x)

Page 64: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Optimización Optimización SemiSemi--Infinita: Problema RelajadoInfinita: Problema Relajado

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

Kk

RRxy

aAyByxxxgxg

xxxfxfycasujetoZ

nm

kTkk

kTkkT

K1

1,0

0

min

=

∈∈∈

≤≤+−∇+

−∇++≥

=

α

α

α

( )Kkquetalypordefinidos

xNLPassubproblemKdesoluciónlaDadak

k

K1=

Algoritmo “Algoritmo “Outer Approximation””

Page 65: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

1)1)

“Outer Approximation”: Ejemplo 1“Outer Approximation”: Ejemplo 1

Programación MixtaProgramación Mixta--Entera No LinealEntera No Lineal

( )

( ) 01402

02..5.05.1min

221

11

22

1

22

21321

≤−−−≥−

≤−−++++=

yxxyx

xxtsxxyyyz

502 21 === Uzxx2)2)

3)3)

( )

321

22

11

30

01

yxxyx

yx

≥+≥−≥−−

4040

1

2

1

321

≤≤≤≤

≥++

xx

yyy 1,0, 21 ∈yy

NLPNLP

MILPMILP

111 321 === yyy

102001 21321 ====== Lzxxyyy

1122 21 === Uzxx

NLPNLP

MILPMILP

001 321 === yyy

5.101010 21321 ====== Lzxxyyy

5.311 21 === UzxxNLPNLP

MILPMILP

010 321 === yyy

5.412100 21321 ====== Lzxxyyy

Page 66: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

1)1) Comenzar con y=1 y resolver NLP:

“Outer Approximation”: Ejemplo 2, Iteración 1“Outer Approximation”: Ejemplo 2, Iteración 1

Programación MixtaProgramación Mixta--Entera No LinealEntera No Lineal

( )( )

1,02001.157.0ln

01ln..7.2min

2

1

2

∈≤≤≤−+−−=

≤++−=+−=

yxyxg

yxgtsxyz

0347.97183.12525.0 21 ==== µµxz

2)2) Linealizar el problema MINLP en x= 1.7183 para obtener el problema maestro MILP:

1,002581.087085.0

36788.036787.09525.24366.37.2..

min

∈≤−≤+−

≤+−−+−≥

=

yxyxyx

xytsz

OA

OAOA

αα

939.10

−==

OAzy

)( Uz

)( Lz

UL zz <

Volver a paso 1 con nuevo valor y=0

Page 67: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

El Entorno de Modelación El Entorno de Modelación GAMSGAMS y sus Resolvedoresy sus Resolvedores

Page 68: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Formas de Atacar el Problema de Formas de Atacar el Problema de ModelaciónModelación

Corriente Modular SecuencialCorriente Modular Secuencial

* Cada unidad de proceso (módulo)(módulo) calcula su salida dadas las entradas

⇓⇓En cada unidad se resuelve un sistema de ecuaciones no lineales (subrutina que “convierte” valores de entradas en valores de salida)

* Las variables de las corrientes de reciclo se suponen inicialmente y constituyen la guía para proceso iterativo

Page 69: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Corrientede

Reciclo

CompresorDivisor de Corriente

Intercambiador

SeparadorFlash

ReactorMezcladorAlimentación

* Se requieren algoritmos de orden de precedenciaorden de precedencia y determinación de las corrientes de reciclodeterminación de las corrientes de reciclo a ser supuestas.

Page 70: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

* Cada unidad del sistema es representado por un sistema de ecuaciones (lenguaje declarativolenguaje declarativo: no restricciones en cuanto a especificación de variables)

* Las ecuaciones son generalmente almacenadas en

librerías* Para definir el problema, se colectan las ecuaciones

que representan a cada unidad y a las conexiones entre ellas

Corriente de Orientación a las EcuacionesCorriente de Orientación a las Ecuaciones

Page 71: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

* El sistema resultante se resuelve simultáneamentesimultáneamente(probablemente un problema de miles de ecuaciones)

SistemaResultante

Page 72: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Corriente Modular Secuencial: Simuladores de Procesos ASPENASPEN, PRO/II, HySys

Modelado por configuraciónconfiguración

Corriente de Orientación a las Ecuaciones: Sistemas de Modelación gPROMS, SpeedUp, ABACO, ASCENDGAMSGAMS

NLPNLP: CONOPT, MINOS, LACELOT, SRQP, LINGOMINLPMINLP: DICOPTMILP, LPMILP, LP: CPLEX, OSL, LINDO, SCICONIC, XA

Simuladores y Optimizadores Simuladores y Optimizadores ComercialesComerciales

Page 73: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

GAMS la InterfaseGAMS la Interfase

Page 74: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Resolvedores en GAMSResolvedores en GAMSTipos de ProblemasTipos de Problemas

Algoritmos Algoritmos de Soluciónde Solución

Page 75: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

GAMS: Ejemplo 1GAMS: Ejemplo 1

W1 y1

W1 y0 = 0

Q=1000 lb/hr xF = 0.2

Q=1000 lb/hr x1

Etapa de Extracción

( ) 11 1

11 +−=

xHHxy

11 WyQxQxF +=

( ) 11 WxxQMax F λ−−05.0=λ

2.1=H

Page 76: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

GAMS: Ejemplo 2GAMS: Ejemplo 2zA = 0.6zB = 0.3zC = 0.1

F = 1000 Kmol/hr

xDA = 0.8

qzN

j j

jj −=−∑

=

11 θαα

min1

1 RxN

j j

Djj +=

−∑= θαα

∑=

=N

j

Djx

11

0.1=CCα

0.1=q

3.2=ACα

3.1=BCα

Page 77: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Algunas Aplicaciones en Algunas Aplicaciones en Ingeniería QuímicaIngeniería Química

Page 78: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

D, Pureza

Alimentación

¿ Cómo separar una mezcla ABC ?¿ Cómo separar una mezcla ABC ?

ABC

A

BC

B

CABC

C

AB

A

B

Optimización de Columnas yOptimización de Columnas y Secuencias de Destilación Secuencias de Destilación

Diseño Óptimo de Diseño Óptimo de ColumnasColumnas

1)1)

2)2)

Minimizar CostoMinimizar Costo

N=? R=? P=?N=? R=? P=?

Page 79: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Supone separaciones del 100% (SharpSharp splitssplits)Supone que las cargas térmicas y costos de inversión son funciones linealesfunciones lineales de la alimentaciónSupone que las cargas de los cambiadores son del mismo orden de magnitud

Modelo MILP para Modelo MILP para Secuencias de Separación Secuencias de Separación

k

topkCl ∈

kCl ∈

botkCl ∈

Fix

∈=

k

topk

Cl

Fl

Cl

Fl

topk x

∑∑

∈=

k

botk

Cl

Fl

Cl

Fl

botk x

Page 80: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Datos de Caso de Estudio Datos de Caso de Estudio

Sistema Fijo

αk

(103 $/año)

Variable

βk

(103 $ hr / Kgmol año)

Carga térmica

Kk

(106 KJ / Kgmol)

A/BCD 145 0.42 0.028

AB/CD 52 0.12 0.042

ABC/D 76 0.25 0.054

A/BC 125 0.78 0.024

AB/C 44 0.11 0.039

B/CD 38 0.14 0.040

BC/D 66 0.21 0.047

A/B 112 0.39 0.022

B/C 37 0.08 0.036

C/D 58 0.19 0.044

Costos de utilidades:Costos de utilidades:Agua de enfriamiento: CW = 1.3 (103$ hr/ 106 KJ año)Vapor: CH = 34 (103$ hr/ 106 KJ año)

Mezcla Cuaternaria ABCDMezcla Cuaternaria ABCDF=1000 Kmol/hr: 15% A, 30% B, 35% C, 20% D

Page 81: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Superestructura con Superestructura con 4 Componentes4 Componentes

y10

y9

y8

y7

y6

y5

y4

y3

y2

y1

F10

F9

F8

F7

F6

F5

F4

F2

F3

F1

FTOT

AB/CD

AB/C

A/BC

B/CD

BC/D

ABCD

A/BCD

ABC/D

C/D

B/C

A/B

Superestructura Superestructura

Page 82: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Modelo Modelo Factores de separación

ξ1A =0.15 ξ6A =0.188

ξ1BCD =0.85 ξ6BC =0.812

ξ2AB =0.45 ξ7AB =0.5625

ξ2CD =0.55 ξ7C =0.437

ξ3ABC =0.8 ξ8C =0.636

ξ3D =0.2 ξ8D =0.364

ξ4B =0.353 ξ9B =0.462

ξ4CD =0.647 ξ9C =0.538

ξ5BC =0.765 ξ10A =0.333

ξ5D =0.235 ξ10B =0.667

3211000 FFFFTOT ++==

085.0 154 =−+ FFF

08.0 376 =−+ FFF

0563.045.0 7210 =−− FFF

0812.0765.0 659 =−− FFF

0647.055.0 428 =−− FFF

10,...,11,0001000 ==≥≤− kyFyF kkkk

10,...,1== kFKQ kkk

( ) ( )∑∑==

+++=10

1

10

1

3.134mink

kk

kkkk QFyC βα

Balance GlobalBalance Global

Mezclas IntermediasMezclas Intermedias

BCDBCD

ABCABC

ABAB

BCBC

CDCDFlujos (Flujos (BigBig--M)M)

Cargas TérmicasCargas Térmicas Función ObjetivoFunción Objetivo

Page 83: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

h1

h2

c1

c2

500 ° K

418 ° K

375 ° K

310 ° K

305 ° K

298 ° K

?

Síntesis de Redes de Síntesis de Redes de Intercambio de Calor Intercambio de Calor

Page 84: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Estrategia de Optimización SimultáneaEstrategia de Optimización Simultánea

Stage 2 Stage 1

H2-C2 H2-C2

H2-C1 H2-C1

H1-C2 H1-C2

H1-C1 H1-C1

C2

C1

H2

H1

Modelo MINLP Modelo MINLP (SYNHEAT) (SYNHEAT)

Page 85: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

( )

( ) ∑ ∑

∑ ∑

∈ ∈

∈ ∈

∈+=−

∈+=−

STk HPijijkjjj

STk CPjiijkiii

CPjqhuqFTINTOUT

HPiqcuqFTOUTTIN

,

,

( )

( ) ∑

∈+

∈+

∈∈=−

∈∈=−

HPiijkjkjjk

CPjijkikiik

CPjSTkqFtt

HPiSTkqFtt

,,

,,

1,

1,

CPjTINtHPiTINt

jNOKj

ii

∈=

∈=

+1,

1, ,

CPjtTOUTHPitTOUT

CPjSTkttHPiSTktt

jj

NOKii

kjjk

kiik

∈≥

∈≤

∈∈≥

∈∈≥

+

+

+

,,

,,,,

1,

1,

1,

1,

( )( ) CPjqhuFtTOUT

HPiqcuFTOUTt

jjjj

iiiNOKi

∈=−

∈=−+

,,

1,

1,

1,0,,

,0,0

,,,0

=

∈≤Ω−∈≤Ω−

∈∈∈≤Ω−

jiijk

jj

ii

ijkijk

zhuzcuz

CPjzhuqhuHPizcuqcu

STkCPjHPizq

CPjzhutTOUTdthuHPizcuTOUTtdtcu

CPjHPiSTkzttdt

CPjHPiSTkzttdt

jjhuj

icuNOKii

ijkkjkikij

ijkjkikijk

∈−Γ+−≤

∈−Γ+−≤

∈∈∈−Γ+−≤

∈∈∈−Γ+−≤

+

+++

),1(),1(

,,),1(

,,),1(

1,

1,

1,1,1,

MODELOMODELOBalance de calor total para cada corriente:

Balance de calor para cada etapa:

Asignación de las temperaturas de entrada a la superestructura:

Factibilidad de temperaturas:

Carga de servicios de enfriamiento y calentamiento:

Restricciones lógicas:

Cálculo de las diferencias de temperaturas:

Page 86: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

H T3 T2 T1

d4 d3 d2

d1 Demand

T4

La Producción del Petróleo es un Problema La Producción del Petróleo es un Problema MultiperiódicoMultiperiódico

32003100300029002800270026002500

Jan Mar May Jul Sep Nov Jan

Month

Tho

usan

ds o

f barre

ls/d

ay

Planeación de la Planeación de la Producción Producción

Page 87: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

well bore storage

well head

reservoir well bore

oil flow

oil flow

Geological Properties: permeability thickness porosity etc.

La extracción produce una disminución de la presión delLa extracción produce una disminución de la presión delpozo con el tiempopozo con el tiempo

pup

plow

pw

ts tt

q

ts

pflow

pshut

Page 88: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

El tiempo de operaciEl tiempo de operacióón H es dividido en NP periodos n H es dividido en NP periodos de tiempo. Dadas las demandas de produccide tiempo. Dadas las demandas de produccióón del n del petrpetróóleo en cada periodo de tiempo y las constantes de leo en cada periodo de tiempo y las constantes de caracterizacicaracterizacióón de los pozos, determinar:n de los pozos, determinar:•• Los perfiles de producciLos perfiles de produccióón yn y

•• Los tiempos operaciLos tiempos operacióón de cada pozon de cada pozo

en cada periodo de tiempo.en cada periodo de tiempo.

Modelos de Modelos de Programación MixtaProgramación Mixta--

Entera Entera

Page 89: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Modelo MILPModelo MILP( )TyTyTqMinimize

i j i j i jijijijijijij∑∑ ∑∑ ∑∑ −++ 1αδγ

∑ ∈∀≥i

jij PjdTq

( )[ ] ( )[ ] ( ) PjWiycTcqI

PjWicTcqD

PjWi

pIppp

W

pIpIpp

WY

DppY

ijsiij

ijij

upiij

inij

upi

fij

ij

upiij

inij

ijinij

fij

ij

ij

ijinij

fij

ij

∈∈∀−+=∈∈∀+=

∈∈∀

>+=∨

≤++=

¬

−=

,1ln,ln

,

21

21

21

( )[ ] ( )PjWiqq

PjWippcTcq

ijij

lowi

inijij

∈∈∀≤∈∈∀−=+

,,ln

max21

max

( )PjWiqq

PjWiyqyqqlow

ij

ijlow

ijupiij

∈∈∀≥∈∈∀−+≤

,,1

PjWipp fij

inij ∈∈∀= − ,1

Page 90: Optimización de Procesos - iqcelaya.itc.mxvicente/NotasSeminario1.pdf · Índice de Contenido 1 Introducción 1.1 La Ingeniería de Procesos 1.2 Modelación y Grados de Libertad

Gráficas de Gráficas de GantGant

Centrífuga

Reactor 2

Reactor 1

Mezclador

4 4 4 4

20 20

20 20

8 8 8 8

Producto A

Determinar el Tamaño y número de unidades paralelasDeterminar el Tamaño y número de unidades paralelasDeterminar la Secuenciación de las unidadesDeterminar la Secuenciación de las unidades

Calendarización de Calendarización de Procesos por Lotes Procesos por Lotes