Giter Site home page Giter Site logo

redgenhid's Introduction

RedGenHid

Tesis de posgrado: "ANÁLISIS HIDRÁULICO DE REDES DE DISTRIBUCION DE AGUA POTABLE, CON ALGORITMO GENÉTICO Y SU APLICACIÓN A LA RED DEL MUNICIPIO DE TEZOYUCA EN EL ESTADO DE MÉXICO".

Descripción:

A través de una aplicación utilizando Algoritmos Genéticos programada en Python y Qt Designer, se desarrolla un programa para determinar los diámetros más adecuados de tuberías en redes para que al realizar un análisis hidráulico se cumpla con las siguientes características:

  1. Que el costo y diseño de la red sea el mínimo posible.
  2. Que se cumpla con las normas de velocidad y presión dadas por el usuario.
  3. Los resultados dados por el programa deben ser corroborados usando Epanet 2, con un margen de error menor al 1% de los datos buscados.
  4. Usar el programa computacional no requiera un conocimiento profundo de programación o algoritmos genéticos.

Objetivos:

  • Utilizar los algoritmos genéticos como una herramienta útil para resolver problemas de optimización, donde el espacio de búsqueda es demasiado grande.
  • Que los usuarios finales, es decir, los estudiantes, puedan utilizarlo sin la necesidad de invertir grandes cantidades de tiempo en el aprendizaje del programa y sin miedo a que el programa devuelva respuestas extrañas que pueda confundirlos.
  • Acercar y motivar a los estudiantes de ingeniería civil al aprendizaje de técnicas más modernas como son los algoritmos genéticos aplicados a problemas de hidráulica de tuberías.
  • Automatizar el cálculo del diámetro de tuberías de una red de distribución de agua potable, utilizando los algoritmos genéticos como método para obtener los diámetros más económicos que cumplan con la velocidad y presión dadas por el usuario.
  • Servir como un complemento de Epanet 2 para los fines citados en el punto anteriormente mencionado, pues también se trabaja con archivos de extensión *.inp.

Tecnologías usadas:

Python Numpy Qt PyCharm Adobe_Photoshop Canva

Diseño de la aplicación:

A continuacion se hará una breve descripción de la interfaz gráfica de usuario de la aplicación. Para una explicación más detallada consultar el capítulo IV de la tesis TESIS_B190303.pdf.

GUI: Inicialización.

Al inicializar el programa aparecerá la ventana de Inicialización , su función es la de cargar el Progressbar desde cero hasta 100%. El diseño mediante Qt Designer es el siguiente:

GUI: Menú desplegable.

Esta es la página con la que se recibe al usuario, su única función es la de mostrar el nombre del programa y dar una pequeña reseña de su función. Independientemente de la página en la que nos encontremos, siempre estará un menú colocado en el lado izquierdo de nuestro programa que se desplegará cada que el ratón pase encima de él. Este menú nos permitirá navegar entre las diferentes paginas disponibles. El diseño mediante Qt Designer es el siguiente:

GUI: Introducir datos.

Esta interfaz se compone de dos QGroupBox, el de DATOS y el de RED HIDRAULICA que se describen a continuación:

    DATOS:
  • Se pueden introducir datos al programa de forma manual o en formatos: *.csv, *.xlsx y *.inp. Archivos de ejemplo (CSV, XLSX, INP)
  • En el manual se describe detalladamente y con un ejemplo como ingresar los datos de la red hidraulica. Manual REDGENHID.pdf
  • Se desplega en tablas la información ingresada.
    RED HIDRAULICA:
  • Tiene multiples opciones para visualizar en la red.
  • Cuenta con un botón para visualizar la red.

GUI: Análisis de Redes Hidráulicas.

En esta página se muestran los resultados del análisis de la red hidráulica utilizando el método del gradiente hidraulico. Para más detalles de la programación de este método consultar el capitulo III de la TESIS_B190303.pdf. El diseño mediante Qt Designer es el siguiente:

GUI: Algoritmo Genético.

En esta interfaz se debe dar información adicional al programa antes de poder ejecutar el algoritmo genético, el cual nos dará los diámetros óptimos para la red hidráulica.

    Datos requeridos:
  • Tamaño de población.
  • Número de generaciones.
  • Tasa de mutación.
  • Velocidad máxima y mínima.
  • Presión máxima y mínima.
  • Diámetros a combinar.

Para más detalles de la programación de este método consultar el capitulo III de la TESIS_B190303.pdf. El diseño mediante Qt Designer es el siguiente:

GUI: Circular progressbar.

Debido a que el algoritmo genético tiende a demorar en su ejecución, se informa al usuario el progreso del algoritmo usando un progressbar, de esta forma se sabe cuánto porcentaje de avance lleva. El diseño mediante Qt Designer es el siguiente:

Puedes descargar una demo dando click en la imagen:

redgenhid's People

Contributors

jozcrzbrgn avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.