Cursos de Verano de El Escorial:
Encuentro sobre Computación Natural

Software Evolutivo: Juan J. Merelo

Cuando se trabaja con algoritmos evolutivos, tarde o temprano se tiene que interaccionar con un programa que los use. El uso de algoritmos evolutivos se puede hacer a muchos niveles, desde el corredor de bolsa que simplemente aplica un algoritmo genético junto con otros algoritmos de optimización desde una hoja Excel, hasta el científico que quiere probar la eficiencia de un nuevo operador de variación o esquema de sustitución que ha diseñado.

Con respecto a los programas que incluyen algoritmo de optimización, es difícil hablar ya que habitualmente no están accesibles al usuario para su modificación; y no se suele dar muchos detalles; habitualmente uno está más interesado en las librerías que le permiten resolver a uno sus propios problemas.

Las librerías más maduras están escritas en Java y C++, habitualmente se trata de librerías orientadas a objetos, en las cuales todos los objetos de la computación evolutiva se transforman en estructuras de datos que se pueden manipular, y cuya interacción da lugar a un algoritmo evolutivo.

En esta charla miraremos principalmente a JEO (en Java) y EO, y veremos cómo se construye un algoritmo evolutivo con cada una de ellas. Se verá también cómo se puede programar un algoritmo evolutivo en otros lenguajes, tales como PERL.

Página principal del curso