Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Computación evolutiva
Ejemplos
2
La Teoría de la Evolución Natural
Creacionismo
Tesis más aceptada sobre el origen de
las especies, durante mucho tiempo.
4
Georges Louis Leclerc (Conde de Buffon)
5
Jean-Baptiste Lamarck
6
Jean-Baptiste Lamarck
7
Charles Darwin
1859: “The Origin of Species”
Derrumba el Lamarckismo
8
Selección Natural
Proceso natural por el cual los individuos mas aptos de un
grupo de descendientes sobrevive.
9
Charles Darwin
Los individuos menos adaptados al
medio ambiente tienen menos
probabilidades de sobrevivir y menos
probabilidades de reproducirse.
11
August Weisman
Experimento: cortó las colas de
un grupo de ratas durante 22
generaciones (1,592 ratas), y
comprobó que continuaban
naciendo con cola igual que sus
antepasados.
13
Johann Gregor Mendel
Observación de las
características heredadas.
14
Experimentos de Mendel
15
Hugo De Vries
El botánico holandés (1848-1935) introdujo el
concepto de mutación.
Creía que las especies no surgían de manera
gradual, sino a través de mutaciones de especies
conocidas.
Si estas mutaciones derivan en características
beneficiosas, las mismas se propagan entre la
descendencia.
Fue responsable de que los trabajos de Mendel
viesen la luz, ya que en 1900, dieciséis años
después de la muerte de Mendel, encontró dichos
trabajos y los dio a conocer.
16
Neo-Darwinismo
17
Evolución
18
Computación Evolutiva
19
Computación Evolutiva
20
Computación Evolutiva
Rama de la Computación Emergente que engloba
técnicas que simulan la Evolución Natural.
21
La computacion evolutiva
Años 70: propuesta por John Holland (1975)
“Adaptation in natural and artificial systems”
Tesis doctoral en la Universidad de Michigan
Es posible implementar, en un ordenador, un programa que,
guiado por los principios de la herencia y la evolución de las
especies, suministre la solución de un problema.
Propone por primera vez una clase de métodos, llamados
Algoritmos Genéticos, para la resolución de problemas.
La aparición de computadoras de altas prestaciones permite el uso
practico de la Computación Evolutiva
Años 80: divulgación por Goldberg y Davis
La computación evolutiva no trata tanto de reproducir ciertos
fenómenos que suceden en la naturaleza, sino de aprovechar las
ideas genéricas detrás de ellos: la evolución
22
Mecanismo de la evolución
23
Los algoritmos evolutivos
Modo de conseguirlo
“adaptación al entorno”
24
Estructura de los AE
25
Propósito de los AE
Un AE debe encontrar
26
El Ciclo Evolutivo
Selection
Parents
Recombination
Population Mutation
Replacement
Offspring
27
Estructura y componentes
básicos de los AGs
28
Definiciones
29
Definiciones
Alelo
Gen
Cromosoma
Población
Índice
30
Terminología
32
Los individuos
Estructura y contenido de los individuos
33
Adaptabilidad
34
Bucle básico de un AG
35
Secuencia de un AG
36
Población inicial
Tamaño de la Población
Este parámetro nos indica el número de individuos que
tenemos en nuestra población para una generación
determinada.
En caso de que esta medida sea insuficiente, el algoritmo
genético tiene pocas posibilidades de realizar
reproducciones con lo que se realizaría una búsqueda de
soluciones escasa y poco óptima.
Por otro lado si la población es excesiva, el algoritmo
genético será excesivamente lento.
37
Población inicial
38
Población inicial
39
Evaluación de los individuos
La aptitud de los individuos se evalúa a
partir de:
40
Evaluación de los individuos
f x
41
Procedimientos básicos de un AG
42
Mecanismos de muestreo de poblaciones
Muestreo directo:
43
Mecanismos de muestreo de poblaciones
44
Mecanismos de muestreo de poblaciones
Muestreos estocásticos:
Se asignan las probabilidades de selección o puntuaciones en
función de su aptitud.
ui
pi
u1 un
45
Mecanismos de muestreo de poblaciones
46
Procedimientos básicos de un AG
La reproducción o crossover
47
Procedimientos básicos de un AG
48
Operadores geneticos de recombinacion
cruce
49
Operadores geneticos de recombinacion
Cruce a 2 puntos
50
Operadores geneticos de recombinacion
Mutación
52
Operadores genéticos de alteración
Mutación
53
Operadores genéticos de alteración
Probabilidad de mutación
54
Operadores genéticos de alteración
Mutación
55
Procedimientos básicos de un AG
s: cantidad de descendientes
n: cantidad de progenitores
El numero de descendientes s es aleatorio
Para valores grandes de s varia más la población de una
generación a otra. (muchas características)
s menor o igual al 60% de n.
56
Procedimientos básicos de un AG
El proceso de remplazo
Remplazo inmediato de los progenitores (hijos por padres)
Remplazo por inserción. Si: (se mantiene la población)
s < n se sustituyen s progenitores de la población.
s > n se muestrean n miembros de la
población y se descartan s de menor fitness (muestreo entre
padres e hijos)
Remplazo por inclusión se pasa a muestrear los s+n, la
población crece.
57
Bucle básico de un AG
58
Ejemplo: maximizar la función costo
f(x) = x2 sobre los enteros [0..31]
Selección Proporcional
al valor del fitness
59
Pseudocódigo de un AG
60
Como construir el AG
61
Algoritmo de ejemplo
62
Algoritmo de ejemplo
63
Algoritmo de ejemplo
64
Algoritmo de ejemplo
65
Algoritmo de ejemplo
66
Algoritmo de ejemplo
67
Algoritmo de ejemplo
68
Algoritmo de ejemplo
69
Algoritmo de ejemplo
70
Algoritmo de ejemplo
71
Algoritmo de ejemplo
Sub-funciones –
Cruce y mutación
72
Algoritmo de ejemplo
Sub-funciones – mutación
73
Ejemplo: maximizar la funcion peaks
74
Ejemplo: maximizar la funcion peaks
75
Ventajas de un AG
76
Desventajas de un AG
77