UNIDAD TEMÁTICA XI INTRODUCCIÓN A LA OPTIMIZACION XII.1 INTRODUCCIÓN Desde un punto de vista general, se puede decir que la teoría de la optimización, constituye un conjunto de resultados matemáticos y métodos numéricos para la búsqueda e identificación de la mejor alternativa, a partir de un conjunto numeroso de ellas, sin tener que enumerar y evaluar explícitamente cada una de las alternativas. Desde un punto de vista ingenieril podemos decir que la optimización constituye la raíz o esencia de la ingeniería, ya que la función clásica del ingeniero es diseñar sistemas nuevos, mejores, más eficientes y mas baratos, así como también desarrollar planes y procedimientos que permitan mejorar la operación de sistemas existentes. Esta gran ventaja de la teoría de la optimización, que permite seleccionar la mejor opción sin tener que evaluarlas a todas, requiere solo de un modesto nivel de matemática, además del uso de métodos numéricos mediante una determinada secuencia de calculo implementada en algoritmos. En resumen solo necesitamos un manejo primario de matrices y vectores, álgebra lineal, cálculo y algo de análisis real, y por sobre todas las cosas un adecuado conocimiento y criterio ingenieríl que nos permita modelar el problema en estudio y posteriormente interpretar los resultados obtenidos de la optimización. XII.2 REQUERIMIENTOS BÁSICOS PARA LA APLICACIÓN DE UN MÉTODO DE OPTIMIZACIÓN Los elementos básicos requeridos para la aplicación de un método de optimización a un determinado problema o situación son los siguientes: 1. Definir los límites del sistema ingenieril a optimizar 2. Definir un criterio cuantitativo que permita establecer un ranking de alternativas a fin de seleccionar la mejor 3. Seleccionar las variables del sistema que permiten caracterizar o definir explícitamente al mismo 4. Definir un modelo que interrelacione las variables a fin de describir el sistema en estudio Estas cuatro actividades constituyen lo que se denomina “Formulación del Problema de Optimización Ingenieril”, y define en gran parte el éxito o fracaso de un estudio de 1 optimización. No existen formulas matemáticas para desarrollar cada una de estas actividades, y su aprendizaje solo se adquiere a través de la práctica y la experiencia de resolver innumerables problemas en diferentes situaciones, es por ello que se dice que la etapa de formulación del problema de optimización es mas ARTE que TÉCNICA. Veamos algunos conceptos referidos a cada etapa. Definición de los Limites del Sistema Previo a optimizar cualquier tipo de sistema en ingeniería es preciso conocer con precisión sus limites así como también el universo que lo rodea, a fin de poder tener en cuenta las posibles interacciones entre ambos. Bajo este contexto se entiende por sistema al concepto termodinámico del mismo, o sea la porción restringida del universo bajo consideración. Ello nos permite aislar el sistema en estudio de sus alrededores, a fin de poder estudiarlo, evitando así la influencia de interacciones desde los alrededores. Esto no siempre es posible, y muchas veces las interacciones con los alrededores son inevitables, por ende es necesario extender los limites del sistema, a fin de realizar una optimización realista. Por lo general en la práctica es muy común encontrar situaciones donde una primera definición de los limites del sistema resulta muy restrictiva y debido a las interacciones de los alrededores es necesario luego ampliar los limites. Ello permite incorporar otros subsistemas que influencian fuertemente al sistema en estudio. Así por ejemplo supongamos que queremos optimizar la operación de una línea de pintado de partes terminadas de un determinado producto, que se producen en otra línea de producción de la fabrica. En una primera aproximación podríamos tentarnos a estudiar la línea de pintado en forma aislada del resto, sin embargo veremos que el tamaño óptimo de las bachadas de pintado y la secuencia de colores que debemos definir están fuertemente influenciadas por la operación de la línea de producción de partes. En este caso deberemos ampliar los limites de nuestro sistema, a fin de incluir la línea de fabricación de partes. Ello nos permitirá seguramente una mejor optimización de la línea de pintado. Obviamente esto contradice en cierta forma un principio ingenieril de descomposición del problema en subproblemas para su mejor estudio. Sin embargo en este caso dicho principio puede conducir a una simplificación poco realista para abordar la optimización del sistema. El Criterio de Perfomance 2 Una vez definidos los limites del sistema, es necesario establecer un criterio o medida de perfomance que nos permita evaluar cada alternativa posible del sistema, a fin de decidir cual de todas es la mejor. La selección de tal criterio estará regida por el objetivo previsto en nuestro estudio de optimización, que puede ser de tipo económico o técnico. Así por ejemplo, en el diseño de sistemas ingenieriles es muy común que dicho objetivo sea económico, por lo tanto el Criterio de Perfomance será una medida de bondad económica del sistema, como por ejemplo costo total de capital, costo total anual, rentabilidad anual neta, retorno sobre la inversión, relación costo beneficio, valor presente neto, etc. En el caso de objetivos técnicos podemos encontrar criterios del tipo: mínimo tiempo de producción, máxima tasa de producción, mínimo consumo de energía, mínimo peso, máxima resistencia, etc. En este contexto siempre el sistema, operación o diseño optimo es aquel que maximiza o minimiza el criterio de perfomance o función objetivo previamente definido. También es importante aclarar que como ya hemos visto anteriormente el diseño actual en ingeniería requiere por lo general satisfacer mas de un criterio, por lo tanto nuestro problema de optimización se transforma en Multiobjetivo. Si bien actualmente existen algunos avances en optimización multiobjetivo, no es menos cierto que su aplicación esta aún muy lejos de lo deseado. Por ello tales problemas se abordan sobre la base de un solo objetivo, dejando el resto de los objetivos como restricciones o limites deseables en el planteo del problema. Variables Independientes del Sistema El tercer elemento de relevancia en la Formulación del Problema de Optimización es la selección de las variables independientes, o variables que definen y caracterizan el sistema. De manera tal que una vez fijadas las mismas, puedan caracterizar el sistema y su criterio de perfomance, o función objetivo. Es importante poder distinguir entre aquellas variables cuyos valores se puedan cambiar y aquellas variables cuyos valores están fijados por factores externos al sistema. (Por ejemplo: caudal de ingreso a un intercambiador de calor, esta fijado por condiciones externas, no así el numero de tubos o la disposición de los mismos dentro de la carcaza). También es importante diferenciar aquellos valores que se pueden tomar como fijos, de aquellos que están fijados por factores externos. Pero por sobre todo es importante definir las variables que influencian la operación o el diseño del sistema en estudio. Su 3 no-consideración puede conducir a obtener soluciones suboptimas, y muchas veces es necesario ampliar el sistema primario a fin de obtener un optimo global. Finalmente es importante considerar un adecuado nivel de detalle en la descripción del sistema. El mismo no debe ser tal que su tratamiento entorpezca el análisis del sistema, conduciendo a soluciones que no aportan mejoras sustantivas. Por ejemplo en el diseño preliminar de un proceso, los equipos deben ser considerados con un bajo nivel de detalle, y ser caracterizados por pocos parámetros de diseño que los definan, tales como áreas, volúmenes, potencias etc. Una buena regla del arte es seleccionar como variables independientes solo aquellas que tengan un impacto significativo sobre el criterio de perfomance o función objetivo. El Modelo del Sistema Luego de definir los limites del sistema, establecer el criterio de perfomance o Función Objetivo, y determinar cuales son las variables independientes del sistema, la próxima etapa en la formulación del problema es encontrar el modelo que describe el sistema. O sea encontrar la manera en la cual se interrelacionan las variables, y la forma en que ellas influencian la función objetivo (FO de ahora en más). El Modelo es una representación matemática simplificada del sistema, que permite el diseño, análisis y verificación de sistemas reales, sin tener que recurrir a costosas experimentaciones. Ellos permiten estudiar la influencia de cambios en las variables de diseño, y su influencia sobre la FO. Por lo general el modelo esta constituido por: Ecuaciones de Balance de Masa y Energía Relaciones de diseño Ecuaciones de propiedades físicas que describen los fenómenos que ocurren en el sistema Desigualdades que definen rangos de operación permitidos, especifican rangos mínimos y máximos de perfomance, o fijan limites sobre recursos disponibles En resumen, el modelo consiste de todos los elementos que normalmente deben ser considerados para calcular el diseño o predecir el comportamiento de un sistema ingenieril. Por supuesto la generación de un modelo adecuado requiere de un total entendimiento de los fenómenos que ocurren en el sistema, y una gran dosis de experiencia. A modo de corolario diremos que para que sea posible la aplicación de una metodología de optimización es necesario que el problema posea: 4 Un Criterio de Perfomance o Función Objetivo Un conjunto de Variables Independientes Un modelo que interrelacione las variables del sistema Tales requerimientos son comunes a muy diversos sistemas y problemas, y por lo tanto la aplicación de la Optimización posee un rango muy amplio de aplicación que va desde los sistemas sociales, comerciales, militares y organizacionales, hasta los sistemas ingenieriles, que son los que nos interesan. Campos de Aplicación: La aplicación de un estudio de optimización dentro de la empresa moderna puede circunscribirse a diferentes campos, como ser: • La compañía entera • Una planta en su totalidad • Un proceso • Una simple operación unitaria • Una parte de un equipo • Cualquier sistema intermedio Obviamente la conveniencia de su aplicación estará dada por la relación costo – beneficio entre costo del estudio y beneficio esperable. En el caso de la industria de proceso, la optimización se puede aplicar en las siguientes áreas: 1. Administración: • Evaluación de proyectos • Selección de productos • Presupuesto corporativo • Inversión en Ventas vs. I+D • Construcción de nuevas plantas 2. Diseño: • Diseño de equipos y especificaciones • Selección de un proceso • Condición operativa nominal • Configuración / estructura de planta • Tamaño de unidades individuales o sectores • Materiales de construcción 5 3. Operación: • Control operativo • Asignación de materias primas • Consumo de servicios • Embalaje, transporte y distribución 4. Planeamiento de la operación: • Secuenciamiento (scheduling) de procesos • Planificación (planning) de la operación (procesos batch) • Paradas y arranques de equipos Jerarquía de las Áreas de Aplicación: Con relación al impacto probable de un estudio de optimización sobre los costos de la empresa, resulta indicativo la siguiente jerarquía de áreas en la aplicación de estudios de optimización. En términos generales la jerarquía indica nivel de impacto sobre los costos de la empresa, aunque la misma no es taxativa, y depende en gran medida del tipo y tamaño de la empresa en cuestión. Jerarquía: Administración Planeamiento Operación Diseño Equipos Individuales Oportunidades para Aplicar Optimización Del análisis y observación de diferentes datos registrados en distintas áreas de la empresa, es posible detectar oportunidades de optimización. Por ejemplo en: • Ventas limitadas por producción • Ventas limitadas por mercado • Grandes niveles de producción • Alto consumo de materia prima • Calidad del producto que excede especificaciones • Perdida de compuestos valiosos con los desechos 6 • Alto costo de la Mano de Obra • Etc. Normalmente dichas oportunidades de realizar estudios de optimización pueden detectarse mediante diversas evaluaciones como: • Evaluar registros de Beneficios y Perdidas • Evaluar registros de operaciones en forma periódica • Etc. XII.3 APLICACIONES DE OPTIMIZACION EN INGENIERIA Los métodos de optimización encuentran aplicación en todas las ramas de la ingeniería, fundamentalmente en las cuatro áreas siguientes: 1. Diseño de componentes o sistemas totales 2. Planificación y análisis de operaciones existentes 3. Análisis ingenieril y reducción de datos 4. Control de sistemas dinámicos Es muy importante remarcar que la aplicación de los métodos de optimización en diseño y operación, es una herramienta de significativa importancia, pero constituye una etapa mas en el proceso global de lograr un diseño optimo o una operación eficiente. Por lo general el proceso global es un ciclo iterativo que incluye: 1. Síntesis o definición de la estructura de los sistemas 2. Formulación de los modelos 3. Optimización de los parámetros del modelo 4. Análisis de la solución obtenida Por lo tanto, y sin desconocer el rol predominante que desempeña la optimización en el diseño de procesos, es necesario remarcar que la misma debe usarse en forma inteligente y exhaustiva por un ingeniero que posee un total entendimiento de los fenómenos que ocurren el sistema bajo estudio. Sin el juicio del Ingeniero, de nada sirve el formalismo matemático y es muy difícil sacar rédito de los resultados obtenidos. Veamos a continuación ejemplos clásicos de aplicación en el campo de la ingeniería. Desarrollamos uno de ellos, y el otro será referenciado para consulta del lector. 1. Diseño de un Sistema de Suministro de Oxigeno 2. Análisis y Reducción de Datos Ejemplos de Aplicación 7 1. Diseño de un Sistema de Suministro de Oxigeno: Venteo Compresor Planta de Oxigeno Horno de Reducción Tanque Se desea diseñar un sistema optimo de suministro de oxigeno, desde una planta productora de oxigeno a un Horno de Reducción. A fin de compatibilizar la planta de oxigeno con el horno, se utiliza un Compresor y un tanque de almacenamiento que actúa como pulmón del sistema. Se conoce que el horno trabaja en forma cíclica Las demanda de oxigeno es cíclica La planta de oxigeno entrega el gas a un caudal fijo Se dispone de compresor, tanque pulmón y sistema de venteo de oxigeno La demanda de oxigeno es la siguiente: D = D0 para 0 ≤ t ≤ t1 D = D1 para t1 ≤ t ≤ t2 Gráficamente: Demanda de O2 (lb/hr D1 F D0 0 t1 t2 Tiempo A partir de las condiciones del problema vemos que tenemos las siguientes posibilidades de Diseño: 1. Capacidad de almacenaje máximo = D1. Durante la baja demanda se ventea el oxigeno 2. Diseñar la planta para almacenar la cantidad demandada durante el ciclo. Durante la baja demanda almacenar, para usar durante la alta demanda 8 3. Se pueden usar diseños intermedios Veamos ahora la Formulación del Problema a fin de encontrar el Diseño Optimo Formulación: Perfomance: para caracterizar el diseño se considera en la función objetivo o Costo de producción de oxigeno (fijo y variable) o Costo del compresor (fijo y variable) o Costo fijo del tanque de almacenamiento Variables Independientes claves que definen el diseño: o Producción de la planta de Oxigeno. F(lb O2/hr) o Capacidad del compresor y tanque de almacenamiento: H (hp), V (ft3) o Máxima presión del tanque P (psía) Modelo: consiste del conjunto de relaciones que vinculan las variables independientes claves de diseño Definimos: Imax = Cantidad máxima de Oxigeno que debe ser almacenada. Por la Ley de los Gases: V= Im ax RT ⋅ ⋅z M P De la figura de demanda, la máxima cantidad de oxigeno que debe almacenarse es el área bajo la curva: Imax = (D1-F). (t2 – t1) Sustituyendo: V= (D1 - F). (t 2 - t 1 ) RT . .z M P El compresor se debe diseñar para manejar un caudal de [(D1-F). (t2 – t1)]/t1 y comprimir el gas a la máxima presión P. Suponiendo compresión del gas ideal isotérmico. La capacidad del compresor será H, y esta dada por: H= (D1 − F)(t 2 − t 1 ) RT P . . ln t1 k1k 2 P0 k1 = Factor de conversión de unidades k2 = Eficiencia del compresor P0 = Presión a la cual se entrega el oxigeno al compresor Además el caudal de oxigeno de la planta (F) debe ser suficiente para satisfacer la demanda total de oxigeno. Luego: 9 F D0 t 1 + D1.(t 2 − t 1 ) t1 ≥ También la máxima presión del tanque (P) debe ser mayor que la presión del oxigeno entregado por la planta (P0) P ≥ P0 Para obtener el criterio de perfomance, se deben considerar los siguientes costos: - Costo Anual de la Planta de Oxigeno: C1 ($/año) = a1 + a2 . F a1 y a2: constantes (combustible, labor, agua, etc.) - Costo de Capital del tanque de Almacenamiento: C2 ($) = b1 Vb2 - Costo de Capital del Compresor: C3 ($) = b3 Vb4 El costo del compresor será: (b5. t1 H) El Costo Anual Total será: CAT = a1 + a2 .F + d [b1 Vb2 + b3 Vb4 ] + N. b5. t1 H Donde: N = Numero de ciclos por año d = Factor de Costo Luego el Problema completo de Optimización es el siguiente: Min. CAT (F,V,H, P) (1) Sujeto a: V= (D1 - F). (t 2 - t 1 ) RT .z . P M (2) H= (D1 − F)(t 2 − t 1 ) RT P . . ln t1 k1k 2 P0 (3) F ≥ D0 t 1 + D1.(t 2 − t 1 ) t1 P ≥ P0 (4) (5) La solución estará influenciada también por parámetros de ciclos como: N, D0, D1, t1, t2 ; parámetros de costo como: a1, a2, b1, -b5, d; y parámetros físicos como T, P0, k2, z, M. Alternativamente, se puede resolver eliminando V y H de (2) y (3) en (1), reduciendo el problema a dos variables. 10 Luego graficamos el contorno de (1) en el plano de F vs. P. Imponemos las desigualdades (restricciones) (4) y (5), y determinamos del grafico el mínimo punto. Dicha solución es por demás laboriosa, pero lograble. 2. Análisis y Reducción de Datos Supongamos que una determinada variable (y) es dependiente de otra variable (x), y ambas están relacionadas entre sí por la siguiente función: y = f(x, θ1, θ2) que depende de los dos parámetros θ1 y θ2. A fin de determinar los valores correctos de θ1 y θ2 , corremos una serie de experimentos, mediante los cuales ajustamos la variable independiente (x), y medimos la variable (y) resultante. Como resultado de una serie N de experimentos, resultará parar el rango de interés de x, un conjunto de pares (y, x), cuyos valores serán (yi, xi) con i = 1,.., N. A partir de estos datos podemos intentar aproximar nuestra función que mejor ajuste los mismos, mediante la manipulación de θ1 y θ2 hasta lograr un “buen ajuste”. La medida más común de buen ajuste es el Criterio de Mínimos Cuadrados, que para este caso lo podemos expresar como: N L(θ1 , θ 2 ) = ∑ [y i − f (x i , θ1 , θ 2 )]2 i =1 La diferencia yi - f(xi, θ1, θ2) entre los valores experimentales yi y los predichos f(xi, θ1, θ2) mide la aproximación del modelo a los datos experimentales, y se denomina residuo. La suma de los cuadrados de los residuos para todos los valores experimentales indica la bondad del ajuste. Obviamente si L(θ1, θ2) es igual a cero, el ajuste será perfecto. De esta forma el problema de aproximación puede ser planteado como una optimización en la cual L(θ1, θ2) es minimizada mediante una elección adecuada de θ1, y θ2. 11 XII.4 ESTRUCTURA DE LOS PROBLEMAS DE OPTIMIZACION Los ejemplos de aplicación vistos anteriormente poseen un elemento en común, y es el hecho que los mismos se pueden expresar como la minimización de una Función de Valor Real f(x) donde x es un vector de parámetros de n componentes: x = (x1, x2,.....xN), cuyos valores están restringidos a satisfacer un numero de ecuaciones de valor real hk(x) = 0, un conjunto de desigualdades gi(x) ≥ 0, y los limites de las variables xiU ≥ xi ≥ xiL. Luego de aquí en adelante denominaremos a cada termino del problema de optimización como: • La función f(x) es la Función Objetivo • Las ecuaciones hk(x) son las Restricciones de Igualdad • Las ecuaciones gi(x) son las Restricciones de Desigualdad Luego el Problema General de Optimización posee la siguiente estructura: Minimice f(x) Sujeto a: hk(x) = 0 k = 1,...., K gi(x) ≥ 0 j = 1,....., J xiU ≥ xi ≥ xiL i = 1,....., N y se denomina Problema de Optimización Restringido Cuando el problema no es restringido: J=K=0 xiU = - xiL = Infinito, para i = 1,....., N y se denomina Problema de Optimización No Restringido. Además los problemas de optimización pueden ser clasificados de acuerdo a la estructura de las funciones: f, hk, gi, y sobre la dimensionalidad de x. Así, si x es un vector de un componente y no existen restricciones, el problema se llama “No Restringido en una Variable”, que es el más simple de los problemas y tal vez uno de los más importantes por la frecuencia con que se presenta. En problemas restringidos, cuando hk y gi son todas lineales, se llama “Problema Linealmente Restringido”. Además dentro de esta clase de problemas encontramos los que tienen f lineal y f no lineal. 12 Los problemas donde todas las funciones son lineales y con variables continuas, se llaman “Programación Lineal”, y cuando las variables son enteras, “Programación Entera”. Cuando la Función Objetivo es no lineal y las restricciones lineales, se llaman “Programas No Lineales Linealmente Restringidos. Además si la F.O. no lineal es cuadrática, se llama “Programa Cuadrático”. Existen además otras clasificaciones de acuerdo a la forma y estructura de las funciones objetivo y de las restricciones. Por lo general los problemas de procesos son del tipo “Continuos No Lineales” y los más complejos del tipo “Mixto Enteros No Lineales”. No obstante, muchos de los problemas cotidianos de optimización en procesos pueden abordarse o adecuarse a Programas Lineales. XII.5 PROCEDIMIENTO PARA RESOLVER PROBLEMAS DE OPTIMIZACION Una vez formulado el problema de optimización, se debe proceder a la selección del método más adecuado para resolverlo. Para ello se deben tener en cuenta diversos factores que, según sus características nos definirán en cierta forma cual es el método o algoritmo más adecuado para su resolución. Dichos factores son los siguientes: • Características de la Función Objetivo: • • Explicita No explicita • • Lineal No Lineal • • • Smooth No smooth Naturaleza de las Restricciones: • • Restricciones de Igualdad • • Lineal Nolineal • • Lineal Nolineal Restricciones de Desigualdad 13 • Numero de Variables Independientes: • • Una Variable Múltiples Variables A modo de Resumen podemos sintetizar la Etapas en la Resolución de un Problema de Optimización como: 1. Analizar el proceso o sistema en sí mismo, de manera tal que las variables, limites y características de interés sean definidas. Hacer una lista de todas las variables de interés. 2. Determinar el criterio de optimización y especificar la función objetivo en termino de variables y coeficientes. Quedara así un modelo de Perfomance del sistema o proceso. 3. Desarrollar mediante expresiones matemáticas un Modelo Valido que relacione variables de entrada – salida del proceso y coeficientes o datos del proceso. Incluir igualdades y desigualdades. Usar principios físicos bien conocidos (Balances de Masa y Energía, Relaciones Empíricas o Fenomenológicas, Leyes Generales, etc.). Identificar las Variables Independientes y Grados de Libertad. 4. Si el problema es demasiado grande: • Particionarlo en partes más manejables, o • Simplificar Función Objetivo y Restricciones 5. Aplicar una técnica de Optimización adecuada al modelo 6. Análisis de Sensibilidad de la Solución ante perturbaciones 14 Bibliografía: • REKLAITIS, G. V.; RAVINDRAN, A. RAGSDELL, K. M., "Enginnering Optimization. Methods and Applications", John Wiley & Sons. 1983. • EDGAR & HINMENBLAU, "Optimization of Chemical Process", Mc Graw Hill, 1988 • BIEGLER, L. T.; GROSSMANN, I. E. WESTWRBERG, A.W., "Systematic Methods of Chemical Process Design", Prentice Hall International Series in Industrial and Systems Engineering. 1997. 15