11 marzo 2007

Algoritmos genéticos

En esta entrada voy a hacer una breve introducción al proyecto que estoy programando.

Los algoritmos genéticos son un método de programación que sirve para maximizar o minimizar un problema dentro de un determinado espacio de soluciones. Normalmente esta maximización debe cumplir determinadas restricciones. Estos algoritmos pueden considerarse parte de la ciencia que conocemos como Inteligencia Artificial.

En este caso se trata maximizar la producción de un campo de pozos de agua, calculando el ritmo al que las bombas deben extraer agua de los mismos (litros por segundo), con la restricción de un nivel freático que no puede menguar por debajo de un nivel (metros) en los alrededores.

Esta gráfica representa el nivel del agua subterránea cuando los pozos explotan a un determinado ritmo. Para desarrollar estos programas me estoy basando en la librería Jaga de algoritmos genéticos sobre el lenguaje Java.

Me dedico estas líneas a mí mismo para darme ánimos para resolver este trabajo.

Etiquetas: