21
Simulación y Optimización de los Procesos Químicos 137 TEMA 12: MODELADO CON VARIABLES BINARIAS 1.- MOTIVACIÓN 2.- INTRODUCCIÓN 3.- ALGUNOS CONCEPTOS BÁSICOS DE ÁLGEBRA DE BOOLE 4.- TRANSFORMACIÓN DE EXPRESIONES LÓGICAS A EXPRESIONES ALGEBRAICAS 5.- MODELADO CON VARIABLES DISCRETAS Y VARIABLES CONTINUAS 5.1.- Modelado de Disyunciones. Ecuaciones Lineales. 5.2.- Modelado de disyunciones. Ecuaciones no Lineales.

TEMA 12: MODELADO CON VARIABLES BINARIASrua.ua.es/dspace/bitstream/10045/19734/8/Modelado_con_Variables... · 5.- MODELADO CON VARIABLES DISCRETAS Y VARIABLES CONTINUAS 5.1.- Modelado

  • Upload
    doanthu

  • View
    238

  • Download
    0

Embed Size (px)

Citation preview

Page 1: TEMA 12: MODELADO CON VARIABLES BINARIASrua.ua.es/dspace/bitstream/10045/19734/8/Modelado_con_Variables... · 5.- MODELADO CON VARIABLES DISCRETAS Y VARIABLES CONTINUAS 5.1.- Modelado

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

137

TEMA 12: MODELADO CON VARIABLES BINARIAS

1.- MOTIVACIÓN

2.- INTRODUCCIÓN

3.- ALGUNOS CONCEPTOS BÁSICOS DE ÁLGEBRA DE BOOLE

4.- TRANSFORMACIÓN DE EXPRESIONES LÓGICAS A EXPRESIONES

ALGEBRAICAS

5.- MODELADO CON VARIABLES DISCRETAS Y VARIABLES CONTINUAS

5.1.- Modelado de Disyunciones. Ecuaciones Lineales.

5.2.- Modelado de disyunciones. Ecuaciones no Lineales.

Page 2: TEMA 12: MODELADO CON VARIABLES BINARIASrua.ua.es/dspace/bitstream/10045/19734/8/Modelado_con_Variables... · 5.- MODELADO CON VARIABLES DISCRETAS Y VARIABLES CONTINUAS 5.1.- Modelado

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

138

TEMA 12

MODELADO CON VARIABLES BINARIAS.

1.- MOTIVACIÓN

Un gran número de aplicaciones dentro de la Ingeniería Química lleva a problemas en los

que aparecen variables continuas y variables discretas, generalmente variables binarias

(0-1) asociadas a la toma de una decisión, acción etc (como por ejemplo, la selección de

un determinado reactor, la puesta en marcha de una bomba, apertura o cierre de una

válvula, etc.).

Antes de pasar a explicar de forma sistemática como modelar este tipo de problemas,

plantearemos un ejemplo que aparece con frecuencia en la síntesis de procesos químicos.

El problema se puede enunciar de la siguiente manera: “Dada una mezcla de N

componentes, que no forman azeótropos, diseñar la mejor secuencia de separación

utilizando columnas de destilación convencionales, con el objetivo de obtener los

componentes individuales de la mezcla”.

Para una mezcla de 4 componentes (A B C D) ordenados por orden decreciente de

volatilidades existen cinco secuencias de separación posibles. Para una mezcla de 5

componentes existen 14 secuencias, para una de 6 componentes existen 42, y por ejemplo

para 10 componentes hay 4862 secuencias diferentes. (El número de secuencias se puede

calcular usando la formula de Thompson y King: ( )[ ]

( ) !!1

!12sec

NN

NNum

−= ).

En muchas ocasiones estos problemas se resuelven utilizando una serie de reglas

heurísticas basadas en la experiencia, que si bien permiten proponer un diseño aceptable

de una forma rápida, no garantizan que se obtenga la mejor solución y además en muchas

ocasiones dichas reglas son contradictorias entre sí.

Page 3: TEMA 12: MODELADO CON VARIABLES BINARIASrua.ua.es/dspace/bitstream/10045/19734/8/Modelado_con_Variables... · 5.- MODELADO CON VARIABLES DISCRETAS Y VARIABLES CONTINUAS 5.1.- Modelado

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

139

La enumeración de todas las alternativas no es habitualmente una opción válida, debido

al gran número de ellas que pueden aparecer e incluso, aunque el número de alternativas

sea pequeño, a las dificultades que puede presentar el cálculo, de tal manera que es

importante minimizar en la medida de lo posible la cantidad de cálculos totales.

La otra alternativa es transformar el problema a forma matemática. La formulación del

problema incluirá en su forma más rigurosa posible, los balances de materia, energía,

restricciones del proceso (capacidad máxima, por ejemplo) etc., incluirá además la toma

de decisiones (elegir o no elegir una determinada columna) y por último el problema

presentará una estructura lógica que relacionará las diferentes decisiones entre sí (por

ejemplo: si se lleva a cabo la separación AB/CD habrá que elegir también la separación

A/B y la separación C/D).

Para resolver problemas de síntesis, como el que nos interesa, es conveniente en primer

lugar dibujar una superestructura (una superestructura no es más que un diagrama de

flujo en el que están incluidas todas las alternativas de interés). La representación de una

superestructura no siempre es una tarea trivial y puede llegar a ser algo realmente

complicado, además la representación puede no ser única lo cual varía de forma

importante la etapa de modelado, de todas formas este aspecto está fuera del objetivo del

de la asignatura. Para el problema que nos ocupa las representaciones para 4 y 6

componentes se muestran en las Figuras 1 y 2.

ABCD

A|B

CD

AB

|CD

AB

C/D

B|C

DB

C|D

C|D

A|B

CA

B|C

B|C

A|B

Figura 1 superestructura para la separación de 4 componentes usando columnas

convencionales

Page 4: TEMA 12: MODELADO CON VARIABLES BINARIASrua.ua.es/dspace/bitstream/10045/19734/8/Modelado_con_Variables... · 5.- MODELADO CON VARIABLES DISCRETAS Y VARIABLES CONTINUAS 5.1.- Modelado

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

140

A/B

B/C

C/D

D/E

E/F

AB C D

BCDEF

CDEFDEF

ABCDE

F

E

DC

ABCD

F

ABC

A

a BC

a EF

BCD

BCDE

F

A

a AB

B

EA

a EF

a AB

a DE

CDEF

C

E

D

B

*

*

*

*

*

Figura 2. Superestructura para una mezcla de 6 componentes.

Algunos otros ejemplos de las aplicaciones de modelos que integran la toma de

decisiones de algún tipo en el campo de la Ingeniería Química son, entre otros:

(I) Síntesis de procesos:

Redes de cambiadores de calor

Secuencias de destilación

Redes de intercambio de masa

Sistemas de cogeneración (servicios)

Redes de reactores

(II) Diseño, planificación y operación de procesos en discontinuo

Diseño y operación de plantas multiproducto

Diseño y operación de plantas multipropósito

(III) Interacción de diseño y control

(IV) Diseño molecular de productos

(V) Problemas de localización

Page 5: TEMA 12: MODELADO CON VARIABLES BINARIASrua.ua.es/dspace/bitstream/10045/19734/8/Modelado_con_Variables... · 5.- MODELADO CON VARIABLES DISCRETAS Y VARIABLES CONTINUAS 5.1.- Modelado

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

141

(VI) Planificación y operación de operaciones

(VII) Topología de transporte en redes

2.-INTRODUCCIÓN

Un problema en el que aparecen variables continuas y variables discretas (nosotros nos

vamos a ceñir al caso de variables binarias variables que sólo pueden tomar el valor 0 ó

1) es la siguiente:

( )

( )

( )

{ }1,0

0

0..

:min

≤+

=

+=

y

bDy

Byxg

xhas

ycxfZT

(1)

donde ycxfT

