3.- ALGUNOS CONCEPTOS BÁSICOS DE ÁLGEBRA DE BOOLE 4.- TRANSFORMACIÓN DE EXPRESIONES LÓGICAS A EXPRESIONES ALGEBRAICAS



Documentos relacionados
Ecuaciones de primer grado con dos incógnitas

Operaciones Booleanas y Compuertas Básicas

Tema 3. Espacios vectoriales

Subespacios vectoriales en R n

Definición Dados dos números naturales m y n, una matriz de orden o dimensión m n es una tabla numérica rectangular con m filas y n columnas.

1. Números Reales 1.1 Clasificación y propiedades

personal.us.es/elisacamol Elisa Cañete Molero Curso 2011/12

PROGRAMACIÓN LINEAL Introducción Inecuaciones lineales con 2 variables

Tema 3 : Algebra de Boole

Covarianza y coeficiente de correlación

UNIDAD I: LÓGICA PROPOSICIONAL

circuitos digitales Oliverio J. Santana Jaria Sistemas Digitales Ingeniería Técnica en Informática de Sistemas Curso

CURSO TECNOLOGÍA TECNOLOGÍA 4º ESO TEMA 5: Lógica binaria. Tecnología 4º ESO Tema 5: Lógica binaria Página 1

I. ALGEBRA DE BOOLE. c) Cada operación es distributiva con respecto a la otra: a. ( b + c) = a. b + a. c a + ( b. c ) = ( a + b ).

TEMA 5. ELECTRÓNICA DIGITAL

Tema : ELECTRÓNICA DIGITAL

Matrices equivalentes. El método de Gauss

1. Producto escalar, métrica y norma asociada

Apuntes de Matemática Discreta 1. Conjuntos y Subconjuntos

LÓGICA MATEMÁTICA. Álgebra de Boole Guía de trabajo

Programación Lineal Entera

3.1 DEFINICIÓN. Figura Nº 1. Vector

UNIDAD I INTRODUCCIÓN A LOS CIRCUITOS LÓGICOS 1. ÁLGEBRA DE BOOLE 2. MÉTODO DE REDUCCIÓN DE MAPAS DE KARNAUGH 1-1. R. ESPINOSA R. y P. FUENTES R.

Matemáticas

AXIOMAS DE CUERPO (CAMPO) DE LOS NÚMEROS REALES

Aplicaciones lineales continuas

Álgebras de Boole. Juan Medina Molina. 25 de noviembre de 2003

Cómo?: Resolviendo el sistema lineal homógeneo que satisfacen las componentes de cualquier vector de S. x4 = x 1 x 3 = x 2 x 1

NÚMEROS NATURALES Y NÚMEROS ENTEROS

Lección 9: Polinomios

Una desigualdad se obtiene al escribir dos expresiones numéricas o algebraicas relacionadas con alguno de los símbolos

Universidad Católica del Maule. Fundamentos de Computación Especificación de tipos de datos ESPECIFICACIÓN ALGEBRAICA DE TIPOS DE DATOS

OPERACIONES ELEMENTALES CON VECTORES

Divisibilidad y números primos

LÍMITES Y CONTINUIDAD DE FUNCIONES

8.1. Introducción Dependencia/independencia estadística Representación gráfica: diagrama de dispersión Regresión...

Módulo 9 Sistema matemático y operaciones binarias

Aproximación local. Plano tangente. Derivadas parciales.

1.4.- D E S I G U A L D A D E S

BASES Y DIMENSIÓN. Propiedades de las bases. Ejemplos de bases.

ESTRUCTURAS ALGEBRAICAS 1

Tema 07. LÍMITES Y CONTINUIDAD DE FUNCIONES

Matrices Invertibles y Elementos de Álgebra Matricial

Ingeniería del Software I Clase de Testing Funcional 2do. Cuatrimestre de 2007

Tema 2. Espacios Vectoriales Introducción

Números Reales. MathCon c

Características de funciones que son inversas de otras

Apuntes de Matemática Discreta 9. Funciones

