Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Algoritmos Genéticos
1. INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE CÓMPUTO Profesor: M. en .C. José Luis Calderón Osorno Algoritmos Genéticos REDES NEURONALES ARTIFICIALES I
2.
3.
4.
5.
6.
7.
8.
9. PROCEDIMIENTO AG tiempo = 0 inicializa_población(tiempo) evalúa_población(tiempo) mientras no condición_de_terminación tiempo = tiempo + 1 construye_población(tiempo) a partir de población(tiempo – 1) usando selección modifica_población(tiempo) usando operadores genéticos evalúa_población(tiempo) reemplazar fin mientras ALGORITMOS GENÉTICOS Algoritmo genético básico
10.
11.
12. ALGORITMOS GENÉTICOS Operadores genéticos: SELECCIÓN Proceso que escoge los miembros de la población que serán utilizados para la reproducción. Su meta es dar más oportunidades de selección a los miembros más aptos de la población . Lo más común es implementar una “ruleta con truco” para elegir a los individuos, donde los más aptos tienen una mayor parte en la ruleta, por lo tanto, más probabilidad de ser escogidos. Existen otros métodos como el “torneo” en que dos individuos son elegidos aleatoriamente y se escoge al más apto.
13. ALGORITMOS GENÉTICOS Operador que c onsiste en unir en alguna forma los cromosomas de dos padres para formar dos descendientes. Lo más sencillo es implementar cruza de un punto , que toma dos individuos y corta sus cromosomas en una posición seleccionada al azar, para producir dos segmentos anteriores y dos posteriores, los posteriores se intercambian para obtener dos cromosomas nuevos , como se ve en la siguiente figura: Operadores genéticos: CRUZA
14. ALGORITMOS GENÉTICOS Se encarga de modificar en forma aleatoria uno o más genes del cromosoma de un descendiente. La siguiente figura muestra el quinto gen siendo mutado, a lo que se conoce como “mutación sencilla”: Operadores genéticos: MUTACIÓN
15. ALGORITMOS GENÉTICOS Es el método por el cual se insertan los hijos en la población, por ejemplo mediante la eliminación del individuo más débil o al azar . Operadores genéticos: REEMPLAZO
16. ALGORITMOS GENÉTICOS Existen varios paquetes y bibliotecas de algoritmos genéticos en el mercado, a continuación se presentan algunos: GAGS Generador de aplicaciones basadas en algoritmos genéticos, escrito en C++. Desarrollado por el grupo de J.J. Melero. Dirección primaria: kal-el.ugr.es/gags.html Dirección para descargar vía FTP : kal-el.ugr.es/GAGS/. GALIB Biblioteca de algoritmos genéticos de Matthew. Conjunto de clases en C++ de algoritmos genéticos. Dirección primaria: lancet.mit.edu/ga/ Dirección para descargar vía FTP :lancet.mit.edu/pub/ga/ SOFTWARE
17. SOFTWARE GPDATA Para desarrollar algoritmos genéticos en C++. Dirección primaria: cs.ucl.ac.uk/genetic/papers/ Dirección para descargar vía FTP : ftp.cs.bham.ac.uk/pub/authors/W.B.Langdon/gp-code/ GPJPP Bibliotecas de clases para desarrollar algoritmos genéticos en Java Dirección primaria: www.turbopower.com/~ kimk/gpjpp.asp. ALGORITMOS GENÉTICOS
18. SOFTWARE LIL-GP Herramientas para programación genética en C. Dirección primaria: isl.msu.edu/GA/software/lil-gp/index.html Dirección para descargar vía FTP: isl.cps.msu.edu/pub/GA/lilgp/ GPsys Sistema de programación genética en Java. Dirección primaria: www.cs.ucl.ac.uk/staff/A.Qureshi/gpsys.html. ALGORITMOS GENÉTICOS