+)( es una función objetivo que se desea minimizar (maximizar). Dicha

función objetivo esta sujeta a una serie de restricciones de igualdad (balances de materia, de energía, etc.) que quedan representados por el vector de funciones 0)( =xh . Las

restricciones de desigualdad vienen representados por la expresión 0)( ≤+ Byxg . En las

anteriores expresiones x es un vector de variables continuas e y es un vector de variables

binarias.

Nótese que las variables binarias aparecen en forma lineal. La razón es que, quizás el

mejor algoritmo de solución, para este tipo de problemas necesita que las variables

binarias aparezcan sólo de forma lineal. En cualquier caso, siempre es posible modelar un

problema para que las variables binarias aparezcan de esta forma.

Asociado a los modelos de programación lineal y no lineal con variables binarias

(MINLP del inglés mixed-integer non linear programming) aparecen siempre una serie de

restricciones como consecuencia de la lógica del problema, que es necesario convertir a

su formulación matemática. Algunas de estas restricciones se pueden formular de manera

bastante directa. Por ejemplo, en un problema de síntesis, especificar que se debe

seleccionar exactamente uno de los reactores entre todo el conjunto de reactores candidatos ℜ∈i se puede expresar simplemente como:

Page 6: TEMA 12: MODELADO CON VARIABLES BINARIASrua.ua.es/dspace/bitstream/10045/19734/8/Modelado_con_Variables... · 5.- MODELADO CON VARIABLES DISCRETAS Y VARIABLES CONTINUAS 5.1.- Modelado

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

142

1=∑

ℜ∈i

iy { }1,0∈iy (2)

donde que la variable binaria yi tome el valor 1 indica que se selecciona el reactor i.

Por otra parte considérese la siguiente restricción: “Si se selecciona la columna de

absorción o el sistema de membrana, entonces no usar separación criogénica”. Si

elegimos como variables binarias ya, ym, yc que toman valor 1 si se selecciona la

absorción, la membrana o la separación criogénica, respectivamente y cero en otro caso,

se puede, después de algunos tanteos por prueba y error, llegar a la siguiente desigualdad

válida:

22 ≤++ cma yyy (3)

En la anterior restricción es fácil comprobar que si ya=1 y/o ym=1 se fuerza a que yc=0.

Sin embargo, veremos que de forma sistemática se puede llegar a una formulación

alternativa:

1

1

≤+

≤+

cm

ca

yy

yy (4)

El conjunto de ecuaciones (4) no sólo es equivalente a la ecuación (3) sino que es

también más eficiente en el sentido de que produce una relajación (solución tomando las

variables binarias como continuas y restringiéndolas a tomar un valor entre 0 y 1) cuya

solución está más próxima a la solución óptima del problema, debido a que restringe más

la región factible. Volveremos a este punto más adelante.

Para obtener de forma sistemática restricciones que incluyan variables 0-1 es útil primero

pensar en la forma correspondiente en lógica proposicional de las restricciones que se

desea modelar. Para ello debemos, en primer lugar, considerar cuáles son los operadores

básicos en lógica proposicional y cómo se puede transformar cada uno de esos

operadores a una forma dada por una igualdad o desigualdad en la que aparezcan

variables binarias. Estas transformaciones se usan entonces para convertir expresiones

lógicas en su forma matemática equivalente.

Page 7: TEMA 12: MODELADO CON VARIABLES BINARIASrua.ua.es/dspace/bitstream/10045/19734/8/Modelado_con_Variables... · 5.- MODELADO CON VARIABLES DISCRETAS Y VARIABLES CONTINUAS 5.1.- Modelado

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

143

3.- ALGUNOS CONCEPTO BÁSICOS DE ÁLGEBRA DE BOOLE

Se denomina enunciación (literal, proposición) a una oración narrativa simple, de la cual

se puede decir que es verdadera o falsa, pero no ambas simultáneamente.

Digamos que P y Q son dos enunciaciones, entre ellos podemos definir las siguientes

operaciones:

Disyunción, que se puede leer como: “P ó Q” y que toma el valor verdadero si P es verdadero, si Q es verdadero o si ambas son verdaderas. Se denotará como QP ∨

Conjunción, que se puede leer como “P y Q” y que toma el valor verdadero si P y Q son ambas verdaderas, y falso en otro caso. Se denotará como QP ∧

Negación, que se lee como “no P”, que cambia el valor del literal P de verdadero a falso

y viceversa. Se denotará como P¬

En la Tabla 1 se presentan esquemáticamente estas relaciones:

Tabla 1: tablas de la verdad para los operadores disyunción, conjunción, y negación

P Q QP ∨ P Q QP ∧ P P¬

F F F F F F V F

F V V F V F F V

V F V V F F

V V V V V V

Los operadores disyunción, conjunción y negación, aplicados entre literales forman un

álgebra lógica, que es conocida como álgebra de Boole. Las principales propiedades del

álgebra de Boole son:

Page 8: TEMA 12: MODELADO CON VARIABLES BINARIASrua.ua.es/dspace/bitstream/10045/19734/8/Modelado_con_Variables... · 5.- MODELADO CON VARIABLES DISCRETAS Y VARIABLES CONTINUAS 5.1.- Modelado

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

144

Idempotencia de conjunción y disyunción:

PPPPPP =∧=∨ ; (5)

Conmutativa de conjunción y disyunción

PQQPPQQP ∧=∧∨=∨ (6)

Asociativa de conjunción y disyunción

)()()()( RQPRQPRQPRQP ∧∧=∧∧∨∨=∨∨ (7)

Distributiva de conjunción respecto a la disyunción y de disyunción respecto a la

conjunción

( )

)()()(

)()(

RPQPRQP

RPQPRQP

∨∧∨=∧∨

∧∨∧=∨∧ (8)

De igual manera que se puede definir un álgebra con las operaciones disyunción

conjunción y negación se pueden definir álgebras alternativas utilizando otros operadores

lógicos (implicación, negación, etc.)

Sin embargo, cuando utilizamos el lenguaje natural (hablado) tendemos a usar una base

arbitraria, en otras palabras, usamos conjunciones disyunciones implicaciones

equivalencias etc. de una manera arbitraria. Afortunadamente es posible transformar

cualquier expresión lógica utilizando operadores lógicos arbitrarios a su equivalente

forma booleana.

Page 9: TEMA 12: MODELADO CON VARIABLES BINARIASrua.ua.es/dspace/bitstream/10045/19734/8/Modelado_con_Variables... · 5.- MODELADO CON VARIABLES DISCRETAS Y VARIABLES CONTINUAS 5.1.- Modelado

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

145

4.- TRANSFORMACIÓN DE EXPRESIONES LÓGICAS A EXPRESIONES

ALGEBRAICAS

Como se comentó anteriormente estamos interesados en transformar una expresión

lógica, en otra expresión algebraica equivalente. Para ello establecemos una

correspondencia entre variables booleanas y variables binarias de tal manera que:

Variable Booleana Variable binaria

Y = verdadero y = 1

Y = Falso y = 0

Y¬ (1-y)

Nuestro objetivo es:

encontrar una expresión algebraica lineal, expresada sólo en

función de variables binarias de tal manera que si la expresión

lógica es verdadera entonces la expresión algebraica sea factible y

si la expresión lógica es falsa entonces la expresión algebraica no

sea factible (no se pueda cumplir).

Los operadores lógicos básicos utilizados en lógica proposicional, y sus representaciones

equivalentes en forma algebraica vienen presentados en la Tabla 2

Page 10: TEMA 12: MODELADO CON VARIABLES BINARIASrua.ua.es/dspace/bitstream/10045/19734/8/Modelado_con_Variables... · 5.- MODELADO CON VARIABLES DISCRETAS Y VARIABLES CONTINUAS 5.1.- Modelado

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

146

Tabla 2. Representación algebraica de los operadores lógicos básicos

Relación lógica

Comentarios

Expresión

Booleana

Representación

como desigualdad

lineal

O lógico

Disyunción

rPPP ∨∨∨ L21

rPóPóP 21

121 ≥+++ ryyy L

Y lógico

Conjunción

rPPP ∧∧∧ L21

( )rPyPyP .....21

1

1

1

2

1

ry

y

y

M

Implicación 21 PP ⇒ 21 PP ∨¬ 11 21 ≥+− yy

Equivalencia P1 si y solo si P2 ( ) ( )1221 PPPP ⇒∧⇒

( ) ( )1221 PPPP ∨¬∧∨¬

21 yy =

O exclusivo Exactamente una de

las variables es

verdadera ...321 PPP ∨∨

121 =+++ ryyy L

Como mucho

una opción

Elegir como mucho

una de las opciones

(una o ninguna)

1...21 ≤+++ ryyy

Con las equivalencias presentadas en la Tabla 2 podemos transformar cualquier operador

lógico básico a su equivalente forma algebraica. Sin embargo, se necesita todavía un

procedimiento sistemático para transformar una expresión lógica complicada que utilice

operadores diferentes. Para ello es necesario introducir el concepto de forma normal

conjuntiva.

La forma normal conjuntiva es un conjunto de cláusulas (cada cláusula es un conjunto de proposiciones), sQQQQ ∧∧∧∧ ....321 conectadas por el operador lógico Y ( ∧ ). Para

que el resultado de la forma normal conjuntiva sea ‘Verdadero’ cada una de las cláusulas

Page 11: TEMA 12: MODELADO CON VARIABLES BINARIASrua.ua.es/dspace/bitstream/10045/19734/8/Modelado_con_Variables... · 5.- MODELADO CON VARIABLES DISCRETAS Y VARIABLES CONTINUAS 5.1.- Modelado

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

147

Qj debe ser verdadera independientemente de las otras cláusulas. Además, si

reemplazamos todas las implicaciones de tal manera que la expresión quede en su forma

booleana (solamente operadores Y, operadores O y negación) entonces cada una de las cláusulas estará formada por disyunciones de literales, rPPPP ∨∨∨∨ ...321 (literales

conectados por operadores O).

Una vez que el problema está expresado en su forma normal conjuntiva la transformación

a forma algebraica es inmediata, siguiendo las reglas de la Tabla 2. Para cada una de las

conjunciones basta escribir una desigualdad de la forma:

sjyyy rjjj .....2,11...21 =≥+++ (9)

donde la variable binaria yij toma el valor 1 si es cierto el literal i en la cláusula j.

veamos un procedimiento para transformar una expresión lógica cualquiera a su forma

normal conjuntiva

Transformación a la forma normal conjuntiva:

Para transformar una expresión booleana a su forma normal conjuntiva basta aplicar un

procedimiento de tres pasos a cada una de las proposiciones lógicas.

1. Reemplazar las implicaciones por su disyunción equivalente

2121 PPPP ∨¬⇔⇒ (10)

2. Desplazar las negaciones dentro de las cláusulas aplicando los teoremas de

DeMorgan:

( )

( ) 2121

2121

PPPP

PPPP

¬∧¬⇔∨¬

¬∨¬⇔∧¬ (11)

3. Distribuir el operador O sobre el operador Y. Aprovechando la propiedad

distributiva:

Page 12: TEMA 12: MODELADO CON VARIABLES BINARIASrua.ua.es/dspace/bitstream/10045/19734/8/Modelado_con_Variables... · 5.- MODELADO CON VARIABLES DISCRETAS Y VARIABLES CONTINUAS 5.1.- Modelado

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

148

( ) ( ) ( )3231321 PPPPPPP ∨∧∨⇔∨∧ (12)

Veamos algunos ejemplos para ilustrar el procedimiento:

Ejemplo 1.

Consideremos el caso presentado anteriormente que decía lo siguiente: “Si se selecciona

la columna de absorción o la separación mediante membranas entonces no seleccionar la

separación criogénica”

Haciendo Pa= verdadero si se selecciona la columna de absorción

Pm= verdadero si se selecciona la separación mediante membranas

Pc= verdadero si se selecciona la separación criogénica

La condición lógica es: cma PPP ¬⇒∨

Eliminando la implicación: ( ) cma PPP ¬∨∨¬

Aplicando el teorema de DeMorgan: ( ) cma PPP ¬∨¬∧¬

Distribuyendo O sobre Y ( ) ( )cmca PPPP ¬∨¬∧¬∨¬ (13)

Con lo que tenemos ya el problema en su forma normal conjuntiva. Cada una de las

conjunciones debe ser cierta independientemente de las otras. Definiendo variables

binarias asociadas a cada uno de los literales y aplicando la equivalencia de la Tabla 2

para las conjunciones tenemos pues:

111

111

≥−+−

≥−+−

cm

ca

yy

yy (14)

que se pueden reordenar para obtener la misma expresión que en la ecuación (4)

1

1

≤+

≤+

cm

ca

yy

yy (15)

Sin embargo veíamos que este conjunto de restricciones no era único, y que se podían

escribir restricciones alternativas igualmente válidas. Queda pues por determinar que

conjunto de restricciones es mejor.

Page 13: TEMA 12: MODELADO CON VARIABLES BINARIASrua.ua.es/dspace/bitstream/10045/19734/8/Modelado_con_Variables... · 5.- MODELADO CON VARIABLES DISCRETAS Y VARIABLES CONTINUAS 5.1.- Modelado

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

149

Para este último punto considérese una restricción bastante habitual y que se podría

enunciar de la siguiente manera:

Ejemplo 2.

“La acción Z se ejecutará si alguno de los sucesos Y1 ó Y2 ó Y3 ó … Yn tiene lugar”

Es fácil comprobar que se pueden escribir dos conjuntos de restricciones válidos:

niyz i ...3,2,1=≥ que es un sistema de n desigualdades (16)

o bien

zNyN

t

t ≤∑=1

Que es una única restricción (17)

Para un caso con dos variables y se puede ver gráficamente como actúan cada una de las

restricciones

y2y1

z

y2y1

z

a) Múltiples restricciones b) Una sola restricción

Se puede comprobar que en el caso (a) las restricciones fuerzan a soluciones enteras,

mientras no ocurre así en el caso (b). La restricción (a) es pues mejor que la (b).

Veamos que nos dice el procedimiento propuesto:

ZYYY n ⇒∨∨∨ ....21

Page 14: TEMA 12: MODELADO CON VARIABLES BINARIASrua.ua.es/dspace/bitstream/10045/19734/8/Modelado_con_Variables... · 5.- MODELADO CON VARIABLES DISCRETAS Y VARIABLES CONTINUAS 5.1.- Modelado

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

150

En su forma Booleana: ( ) ZYYY n ∨∨∨∨¬ ....21

Introduciendo las negaciones ( ) ZYYY n ∨¬∧∧¬∧¬ ......21

Distribuyendo el operador Y ( ) ( ) ( ) ( )ZYZYZYZY n ∨¬∧∧∨¬∧∨¬∧∨¬ .....321

Y por lo tanto se obtiene: nizyi ,...,2,111 =≥+− o lo que es lo mismo

niyz i ,...,2,1=≥

(18)

Así pues, el procedimiento sistemático predice la mejor de las restricciones.

Page 15: TEMA 12: MODELADO CON VARIABLES BINARIASrua.ua.es/dspace/bitstream/10045/19734/8/Modelado_con_Variables... · 5.- MODELADO CON VARIABLES DISCRETAS Y VARIABLES CONTINUAS 5.1.- Modelado

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

151

5.- MODELADO CON VARIABLES DISCRETAS (BINARIAS) Y VARIABLES

CONTINUAS.

En el apartado anterior se presentó una sistemática que permite modelar de forma

algebraica restricciones en las que aparecen variables 0,1. Sin embargo, en un buen

número de casos es necesario tratar con restricciones que incluyen también variables

continuas. Veamos un ejemplo de síntesis de procesos:

a. Si se selecciona el reactor 1, entonces la presión estará comprendida entre 5 y

10 atmósferas.

b. Pero si se selecciona el reactor 2, entonces la presión deberá estar

comprendida entre 20 y 30 atmósferas.

En el caso anterior, no solamente es necesario decidir cuál de los reactores se va a

utilizar, sino además dependiendo de la elección, obligar a la presión a variar entre los

límites correctos. Volveremos más adelante con el ejemplo, antes vamos a ver como

podemos modelar disyunciones.

5.1.- MODELADO DE DISYUNCIONES. ECUACIONES LINEALES.

Para representar opciones lógicas con el uso de variables binarias y continuas, es útil

escribir el problema en forma disyuntiva, y luego transformarlo, de forma sistemática a

su equivalente forma algebraica. En el caso de ecuaciones lineales, la forma disyuntiva

toma la forma siguiente:

