Curso Avanzado II

Algoritmos Genéticos

Dr. Pedro Flores Pérez. Universidad de Sonora.

pflores@gauss.mat.uson.mx,
pedro.flores.perez@gmail.com

Los algoritmos genéticos son métodos para optimización de funciones basados en principios en los que se sustenta la evolución de las especies. Para esto, dentro de su implementación se establecen métodos análogos a la supervivencia
de los individuos más aptos y los procedimientos genéticos de cruzamiento y mutación.
La característica principal que los hacen importantes es que se pueden aplicar a funciones sumamente complejas y de las cuales no es necesario pedir algún tipo de comportamiento (como diferenciabilidad) por lo cual se han convertido en una herramienta muy poderosa para resolver problemas de optimización en todas sus distintas áreas (control, inteligencia artificial, etc.). Aunado a esto, tienen la ventaja adicional de que los códigos de algoritmos genéticos son sumamente simples.
A la fecha, podría decirse que no hay área de ciencias e ingeniería en la que no aparezcan algoritmos genéticos, por esta razón se propone la implementación de este curso con los siguientes

Este curso está orientado a presentar los principales aspectos de los algoritmos genéticos, sin embargo, cabe aclarar que Algoritmos Genéticos es toda un área de trabajo, y por lo mismo, sólo nos centraremos en los siguientes temas:

  1. Presentar los aspectos básicos de los algoritmos genéticos.
  2. Presentar distintos esquemas de implementación de algoritmos genéticos.
  3. Discutir algunos problemas que puedan ser resueltos por medio de Algoritmos Genéticos.

En especial se hará énfasis en la implementación de Algoritmos Genéticos para
problemas de variables reales.
Programa del curso

  1. Introducción a los algoritmos genéticos.
    a. Aspectos básicos
    b. Distintas versiones de Algoritmos Genéticos.
    c. Ajuste de parámetros en los Algoritmos Genéticos.
  2. Implementación para problemas discretos. El problema de las reinas y programación de maestros-horarios-cursos
  3. Algoritmos Genéticos para problemas reales. Representación Real y Representación Binaria. Las funciones de De Jong.
  4. Áreas de aplicación de los Algoritmos Genéticos.
  5. Versiones autoadaptables de Algoritmos Genético. (Si alcanza el tiempo)
  6. Presentación de versiones de código por parte de los asistentes.

Dado que el problema principal que se presenta para conseguir aplicaciones
exitosas de algoritmos genéticos es la realización adecuada de una modelación
del problema y la elección de algún método de algoritmo genético, se propone
revisar algunos artículos de aplicaciones para profundizar en esta área. Los
artículos serán elegidos libremente por los asistentes al curso.
Bibliografía
David E. Goldberg. Genetic Algorithms in Search, Optimization and
Machine Learning. Addison-Wesley (1989).
Michaalewicz, Z. Genetic Algorithms + Data Structures – Evolution
Programs. Springer-Verlag (1992).
Total de horas del curso (mínimo 3, máximo 6): 3 horas.
Horas de laboratorio de cómputo (si requiere el curso)
El curso requiere ser impartido en un centro de cómputo.
Prerequisitos de los asistentes al curso
1. Conocimientos sobre programación en algún lenguaje.
2. Conocimientos básicos sobre modelación matemática de problemas reales
Requisitos de hardware, software y material para impartir el curso:
Computadoras con compilador de C/C++.
Enviar la información a: rbojeda@smcca.org.mx
Con copia a: justinoalavez@hotmail.com ; anir26@yahoo.com
Y correo del que invita al instructor