"As natural selection works solely by and for the good of each being, all corporeal and mental endowments will tend to progress toward perfection"
--
Como la selección natural trabaja exclusivamente por y para el bien del ser, todas las habilidades/dones corporales y mentales tienden a progresar hacia la perfección.
-Charles Darwin, Origin of Species-
Que es un aG?
1. Es una rama de estudio del computo evolutivo.
2. Son métodos heurísticos búsqueda inspirado en lo que se sabe acerca de la evolución natural.
![](https://s3.amazonaws.com/media-p.slid.es/uploads/alfredodejesusgutierrezgomez/images/127404/dos.png)
La naturaleza optimizadora
Aunque el ingenio humano pueda lograr infinidad de inventos, nunca ideará ningún mejor, mas sencillo y directo que los que hace la naturaleza, ya que en sus inventos no falta nada y nada es superfluo - Leonardo Da Vinci
Un grupo de ingenieros que diseñaba un submarino se percataron de que el pingüino posee una forma tal, que al fluir el agua a su alrededor, prácticamente no genera turbulencias en las que se pierda la energía invertida por el ave al nadar y al mismo tiempo, posee un volumen cercano al máximo, lo que permite al pingüino acumular gran cantidad de grasa que lo aísla del frío exterior y constituye su reserva de energía.
La selección natural obra solamente mediante la conservación y acumulación de pequeñas modificaciones heredadas, provechosas todas al ser conservado, Darwin lo denómino el origen de las especies.
![](https://s3.amazonaws.com/media-p.slid.es/uploads/alfredodejesusgutierrezgomez/images/127436/tres.jpg)
- 50-60 un alemán de apellido Rechenberg, introdujo el concepto de "evolutionsstrategie" o estrategias evolutivas, como un método para optimizar funciones de varias variables, que definían dispositivos tales como perfiles de alas de avion.
- 1966. Fogel, Owens y Walsh; dejaron de someter a maquinas de estado finito sometiendo sus diagramas de transición a cambios aleatorios (mutaciones), creando con ello lo que se conoce como "programación evolutiva"
- En los 70's Holland, desarrolló lo que se conoce como "Algoritmos Genéticos (AGs)"; sin embargo su objetivo elaborar un estudio formal acerca del fenómeno de adaptación en sistemas naturales y artificiales, es decir, definir un modelo para la adaptación.
Solo un poco de biologia
![](https://s3.amazonaws.com/media-p.slid.es/uploads/alfredodejesusgutierrezgomez/images/127488/cuatro1.jpg)
algo de conceptos
fenotipo: es el resultado de la interacción del medio ambiente en que se desarrolla un individuo y la herencia que este recibe de sus ancestros.
cromosoma: es una larga molécula de ADN, formada por 4 distintos compuestos mas simples llamados bases o nucleótidos: adenina(A), guanina(G), citocina (c) y tiamina(T).
codones: compuesta por una subcadena de tres nucleótidos.
gen: es el conjunto de nucleótidos que codifican una prótenia completa
alelo: es el valor que posee un gen determinado.
diploide: se le llama a la célula que posee dos juegos de cromosomas.
Codificando el dominio
![](https://s3.amazonaws.com/media-p.slid.es/uploads/alfredodejesusgutierrezgomez/images/127490/cinco.png)
Primero se requiere determinar el espacio en que se encuentran las posibles soluciones al problema que se pretende resolver.
Evaluando población
Cada individuo de una generación de un algoritmo genético recibirá una calificación o para usar el termino biológico, una medida de su grada de adaptación (fitness)
El objetivo, es permitir distinguir propuestas de soluciones buenas de aquellas que no lo son.
La Selección
![](https://s3.amazonaws.com/media-p.slid.es/uploads/alfredodejesusgutierrezgomez/images/127502/seis.jpg)
Cruzamiento
![](https://s3.amazonaws.com/media-p.slid.es/uploads/alfredodejesusgutierrezgomez/images/127508/siete.jpeg)
mutación
![](https://s3.amazonaws.com/media-p.slid.es/uploads/alfredodejesusgutierrezgomez/images/127513/ocho.png)
AGs simple
- Decidir cómo codificar el dominio del problema.
- Generar un conjunto aleatorio (población inicial) de N posibles soluciones, codificadas al problema. A ésta se le llamará población actual.
- Clasificar cada posible solución (individuo) de la población actual.
- Seleccionar dos individuos de la población actual con una probabilidad proporcional a su calificación.
- Lanzar una moneda al aire.
- Si cayó cara, mezclar los códigos de los dos individuos seleccionados para formar dos híbridos, a los que llamaremos nuevos individuos.
ags simple
- Si cayo cruz llamamos a los individuos seleccionados nuevos individuos.
- Por cada bit de cada nuevo individuo lanzar otra moneda al aire.
- Si cae cara cambiar el bit en turno por su complemento.
- Si cae cruz el bit permanece inalterado.
- Incluir a los dos nuevos individuos en una nueva población.
- Si la nueva población tiene ya N individuos, llamarla población actual y regresar al paso 3, a menos que se cumpla alguna condición de terminación.
- Si no regresar al paso 4.
'What does your Master teach?'
asked a visitor.
'Nothing,' said the disciple.
'Then why does he give discurses?'
'He only points the way - he teaches nothing.'
-- Anthony de Mello, One Minute Wisdom--
Bibliografia
Genetic Algorithms + Data Structures = Evolution Programs, Michelwicz, Editorial Springer.
Evolutionary Design by computer, Peter Bentley, Editorial Morgan Kaufmann Publishers. Inc.
Algoritmos Genéticos, Ángel Kuri, José Galaviz, Editorial UNAM & FCE
AGs
By Alfredo De Jesus Gutierrez Gomez
AGs
Introducción a los algoritmos genéticos
- 514