≤≤

≤−∨∈ UL

i

i

Di xxx

bxA

Y

0 (19)

donde el signo ∨ es el operador O, que se aplica a un conjunto de términos disyuntivos

D. Yi es una variable booleana que toma el valor verdadero si hay que aplicar la

disyunción i. La expresión anterior la podríamos leer entonces como si Yi es verdadera

entonces usar las ecuaciones correspondientes a esa variable booleana.

Page 16: TEMA 12: MODELADO CON VARIABLES BINARIASrua.ua.es/dspace/bitstream/10045/19734/8/Modelado_con_Variables... · 5.- MODELADO CON VARIABLES DISCRETAS Y VARIABLES CONTINUAS 5.1.- Modelado

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

152

El ejemplo que comentábamos anteriormente se puede escribir entonces como:

≤+−

≤−∨

≤+−

≤−

020

030

05

01021

P

P

Y

P

P

Y

(20)

donde Y1, Y2 son variables booleanas que toman el valor verdadero si se elige el reactor 1

o el 2 respectivamente.

Existen dos formas de transformar una expresión dada en forma disyuntiva a su

equivalente forma algebraica. La primera es el uso de “La gran M” y la segunda es la

representación de envolvente convexa (convex hull en la literatura anglosajona).

Si se usa la representación de la gran M, cada una de las disyunciones se puede

transformar de forma sistemática a su forma algebraica de la siguiente manera:

( )

{ } Diy

y

yMbxA

Di

i

iii

∈∈

=

−≤−

∑∈

,1,0

