4. ALGORITMOS GENÉTICOS Algoritmo Un algoritmo es una serie de pasos organizados que describe el proceso que se debe seguir, para dar solución a un problema específico.
5. ALGORITMOS GENÉTICOS Genética La genética es el campo de la biología que busca comprender la herencia biológica que se transmite de generación en generación.
6. ALGORITMOS GENÉTICOS | Un poco de historia Evolución Natural Gregor Johann Mendel Charles Robert Darwin Hugo De Vries
8. ALGORITMOS GENÉTICOS Definición Son métodos adaptativos que pueden usarse para resolver problemas de búsqueda y optimización. Están basados en el proceso genético de los organismos vivos.
11. Las soluciones que mejor resuelven el problema son las que tienen más posibilidades de reproducirse.
12.
13.
14. ALGORITMOS GENÉTICOS Herencia Es la transmisión del material genético contenido en el núcleo celular En los seres humanos el 50% del material genético proviene de la madre y el otro 50 del padre; pero el individuo resultante es distinto a los dos progenitores. Algo análogo se hace con algoritmos genéticos.
15. ALGORITMOS GENÉTICOS Mutación En Biología Es una alteración o cambio en la información genética (genotipo) de un ser vivo y que, por lo tanto, va a producir un cambio de características, que se presenta súbita y espontáneamente, y que se puede transmitir o heredar a la descendencia.
16. 1 0 1 1 1 0 1 0 1 0 1 1 0 0 1 0 ALGORITMOS GENÉTICOS Mutación En un AG Se decide con alguna probabilidad si se aplica la mutación o no. De aplicarse se selecciona con alguna probabilidad el bit (o itemdel arreglo) a mutar. De no ser un bit (que sería negado) se elije con alguna probabilidad en que muta.
17. ALGORITMOS GENÉTICOS Cromosomas En Biología Es un sistema de los parámetros que definen una solución propuesta al problema que el algoritmo genético está intentando solucionar El cromosoma se representa a menudo como simple secuencia, aunque una variedad amplia de otra estructuras de datos también se utilizan.
18. ALGORITMOS GENÉTICOS Cromosomas En un AG Suponga que el problema es encontrar el valor del número entero de x entre 0 y 255 f(x) = x2 Secuencias binarias de 8 dígitos Si un cromosoma dado en la población representa el valor 155, su cromosoma sería 10011011.
19. ALGORITMOS GENÉTICOS Cruces El Algoritmo Genético Canónico descrito anteriormente utiliza el cruce basado en un punto, en el cual los dos individuos seleccionados para jugar el papel de padres, son recombinados por medio de la selección de un punto de corte, para posteriormente intercambiar las secciones que se encuentran a la derecha de dicho punto. Se han investigado otros operadores de cruce, habitualmente teniendo en cuenta más de un punto de cruce. De Jong investigó el comportamiento del operador de cruce basado en múltiples puntos, concluyendo que el cruce basado en dos puntos, representaba una mejora mientras que añadir más puntos de cruce no beneficiaba el comportamiento del algoritmo. La ventaja de tener más de un punto de cruce radica en que el espacio de búsqueda puede ser explorado más fácilmente, siendo la principal desventaja el hecho de aumentar la probabilidad de ruptura de buenos esquemas.
20. ALGORITMOS GENÉTICOS Cruces En el operador de cruce basado en dos puntos, los cromosomas (individuos) pueden contemplarse como un circuito en el cual se efectúa la selección aleatoria de dos puntos, tal y como se indica en la Figura .
21. 1 0 1 1 1 0 0 1 1 0 0 1 0 0 0 1 1 0 1 1 0 0 1 0 0 0 1 1 1 0 0 1 ALGORITMOS GENÉTICOS Cruces Se decide con alguna probabilidad si se aplica la cruza o no. De aplicarse se selecciona con alguna probabilidad la posición del arreglo donde se aplica. Gen A Gen B Gen AB Gen BA
22. ALGORITMOS GENÉTICOS Mutación La mutación se considera un operador básico, que proporciona un pequeño elemento de aleatoriedad en la vecindad (entorno) de los individuos de la población. Si bien se admite que el operador de cruce es el responsable de efectuar la búsqueda a lo largo del espacio de posibles soluciones, también parece desprenderse de los experimentos efectuados por varios investigadores que el operador de mutación va ganando en importancia a medida que la población de individuos va convergiendo (Davis). Si bien en la mayoría de las implementaciones de Algoritmos Genéticos se asume que tanto la probabilidad de cruce como la de mutación permanecen constantes, algunos autores han obtenido mejores resultados experimentales modificando la probabilidad de mutación a medida que aumenta el número de iteraciones. Pueden consultarse los trabajos de Ackley, Bramlette, Fogarty y Michalewicz y Janikow.
24. ALGORITMOS GENÉTICOS Aplicaciones En la ejecución de un algoritmo genético hay que decidir con qué frecuencia se va a aplicar cada uno de los algoritmos genéticos; en algunos casos, como en la mutación o el crossover uniforme, se debe de añadir algún parámetro adicional, que indique con qué frecuencia se va a aplicar dentro de cada gen del cromosoma. La frecuencia de aplicación de cada operador estará en función del problema; teniendo en cuenta los efectos de cada operador, tendrá que aplicarse con cierta frecuencia o no. Generalmente, la mutación y otros operadores que generen diversidad se suele aplicar con poca frecuencia; la recombinación se suele aplicar con frecuencia alta.