Índice Introducción Números Polinomios Funciones y su Representación. Curso 0: Matemáticas y sus Aplicaciones Tema 1. Números, Polinomios y Funciones

Aplicaciones Lineales y Multilineales Continuas

Programa para el Mejoramiento de la Enseñanza de la Matemática en ANEP Proyecto: Análisis, Reflexión y Producción. Fracciones

BREVE MANUAL DE SOLVER

4.3 INTERPRETACIÓN ECONÓMICA DE LA DUALIDAD

1. Se establecen los conceptos fundamentales (símbolos o términos no definidos).

Actividades con GeoGebra

Ingeniería en Informática

SISTEMAS DE NUMERACIÓN. Sistema decimal

Datos del autor. Nombres y apellido: Germán Andrés Paz. Lugar de nacimiento: Rosario (Código Postal 2000), Santa Fe, Argentina

Grupos. Subgrupos. Teorema de Lagrange. Operaciones.

Transformación de binario a decimal. Transformación de decimal a binario. ELECTRÓNICA DIGITAL

CURSO BÁSICO DE MATEMÁTICAS PARA ESTUDIANTES DE ECONÓMICAS Y EMPRESARIALES

CURSO CERO. Departamento de Matemáticas. Profesor: Raúl Martín Martín Sesiones 18 y 19 de Septiembre

Lección 24: Lenguaje algebraico y sustituciones

TABLA DE DECISION. Consideremos la siguiente tabla, expresada en forma genérica, como ejemplo y establezcamos la manera en que debe leerse.

ELECTRÓNICA DIGITAL. Una señal es la variación de una magnitud que permite transmitir información. Las señales pueden ser de dos tipos:

Lógica Binaria. Contenidos. Objetivos. Antes de empezar 1.Introducción... pág. 2. En esta quincena aprenderás a:

Curso Completo de Electrónica Digital

A estas alturas de nuestros conocimientos vamos a establecer dos reglas muy prácticas de cómo sumar dos números reales:

Límites. Definición de derivada.

INSTITUTO SUPERIOR TECNOLÓGICO NORBERT WIENER

Orden y estructuras algebraicas mediante nuevas tecnologías

Programación Lineal. Ficha para enseñar a utilizar el Solver de EXCEL en la resolución de problemas de Programación Lineal

Para representar los conjuntos, los elementos y la relación de pertenencia, mediante símbolos, tendremos en cuenta las siguientes convenciones:

Tema 1: Fundamentos de lógica, teoría de conjuntos y estructuras algebraicas: Apéndice

OR (+) AND( ). AND AND

ELO211: Sistemas Digitales. Tomás Arredondo Vidal 1er Semestre 2009

Diagonalización de matrices

UNIDAD 4: PLANO CARTESIANO, RELACIONES Y FUNCIONES. OBJETIVO DE APRENDIZAJE: Representar gráficamente relaciones y funciones en el plano cartesiano.

x

9.1 Primeras definiciones

El álgebra booleana (Algebra de los circuitos lógicos tiene muchas leyes o teoremas muy útiles tales como :

PARTE 3 ECUACIONES DE EQUIVALENCIA FINANCIERA T E M A S

Los polinomios. Un polinomio es una expresión algebraica con una única letra, llamada variable. Ejemplo: 9x 6 3x 4 + x 6 polinomio de variable x

4.Diseño de Bases de Datos (I)

Ejercicios de Programación Lineal

Ecuaciones Diferenciales Tema 2. Trasformada de Laplace

Estructuras algebraicas

Fundamentos de Investigación de Operaciones Investigación de Operaciones 1

Profr. Efraín Soto Apolinar. Función Inversa

E 1 E 2 E 2 E 3 E 4 E 5 2E 4

L A P R O G R A M A C I O N

MLM Matemática Discreta

Funciones, x, y, gráficos

1 Espacios y subespacios vectoriales.

Operaciones Morfológicas en Imágenes Binarias

La nueva criba de Eratóstenes Efraín Soto Apolinar 1 F.I.M.E. U.A.N.L. San Nicolás, N.L. México. efrain@yalma.fime.uanl.mx

UNIDAD 1. LOS NÚMEROS ENTEROS.

TEMA II: ÁLGEBRA DE CONMUTACIÓN

Transcripción:

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. 137

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 [ 2( N 1) ]! calcular usando la formula de Thompson y King: Num sec= ). N 1! N ( )! 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í. 138

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 AB C ABC/D A B A BC BC D AB CD B C A BCD C D B CD Figura 1 superestructura para la separación de 4 componentes usando columnas convencionales 139