1

1

(21)

donde yi es una variable binaria que toma el valor 1 si la variable booleana Yi es

verdadera, y toma el valor 0 en otro caso. La segunda ecuación del conjunto de

ecuaciones (12) es la transformación a forma algebraica de las restricciones lógicas del

problema. M es un número positivo suficientemente grande. Nótese que si yi toma el

valor 1 entonces el conjunto de ecuaciones asociados a la disyunción i se cumple. Si yi

toma el valor cero entonces el conjunto de ecuaciones asociadas a la disyunción i está

relajado (se cumple de forma arbitraria)

En el ejemplo que venimos siguiendo la transformación a forma algebraica utilizando la

formulación de la gran M es:

( )

( )

( )

( )

1

120

130

15

110

21

22

22

11

11

=+

−≤−

−≤−

−≤−

−≤−

yy

yMP

yMP

yMP

yMP

(22)

Page 17: TEMA 12: MODELADO CON VARIABLES BINARIASrua.ua.es/dspace/bitstream/10045/19734/8/Modelado_con_Variables... · 5.- MODELADO CON VARIABLES DISCRETAS Y VARIABLES CONTINUAS 5.1.- Modelado

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

153

Valores grandes de M1=M2=100 son elecciones válidas, pero producen relajaciones

débiles en el sentido de que si se resuelve el problema por un método de Branch and

Bound las cotas inferiores obtenidas por el primer programa lineal (en el que las variables

binarias se relajan y se toman como continuas) son cotas muy bajas. La elección del

parámetro M es de primordial importancia para resolver los problemas con esta

formulación. En general debe ser grande para asegurar que la relajación de las variables

en el caso de restricciones no activas es posible, y debe ser lo suficientemente pequeño

para que el espacio factible del problema relajado sea lo menor posible.

Una formulación alternativa a la gran M es utilizar la envolvente convexa. En este caso es

necesario disgregar las variables continuas en suma de tantas variables nuevas como

disyunciones aparezcan en el problema. La formulación, en este caso, requiere introducir

zi nuevas variables, y el problema se formularía en forma algebraica como:

∑∈

=

Di

izx

Diy

Di

i ∈=∑∈

1

DiybzA iiii ∈≤− 0

Diyzzyz iUiii

Li ∈≤≤ (23)

La primera de las anteriores ecuaciones corresponde a la disgregación de las variables. La

segunda ecuación implica que sólo una de las variables binarias puede tener valor 1

simultáneamente La tercera corresponde a las desigualdades escritas en términos de las

variables disgregadas zi y de las variables binarias yi.. Y por último la cuarta ecuación

asegura que las variables disgregadas asociadas a las disyunciones no activas se hacen

cero en la solución.

La formulación de envolvente convexa de nuestro ejemplo sería:

21 PPP +=

11

11

5

10

yP

yP

−≤−

22

22

20

30

yP

yP

−≤−

121 =+ yy (24)

Page 18: TEMA 12: MODELADO CON VARIABLES BINARIASrua.ua.es/dspace/bitstream/10045/19734/8/Modelado_con_Variables... · 5.- MODELADO CON VARIABLES DISCRETAS Y VARIABLES CONTINUAS 5.1.- Modelado

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

154

El ejemplo anterior solamente tiene como restricciones un límite inferior y superior de las

variables (la presión) es interesante quizá presentar un caso más general para aclarar

completamente el procedimiento. Considérese la función de coste, que depende de la

variable x que se presenta gráficamente a continuación:

a1 +b1 x

a 2 +b 2

x

x

C

0 s t

La formulación disyuntiva de este problema sería:

≤≤

+=∨

≤≤

+=

txs

xbac

Y

sx

xbac

Y

22

2

11

1

0

(25)

Y la formulación de envolvente convexa sería:

11

21

xxx

ccc

+=

+=

11111 xbyac += 22222 xbyac +=

110 ysx ≤≤ 222 ytxys ≤≤

121 =+ yy (26)

La importancia de esta formulación es que no necesita la introducción de nuevos

parámetros artificiales (M). Además la región factible del problema relajado cuando se

usa la envolvente convexa es siempre menor que la región factible en el caso de que se

use la formulación de la gran M. Por otra parte introduce nuevas restricciones, lo que

Page 19: TEMA 12: MODELADO CON VARIABLES BINARIASrua.ua.es/dspace/bitstream/10045/19734/8/Modelado_con_Variables... · 5.- MODELADO CON VARIABLES DISCRETAS Y VARIABLES CONTINUAS 5.1.- Modelado

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

