You are on page 1of 43

Algoritmos Genticos

Introduccion a la Robtica Inteligente


3 Abril 2013

(IRIN)

AGs

03/04/2013

1 / 43

ndice

Introduccin

Algoritmos Genticos

Algunos Fundamentos Matemticos

Conclusiones

(IRIN)

AGs

03/04/2013

2 / 43

Introduccin

Algoritmos Genticos

Algunos Fundamentos Matemticos

Conclusiones

(IRIN)

AGs

03/04/2013

3 / 43

Denicin

Los algoritmos genticos son algoritmos de bsqueda probabilstica u optimizacin que transforman iterativamente un conjunto (llamado poblacin) de objetos matemticos, cada uno con un valor de coste (tness) asociado, en una nueva poblacin de descendientes usando principios Darvinianos de seleccin natural y usando operaciones genticas naturales tales como crossover (reproduccin sexual) y mutacin.

(IRIN)

AGs

03/04/2013

4 / 43

AGs de un vistazo

Premisa
La evolucin funcion una vez, puede ser que funcione de nuevo

Lo esencial
Una pila de soluciones Combinar las soluciones existentes para producir nuevas soluciones Mutar soluciones actuales para diversidad a largo plazo Sacricar a la poblacin

(IRIN)

AGs

03/04/2013

5 / 43

AGs de un vistazo (cont.)

Primeras Ideas: John H. Holland


Adaptation in Natural and Articial Systems

Otros nombres: K. DeJong y D. Goldberg Tpicamente usado en optimizacin discreta Caractersticas:


No son muy rpidos Bsqueda en paralelo

Caractersticas especiales:
Combinaciones de buenas soluciones Muchas variantes. e.g.: modelos reproductivos, operadores, ...

(IRIN)

AGs

03/04/2013

6 / 43

Introduccin General

Son una sub-clase de la computacin evolutiva Estn basados en la teora de la evolucin de Darwin Historia:
La computacin evolutiva se desarroll en los 60s Los algoritmos genticos en los 70s

(IRIN)

AGs

03/04/2013

7 / 43

Introduccin Biolgica - Clula


Todo animal est compuesto de clulas trabajando conjuntamente El centro de cada clula es el ncleo El ncleo contiene la informacin gentica

(IRIN)

AGs

03/04/2013

8 / 43

Introduccin Biolgica - Cromosomas


La informacin gentica se almacena en los cromosomas Cada cromosoma est compuesto de ADN Los cromosomas en los humanos forman pares Los cromosomas estn divididos en partes: Genes Cada gen puede adquirir diferentes valores: alelos Cada gen tiene una nica posicin (locus) en cada cromosoma

(IRIN)

AGs

03/04/2013

9 / 43

Introduccin Biolgica - Gentica

El conjunto de todos los genes es un genotipo Cada genotipo desarrolla un fenotipo Los alelos pueden ser dominantes o recesivos
Los dominantes siempre se expresan en el fenotipo Los recesivos pueden mantenerse durante generaciones sin dar la cara

(IRIN)

AGs

03/04/2013

10 / 43

Introduccin Biolgica - Reproduccin


Meiosis: Un tipo de reproduccin celular en el que el nmero de cromosomas es reducido a la mitad separando cromosomas homlogos Mitosis: Un tipo de reproduccin asexual en el que la clula se divide creando una rplica (copia exacta) con el mismo nmero de cromosomas

(IRIN)

AGs

03/04/2013

11 / 43

Introduccin Biolgica - Reproduccin

Durante la reproduccin ocurren combinaciones y errores Gracias a estas, la variedad existe Los ms importantes:
Cross-over Mutacin

(IRIN)

AGs

03/04/2013

12 / 43

Introduccin Biolgica - Seleccin Natural

Se preservan las variaciones favorables y se rechazan las variaciones no favorables Cada generacin nacen nuevos individuos, por lo que existe una lucha permanente Los individuos con ventajas tienen una mayor posibilidad de supervivencia: Supervivencia del ms adecuado Aspectos importantes:
Adaptacin al entorno Aislamiento de especies con las que no se puede reproducir

(IRIN)

AGs

03/04/2013

13 / 43

Introduccin

Algoritmos Genticos

Algunos Fundamentos Matemticos

Conclusiones

(IRIN)

AGs

03/04/2013

14 / 43

Differencias con otros algoritmos

Los AGs trabajan con un codicacin del conjunto de parmetros, no con los parmetros mismos Los AGs buscan en un conjunto de puntos, no un nico punto Los AGs utilizan una funcin objetivo, no derivadas, funcionales u otras funciones Los AGs utilizan reglas de transiccin probabilstica, no determinsticas.

(IRIN)

AGs

03/04/2013

15 / 43

Espacio de Bsqueda
Cada individuo busca la mejor solucin en un conjunto Este espacio es el espacio de bsqueda Cada punto en el espacio de bsqueda es una posible solucin Cada punto tiene una valor de tness(encaje) asociado Los algoritmos genticos buscan soluciones en paralelo Los problemas:
ptimos locales Condiciones iniciales

(IRIN)

AGs

03/04/2013

16 / 43

Algoritmo Bsico

Se comienza con una poblacin aleatoria de n individuos Se evala cada individuo Se crea una nueva generacin
Seleccin: Los mejores Recombinacin: Entre los mejores Mutacin: Aleatoria

Se evala la nueva generacin Repetimos para m generaciones

(IRIN)

AGs

03/04/2013

17 / 43

Codicacin

Los cromosomas se codican en cadenas de bits Cada cromosoma representa un individuo Cada individuo es una solucin, aunque no la mejor La codicacin depende del problema a resolver

1 0 0 1 1
(IRIN) AGs 03/04/2013 18 / 43

Seleccin
Principal idea: Los mejores tienen ms posibilidades de ser seleccionados Tpicamente la ruleta
Asigna a cada individuo una parte de la ruleta Girar la ruleta n veces para crear una poblacin de n individuos

(IRIN)

AGs

03/04/2013

19 / 43

Crossover
Se seleccionan 2 individuos Se realiza un cruce con probabilidad Pc Pc tpicamente en el rango (0.6, 0.9) Se selecciona un punto de cruce aleatorio

(IRIN)

AGs

03/04/2013

20 / 43

Mutacin

Alterar cada gen con probabilidad Pm


1 , Pm tpicamente en el rango ( Long .Poblacion 1 Long .Cromosoma )

(IRIN)

AGs

03/04/2013

21 / 43

Un Primer Ejemplo - Denicin

Un ejemplo sencillo: max (x 2 ) donde x {0, 1, .,31} Algoritmo gentico


Codicacin en 5 bits, e.g. 01101 13 Poblacin de 4 individuos Inicio aleatorio Seleccin por ruleta Crossover Mutacin

(IRIN)

AGs

03/04/2013

22 / 43

Un Primer Ejemplo - Seleccin

(IRIN)

AGs

03/04/2013

23 / 43

Un Primer Ejemplo - Crossover

(IRIN)

AGs

03/04/2013

24 / 43

Un Primer Ejemplo - Mutacin

(IRIN)

AGs

03/04/2013

25 / 43

Otro ejemplo sencillo - TSP


El problema del vendedor viajero (Travelling Salesman Problem) Dado un conjunto de ciudades encontrar un recorrido de tal manera que:
Cada ciudad slo se visite una vez La distancia recorrida se minimice

(IRIN)

AGs

03/04/2013

26 / 43

TSP - Representacin

Representacin en una lista ordenada

1) Londres 2) Venecia

3) Madrid 4) Singapur

5) Pekn 6) Nueva York

7) Tokio 8) El Cairo

Individuo1: ( 3 5 7 2 1 6 4 8 ) Individuo2: ( 2 5 7 6 8 1 3 4 ) ...

(IRIN)

AGs

03/04/2013

27 / 43

TSP

Generacin 0

(IRIN)

AGs

03/04/2013

28 / 43

TSP
Generacin 1

(IRIN)

AGs

03/04/2013

29 / 43

TSP
Generacin 30

(IRIN)

AGs

03/04/2013

30 / 43

TSP
Generacin 43

(IRIN)

AGs

03/04/2013

31 / 43

TSP
Generacin 100

(IRIN)

AGs

03/04/2013

32 / 43

Introduccin

Algoritmos Genticos

Algunos Fundamentos Matemticos

Conclusiones

(IRIN)

AGs

03/04/2013

33 / 43

Fundamentos Matemticos - Introduccin

Suponemos el cromosoma A = a1 a2 a3 an Supongamos ai {0, 1} Denotaremos al alelo que puede tomar valor 0 o 1 Denimos un schema H como el cromosoma representando un conjunto de cromosomas con alelos idnticos
e.g. *01**1

Denimos el orden del esquema H, o(H ), como el nmero de posiciones jas


e.g. *01**1 3

Denimos la longitud del esquema H, (H ), como la distancia entre la primera y ltima posicin ja del cromosoma
e.g. *01**1 6 2 = 4

(IRIN)

AGs

03/04/2013

34 / 43

Fundamentos Matemticos - Seleccin

Suponemos que en un instante t tenemos m individuos de un schema H en una poblacin A(t ), escribimos m = m(H , t ) En la reproduccin, un individuo es seleccionado con una proporcin directa a su tness
Ai es seleccionado con probabilidad pi = fi / f

Despus de generar una nueva generacin tenemos m(H , t + 1) representantes del schema H .
m(H , t + 1) = m(H , t ) n f (H )/ f , donde f (H ) es la media de los valores de tness de los individuos representados por el schema H en t

Denimos la tness media de toda la poblacin como f =


m(H , t + 1) =
H) m(H , t ) f ( f

f /n

(IRIN)

AGs

03/04/2013

35 / 43

Fundamentos Matemticos - Seleccin


Un schema crece en proporcin a la relacin entre la tness media del schema y la tness media de la poblacin Un schema con tness media superior a la media de la poblacin representar a ms individuos en la siguiente poblacin. Un schema con tness media inferior a la media de la poblacin representar a menos individuos en la siguiente poblacin. Si suponemos f (H ) = f + c f
cf m(H , t + 1) = m(H , t ) f + = (1 + c ) m (H , t ) f

Si suponemos c constante
m(H , t ) = m(H , 0) (1 + c )t

(IRIN)

AGs

03/04/2013

36 / 43

Fundamentos Matemticos - Crossover


A H1 H2 = = = 0 * * 1 1 * 1 * * | | | 1 * 1 0 * 0 0 * * 0 0 *

(H1 ) = 5 (H2 ) = 1 Probabilidad de morir


pd 1 = (H1 )/(l 1) pd 2 = (H2 )/(l 1)

Probabilidad de sobrevivir:
psi = 1 pdi = 1 (Hi )/(l 1)

Como probabilidad de crossover es pc


ps 1 pc
(H ) l 1 f (H ) f

Por lo tanto:
m(H , t + 1) m(H , t )
(IRIN)

[1 pc
AGs

(H ) l 1 ]
03/04/2013 37 / 43

Fundamentos Matemticos - Mutacin

Probabilidad de mutacin: pm El schema sobrevive si cada uno de los o(H ) bits sobrevive Probabilidad de supervivencia
ps = (1 pm )o(H )

Por lo tanto:
m(H , t + 1) m(H , t )
f (H ) f

[1 pc

(H ) l 1 ]

[(1 pm )o(H ) ]

(IRIN)

AGs

03/04/2013

38 / 43

Introduccin

Algoritmos Genticos

Algunos Fundamentos Matemticos

Conclusiones

(IRIN)

AGs

03/04/2013

39 / 43

Conclusiones

Problemas de los AGs:


Hay que elegir demasiadas cosas:
representacin tamao de la poblacin, prob. de crossover, prob. de mutacin,... operadores de seleccin, crossover, mutacin,...

Escalabilidad La solucin slo es tan buena como la funcin de tness


Normalmente la parte ms difcil

(IRIN)

AGs

03/04/2013

40 / 43

Conclusiones

Benecio de los AGs:


Sencillo de entender Modular, separado de la aplicacin Permite optimizacin multi-objetivo Bueno en entornos con ruido Siempre hay una solucin Distribuido, paralelo,...

(IRIN)

AGs

03/04/2013

41 / 43

Gracias

GRACIAS!!

(IRIN)

AGs

03/04/2013

42 / 43

Gracias

GRACIAS!!

(IRIN)

AGs

03/04/2013

43 / 43

You might also like