UNIVERSIDAD DE CÓRDOBA
Escuela Politécnica Superior
Diseño Automático de Redes de
Distribución de Agua mediante
Algoritmos Evolutivos
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 1Petición de tema de Proyecto
Directores del Proyecto
Prof. Dr. Sebastián Ventura Soto
Prof.ª D.ª Amelia Zafra Gómez
Autor del Proyecto
Iván Velasco Pedrajas
Petición de tema de Proyecto
Autor
• Nombre: Iván Velasco Pedrajas • Titulación: Informática de Sistemas
• Dirección: C/.Escultor Ramón Barba 1, Ptal A 2º1 • CP: 14012
• Población: Córdoba • Teléfono: 957-404201
• Correo Electrónico: [email protected]
Director
Prof. Dr. Sebastián Ventura Soto Prof.ª D.ª Amelia Zafra Gómez
Introducción
En los sistemas de suministro de agua, las redes de distribución son una parte esencial, ya que su coste puede ser igual o mayor al 60% del coste total de todo el sistema. Con el fin de reducir sus costes de los sistemas de distribución de agua, se han empleado diversas técnicas de optimización por diferentes investigadores en las tres últimas décadas.
El diseño económico de redes es un problema de optimización complejo debido a las restricciones que presenta, relativas tanto a las condiciones de operación (e.g. presiones y velocidades) como a las que rigen la circulación del agua en las redes a presión, de carácter no lineal. Además, la función de costes presenta numerosos mínimos locales, factores todos ellos que complican enormemente la obtención de la red de coste mínimo.
Las primeras técnicas de optimización empleadas en el diseño de redes ramificadas y malladas estaban basadas en la programación lineal. Alperovits y Shamir (1977) utilizaron un método de programación lineal, que reduce la complejidad del problema no lineal original mediante la resolución de una serie de subproblemas lineales. Posteriormente Kessler y Shamir (1989), perfeccionaron el método de programación lineal citado anteriormente presentando un método de programación lineal de dos etapas. Fujiwara y Khang (1990) propusieron igualmente descomponer el problema lineal en dos etapas. También Eiger et al. (1994) dividieron el problema en dos etapas, en la primera que denominan problema interior, dada una distribución de caudales, se determina por programación lineal las longitudes que componen los tramos de distinto diámetro que forma una línea.
Hasta el momento los procedimientos clásicos de optimización no habían demostrado ser eficaces en la resolución de este problema, situación que motivo a numerosos investigadores a utilizar técnicas de tipo heurístico. Así en la década de los 90 se aplicaron algoritmos genéticos en el diseño económico de redes de distribución. Simpson y Goldberg (1993), Savic y Walters (1997) y Montesinos et al. (1999), emplearon tanto algoritmos genéticos simples como algoritmos genéticos mejorados en el diseño de redes. Estos algoritmos son eficientes explorando el espacio de búsqueda, aunque, son poco precisos en encontrar una solución óptima global en la región en la cual el algoritmo converge.
A pesar de los resultados obtenidos con algoritmos evolutivos en este tipo de problemas, los avances experimentados en los últimos años con este tipo de heurísticas apenas han llegado al campo del diseño de redes de distribución de agua, y cuando lo han hecho han obviado abordar el problema desde un punto de vista multiobjetivo. Por esta razón, el objetivo de este proyecto será evaluar la calidad de una serie de nuevos algoritmos de computación evolutiva en la resolución del problema planteado. Se intentará resolver el problema desde la perspectiva de nichos, multiobjetivo (se evaluarán los algoritmos SPEA2 y NSGA-II, que se han mostrado como los mejores en la resolución de este tipo de problemas) y otras perspectivas que han funcionado bien en otro tipo de problemas y no han sido ensayadas hasta la fecha.
Para llevar a cabo la resolución del problema planteado optaremos por utilizar la biblioteca de algoritmos disponible en el sistema JCLEC, dado que dispone de los componentes necesarios para desarrollar multitud de algoritmos con gran facilidad. Además, la biblioteca presenta una gran cantidad de algoritmos ya implementados, que pueden ser utilizados para comparar el rendimiento de nuevas propuestos con otras ya descritas en la bibliografía. Para calcular las presiones y características de cada red de distribución de agua vamos a utilizar el software EPANET 2.0, integrándolo como un conjunto de clases nativas que podrán ser invocadas desde una aplicación Java (en concreto, los algoritmos disponibles en la biblioteca JCLEC).
Objetivos
Planteado ya el objetivo principal que motiva este proyecto fin de carrera, enunciaremos una serie de objetivos en los que aquel puede desglosarse:
• Estudio del problema del diseño de las redes de distribución de agua, y del uso de la herramienta EPANET.
• Estudio de la interfaz de métodos nativos proporcionada con el lenguaje Java. • Utilizar una jerarquía de clases para invocar a los procedimientos definidos en la
.dll del software EPANET mediante el Java Native Interface.
• Diseño de una jerarquía de clases, en el contexto de la biblioteca JCLEC para realizar las siguientes acciones:
o Representar un individuo cuyo genotipo es un vector de valores enteros, binarios o reales y cuyo fenotipo es una red de distribución de agua. o Diseñar e implementar el procedimiento de codificación desde el
o Diseñar procedimientos de evaluación de individuos, haciendo uso de la funcionalidad proporcionada por el software EPANET, en concreto, con la interfaz JNI..
• Estudio de los algoritmos evolutivos disponibles en la biblioteca JCLEC y su aplicación al problema planteado.
• Estudio y aplicación de nuevos algoritmos evolutivos para el problema planteado.
• Aplicación de los algoritmos desarrollados a la resolución de problemas de diseño de redes de distribución de agua y comparación de resultados.
Metodología
Recursos
Para el desarrollo del proyecto se utilizarán los siguientes recursos:
- Hardware
• Ordenador portátil Intel Sonoma 2.0 GHz, 2 GB de DDR2, HDD SATA de 80 GB, NVIDIA GeForce 6600 GO 256 MB de DDR3.
• Ordenador personal Athlon XP 3000@3600, 1 GB de DDR, 280 GB de HDD, NVIDIA GeForce 7600 GT 256 MB de DDR3.
• Router WIFI Comtrend CT-536+ con conexión a internet de 20 MB. - Software
• S.O. Microsoft Windows XP.
• S.O. Linux: distribuciones Ubuntu y Red Hat. • Entorno de desarrollo para Java Eclipse. • Software EPANET.
• Biblioteca de clases JCLEC.
• Cualquier otro software cuya necesidad se plantee durante el desarrollo del proyecto y su memoria.
Fases de desarrollo
El proyecto será realizado debido a sus características siguiendo el paradigma del Ciclo de Vida Clásico. Por tanto constará de las siguientes fases de desarrollo:
• Ingeniería y análisis del sistema
Se procederá al estudio de la biblioteca de clases JCLEC, así como del software EPANET y el lenguaje de programación Java. En esta fase se extraerán los requisitos globales a nivel de sistema y se estudiará el subsistema software a un nivel de abstracción elevado.
• Análisis de los requisitos del software
Se recogerá toda la información posible sobre el software a desarrollar. Asimismo se comprenderá el dominio de la información que manejará el
software, el procesamiento a que debe someterse esa información, el rendimiento de este procesamiento, así como las interfaces tanto en la entrada como en la salida de la información para estos procedimientos.
• Diseño
Se realizará una especificación formal a partir de los requisitos recogidos, de forma que esta pueda ser verificada y validada con respecto a estos requisitos. En esta fase, por tanto, se realizarán todos los esquemas, diagramas y documentos necesarios para comenzar la codificación del software.
• Codificación
La codificación en Java propiamente dicha de todo el software, y la generación de las clases necesarias mediante el Java Native Interface a partir de los métodos del software EPANET.
• Prueba
Se verificará el producto software y las partes integrantes generadas en la fase anterior. Se asegurará que el resultado final cumpla con los objetivos iniciales y se probarán a su vez aquellos objetivos extra alcanzados.
Bibliografía
• Alperovits, E. and Shamir. U. Design of optimal water distribution systems.
Water Resources Research 13. 1977. Núm. 6. pp. 885-900.
• Kessler, A. and Shamir. U. Analysis of the linear programming gradient method for optimal design of water supply networks. Water Resources Research. 1989. Vol. 25. Núm. 7. pp. 1469-1480.
• Fujiwara, O. and Khang, D. B. A two-phase decomposition method for optimal design of looped water distribution networks. Water Resources Research. 1990. Vol. 26. Núm. 4. pp. 539-549.
• Eiger, G.; Shamir, U. and Ben-Tal A. Optimal design of water distribution networks. Water Resources Research. 1994. Vol. 30. Núm. 9. pp. 2637-2646. • Simpson, A. R. & Goldberg, D. E. Pipeline optimization using an improved
genetic algorithm. Department of Civil & Env. Engg. University of Adelaide. 1993. Research Report Núm. R109.
• Savic, D. A., Walters, G. A. Genetic algorithms for least-cost design of water distribution networks. Journal of Water Resources Planning and Management
ASCE. 1997. Vol. 123. Núm 2. pp. 67-77.
• Montesinos, M. P.; Garcia-Guzman, A.; Ayuso, J. L. Water distribution network optimization using a modified genetic algorithm. Water Resources Research. 1999. Vol. 35. Núm 11. pp. 3467-3473.
• Ventura, S.; Romero, C.; Zafra, A.; Delgado, J.A.; Hervás C. JCLEC: A Java Framework for Evolutionary Computation. Soft Computing: A Fusion of
Foundations, Methodologies and Applications. 2008., Vol 12. Núm. 4, pp.
• Rossman, L. A. Computer models/EPANET. In: Mays, L.W. (Ed.), Water Distribution Systems Handbook. McGraw-Hill. New York. 1999.
• Horstmann, C. S.; Cornell, G. Core Java 2. Volume II – Advanced Features. 7ª ed. California. Sun Microsystems Press. 2004. Chapter 11. pp. 829-878.
• Eckel B. Piensa en Java. Traducido por González Barturen, J. Revisión Técnica de Parra Fuente, J.; Lozano Quesada, R. 2ª ed. Madrid. Prentice Hall. 2002. 960 p. ISBN: 84-205-3192-8.
• EPANET 2.0, Water Supply and Water Resource (WSWRD) Risk Management Research NRMRL ORD US EPA Environmental Protection Agency.
http://www.epa.gov/nrmrl/wswrd/epanet.html
Córdoba a 12 de marzo de 2008
El autor
Fdo. Iván Velasco Pedrajas
El director