155

hace el problema más largo de resolver. Habitualmente hay que alcanzar una situación de

compromiso entre el número de variables nuevas a añadir y la reducción del espacio

factible. Aunque como regla general se puede decir que para problemas pequeños la

formulación de la gran M funciona bien, pero para problemas grandes es mejor utilizar la

formulación de envolvente convexa.

La siguiente Figura ilustra el efecto de ambas formulaciones para el siguiente ejemplo en

dos dimensiones:

[ ] [ ]

40

40

11

2

1

2121

≤≤

≤≤

−≤+−∨≤−

x

x

xxxx

(27)

x1

x2

Región I

Región 2

x1

x2 x2

x1

Gran M Envolvente convexa

Señalar que la formulación de envolvente convexa se puede simplificar si la disyunción

la forman solamente dos términos y uno de los términos implica que todas las variables

asociadas se hacen cero, como por ejemplo:

[ ] [ ]020 =∨≤ FF (28)

Es fácil comprobar que en este caso F2=0.y2 y por lo tanto F=F1 por lo que la

formulación de envolvente convexa se simplifica a:

120 yF ≤ (29)

Page 20: TEMA 12: MODELADO CON VARIABLES BINARIASrua.ua.es/dspace/bitstream/10045/19734/8/Modelado_con_Variables... · 5.- MODELADO CON VARIABLES DISCRETAS Y VARIABLES CONTINUAS 5.1.- Modelado

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

156

5.2.- MODELADO DE DISYUNCIONES. ECUACIONES NO LINEALES.

En el caso de ecuaciones no lineales, sólo se utiliza la formulación de la gran M, puesto

que la envolvente convexa de funciones no lineales no es fácil de obtener (recientemente

ha aparecido algún trabajo en el que se plantea cómo conseguir esta envolvente, pero está

fuera del objetivo aquí presentado). Así, en el caso más general la formulación de

disyunciones en las que aparecen restricciones no lineales se puede formular como:

( )

( )

=

≤∨∈

0

0

xh

xg

Y

i

i

i

Di (30)

La expresión (30) puede transformar de forma sistemática a un conjunto de ecuaciones

como:

( ) ( )ii yMxg −≤ 1

( )

( )

0,

1

0

21

21

21

−≤+

=−+

ss

yMss

ssxh

i

i

1=∑∈Di

iy (31)

donde s1, s2 son variables de holgura positivas. Como en casos anteriores nótese que si yi

es igual a 1 la desigualdad y la igualdad deben verificarse. En este caso las variables de

holgura están forzadas a ser cero. Nuevamente la elección del parámetro M es crítica y

puede llegar a tener gran importancia en los métodos de solución.

Alternativamente se puede utilizar la siguiente formulación de M grande que evita añadir

nuevas variables

Page 21: TEMA 12: MODELADO CON VARIABLES BINARIASrua.ua.es/dspace/bitstream/10045/19734/8/Modelado_con_Variables... · 5.- MODELADO CON VARIABLES DISCRETAS Y VARIABLES CONTINUAS 5.1.- Modelado

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

157

( )

( )

( )

( ) 1

( ) 1

( ) 1

i i

i i

i i

g x M y

h x M y

h x M y

≤ −

≤ −

≥ − −

1=∑∈Di

iy (32)

En la formulación que aparece en la ecuación 32 la igualdad [ h(x)=0] se ha convertido en dos desigualdades ( ( ) 0; ( ) 0h x h x≤ ≥ ) y a cada una de ellas se le aplica el procedimiento

general para desigualdades en M grande.

En un problema general aparecen tres tipos de ecuaciones:

1. Ecuaciones que serán invariantes para todo el todo el sistema.

2. Ecuaciones que serán activas solamente si se toma una determinada decisión,

asociada a una variable booleana (o binaria) o conjuntos de ecuaciones que no se

deben utilizar. Los dominios de las restricciones podrán ser totalmente disjuntos,

o podrán tener zonas en común (lo que podemos modelar de forma disyuntiva).

3. Además aparecerán una serie de relaciones lógicas que determinarán si una

decisión y sus ecuaciones correspondientes se deben tener en cuenta o no.

Inicialmente aparecen en forma booleana y se pueden transformar a ecuaciones

algebraicas en las que aparecen variables binarias solamente.