* A B C D DEF CDEF a BC E/F BCDEF a AB F C * F B CDE a AB D/E * F A BCDE E C/D * ABCDE * a EF A E a EF BCD D B B/C F a DE A ABCD ABC E D C Figura 2. Superestructura para una mezcla de 6 componentes. A/B 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) (II) (III) (IV) (V) 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 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 Interacción de diseño y control Diseño molecular de productos Problemas de localización 140

(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: min : Z = f s. a. g ( x) ( x) h Dy b y { 0,1} ( x) = 0 T + c y + By 0 (1) T donde f ( x)+ c y 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 h ( x) = 0. Las restricciones de desigualdad vienen representados por la expresión g ( x) + By 0. 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 R se puede expresar simplemente como: 141

y i =1 y i { 0,1} (2) i R donde que la variable binaria y i 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 y a, y m, y c 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: y a + ym + 2yc 2 (3) En la anterior restricción es fácil comprobar que si y a =1 y/o y m =1 se fuerza a que y c =0. Sin embargo, veremos que de forma sistemática se puede llegar a una formulación alternativa: ya + yc 1 ym + yc 1 (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. 142

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 P Q 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 P Q 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 P Q P Q P Q 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: 143

Idempotencia de conjunción y disyunción: P P = P; P P = P (5) Conmutativa de conjunción y disyunción P Q = Q P P Q= Q P (6) Asociativa de conjunción y disyunción ( P Q) R = P ( Q R) ( P Q) R = P ( Q R) (7) Distributiva de conjunción respecto a la disyunción y de disyunción respecto a la conjunción P ( Q R) = ( P Q) ( P R) P ( Q R) = ( P Q) ( P R) (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. 144

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 145

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 P1 P2 L Pr y1 + y2 + L + yr 1 P1 ó P2 ó P r y1 1 Y lógico Conjunción P1 P2 L Pr y2 1 ( P 1 y P2 y... P r ) M y r 1 Implicación P 1 P2 P1 P2 1 y 1 + y2 1 Equivalencia P 1 si y solo si P 2 P1 P2 P2 P1 ( ) ( ) ( P P ) ( P ) 1 2 2 P1 y 1 = y2 O exclusivo Como mucho una opción Exactamente una de las variables es verdadera P1 P2 P3... Elegir como mucho una de las opciones (una o ninguna) y1 + y2 + L + yr = 1 y 1 + y2 +... + yr 1 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), Q1 Q2 Q3... Qs conectadas por el operador lógico Y ( ). Para que el resultado de la forma normal conjuntiva sea Verdadero cada una de las cláusulas 146

Q j 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, P1 P2 P3... Pr (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: y1 j + y2 j +... + yrj 1 j = 1,2... s (9) donde la variable binaria y ij 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 P1 P2 P1 P2 (10) 2. Desplazar las negaciones dentro de las cláusulas aplicando los teoremas de DeMorgan: ( P1 P2 ) P1 P2 ( P1 P2 ) P1 P2 (11) 3. Distribuir el operador O sobre el operador Y. Aprovechando la propiedad distributiva: 147

( P P ) P ( P P ) ( P ) 1 2 3 1 3 2 P3 (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: Eliminando la implicación: ( ) c P a Pm Pc P a Pm P P a Pm P P a Pc Pm Pc (13) Aplicando el teorema de DeMorgan: ( ) c Distribuyendo O sobre Y ( ) ( ) 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: 1 ya + 1 yc 1 1 ym + 1 yc 1 (14) que se pueden reordenar para obtener la misma expresión que en la ecuación (4) ya + yc 1 ym + yc 1 (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. 148

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 Y 1 ó Y 2 ó Y 3 ó Y n tiene lugar Es fácil comprobar que se pueden escribir dos conjuntos de restricciones válidos: o bien z yi i = 1,2,3... n que es un sistema de n desigualdades (16) N yt zn 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 z z y 2 y 1 y 2 y 1 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: Y1 Y2... Yn Z 149

En su forma Booleana: ( Y Y... Y ) Z 1 2 n Y1 Y2... Yn Y1 Z Y2 Z Y3 Z... Yn Z 1 y i + z 1 i = 1,2,..., n o lo que es lo mismo Introduciendo las negaciones ( ) Z Distribuyendo el operador Y ( ) ( ) ( ) ( ) Y por lo tanto se obtiene: z yi i = 1,2,..., n (18) Así pues, el procedimiento sistemático predice la mejor de las restricciones. 150

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: Yi A L i x b 0 (19) i D U x x x donde el signo es el operador O, que se aplica a un conjunto de términos disyuntivos D. Y i 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 Y i es verdadera entonces usar las ecuaciones correspondientes a esa variable booleana. 151

El ejemplo que comentábamos anteriormente se puede escribir entonces como: Y1 Y2 P 10 0 P 30 0 P + 5 0 P + 20 0 (20) donde Y 1, Y 2 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: Ai x b Mi yi = 1 i D y { 0,1 }, i D ( 1 y ) i (21) donde y i es una variable binaria que toma el valor 1 si la variable booleana Y i 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 y i toma el valor 1 entonces el conjunto de ecuaciones asociados a la disyunción i se cumple. Si y i 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: P 10 M 5 P M1 P 30 M 20 P M2 y1 + y2 = 1 1( 1 y1 ) ( 1 y1 ) 2( 1 y2) ( 1 y ) 2 (22) 152

Valores grandes de M 1 =M 2 =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 z i nuevas variables, y el problema se formularía en forma algebraica como: x = z i i D yi = 1 i D i D Ai zi bi yi 0 i D L U z i y i z i z i y i i D (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 z i y de las variables binarias y i.. 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: P1 10 y1 P1 5 y1 P = P 1 + P 2 P2 30 y2 P2 20 y2 y 1 + y2 = 1 (24) 153

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: C a 2 +b 2 x a 1 +b 1 x 0 s t x La formulación disyuntiva de este problema sería: Y1 Y2 c = a1 + b1 x c = a2 + b2x 0 x s s x t (25) Y la formulación de envolvente convexa sería: c = c1 + c2 x = x1 + x1 c 1= a1 y1 + b1 x1 c 2 = a2 y2 + b2x2 0 x1 s y1 s y2 x2 t y2 y 1 + y2 = 1 (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 154

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: [ x x 1] [ x + x 1] 1 2 0 x1 4 0 x2 4 1 2 (27) x1 x1 x1 Región I Región 2 x2 Gran M x2 Envolvente convexa x2 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: [ 20 ] [ F =0] F (28) Es fácil comprobar que en este caso F 2 =0.y 2 y por lo tanto F=F 1 por lo que la formulación de envolvente convexa se simplifica a: F 20 y 1 (29) 155

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: Yi gi i D hi ( x) 0 ( ) x = 0 (30) La expresión (30) puede transformar de forma sistemática a un conjunto de ecuaciones como: ( x) M ( 1 ) ( x) + s1 s2 = 0 + s M ( 1 y ) gi y i hi s1 2 i s1, s2 0 y i =1 (31) i D donde s 1, s 2 son variables de holgura positivas. Como en casos anteriores nótese que si y i 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 156

( i ) ( i ) ( ) g ( x) M 1 y i h ( x) M 1 y i hi ( x) M 1 yi i D y i =1 (32) En la formulación que aparece en la ecuación 32 la igualdad [ h(x)=0] se ha convertido en dos desigualdades ( h( x) 0; h( x) 0 ) 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. 157