Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
Cap. I - Pág. 1 Modelado, Simulación y Optimización de Procesos Químicos Autor: Nicolás J. Scenna y col. ISBN: 950-42-0022-2 - ©1999 CAPÍTULO I INTRODUCCI ÓN A LOS MÉTODOS INFORM ÁTICOS APLICADOS AL MODELADO EN INGENIER ÍA Por Nicolás José Scenna I.1 INTRODUCCI ÓN Es sabido que el procedimiento metodológico fundamental para resolver un problema en ingeniería consiste en representarlo de una manera adecuada, de tal forma de lograr una sustitución del sistema real (equipo, proceso, etc.) por uno más adecuado para el tratamiento formal. Por lo general, las herramientas lógico- matemáticas nos brindan un marco útil para representar mediante un sistema de símbolos y reglas, el comportamiento de los sistemas reales. Bajo el método científico, por ejemplo, se consolidan leyes y teorías en diversas ramas del conocimiento, las cuales son expresables por medio de sistemas de ecuaciones diferenciales. En otras palabras, se logra construir un nuevo sistema, del cual conocemos sus reglas de juego y símbolos, como un resultado de un proceso de abstracción de la realidad. Obviamente, dado la infinita complejidad de los fenómenos fisicoquímicos, estas construcciones abstractas, conocidas genéricamente como modelos, son sólo meras aproximaciones de la realidad. En efecto, no es otra cosa lo que se realiza cuando en física utilizamos ecuaciones para describir el movimiento de una partícula, o resolvemos los balances correspondientes aplicando las leyes de conservación de la materia, energía o cantidad de movimiento; o bien cuando nos enfrentamos al diseño de un equipo según los procedimientos que conocemos a partir del campo de las operaciones unitarias. De aquí se desprende que si bien el sistema real a estudiar es único, puede existir un número muy grande de modelos asociados al mismo. En efecto, para obtener un modelo que pueda resolverse (es decir que sea útil), resulta necesario adoptar un conjunto de hipótesis. Por ejemplo, si consideramos la fricción, si es importante o no contemplar el intercambio de energía por radiación, si existen y se consideran los efectos electromagnéticos, etc. Las necesidades de exactitud que el problema a resolver nos impone, determinan el conjunto de hipótesis a utilizar. Por ejemplo, el error de una milésima de grado en el cálculo de un ángulo puede no tener implicancias en el punto de impacto de un proyectil que recorre una distancia pequeña, pero no puede afirmarse lo mismo para una trayectoria intergaláctica. En Cap. I - Pág. 2 Modelado, Simulación y Optimización de Procesos Químicos Autor: Nicolás J. Scenna y col. ISBN: 950-42-0022-2 - ©1999 síntesis, dado el sistema real y los objetivos tecnológicos perseguidos, existirá un conjunto de hipótesis adecuadas que determinarán las características del modelo, o sistema de ecuaciones a resolver. Lo expresado recientemente implica una relación entre modelo (conjunto de hipótesis asumidas) y objetivos del ingeniero. Resulta evidente que no todo sistema de ecuaciones puede resolverse fácilmente, al menos desde el punto de vista analítico. Esto impuso a lo largo de la historia limitaciones importantes al tipo de modelos que podían resolverse, o de otra forma, la necesidad de recurrir a hipótesis inadecuadas o restrictivas (super- simplificaciones) para al menos poder tratar el problema. Es por ello también que en los orígenes de las ciencias tecnológicas los modelos podían ser considerados en gran medida como empíricos, esto es, con parámetros incorporados que surgían de experiencias, y no a partir de los primeros principios o leyes fundamentales. No debe extrañar que aún hoy, pese a todos nuestros avances, exista la necesidad de utilizar permanentemente parámetros en nuestros modelos, que no son otra cosa que la medida de nuestra ignorancia, y por lo tanto, implican la necesidad de reemplazar las leyes básicas por aproximaciones causales obtenidas de datos experimentales. Este es el caso por ejemplo de la estimación de las propiedades de equilibrio de mezclas de comportamiento altamente no ideal. A medida que evolucionaron las diversas ramas de las matemáticas y con el advenimiento de la ciencia de la computación, poderosa herramienta complementaria al análisis numérico y simbólico, se abrieron caminos revolucionarios. Contar con herramientas más potentes para resolver sistemas de ecuaciones, o lo que es lo mismo, relativizar la necesidad de adoptar hipótesis inadecuadas al plantear modelos para resolver problemas complejos, resultó un gran paso adelante. Más aún, la velocidad de cálculo provocó que la dimensión abordable se incrementara rápidamente. En efecto, si bien el grado de complejidad conceptual para resolver la inversa de una matriz de dimensión tres es equivalente al de una de cinco mil, resulta obvio que la complejidad operativa o fáctica no resulta comparable. La computación ha barrido literalmente con dicha limitación, haciendo ahora tratables problemas cuya dimensión es tal, que décadas atrás ni siquiera era pensable plantearlos. Dentro de este contexto, el propósito de los siguientes capítulos es mostrar cómo implementar modelos para resolver problemas comunes en el campo de la ingeniería química, cómo resolverlos desde el punto de vista computacional, y otro punto importante, qué tipos de problemas (modelos) surgen al cubrir distintos aspectos de la ingeniería. En este punto resulta necesario comentar que los problemas de diseño, optimización, simulación dinámica o estacionaria, supervisión o diagnosis de fallas en tiempo real, etc., tienen cada uno particularidades específicas, lo cual a su vez implica la conveniencia de utilizar modelos apropiados para cada caso. En este capítulo se tratará de mostrar someramente las diferencias y características conceptuales de diversos tipos de modelos, surgiendo los mismos a partir de la naturaleza específica de los problemas a resolver. En efecto, por ejemplo Cap. I - Pág. 3 Modelado, Simulación y Optimización de Procesos Químicos Autor: Nicolás J. Scenna y col. ISBN: 950-42-0022-2 - ©1999 no resulta equivalente analizar el funcionamiento de una planta química dada (conocemos su estructura) que diseñar el proceso contando sólo con los datos de las materias primas disponibles y los productos deseados. Al igual que en arquitectura, cuando nos enfrentamos al diseño de una estructura para un fin determinado, existirán por lo general, como se verá en el Capítulo II, un número muy grande de alternativas para analizar. Por lo tanto, aquí el modelo deberá contener variables estructurales, además de las habituales. Ello implica un problema difícilmente traducible a ecuaciones matemáticas. En función de nuestro estado de conocimiento actual, el diseño de un proceso sigue siendo más un arte que ciencia, o lo que es equivalente, depende en una gran parte del juicio creativo del diseñador, además de la aplicación de reglas formales del análisis lógico-matemático. Por lo tanto, deberá encapsularse dicho conocimiento en el pretendido modelo. A continuación se brindará un breve análisis de la evolución histórica del área, a los efectos de situar al alumno desde esa perspectiva. I.2 EVOLUCIÓN HISTÓRICA La ciencia nos provee indicios acerca de la existencia, hace más de doce millones de años, de un cuadrumano, ancestro, según teorías arqueológicas, del actual mono chimpancé y del hombre. Más aún, en la cadena evolutiva, el actual homo sapiens-sapiens se supone aparece hace solo ciento cincuenta (evidencia arqueológica) o doscientos mil años (evidencia genética); comenzando hace aproximadamente cinco mil años a dominar los metales, para llegar hace solo dos décadas a masificar el uso de la computadora, en plena era espacial. Por otra parte, la incorporación de la informática al acervo cultural del hombre nos indica una evolución similar. En efecto, desde el habla (no hay acuerdo acerca de cuándo aparece, ya que algunas teorías nos indican que nuestros ancestros hablaban con el objeto de comunicarse hace ya más de un millón de años), la escritura sistematizada y mecanizada-imprenta- recién se instaló entre nosotros hace aproximadamente cinco siglos; y por último, la computadora, hace apenas medio siglo, siendo masificada (PC’s) hace solo dos décadas. Esto indica obviamente, una gran aceleración del tiempo histórico. Ante estos acontecimientos, la pregunta que surge naturalmente es ¿hacia dónde vamos?. Sin embargo, no es el objetivo del presente libro responder esta inquietud. Aquí nuestra inquietud es más limitada. Debemos reflexionar acerca del futuro inmediato de las ciencias de la ingeniería y el perfil de la informática dentro de este contexto. Es evidente que la aceleración de las olas de innovaciones o ciclos de descubrimientos y aplicaciones tecnológicas implica un disparo tanto a nivel de cada rama de la ciencia como en el conjunto de actividades socio-económicas, haciendo difícil digerir los nuevos conocimientos y las formas de organización social que éstos involucran. Se vislumbra, a partir de la historia de las ciencias, la filosofía de las ciencias Cap. I - Pág. 4 Modelado, Simulación y Optimización de Procesos Químicos Autor: Nicolás J. Scenna y col. ISBN: 950-42-0022-2 - ©1999 Fase de nacimiento o de incubación Fase explosiva o exponencial Fase de maduración Tiempo Figura I.1: Curva sigmoidea que representa el proceso de maduración de una tecnología. y la teoría de sistemas, que todo proceso de aprendizaje, o de generación de tecnologías por más variado que sea (incorporación de nuevas palabras al vocabulario de un niño, el descubrimiento de los elementos químicos que conforman la tabla periódica, la eficiencia de las máquinas térmicas, la eficiencia en el rendimiento de las lamparitas, etc.), se desarrolla lentamente al principio, para dispararse en un momento dado, y luego, nuevamente, aminorar la evolución en el tiempo, tendiendo lentamente a un valor asintótico (límite de eficiencia). Esta curva es la llamada curva de aprendizaje, logística o sigmoidea (ver Figura (I.1)). Del análisis comparativo de las mismas pueden obtenerse parámetros estimativos de la evolución de las tecnologías, tendencias de las olas de innovaciones básicas y de las aplicaciones tecnológicas, etc. Dentro de este contexto, se estima para el futuro, en base a los datos históricos, una aceleración del ciclo de innovaciones y la frecuencia de los procesos de descubrimientos innovativos y sus aplicaciones tecnológicas. Mucho se ha recorrido ya desde la aparición de la primera computadora digital (ENIAC). Desde la máquina de Pascal o el ábaco, la regla de cálculo o cualquiera de los instrumentos auxiliares utilizados para resolver los complejos problemas que se presentan en ingeniería, el hombre se ha caracterizado por ganar eficiencia en forma constante. Como vimos, la curva sigmoidea (Figura (I.1)) representa sorprendentemente los tramos característicos de evolución de numerosas aplicaciones tecnológicas provenientes de disciplinas diversas tales como biología, medicina, alimentación, ingeniería aeroespacial, informática, etc. Lo particularmente Cap. I - Pág. 5 Modelado, Simulación y Optimización de Procesos Químicos Autor: Nicolás J. Scenna y col. ISBN: 950-42-0022-2 - ©1999 destacable es que en el campo de la informática como herramienta para resolver problemas de ingeniería, recién estamos entrando en la fase que puede llamarse de crecimiento exponencial. Esto significa que si bien lo recorrido desde la ENIAC hasta aquí parece asombroso, existe una gran probabilidad que lo que nos depara el futuro cercano lo sea aún más. Varias consecuencias resultan evidentes. La más importante, desde el punto de vista didáctico, es la necesidad de formarnos con una gran capacidad de adaptabilidad, flexibilidad y vocación por el cambio permanente, el razonamiento profundo y la digestión de los fundamentos y conceptos transcendentes frente al aluvión de información que nos bombardea. Este libro es un intento en esa dirección. Se trata de introducir al lector a los conceptos y estrategias más relevantes del modelado de procesos utilizando métodos informáticos. También se pretende someramente introducir temáticas con cierta probabilidad de desarrollo inminente en un futuro cercano. Por otra parte, se intenta presentar una visión integral del problema de modelado de procesos, aunque se enfatiza con cierto grado de detalle el aspecto de simulación estacionaria y dinámica, frente al campo del diseño y optimización. Esto es así debido a que las herramientas necesarias para estas últimas áreas resultan más complejas, en general propias de cursos de especialización y posgrado. En síntesis, al tratar el problema del modelado desde un punto de vista integral, debemos discutir conceptualmente los diversos enfoques que se utilizan así como las herramientas matemáticas necesarias para su tratamiento. I.3. MÉTODOS NUMÉRICOS COMO HE RRAMIENTA PARA EL MODELADO DE PROCESOS EN INGENIERÍA QUÍMICA Como veremos en los capítulos siguientes, la simulación digital constituye una poderosa herramienta para la resolución de las ecuaciones que describen a los sistemas en ingeniería química. Las principales dificultades que se plantean son principalmente: a) Encontrar la solución de un sistema de ecuaciones algebraicas no lineales (que usualmente se efectúa mediante un método iterativo, según veremos en los Capítulos III y IV). b) Efectuar la integración numérica de ecuaciones diferenciales ordinarias y en derivadas parciales mediante ecuaciones discretizadas en diferencias finitas que aproximan a las soluciones de las ecuaciones diferenciales continuas, según se analizará en el Capítulo XIII. Los métodos numéricos son una clase de algoritmos para resolver una amplia variedad de problemas matemáticos. Únicamente se emplean operaciones lógicas y aritméticas; por consiguiente, pueden implementarse fácilmente sobre computadoras digitales. Cap. I - Pág. 6 Modelado, Simulación y Optimización de Procesos Químicos Autor: Nicolás J. Scenna y col. ISBN: 950-42-0022-2 - ©1999 En realidad, los métodos numéricos fueron desarrollados muchos años antes que surgieran las computadoras electrónicas digitales. En efecto, un gran número de los métodos numéricos usualmente utilizados datan de los comienzos de las matemáticas modernas. Sin embargo, el empleo de tales métodos estuvo restringido hasta el advenimiento de las computadoras, incrementándose dramáticamente al llegar a la mayoría de edad con la introducción de las computadoras electrónicas digitales. La combinación de métodos numéricos y computadoras digitales constituye una poderosa herramienta para el análisis matemático. Por ejemplo, los métodos numéricos son capaces de manejar no linealidades, modelos asociados a geometrías complejas y sistemas de ecuaciones acopladas que son necesarios para el modelado eficiente de muchos sistemas fisicoquímicos que se presentan en ingeniería. En la práctica, rara vez se consideran enfoques analíticos a los problemas de ingeniería en razón de la complejidad de los sistemas a resolver. Aún en problemas para los que podrían obtenerse con cierto esfuerzo soluciones analíticas, los métodos numéricos son poco costosos, fáciles de emplear y con frecuencia se dispone de ellos en programas comerciales. La primera pregunta que uno se formula es si existe algún límite a la capacidad de cálculo de los métodos numéricos. La respuesta es afirmativa. Es sabido que si un problema no puede resolverse analíticamente, lo mejor es programarlo en una computadora (mediante un algoritmo adecuado). Este punto de vista se debe, sin lugar a dudas, al enorme poder de cálculo de los métodos numéricos. Sin embargo, también es cierto que existen muchos problemas que son imposibles de resolver utilizando métodos numéricos. Para diversos problemas no se ha encontrado todavía un modelo matemático completo y seguro, de manera que resulta obvio que es imposible encontrarles una solución numérica. La dimensión de otros problemas es tan grande que su solución está más allá de los límites prácticos en términos de la tecnología computacionaldisponible. Por ejemplo, en problemas fluido-dinámicos que involucran flujos turbulentos, en estimaciones meteorológicas o climáticas (campos de vientos, presiones, temperaturas, etc.), y como veremos más adelante, en diversos problemas que se plantean en el área de la ingeniería química, existen serias limitaciones en el área de diseño y de optimización en tiempo real, etc. En los últimos años se han desarrollado grandes programas computacionales comerciales para simular el comportamiento de sistemas de ingeniería de todo tipo. Usualmente, estos programas se diseñan para que sean utilizados por aquellos profesionales de la ingeniería sin un conocimiento intensivo de su funcionamiento interno. Por otra parte, existen bibliotecas (en continua expansión) de subrutinas de cálculo que utilizan sofisticados métodos numéricos para realizar una amplia variedad de tareas matemáticas, cubriendo virtualmente todos los campos del análisis numérico, aplicaciones estadísticas, etc. De cara a estos hechos uno podría Cap. I - Pág. 7 Modelado, Simulación y Optimización de Procesos Químicos Autor: Nicolás J. Scenna y col. ISBN: 950-42-0022-2 - ©1999 verdaderamente sorprenderse si existiese por parte de los profesionales de la ingeniería la necesidad de adquirir un conocimiento funcional de los métodos numéricos y de programación. Resulta obvio que cuando se disponga de programas enlatados o subprogramas que han sido probados y demostrado su buen funcionamiento, lo más razonable es utilizarlos. No obstante, es altamente valorable el conocimiento del funcionamiento de tales herramientas, dado que por lo general el usuario de tales programas o subrutinas encontrará dificultades en su utilización. Estas dificultades pueden provenir de múltiples causas. Por ejemplo, es necesario remarcar que los métodos numéricos no están completamente libres de dificultades en todas las situaciones en las que se los utilice. Por otra parte, aún en el caso que no presenten dificultades de cálculo, podrían no funcionar de manera óptima en todas las situaciones que se planteen. Siempre debe tenerse presente que la exactitud y la estabilidad numérica afectan a la ecuación discretizada utilizada (algoritmo de integración). En la literatura respectiva se han propuesto muchos algoritmos. Varios de ellos, los más comúnmente utilizados, serán analizados en los Capítulos III, IV y XIII. Algunos de ellos trabajan mejor que otros sobre determinados problemas (por ejemplo más rápido y por consiguiente son menos costosos para un grado especificado de exactitud). Desafortunadamente no existe un algoritmo que funcione en forma óptima para todos los problemas que se plantean. Por otra parte, el usuario en búsqueda de una subrutina de cálculo para realizar una determinada tarea, puede encontrar una agobiante variedad de subprogramas que pueden ser aplicables, pero el material descriptivo rara vez dará una indicación sobre la eficiencia de la subrutina para resolver un problema específico. Esto sucede además, en la mayoría de los productos comerciales más elaborados, por ejemplo, para el modelado en ingeniería. Dentro de este contexto, es muy probable que el ingeniero que espera utilizar un programa enlatado o una subrutina de una biblioteca para resolver un problema matemático determinado enfrente dificultades inesperadas, a menos que tenga una preparación adecuada. En efecto, la selección y aplicación de un método numérico en una situación específica, por lo general resulta más una actividad propia de un arte que de una ciencia. Por último, nunca resulta trivial la interpretación de los resultados obtenidos. Por consiguiente, el usuario que no tenga la habilidad ni el conocimiento para seleccionar y utilizar un método numérico para aplicar a un problema específico y efectuar la programación del método, encontrará una severa restricción en el rango de problemas que puede manejar. En general deberá buscar a alguien con la información necesaria, si es que existe ese alguien a quien consultar. Más aún, en esta situación resultará poco probable que el usuario pueda formular las preguntas correctas y el consultor suministrar las respuestas adecuadas, dado que el nivel de conocimientos de ambos resultaría muy diferente, dificultando la comunicación entre Cap. I - Pág. 8 Modelado, Simulación y Optimización de Procesos Químicos Autor: Nicolás J. Scenna y col. ISBN: 950-42-0022-2 - ©1999 ambos. En síntesis, en los últimos tiempos se ha desarrollado una gran variedad de paquetes informáticos para resolver numéricamente sistemas de ecuaciones que se plantean en problemas de modelado en ingeniería. En teoría, estos paquetes relevan al ingeniero de adquirir conocimientos acerca de los métodos de integración numérica. Supervisan automáticamente los errores y la estabilidad del método ajustando el paso o intervalo de integración para satisfacer un criterio de exactitud. En la práctica, es sabido que estos lenguajes no resuelven todos los problemas. En su puja por generalizar, usualmente se vuelven ineficientes en muchas aplicaciones específicas, por ejemplo, desde el punto de vista del tiempo computacional. En estos casos resulta más conveniente desarrollar un programa ad-hoc escrito, por ejemplo, en lenguaje FORTRAN, BASIC o PASCAL. Con respecto a los productos informáticos que utilizan para el modelado un lenguaje de alto nivel, debe remarcarse que el tiempo de formulación y de resolución del modelo se reduce, en especial para aquellos ingenieros que no dominan métodos de programación y utilizan a la computadora ocasionalmente; aunque se espera que en el futuro cercano, casi todos los estudiantes avanzados y graduados en ingeniería obtendrán un manejo adecuado de lenguajes de programación. Cualquiera sea la situación, es evidente que la utilización de un paquete integrado que facilite escribir un modelo para simulación y permita directamente la resolución numérica requiere el aprendizaje de un nuevo lenguaje y de un nuevo utilitario. En el caso que se conozca algún lenguaje de programación, dado que las técnicas numéricas programadas de manera sencilla funcionan bien, deberá compararse el esfuerzo que implica desarrollar un programa específico para el problema que se desea resolver, con el uso de programas enlatados. En efecto, la experiencia demuestra que es más conveniente el desarrollo propio, ya que no sólo es computacionalmente más eficiente, sino que además garantiza al estudiante o ingeniero el conocimiento de cómo funciona el programa (por ejemplo, un simulador para un equipo dado) y cuáles son las hipótesis realizadas y las técnicas utilizadas. Esta metodología permite la supervisión del programa y su modificación, para manejar de manera más fácil y eficiente nuevas situaciones que se planteen. Una solución intermedia es programar el modelo particular (sistema específico de ecuaciones a resolver), utilizando para el cálculo alguno de los métodos enlatados disponibles para tal fin, aprovechando la disponibilidad de los numerosos paquetes numéricos de resolución, tanto de sistemas de ecuaciones algebraicas como de ecuaciones diferenciales, ordinarias o a derivadas parciales. En muchos lugares (universidades, institutos de investigación, etc.) y en el mercado, se dispone de bibliotecas de subrutinas de cálculo como las IMSL, IBM, Numerical Recipes, entre otras. En general, para cada rama, tanto de las matemáticas, de la estadística y/o de las aplicaciones de ingeniería, se han presentado en el mercado un gran número Cap. I - Pág. 9 Modelado, Simulación y Optimización de Procesos Químicos Autor: Nicolás J. Scenna y col. ISBN: 950-42-0022-2 - ©1999 de aplicaciones para resolver muchos problemas de modelado de procesos, tales como diseño, simulación, síntesis, optimización, etc. Además, desde el punto de vista del alcance, los hay diseñados para un uso general así como para uno específico (por ejemplo, hornos, procesos petroquímicos, procesos que manipulan sólidos, sistemas con electrolitos, reactores biológicos, síntesis de moléculas,etc.). No es el objetivo del presente libro efectuar un análisis detallado del software disponible comercialmente ni de las aplicaciones específicas desarrolladas, ni realizar una descripción exhaustiva de todos los paquetes informáticos existentes, dado que el mercado actual es muy dinámico. Sí resulta importante que el lector adquiera habilidad para comprender claramente el alcance general de los instrumentos computacionales disponibles, las tendencias, la necesidad de disponer de capacidad para generar sus propias herramientas para modelar problemas específicos o para adquirir o utilizar nuevos productos. En definitiva, existe una acuciante necesidad para que el ingeniero adquiera un profundo conocimiento acerca del funcionamiento de los métodos numéricos y las aplicaciones informáticas, a partir de lo cual, como usuario de computación, podrá seleccionar, modificar, adaptar o programar un método adecuado para cualquier tarea especifica que emprenda; ayudarse en la selección y uso de programas enlatados y en subrutinas de bibliotecas y facilitar su comunicación con especialistas en una forma inteligente y eficiente, toda vez que se requiera efectuar una consulta. I.4 MODELOS NO CONVENCIONALES Los sistemas a resolver durante la tarea de modelado son muy diversos. Por ejemplo, todo problema de diseño se caracteriza, entre muchos aspectos, por la necesidad de seleccionar una opción óptima (estructura a diseñar, por ejemplo, un edificio, un proceso, un circuito electrónico, etc.) de entre el número (generalmente enorme en problemas reales) de alternativas posibles. Esto implica, por un lado, la necesidad de dominar métodos matemáticos para optimizar una función objetivo, por lo general fuertemente no lineal, con restricciones de todo tipo (desigualdades e igualdades, generalmente no lineales), con variables continuas (reales) o discontinuas (enteras), y por supuesto de muy elevada dimensión. Por otra parte, será necesario comprender conceptualmente algunos de los métodos formales, para generar las alternativas estructurales posibles para un diseño dado y seleccionar una de acuerdo con ciertos criterios de óptimo impuestos por el diseñador. Esta problemática es conocida como síntesis de procesos dentro del ciclo de la actividad de diseño. A poco de meditar sobre estas cuestiones, resulta evidente la naturaleza distintiva de este enfoque. En particular, el manejo de estructuras como una variable a tener en cuenta, implica un grado de complejidad adicional. En efecto, los métodos matemáticos más comunes con los cuales nos formamos en el ciclo básico de la carrera no son necesariamente los más útiles o naturales para encarar la solución de este tipo de problemas. En este primer capítulo introductorio, se tratará Cap. I - Pág. 10 Modelado, Simulación y Optimización de Procesos Químicos Autor: Nicolás J. Scenna y col. ISBN: 950-42-0022-2 - ©1999 de analizar someramente diversos ejemplos de modelos no convencionales y las herramientas o métodos propios o más naturales para encarar su solución; y por último, la relación entre las citadas estrategias y los lenguajes usuales más comunes para implementar los correspondientes algoritmos computacionales. En el próximo capítulo se discutirán algunos conceptos acerca del problema de síntesis de procesos y su relación con los temas aquí tratados. Es conocido que el tipo de conocimiento o procedimientos a utilizar para resolver una ecuación algebraica, o bien una integral, por métodos numéricos (Regla de integración de Simpson, por ejemplo), no son similares a la estrategia algorítmica para resolver analíticamente (cálculo simbólico) ya sea la integral como la ecuación algebraica mencionada. El mismo problema se nos presenta si pretendemos elaborar un algoritmo que sea capaz de jugar ajedrez, procesar imágenes clasificando diversos patrones, tener capacidad para la guía de proyectiles, reconocimiento de una firma en un cajero automático, etc. Resulta evidente que el conocimiento y el tipo de datos requerido para calcular un equipo o el diámetro de una cañería no es igual al necesario para adoptar los materiales adecuados para la misma. En efecto, el diámetro, la longitud, etc., surgen del cálculo y/o de parámetros bien definidos, dependiendo su complejidad sólo de la estructura del sistema. Por ejemplo, si existe cambio de fase, de la geometría, etc. La adopción de la cañería implica, además de los parámetros calculados en el procedimiento anterior, considerar las características del fluido, como por ejemplo, alcalinidad o acidez, temperatura, presión, si tiene partículas en suspensión y muchos otros factores a los efectos de adoptar el material más conveniente. Generalmente, este conocimiento no puede manipularse ni representarse en ecuaciones matemáticas. Mayores problemas surgen al adoptar una bomba, ya que además de los materiales existen otras características del equipo a definir (centrífugas, alternativas, el tipo de impulsor, etc.). En el caso de la solución de una expresión integral, debe procederse al empleo de ciertas reglas de integración analítica, en una cierta secuencia, que generalmente no es única, y cuyo orden y metodología depende de cada caso. En efecto, pueden existir múltiples procedimientos para arribar a la solución buscada. La integración numérica, por el contrario, elegido un método de integración, implica una secuencia ordenada de pasos fácilmente codificables. Lo mismo puede afirmarse de la operación de inversión de matrices o la solución numérica de un conjunto de ecuaciones diferenciales, como veremos más adelante, en próximos capítulos. En definitiva, podríamos plantear numerosos ejemplos de problemas cuyos procedimientos resolutivos no son fácilmente codificables en una secuencia ordenada de pasos (procesamiento del lenguaje natural, selección de alternativas al construir un edificio, búsqueda inteligente en una base de datos, etc.). Para resolver estos problemas se requiere algo similar al conocimiento experto, o inteligencia. Dado que un programa o algoritmo computacional que logre resolver tales problemas cumpliría Cap. I - Pág. 11 Modelado, Simulación y Optimización de Procesos Químicos Autor: Nicolás J. Scenna y col. ISBN: 950-42-0022-2 - ©1999 con ciertos atributos que le adjudicamos a la inteligencia humana o de los expertos, a la rama de la ciencia de la computación que aborda el cómo proceder para resolver este tipo de problemas se le conoce como inteligencia artificial. Y a la disciplina de modelado, problem solving o resolución de problemas. Una de las herramientas utilizadas son los sistemas expertos, ya que los mismos están diagramados para emular a los expertos humanos en la forma en que resuelven los problemas. En general, para enfrentar este tipo de problemas se requiere de una forma de modelar el proceso de generación de estructuras y una forma de codificar y representar el conocimiento de un experto en el dominio en cuestión. El tipo de conocimiento del cual hablamos, desde un punto de vista lógico, puede representarse y codificarse, entre otras alternativas, bajo las reglas de la lógica de predicados. Por ejemplo, reglas del tipo: Si la temperatura es muy alta, entonces la válvula debe cerrarse un 30%, o bien si el color de la solución es negruzco, entonces hay posibilidad de contaminación en el reactor, son muy comunes. El formato general es del tipo Si {A1...An} entonces {C,...Cn }; donde los antecedentes y consecuentes pueden estar vinculados por conectores lógicos (OR, AND, etc.). En general, un conjunto de reglas (generalmente muy numerosas) como las descriptas puede representar el dominio de conocimiento o experiencia acerca de un problema dado. Sin entrar en detalles, utilizado los principios inductivos-deductivos de la lógica de predicados, y asignando valores de verdad o falsedad a ciertas variables (las conocidas inicialmente y las que requiere el procedimiento de razonamiento en la cadena deductiva, si se disponen), puede fácilmente deducirse el estado de todas los demás, o loque es lo mismo, obtenerse conclusiones valederas acerca de una variante en particular del problema dado. De esta manera, muy sintéticamente, puede vislumbrarse que este tipo de herramientas puede utilizarse para modelar problemas en los cuales no puede fácilmente codificarse todo el conocimiento del sistema y los pasos necesarios para la solución mediante un sistema de ecuaciones. Por ejemplo, las reglas antes mencionadas son muy útiles para los problemas de adopción de materiales, de equipos para ciertas condiciones, de los métodos más adecuados para estimar propiedades fisicoquímicas dada la composición, temperatura y presión de mezcla, etc. En la bibliografía recomendada se detalla una gran cantidad de aplicaciones en ingeniería que el lector puede consultar. Llegados a este punto, nos resultará útil analizar el otro aspecto que se nos presenta al modelar ciertos problemas, esto es, herramientas para manipular una gran cantidad de alternativas para un dado sistema. Estas herramientas, combinadas con algoritmos que manejan reglas según el ejemplificado someramente en el punto anterior, y sumado a la capacidad de cálculo de los métodos numéricos, permiten programar poderosos instrumentos para resolver una variada gama de situaciones de ingeniería, las cuales hace sólo dos décadas eran impensables de resolver por computadora. Cap. I - Pág. 12 Modelado, Simulación y Optimización de Procesos Químicos Autor: Nicolás J. Scenna y col. ISBN: 950-42-0022-2 - ©1999 Figura I.2 (a) Figura I.2 (b) Los movimientos se logran desplazando el lugar vacío hacia la derecha, izquierda, arriba y abajo respectivamente. Figura I.3 A continuación se discutirán ejemplos que muestran el proceso de generación de alternativas y el tipo de conocimiento útil para seleccionar la más conveniente. Representación de problemas mediante la utilización de grafos Existe un tipo de problema general para el que se conoce con precisión el estado inicial, el estado final u objetivo, y las reglas o movimientos permitidos. Dentro de este contexto, cada vez que se aplica una regla o movimiento válido, el sistema cambia de un estado (por el ejemplo inicial) a otro. El problema consiste en encontrar la secuencia de movimientos o reglas a aplicar (con un sentido de óptimo o esfuerzo mínimo) que nos lleve al estado final u objetivo. Por ejemplo, sea el sistema representado en la Figura (I.2 (a)). En ella se muestra el estado inicial del sistema. En la Figura (I.2 (b)) se muestra el objetivo deseado (se desea ordenar los componentes en forma creciente). Cap. I - Pág. 13 Modelado, Simulación y Optimización de Procesos Químicos Autor: Nicolás J. Scenna y col. ISBN: 950-42-0022-2 - ©1999 Figura I.4: Expansión de nodos durante el proceso de búsqueda o generación de estados. Dado el estado inicial del sistema, y el estado final u objetivo, nos faltan describir las reglas o movimientos permitidos para lograr transiciones entre estados. Estas reglas también son llamadas operadores. Pueden considerarse funciones cuyo dominio y rango son un conjunto de estados. Los operadores o reglas válidas deben ser descriptos, al igual que la representación de los estados, en forma adecuada. Esta forma depende de cada problema. En el ejemplo que nos ocupa, los operadores están descritos en la Figura (I.3). Aquí se muestra que cada elemento en el arreglo puede moverse ocupando el hueco disponible. Es interesante notar que si se encuentra en un borde, las posibilidades de movimientos posibles o válidos en cuanto a las direcciones se limitan. Obviamente esto puede plantearse en un lenguaje más formal, pero aquí nos basta con la comprensión de las reglas. Resumiendo, en la Figura (I.4 (a)) se indica un procedimiento general, mientras que la Fig. (I.4 (b)) se ejemplifican las posibilidades de movimientos u operadores válidos cuando se enfrenta el problema indicado en la Figura (I.2). Cap. I - Pág. 14 Modelado, Simulación y Optimización de Procesos Químicos Autor: Nicolás J. Scenna y col. ISBN: 950-42-0022-2 - ©1999 Para poder representar la transición entre estados (en el ejemplo que nos ocupa representado por un arreglo o matriz), es conveniente adoptar una metodología conveniente. Para ello resultan muy útiles los grafos. Un grafo consiste en un conjunto (no necesariamente finito) de nodos. Ciertos pares de nodos están interconectados por arcos. Cuando éstos son dirigidos desde un nodo hacia el otro, se los denomina grafos dirigidos. En un par dirigido (nodo ni hacia nj) se dice que el nodo nj es accesible desde el nodo ni, siendo éste antecesor y el nodo nj el sucesor. Así se puede encadenar una secuencia de nodos, definiendo un camino mostrando los sucesivos pares antecesores-sucesores. Un caso particular de grafo es aquel en el cual los nodos están vinculados de tal manera que puede representarse según una estructura de árbol jerárquico. El problema de encontrar una política de transiciones de estados (operadores aplicados secuencialmente) puede asimilarse a la de encontrar un camino en el árbol dirigido, en el cual cada nodo representa un estado y cada arco vinculante un operador. Puede pensarse que para aplicar un operador o regla de transición que nos lleve desde un estado a otro debe pagarse un costo. El criterio más simple es asignar un costo unitario a cada movimiento, con el propósito de poder contabilizar, y con ello minimizar el número de movidas para llegar desde el estado inicial hacia el objetivo; pero también puede asignarse un costo genérico Cij = c(ni, nj) a cada movida. Por ejemplo puede asimilarse como proporcional a la distancia a recorrer entre ambos nodos (en un problema de transporte), o bien un costo en valor monetario, como veremos en el Capítulo II al tratar secuencias de destiladores óptimas, etc. En estos casos se plantea el problema de encontrar un camino desde el estado inicial al final, que minimice el costo. En la Figura (I.5) se muestra la serie de operadores aplicados a un nodo (el inicial) obteniéndose los nuevos sucesores. Este desarrollo se debe continuar hasta que se logre el suceso, esto es, encontrar la configuración o estado objetivo buscado. Resulta evidente que a medida que el número de elementos a ser ordenados se incrementa, la cantidad de posibles estados (dimensión del árbol que se genera) crece en forma combinatoria. Por ejemplo para 8 elementos se tiene un espacio de dimensiones posible de analizar manualmente, pero para 15 el espacio resulta enormemente superior. Queda claro por lo tanto el concepto de explosión combinato- ria de alternativas. Este mismo inconveniente surge en cualquier problema de diseño tecnológico, como se discutirá en el próximo capítulo, por ejemplo al diseñar un tren de separación por destilación de una mezcla de muchos componentes, en el diseño estructural de un edificio, etc. Las variantes estructurales son asombrosamente enormes apenas se presenta el problema de seleccionar alternativas. Por lo tanto, para problemas que presentan un espacio de alternativas de elevada dimensión, resulta necesario recurrir a una estrategia de búsqueda que evite explorar a todas al azar, para tender a minimizar el costo de la búsqueda, o lo que es lo mismo, el número de nodos Cap. I - Pág. 15 Modelado, Simulación y Optimización de Procesos Químicos Autor: Nicolás J. Scenna y col. ISBN: 950-42-0022-2 - ©1999 visitados antes del lograr el estado objetivo buscado. Para ello existen eficientes algoritmos de búsqueda o procesamiento de grafos, de los cuales como ya menciona- mos los grafos dirigidos o árboles jerárquicos aquí utilizados son un caso particular. Un algoritmo genérico de búsqueda podría ser planteado de acuerdo al siguiente esquema (según lo bosquejado en la Figura (I.4 (a)): 1) Asociar el nodo inicial o de partida al estado inicial. 2) Generar los nodos sucesores aplicando los operadores posibles (reglas válidas de transformación de estados). Esta operación (obtener todos los sucesores) se conoce como expansión del nodo. Los arcos quevinculan cada nodo origen con sus sucesores permiten definir el camino seguido desde el nodo (estado) inicial hasta cualquier estado generado durante el proceso de expansión. 3) En cada momento, luego de obtenido un estado, se lo compara con el objetivo deseado: Si coincide, el proceso de búsqueda ha concluido. En este caso el camino que une el nodo inicial con el nodo objetivo es la solución al problema. Si no coincide, debe continuarse el proceso de expansión. El algoritmo arriba descrito es muy general (Figura I.5). Por ejemplo, debe pensarse en un criterio para detener el algoritmo si no encontramos la solución, ya que en casos en los cuales el número de estados es infinito, o bien el punto de partida es tal que no existe una solución, el algoritmo se ejecutará durante un tiempo infinito. Además, debe especificarse el criterio o proceso bajo el cual se expanden los nodos. Por ejemplo, un criterio ampliamente utilizado es expandirlos sistemáticamente en el orden en el cual son generados. Este criterio se conoce en inglés como breadth-first, o hacia lo ancho o expansión lateral. Para el ejemplo que nos ocupa, en la Figura (I.6) observamos una expansión bajo este criterio, a partir del nodo inicial. El número en el vértice de cada arreglo indica el orden en el cual los estados son generados. Otro criterio es el que expande el nodo generado más recientemente. Esta estrategia es conocida en inglés como depth-first, o en profundidad. En la Figura (I.7) se indica esta expansión a partir del mismo estado inicial indicado en la Figura (I.6). La profundidad de un nodo se define sumándole uno a la profundidad del antecesor. Dado que en ciertos casos la profundidad alcanzada durante la expansión puede ser muy grande, es preferible acotar la misma con un parámetro de profundidad máxima a explorar o criterio de búsqueda. El criterio podría ser aquel que surge de preguntarse luego de recorrer el camino (rama) en cierta extensión y no haberse detectado la solución, si no es conveniente abandonar la búsqueda y retomarla desde un nodo (o camino) más prometedor. Una vez que se alcanza este nivel cota, o bien se obtiene un estado que no puede expandirse, debe regresarse hacia atrás en el árbol y expandir el nodo más próximo de los antecesores que permita su expansión. En la práctica, para problemas de muy elevada dimensión (los que generalmente se dan en Cap. I - Pág. 16 Modelado, Simulación y Optimización de Procesos Químicos Autor: Nicolás J. Scenna y col. ISBN: 950-42-0022-2 - ©1999 F ig ur a I .5 : E je m pl o de e xp a n si ón d el n od o in ic ia l y s uc es or es . La fl ec h a e s el c a m in o h a ci a e l o bj et iv o. ingeniería), explorar un árbol o grafo bajo estos criterios puede resultar sumamente costoso (tiempo computacional). Cap. I - Pág. 17 Modelado, Simulación y Optimización de Procesos Químicos Autor: Nicolás J. Scenna y col. ISBN: 950-42-0022-2 - ©1999 Paralelamente, se debe disponer de capacidad de almacenamiento muy grande (para retener los estados intermedios). Por lo tanto, resulta de interés encontrar un criterio o estrategia de búsqueda que minimice el esfuerzo. Para ello se utilizan criterios que se basan no sólo en la configuración o formato de expansión del árbol o grafo de búsqueda, sino más bien en alguna propiedad intrínseca de la solución buscada. Obviamente es muy difícil obtener este criterio a priori. Si pudiera establecerse fácilmente, ello implicaría que no existe el problema de búsqueda como tal, y la solución sería trivial. Además, cada tipo de problema contiene características especiales y una buena estrategia para uno, no necesariamente resultará exitosa para otro. Dentro de este contexto surge claramente el tema de la experiencia previa del jugador o experto. A este tipo de conocimiento empírico, no analítico, es el que en general se denomina conocimiento heurístico, o reglas del arte. Esto da origen a un criterio de búsqueda heurística, más asociado al tipo de problema que a la estrategia formal de búsqueda. De esta manera, ya sea según una estrategia básica de expansión en profundidad o hacia lo ancho (lateral), se expandirán en primer lugar aquellos nodos mas promisorios, esto es, aquellos que sean más adecuados según el criterio heurístico (funciones de evaluación). Por ejemplo, en nuestro problema puede plantearse como criterio heurístico expandir primero el nodo caracterizado por el mayor número de elementos ordenados (una especie de medida de la distancia al objetivo o una aproximación al menor costo de búsqueda). Existen numerosos criterios para proponer funciones de costo o evaluación. Por ejemplo, puede no sólo contemplarse un criterio de búsqueda basado en la distancia al objetivo, sino también agregando un criterio de costo asociado a la búsqueda, por ejemplo el número de movidas realizadas. Es decir, que pueden utilizarse varios términos contribuyendo cada uno de ellos independientemente. De esta manera puede obtenerse una función de evaluación o criterio de decisión que involucre la longitud del camino recorrido hasta un nodo (o la profundidad) a la función anteriormente definida que expresa la distancia asociada al mismo. En este caso entonces, y volviendo a nuestro ejemplo en la Figura (I.8), en el nodo origen (profundidad cero), tenemos para el criterio de selección del nodo a expandir, considerando los elementos desordenados y la distancia, el valor de (0+7). En el segundo nivel, la función evaluación adopta para los nodos los valores (6+1), (8+1), y (7+1), respectivamente, dado que la profundidad es uno en todos los casos. Por otra parte, en la función evaluación, a cada término utilizado puede afectárselo por factores ponderados, o lo que es lo mismo, asignarle peso relativo a cada término que se incluya a la función de evaluación. En efecto, puede plantearse una combinación lineal del tipo , donde el costo C es unaC . D � � P combinación lineal del costo asociado a la distancia al objetivo (D) y el costo asignado a la profundidad, o camino recorrido (P). Cap. I - Pág. 18 Modelado, Simulación y Optimización de Procesos Químicos Autor: Nicolás J. Scenna y col. ISBN: 950-42-0022-2 - ©1999 F ig ur a I. 6: E n e st e ca so s e ex pa n de n lo s n od os a do pt a n do la c on ve n ci ón d e m ov er e l e sp a ci o en b la n co h a ci a la d er ec h a , la i zq ui er da , a ba jo , a rr ib a , en e se o rd en . La s ra m a s se r ec or re n d es de i zq ui er da a d er ec h a . L os n ú m er os e n e l vé rt ic e in di ca n o rd en d e ge n er a ci ón . Cap. I - Pág. 19 Modelado, Simulación y Optimización de Procesos Químicos Autor: Nicolás J. Scenna y col. ISBN: 950-42-0022-2 - ©1999 F ig ur a I .7 Cap. I - Pág. 20 Modelado, Simulación y Optimización de Procesos Químicos Autor: Nicolás J. Scenna y col. ISBN: 950-42-0022-2 - ©1999 Figura I.8 Los valores . y � son pesos relativos. Puede asumirse valores iguales o diferentes y ello depende de la utilidad práctica de la elección. Como regla general, sólo un método de prueba y error nos brinda los valores óptimos para cada problema en particular. En nuestro caso se han considerado ambos factores de igual peso (la unidad). En la Figura (I.8) se muestra la expansión utilizando como función de evaluación el criterio recientemente discutido. Hasta aquí se ha introducido someramente a la problemática, a los efectos de ilustrar diversos procedimientos y criterios para manejar problemas en los cuales se genera un espacio de soluciones combinatorio, esto es, explosivo apenas se incrementa el número de variables a considerar. Estos problemas son muy comunes en varios campos de la ciencia, y en particular, en el diseño en ingeniería. En efecto, ya mencionamos que este tipo de modelos se aplica entre otros, en el análisis de cadenas de símbolos (análisis gramatical), en el análisis matemático simbólico, en el diseño eningeniería (elegir una estructura entre múltiples alternativas, según se discutirá en el Capítulo II), el problema de generar algoritmos para diversos juegos -ajedrez entre otros-, en el transporte de recursos a diversas ubicaciones con una flota disponible, síntesis de moléculas, etc. Cap. I - Pág. 21 Modelado, Simulación y Optimización de Procesos Químicos Autor: Nicolás J. Scenna y col. ISBN: 950-42-0022-2 - ©1999 P M n k 1 Kk fk (x) d x Nuestro objetivo es comprender el tipo de modelo a utilizarse y su asociación con los lenguajes de programación necesarios o útiles para implementar computacio- nalmente los algoritmos correspondientes. Se sugiere al lector interesado en profundizar estos temas la lectura de la bibliografía indicada al final del capítulo. Descomposición de problemas complejos. Partición En general, muchos problemas de elevada dimensión, desde un punto de vista sistémico (teoría de sistemas), pueden ser encarados con cierta ventaja cuando son particionados adecuadamente en diversos subproblemas, cuya solución resulta más fácilmente asequible. Desde luego que deberá obtenerse la solución global como una composición de las soluciones parciales obtenidas. Un ejemplo es el problema (análisis matemático simbólico) de la integración de una expresión dada (integral indefinida). Mientras que ciertas reglas de integración nos permiten fácilmente descomponer un problema en subproblemas (la integral de una sumatoria es igual a la sumatoria de las integrales), no resulta tan sencillo la aplicación de la regla de integración de función de funciones, funciones transcendentes, compuestas, etc. Aquí, si no existen expresiones directamente contenidas en la tabla de integrales, debe recurrirse a ciertas manipulaciones o reglas (por ejemplo integración por partes, sustituciones y procedimientos algebraicos adecuados, etc.). Además, estas manipulaciones no son únicas, por lo que se genera un espacio de alternativas posibles, de las cuales sólo algunas resultarán conducentes a la solución deseada. Es interesante notar que el problema referido puede representarse estructural- mente de una manera similar al anterior, esto es, utilizando grafos o árboles. Esta representación puede visualizarse en la Figura (I.9) para la siguiente expresión: Aquí se aplican las reglas de la descomposición de la sumatoria y la multiplicación por una constante. Como se observa, se genera una secuencia de subproblemas en un orden jerárquico que deberá resolverse en la forma establecida (desde abajo hacia arriba) para encontrar la solución global al problema. La estrategia consiste en aplicar las reglas válidas de tal manera de lograr reducir el problema original en subproblemas que puedan resolverse directamente (base). La expansión finaliza cuando esto se logra. Nuevamente, según la expresión a integrar y la metodología elegida, la expansión puede resultar tediosa y de difícil solución, ya que se originarán numerosas alternativas posibles de aplicar. Resulta imprescindible por lo tanto, disponer de reglas heurísticas propias de la experiencia para proceder a la expansión adecuada, con el menor esfuerzo. Resulta evidente entonces, que la naturaleza del conocimiento o secuencia de pasos a seguir, programar o codificar para resolver diversos problemas, es radicalmente Cap. I - Pág. 22 Modelado, Simulación y Optimización de Procesos Químicos Autor: Nicolás J. Scenna y col. ISBN: 950-42-0022-2 - ©1999 Figura I.9: En este caso, el arco sólido que une los nodos en la expansión es un nodo and. Esto significa que deben resolverse todos los nodos de la base (sucesores) para resolver el nodo antecesor. diferente. Por ello, si bien las técnicas de búsqueda en árboles y otras de similar naturaleza no son imposibles de ser programadas en lenguajes propios del primer paradigma informático como ser BASIC, FORTRAN o PASCAL, queda claro que debido a la necesidad de manejar procedimientos simbólicos, cadenas de razonamien- to lógico, deductivo-inductivo, y conocimiento heurístico, que en general es difícilmente cuantificable, resulta necesario recurrir para encarar este tipo de problemas, a otros lenguajes, más adecuados a los propósitos perseguidos. Éstos se caracterizan por facilitar la programación bajo tales condiciones, tanto en el manejo de los datos como en el tipo de conocimiento a codificar y el tipo de estrategia/razonamiento a emplear. Por ejemplo lenguajes como el LISP, PROLOG, la programación orientada a objetos, y otros paradigmas recientes de programación permiten una base más adecuada para resolver naturalmente los problemas recientemente discutidos. Un lenguaje ideal permitiría manejar tanto reglas lógicas como listas y estructuras de datos, paralelamente a la capacidad de manipular todo tipo de operaciones aritméticas sin ninguna dificultad. I.5 SISTEMAS DE GERENCIAMIENTO DE INFORMACIÓN Hasta aquí hemos analizado someramente diversos tipos de modelos. Aquellos que se caracterizan, por ejemplo, a través de un conjunto de ecuaciones algebraicas o diferenciales, o bien mediante programas matemáticos de optimización, en general de elevada dimensión; para cuya resolución se recurre a algoritmos numéricos programados computacionalmente. Por otra parte, existen modelos que apelan, como hemos visto, a la Cap. I - Pág. 23 Modelado, Simulación y Optimización de Procesos Químicos Autor: Nicolás J. Scenna y col. ISBN: 950-42-0022-2 - ©1999 representación del sistema por medio de grafos o árboles. En ellos la representación simbólica prioriza la descripción de los estados del sistema o los eventos a considerar. Este es un gran paso para facilitar el manejo de variables estructurales, manipulación simbólica, partición de problemas en subproblemas más adecuados, etc. También se concluyó que resulta necesario, en ciertos problemas, disponer de lenguajes que permitan naturalmente implementar el razonamiento lógico además del cálculo algebraico. Por ejemplo, vimos que con ellos resulta factible implementar computacio- nalmente el proceso de decisión para adoptar ciertos equipos, por ejemplo, bombas, intercambiadores, resolver analíticamente integrales, etc. Para ello se emula el proceso de toma de decisiones por parte de un experto manipulando formalmente operadores lógicos. Existe no obstante, otro aspecto que se ha evidenciado progresivamente, a medida que evolucionó el conjunto de tecnologías disponibles. En efecto, el manejo de la información resulta cada vez más importante. Se debe contar con la información precisa, y en el momento justo, para una adecuada toma de decisiones. Históricamente, a partir de la necesidad de lograr bancos de datos en las reparticiones oficiales (documentación personal, catastros, etc.) y financieras (cuentas bancarias, proveedores, clientes, etc.) entre otros muchos ejemplos, evolucionaron lenguajes de programación y sistemas informáticos aptos para manipular y almacenar grandes cantidades de datos. Los sistemas Administradores de Base de Datos han evolucionado de una manera vertiginosa, permitiendo hoy en día la búsqueda inteligente de información de todo tipo, que paralelamente a la evolución de las telecomunicaciones y transmisión de datos, permiten el manejo de sistemas altamente integrados (por ejemplo la autopista informática, Internet). Dentro de este contexto, resulta evidente la necesidad de analizar el impacto de estas herramientas en el campo de la ingeniería. Por ejemplo, es obvio que en una empresa de ingeniería dedicada al diseño de procesos químicos (ingeniería básica, de detalle, la construcción y el montaje, etc.) resultará muy importante contar con un sistema informático (montado sobre Administradores de Base de Datos) que contenga la información de las diversas etapas del proyecto, como ser los balances de materia y energía, las hojas de cálculo y especificaciones de cada equipo, el plano de distribución de equipos, cañerías e instrumentos, el cronograma de tareas a realizar, etc. Es obvio que si todos los departamentos estuvieran integrados, la informaciónpodría circular con facilidad entre los diversos agentes, evitando así el uso o la dependencia de las clásicas planillas, memos, etc., fuentes de errores e imprecisiones. Además, cada nivel de jerarquía tendrá capacidad para efectuar el acceso diferencial a la información, ya sea en la cantidad y/o en prioridad, por ejemplo, para efectuar modificaciones, escritura y lectura, etc. En otras palabras, la sistematización de la información y su acceso inmediato es lo que permite al nivel directivo una adecuada herramienta soporte para el gerenciamiento de la empresa, es decir, para la toma de decisiones. Cap. I - Pág. 24 Modelado, Simulación y Optimización de Procesos Químicos Autor: Nicolás J. Scenna y col. ISBN: 950-42-0022-2 - ©1999 Otro ejemplo puede ser una planta de producción, por ejemplo, una petroquímica. Aquí se genera en tiempo real, segundo a segundo, una gran cantidad de información que se almacena en una base de datos a través del sistema de adquisición de datos. Esta gran cantidad de información, vital para el seguimiento de la planta, es prácticamente la historia de la misma. El problema es que dado que se toma en tiempo real, unas pocas horas de funcionamiento implica un gran esfuerzo de almacenamiento. Por lo tanto debe encontrarse una forma para resumirla y almacenarla adecuadamente. Cada sección (producción, mantenimiento, laboratorios de control de calidad, compras, ventas, stocks, etc.) genera una gran cantidad de datos en tiempo real. Obviamente, un sistema adecuado para manipular los datos, que son de diverso origen y naturaleza, facilitaría enormemente el proceso de gerenciamiento, desde la planificación de la producción, hasta la programación del mantenimiento y paradas de equipos. Dentro de este contexto, los sistemas para el gerenciamiento de la información están en la actualidad en constante evolución, con el objetivo de integrar en una herramienta compatible todas las aplicaciones informáticas. El problema es de gran magnitud, ya que como discutimos anteriormente existe una infinidad de aplicaciones, por ejemplo para el cálculo de equipos, simulación y optimización, etc., además de sistemas contables para liquidación de sueldos, gerenciamiento de stocks, compras y ventas, proveedores, etc. Por consiguiente, nos interesa remarcar la importancia del acceso a los datos para enfrentar cualquier problema de ingeniería, cualquiera sea su naturaleza, destino u origen. Se deduce entonces, que también resulta importante, al analizar el lenguaje de programación adecuado para una aplicación, verificar su compatibilidad con diversos administradores de bases de datos y otras aplicaciones, ya que en un futuro inmediato será necesario proceder a integrar de manera progresiva los programas independientes con las fuentes de información general disponibles. Resulta cada vez más evidente que los problemas a enfrentar en el ejercicio de la profesión (al generalizarse en el mercado todas las herramientas someramente mencionadas en este capítulo) tienden a incorporar elementos característicos de cada tipo de modelo anteriormente analizado. Por otra parte, también es imperioso realizar cálculos en tiempo real, a los efectos de estimar hacia donde evolucionará el proceso si cambian las condiciones de las materias primas, o bien si la demanda variara súbitamente imponiendo la necesidad de reorientar la producción en función del stock disponible. Para ello también será necesario recurrir a diversos bancos de datos, para obtener información, sean ellos locales o bien remotos, además de la implementación de técnicas de optimización en línea o en tiempo real. A diferencia del antiguo paradigma de la informática según el cual los programas se consideraban con una estructura rígida, compuestos por una sección de entrada de datos, una de cálculo y finalmente de una de salida de datos, en las Cap. I - Pág. 25 Modelado, Simulación y Optimización de Procesos Químicos Autor: Nicolás J. Scenna y col. ISBN: 950-42-0022-2 - ©1999 aplicaciones de última generación se fusiona el nivel de dato con el de cálculo y el de procesamiento o etapa procedural, relativizando una secuencia rígida paso a paso, característica de la programación clásica. En efecto, se busca integrar la capacidad de almacenar y manipular gran cantidad de información con el cálculo numérico y simbólico en una única herramienta. I.6 PARADIGMAS INFORMÁTICOS En general, se puede aceptar que la mayoría de los estudiantes avanzados de ingeniería y los profesionales de esta actividad tienen alguna experiencia en el uso de lenguajes como FORTRAN, PASCAL, BASIC o ALGOL. El FORTRAN fue el primer lenguaje para uso científico, siendo en la actualidad el más utilizado para este uso. La aparición de cada nuevo lenguaje o paquete de utilitarios exige por parte del usuario el aprendizaje de un conjunto de nuevas reglas y operatorias. Por otra parte, aunque se presenten ventajas frente a aplicaciones realizadas con lenguajes anteriores, el costo (en dinero y esfuerzo) que implica volcar las aplicaciones al nuevo lenguaje es un aspecto a analizar. Esta es una de las principales razones por las cuales el FORTRAN sigue siendo aún hoy el lenguaje de programación estándar en ingeniería y en otras ciencias duras. Por otra parte, es muy poco probable que sea desplazado en un futuro cercano en aplicaciones de cálculo numérico. Si bien no es el objetivo de este capítulo analizar la evolución histórica de la informática ni de los paradigmas informáticos y su relación con las herramientas que nos provee (lenguajes diversos de programación con sus características, virtudes y/o aptitudes que los caracterizan), a continuación se vertirán someramente algunos comentarios con el objeto que el lector comprenda claramente la vinculación entre los diversos tipos de problemas que aparecen en el modelado de procesos y su natural correspondencia con alguna herramienta computacional acorde. En efecto, en la Sección (I.3) analizamos las características salientes o inherentes a los algoritmos aplicables en el campo del análisis numérico y su relación con ciertos problemas de modelado en ingeniería. Vimos que, en general, los lenguajes FORTRAN, BASIC, PASCAL, C o similares, son directamente aplicables y constituyen, en forma general, la opción natural para los mismos, ya que los métodos numéricos no son otra cosa que un conjunto de acciones sistemáticas que deben aplicarse secuencialmente a los efectos de lograr la solución deseada. Estos lenguajes generalmente pertenecen a lo que se ha dado en llamar el primer paradigma de la informática. Por el contrario, en la Sección (I.4) hemos analizado otro grupo de problemas muy comunes que utilizan grafos y modelos equivalentes para generar un espacio de alternativas a considerar durante el procesamiento. En éstos, si bien no es imposible el manejo de grafos y la implementación de los algoritmos pertinentes con las herramientas o lenguajes anteriormente mencionados, resultan naturalmente aplicables aquellos que posean la capacidad de manejar listas, recursividad, objetos, Cap. I - Pág. 26 Modelado, Simulación y Optimización de Procesos Químicos Autor: Nicolás J. Scenna y col. ISBN: 950-42-0022-2 - ©1999 etc. Aquí es importante remarcar que tanto el PASCAL, el FORTRAN o bien el C (C++), han introducido con el tiempo, en mayor o menor medida, tales habilidades. Finalmente, recordemos que existen problemas en los cuales el modelo asociado contiene reglas lógicas que representan el conocimiento del dominio en cuestión. En efecto, imaginemos que pretendemos diseñar un sistema de control para un proceso determinado. Un sistema clásico de control contempla un diseño basado en la linealización de las respuestas dinámicas del sistema alrededor del estado a controlar. Si las perturbaciones son muy grandes, esta estrategia puede no funcionar, especialmente en sistemas altamente no lineales. En estos casos, deberá recurrirse a algoritmos modernos (o no clásicos) de control, como control robusto, adaptativo, etc. Sin embargo,en todos los casos, suponemos que existe al menos un modelo para el sistema (que podemos resolver en tiempo y forma numéricamente), además de poder realizar las mediciones necesarias. Esto no siempre es así: Por ejemplo, ciertos sistemas como los reactores biológicos, hornos o secaderos de cemento, sistemas complejos de cristalización, etc., son decididamente inabordables para el modelado clásico, o bien resultan complejos de abordar a un costo razonable. Sin embargo, habitualmente son controlados por los operadores, quienes han desarrollado una experiencia con el tiempo para el manejo de tales procesos. Este conocimiento empírico, heurístico, o de la experiencia, derivado de las reglas del arte, es difícilmente codificable en forma de ecuaciones matemáticas. Por ejemplo, según comentamos genéricamente, reglas similares a éstas pueden utilizarse para controlar un proceso: Si el líquido está más viscoso o de un color negruzco, entonces aumentar el flujo de agua de enfriamiento en un 30%, o bien: Si el sistema vibra, entonces conectar el interruptor I1 rápidamente. Este tipo de conocimiento, útil para control, supervisión y diagnóstico de fallas en tiempo real, etc., como ya mencionamos, puede encapsularse o codificarse en reglas del tipo: Si {...conjunto de antecedentes...} entonces {conjunto de ...consecuentes...}. En estos casos, resulta natural programar los aplicaciones específicas con lenguajes que incorporen, a las habilidades ya mencionadas hasta aquí, el manejo de reglas. Ejemplos de este tipo de lenguajes según ya comentamos son, por ejemplo, el PROLOG y el LISP. Además, existen en el mercado un número importante de utilitarios que poseen esta capacidad de manejar reglas, no sólo para funcionamiento fuera de línea sino también para el desempeño en tiempo real, esto es, montados sobre una computadora que simultáneamente adquiere datos del proceso. Entre estos últimos pueden mencionarse, entre otros, el G2, el ONSPEC y el GENESYS. Por último, es interesante destacar que el advenimiento de entornos WINDOWS y utilitarios que agregan facilidades visuales o gráficas, tales como el DELPHI, VISUAL C++, VISUAL BASIC, etc., facilitan enormemente el diseño de sistemas amigables para el usuario, ya sea en programas de simulación como de supervisión de procesos, simulación en tiempo real, entrenamiento de personal, etc. Cap. I - Pág. 27 Modelado, Simulación y Optimización de Procesos Químicos Autor: Nicolás J. Scenna y col. ISBN: 950-42-0022-2 - ©1999 Nuevamente, se remarca que un lenguaje ideal se caracteriza por facilitar la programación orientada a objetos, facilidades gráficas y visuales, manejar tanto reglas lógicas como listas y estructuras de datos, paralelamente a la capacidad de manipular todo tipo de operaciones aritméticas sin ninguna dificultad y a una velocidad razonable. Es importante destacar que a lo largo de esta obra no se discutirán aspectos de implementación de los programas en particular así como del software comercial disponible, tanto de aplicaciones como de lenguajes, prefiriéndose enfatizar los aspectos de modelado y los conceptos subyacentes. PROBLEMAS PROPUESTOS P1) Suponga que se requiere implementar un programa para el juego de ajedrez. Suponga que para la representación del conjunto de estados se selecciona una estructura en árbol como la utilizada en este capítulo. Suponga que los operadores son los correspondientes a cada movimiento permitido a todas las piezas, y que además encontró una manera adecuada de registrar el estado del tablero, con la posición de cada una de ellas. ¿Cuando se inicia el juego, cuántas posibilidades de movimientos tienen las blancas?. ¿Sobre este movimiento, cuántas repuestas posibles tienen las negras?. ¿Puede realizarse el programa sin definir adecuadas funciones de evaluación?. ¿Qué información deberían tener dichas funciones?. P2) Suponga que dispone de una mezcla de NC componentes y la quiere separar mediante una secuencia de columnas de destilación. ¿Cuántas de ellas requiere, si sólo separa un componente en cada una de ellas? (tenga en cuenta que la última procesa una mezcla de solo dos componentes). ¿Cuántas secuencias existen si optamos por cubrir todas las combinaciones posibles? Haga un esquema tipo árbol para una mezcla de 4 componentes. ¿Qué sucede si éstos aumentan progresivamente?. P3) Suponga que tiene el problema de diseñar la red de intercambiadores de calor que debe proceder a enfriar NF y calentar NC corrientes. Si representa en una matriz por filas y columnas a cada una de ellas, se tiene en principio una forma de estimar la cantidad de distintas posibilidades de intercambio entre ellas, dado que las corrientes de mayor temperatura pueden enfriarse calentando a las de mayor temperatura. Ello ahorra vapor de calefacción y agua de enfriamiento. ¿Puede representarse este problema en una estructura de árbol como la indicada para los anteriores?. ¿Qué sucede si aumentan progresivamente NF y NC ?. P4) Resuelva nuevamente asignando distintas combinaciones de pesos relativos a la función de evaluación para el ejemplo de ordenado de números. Suponga que la dimensión del problema es nueve, como en el caso tratado. P5) ¿En qué situación se le ocurre que deba combinarse la exploración en árboles con el cálculo numérico clásico para resolver un problema?. Suponga por ejemplo que Cap. I - Pág. 28 Modelado, Simulación y Optimización de Procesos Químicos Autor: Nicolás J. Scenna y col. ISBN: 950-42-0022-2 - ©1999 explora posibles funciones de evaluación para encontrar una secuencia de columnas de destilación de costo óptimo en el Problema (2). P6) ¿Qué diferencias encuentra entre el cálculo simbólico y el numérico desde el punto de vista de la programación de algoritmos aptos para los mismos?. ¿Cuál es la diferencia fundamental en cuanto a los resultados que nos brinda una y otra filosofía de resolución?. P7) ¿Por qué motivo es preferible intentar programar un modelo antes que utilizar paquetes comerciales para tal fin?. ¿Cuándo esta estrategia pierde sentido?. BIBLIOGRAFÍA RECOMENDADA � Blanning, W. R. y D. King, Organizational Intelligence. AI in Organizatio- nal Design, Modeling, and Control, IEEE Computer Society Press (1996). � Davis, J. F., G. Stephanophoulos y V. Venkatasubramanian Editors, International Conference on Intelligent Systems in Process Ingenieering, CACHE, AICHE Symposium Series, Vol. 92 (1996). � Hollnagel, E., G. Mancini y D. Woods, Cognitive Engineering in Complex Dynamic World, Academic Press (1980). � Negoita, C. V., Expert Systems and Fuzzy Systems, The Benjamin Publis- hing Co. (1985). � Pearl, J., editor, Search and Heuristics, Nort Holland Co. (1983). � Pyle, I. C., The ADA Programming Language, Prentice Hall (1985). Índice I.1 INTRODUCCIÓN I.2 EVOLUCIÓN HISTÓRICA I.3. MÉTODOS NUMÉRICOS COMO HERRAMIENTA PARA EL MODELADO DE PROCESOS EN INGENIERÍA QUÍMICA I.4 MODELOS NO CONVENCIONALES I.5 SISTEMAS DE GERENCIAMIENTO DE INFORMACIÓN I.6 PARADIGMAS INFORMÁTICOS PROBLEMAS PROPUESTOS BIBLIOGRAFÍA RECOMENDADA
Compartir