computaci on evolutiva algoritmos gen...

62
Computaci´ on Evolutiva Algoritmos Gen´ eticos Diego Milone Inteligencia Computacional Departamento de Inform´ atica FICH-UNL

Upload: phamtuong

Post on 21-Nov-2018

223 views

Category:

Documents


0 download

TRANSCRIPT

Computacion EvolutivaAlgoritmos Geneticos

Diego Milone

Inteligencia ComputacionalDepartamento de Informatica

FICH-UNL

:

Hace 200 anos...

La idea de que las especies cambian ya se confrontaba alcreacionismo.

El cuello de las jirafas segun Jean-Baptiste Lamarck

Buena idea pero... ¿se heredan los caracteres adquiridos?

:

Hace 200 anos...

La idea de que las especies cambian ya se confrontaba alcreacionismo.El cuello de las jirafas segun Jean-Baptiste Lamarck

Buena idea pero... ¿se heredan los caracteres adquiridos?

:

Hace 200 anos...

La idea de que las especies cambian ya se confrontaba alcreacionismo.El cuello de las jirafas segun Jean-Baptiste Lamarck

Buena idea pero... ¿se heredan los caracteres adquiridos?

:

Hace 150 anos...

La idea de la evolucion genera un cambio de paradigmas tangrande que hasta hoy, incluso en computacion, estamos hablandode Charles R. Darwin

Variacion y seleccion natural: si hay variabilidad en la longituddel cuello de las jirafas, las de cuello corto tendran menosprobabilidades de sobrevivir y procrear. Ası...

...en la proxima generacion habra menos jirafas de cuello corto.

:

Hace 150 anos...

La idea de la evolucion genera un cambio de paradigmas tangrande que hasta hoy, incluso en computacion, estamos hablandode Charles R. Darwin

Variacion y seleccion natural: si hay variabilidad en la longituddel cuello de las jirafas, las de cuello corto tendran menosprobabilidades de sobrevivir y procrear. Ası...

...en la proxima generacion habra menos jirafas de cuello corto.

:

Hace 150 anos...

La idea de la evolucion genera un cambio de paradigmas tangrande que hasta hoy, incluso en computacion, estamos hablandode Charles R. Darwin

Variacion y seleccion natural: si hay variabilidad en la longituddel cuello de las jirafas, las de cuello corto tendran menosprobabilidades de sobrevivir y procrear. Ası...

...en la proxima generacion habra menos jirafas de cuello corto.

:

Y...

¿Que tiene que ver todo esto con la computacion?

¿Y con la “inteligencia” computacional?

¿Podremos ver las ideas de Darwin como un algoritmo?

¿Podremos usar estas ideas para resolver problemas con lacomputadora?

Introduccion Diseno de un AE Caracterısticas principales

Organizacion de la clase

IntroduccionLa inspiracion biologicaLa evolucion como un algoritmoElementos de un algoritmo evolutivo

Diseno de una solucion mediante algoritmos evolutivosRepresentacion de los individuosFuncion de aptitudEstrategias de seleccionOperadores de variacion y reproduccion

Caracterısticas principalesCaracterısticas principales

Introduccion Diseno de un AE Caracterısticas principales

Organizacion de la clase

IntroduccionLa inspiracion biologicaLa evolucion como un algoritmoElementos de un algoritmo evolutivo

Diseno de una solucion mediante algoritmos evolutivosRepresentacion de los individuosFuncion de aptitudEstrategias de seleccionOperadores de variacion y reproduccion

Caracterısticas principalesCaracterısticas principales

:

Introduccion Diseno de un AE Caracterısticas principales

La inspiracion biologica

X El creacionismo y las ideas de Lamarck

X Darwin versus Lamarck

• Poblaciones versus individuos

• Mejores versus “adaptados”

• Aleatoriedad en la seleccion natural

• Diversidad y operadores de variacion en la poblacion

:

Introduccion Diseno de un AE Caracterısticas principales

La inspiracion biologica

X El creacionismo y las ideas de Lamarck

X Darwin versus Lamarck

• Poblaciones versus individuos

• Mejores versus “adaptados”

• Aleatoriedad en la seleccion natural

• Diversidad y operadores de variacion en la poblacion

:

Introduccion Diseno de un AE Caracterısticas principales

La inspiracion biologica

X El creacionismo y las ideas de Lamarck

X Darwin versus Lamarck

• Poblaciones versus individuos

• Mejores versus “adaptados”

• Aleatoriedad en la seleccion natural

• Diversidad y operadores de variacion en la poblacion

:

Introduccion Diseno de un AE Caracterısticas principales

La inspiracion biologica

X El creacionismo y las ideas de Lamarck

X Darwin versus Lamarck

• Poblaciones versus individuos

• Mejores versus “adaptados”

• Aleatoriedad en la seleccion natural

• Diversidad y operadores de variacion en la poblacion

:

Introduccion Diseno de un AE Caracterısticas principales

La inspiracion biologica

X El creacionismo y las ideas de Lamarck

X Darwin versus Lamarck

• Poblaciones versus individuos

• Mejores versus “adaptados”

• Aleatoriedad en la seleccion natural

• Diversidad y operadores de variacion en la poblacion

:

Introduccion Diseno de un AE Caracterısticas principales

La evolucion como un algoritmo

Inicializar(Poblacion)

MejorAptitud ← Evaluar(Poblacion)

mientras MejorAptitud < AptitudRequerida

Progenitores ← SeleccionNatural(Poblacion)

Poblacion ← ReproduccionVariacion(Progenitores)

MejorAptitud ← Evaluar(Poblacion)

fin

:

Introduccion Diseno de un AE Caracterısticas principales

La evolucion como un algoritmo

Inicializar(Poblacion)

MejorAptitud ← Evaluar(Poblacion)

mientras MejorAptitud < AptitudRequerida

Progenitores ← SeleccionNatural(Poblacion)

Poblacion ← ReproduccionVariacion(Progenitores)

MejorAptitud ← Evaluar(Poblacion)

fin

:

Introduccion Diseno de un AE Caracterısticas principales

La evolucion como un algoritmo

Inicializar(Poblacion)

MejorAptitud ← Evaluar(Poblacion)

mientras MejorAptitud < AptitudRequerida

Progenitores ← SeleccionNatural(Poblacion)

Poblacion ← ReproduccionVariacion(Progenitores)

MejorAptitud ← Evaluar(Poblacion)

fin

:

Introduccion Diseno de un AE Caracterısticas principales

La evolucion como un algoritmo

Inicializar(Poblacion)

MejorAptitud ← Evaluar(Poblacion)

mientras MejorAptitud < AptitudRequerida

Progenitores ← SeleccionNatural(Poblacion)

Poblacion ← ReproduccionVariacion(Progenitores)

MejorAptitud ← Evaluar(Poblacion)

fin

:

Introduccion Diseno de un AE Caracterısticas principales

La evolucion como un algoritmo

Inicializar(Poblacion)

MejorAptitud ← Evaluar(Poblacion)

mientras MejorAptitud < AptitudRequerida

Progenitores ← SeleccionNatural(Poblacion)

Poblacion ← ReproduccionVariacion(Progenitores)

MejorAptitud ← Evaluar(Poblacion)

fin

:

Introduccion Diseno de un AE Caracterısticas principales

Elementos de un algoritmo evolutivo

• Representacion de los individuos

• Funcion de aptitud

• Mecanismo de seleccion

• Operadores de variacion

• Reproduccion y reemplazo generacional

:

Introduccion Diseno de un AE Caracterısticas principales

Elementos de un algoritmo evolutivo

• Representacion de los individuos

• Funcion de aptitud

• Mecanismo de seleccion

• Operadores de variacion

• Reproduccion y reemplazo generacional

:

Introduccion Diseno de un AE Caracterısticas principales

Elementos de un algoritmo evolutivo

• Representacion de los individuos

• Funcion de aptitud

• Mecanismo de seleccion

• Operadores de variacion

• Reproduccion y reemplazo generacional

:

Introduccion Diseno de un AE Caracterısticas principales

Elementos de un algoritmo evolutivo

• Representacion de los individuos

• Funcion de aptitud

• Mecanismo de seleccion

• Operadores de variacion

• Reproduccion y reemplazo generacional

:

Introduccion Diseno de un AE Caracterısticas principales

Elementos de un algoritmo evolutivo

• Representacion de los individuos

• Funcion de aptitud

• Mecanismo de seleccion

• Operadores de variacion

• Reproduccion y reemplazo generacional

:

Introduccion Diseno de un AE Caracterısticas principales

Elementos de un algoritmo evolutivo

• Representacion de los individuos

• Funcion de aptitud

• Mecanismo de seleccion

• Operadores de variacion

• Reproduccion y reemplazo generacional

Introduccion Diseno de un AE Caracterısticas principales

Organizacion de la clase

IntroduccionLa inspiracion biologicaLa evolucion como un algoritmoElementos de un algoritmo evolutivo

Diseno de una solucion mediante algoritmos evolutivosRepresentacion de los individuosFuncion de aptitudEstrategias de seleccionOperadores de variacion y reproduccion

Caracterısticas principalesCaracterısticas principales

:

Introduccion Diseno de un AE Caracterısticas principales

Representacion de los individuos

(Agoritmos Geneticos)

Espacio delfenotipo

4.56

556

1.253456Espacio delgenotipo

1101

1001

01010011

Codificación

Decodificación

:

Introduccion Diseno de un AE Caracterısticas principales

Representacion de los individuos: ejemplos

• Ubicacion de figuras para el llenado de un area

• Entrenamiento de una red neuronal

• Programacion de un robot

• Circuito para un filtro multibanda

• Problema del agente viajero

• ...

:

Introduccion Diseno de un AE Caracterısticas principales

Representacion de los individuos: ejemplos

• Ubicacion de figuras para el llenado de un area

• Entrenamiento de una red neuronal

• Programacion de un robot

• Circuito para un filtro multibanda

• Problema del agente viajero

• ...

:

Introduccion Diseno de un AE Caracterısticas principales

Representacion de los individuos: ejemplos

• Ubicacion de figuras para el llenado de un area

• Entrenamiento de una red neuronal

• Programacion de un robot

• Circuito para un filtro multibanda

• Problema del agente viajero

• ...

:

Introduccion Diseno de un AE Caracterısticas principales

Representacion de los individuos: ejemplos

• Ubicacion de figuras para el llenado de un area

• Entrenamiento de una red neuronal

• Programacion de un robot

• Circuito para un filtro multibanda

• Problema del agente viajero

• ...

:

Introduccion Diseno de un AE Caracterısticas principales

Representacion de los individuos: ejemplos

• Ubicacion de figuras para el llenado de un area

• Entrenamiento de una red neuronal

• Programacion de un robot

• Circuito para un filtro multibanda

• Problema del agente viajero

• ...

:

Introduccion Diseno de un AE Caracterısticas principales

Funcion de aptitud

• Caracterısticas generales:• Monotonicidad• Precision• Suavidad regulable• Penalizacion de complejidad

• Algunos ejemplos tıpicos:• Promedios de error: cuadrados medios, desviacion media

absoluta, error relativo medio,...• Estadısticas: estimacion de la varianza, validacion cruzada,

verosimilitud, prediccion de error,...• Medidas de informacion: criterio de Akaike, criterio de

informacion Bayesiano, descriptor de mınima longitud,informacion mutua, minimizacion del riesgo empırico

• Otras: correlaciones, distancias,...

:

Introduccion Diseno de un AE Caracterısticas principales

Funcion de aptitud

• Caracterısticas generales:• Monotonicidad• Precision• Suavidad regulable• Penalizacion de complejidad

• Algunos ejemplos tıpicos:• Promedios de error: cuadrados medios, desviacion media

absoluta, error relativo medio,...• Estadısticas: estimacion de la varianza, validacion cruzada,

verosimilitud, prediccion de error,...• Medidas de informacion: criterio de Akaike, criterio de

informacion Bayesiano, descriptor de mınima longitud,informacion mutua, minimizacion del riesgo empırico

• Otras: correlaciones, distancias,...

:

Introduccion Diseno de un AE Caracterısticas principales

Funcion de aptitud: ejemplos

• Ubicacion de figuras para el llenado de un area

• Entrenamiento de una red neuronal

• Programacion de un robot

• Circuito para un filtro multibanda

• Problema del agente viajero

• ...

:

Introduccion Diseno de un AE Caracterısticas principales

Funcion de aptitud: ejemplos

• Ubicacion de figuras para el llenado de un area

• Entrenamiento de una red neuronal

• Programacion de un robot

• Circuito para un filtro multibanda

• Problema del agente viajero

• ...

:

Introduccion Diseno de un AE Caracterısticas principales

Funcion de aptitud: ejemplos

• Ubicacion de figuras para el llenado de un area

• Entrenamiento de una red neuronal

• Programacion de un robot

• Circuito para un filtro multibanda

• Problema del agente viajero

• ...

:

Introduccion Diseno de un AE Caracterısticas principales

Funcion de aptitud: ejemplos

• Ubicacion de figuras para el llenado de un area

• Entrenamiento de una red neuronal

• Programacion de un robot

• Circuito para un filtro multibanda

• Problema del agente viajero

• ...

:

Introduccion Diseno de un AE Caracterısticas principales

Funcion de aptitud: ejemplos

• Ubicacion de figuras para el llenado de un area

• Entrenamiento de una red neuronal

• Programacion de un robot

• Circuito para un filtro multibanda

• Problema del agente viajero

• ...

:

Introduccion Diseno de un AE Caracterısticas principales

Estrategias de seleccion

• Rueda de ruleta

4 5

6

7 1

2 3

• Ventanas

• Competencias

:

Introduccion Diseno de un AE Caracterısticas principales

Estrategias de seleccion

• Rueda de ruleta

4 5

6

7 1

2 3

• Ventanas

• Competencias

:

Introduccion Diseno de un AE Caracterısticas principales

Estrategias de seleccion

• Rueda de ruleta

4 5

6

7 1

2 3

• Ventanas

• Competencias

:

Introduccion Diseno de un AE Caracterısticas principales

Operadores de variacion

• Mutaciones

Punto de mutación

Cromosoma original Cromosoma mutado

1 0 1 1 1011 1 0 1 1 1010

:

Introduccion Diseno de un AE Caracterısticas principales

Operadores de variacion

• Cruzas simples

Punto de cruza

Cromosomas padres Cromosomas hijos

1 1 1 0 1100

1 0 1 1 1011

1 1 1 0 1010

1 0 1 1 1101

• ¿Que rol cumple cada operador en la busqueda?

:

Introduccion Diseno de un AE Caracterısticas principales

Operadores de variacion

• Cruzas simples

Punto de cruza

Cromosomas padres Cromosomas hijos

1 1 1 0 1100

1 0 1 1 1011

1 1 1 0 1010

1 0 1 1 1101

• ¿Que rol cumple cada operador en la busqueda?

:

Introduccion Diseno de un AE Caracterısticas principales

Reemplazo durante la reproduccion

• Reemplazo total

• Reemplazo con brecha generacional

• Elitismo

:

Introduccion Diseno de un AE Caracterısticas principales

Reemplazo durante la reproduccion

• Reemplazo total

• Reemplazo con brecha generacional

• Elitismo

:

Introduccion Diseno de un AE Caracterısticas principales

Reemplazo durante la reproduccion

• Reemplazo total

• Reemplazo con brecha generacional

• Elitismo

Introduccion Diseno de un AE Caracterısticas principales

Organizacion de la clase

IntroduccionLa inspiracion biologicaLa evolucion como un algoritmoElementos de un algoritmo evolutivo

Diseno de una solucion mediante algoritmos evolutivosRepresentacion de los individuosFuncion de aptitudEstrategias de seleccionOperadores de variacion y reproduccion

Caracterısticas principalesCaracterısticas principales

:

Introduccion Diseno de un AE Caracterısticas principales

Analisis de las caracterısticas principales

• Busqueda en un espacio codificado de parametros

• Busqueda en multiples puntos del espacio de soluciones• Ejemplo 1:

:

Introduccion Diseno de un AE Caracterısticas principales

Analisis de las caracterısticas principales

• Busqueda en un espacio codificado de parametros• Busqueda en multiples puntos del espacio de soluciones

• Ejemplo 1:

:

Introduccion Diseno de un AE Caracterısticas principales

Analisis de las caracterısticas principales

• Busqueda en un espacio codificado de parametros

• Busqueda en multiples puntos del espacio de soluciones• Ejemplo 2:

:

Introduccion Diseno de un AE Caracterısticas principales

Analisis de las caracterısticas principales

• Busqueda en un espacio codificado de parametros

• Busqueda en multiples puntos del espacio de soluciones

• Pocos requisitos sobre la funcion objetivo

• Algoritmo de naturaleza estocastica

• La estructura de los operadores los hace muy efectivos alrealizar busquedas globales

• Multiples objetivos

• Algunas desventajas...?

:

Introduccion Diseno de un AE Caracterısticas principales

Analisis de las caracterısticas principales

• Busqueda en un espacio codificado de parametros

• Busqueda en multiples puntos del espacio de soluciones

• Pocos requisitos sobre la funcion objetivo

• Algoritmo de naturaleza estocastica

• La estructura de los operadores los hace muy efectivos alrealizar busquedas globales

• Multiples objetivos

• Algunas desventajas...?

:

Introduccion Diseno de un AE Caracterısticas principales

Analisis de las caracterısticas principales

• Busqueda en un espacio codificado de parametros

• Busqueda en multiples puntos del espacio de soluciones

• Pocos requisitos sobre la funcion objetivo

• Algoritmo de naturaleza estocastica

• La estructura de los operadores los hace muy efectivos alrealizar busquedas globales

• Multiples objetivos

• Algunas desventajas...?

:

Introduccion Diseno de un AE Caracterısticas principales

Analisis de las caracterısticas principales

• Busqueda en un espacio codificado de parametros

• Busqueda en multiples puntos del espacio de soluciones

• Pocos requisitos sobre la funcion objetivo

• Algoritmo de naturaleza estocastica

• La estructura de los operadores los hace muy efectivos alrealizar busquedas globales

• Multiples objetivos

• Algunas desventajas...?

:

Introduccion Diseno de un AE Caracterısticas principales

Analisis de las caracterısticas principales

• Busqueda en un espacio codificado de parametros

• Busqueda en multiples puntos del espacio de soluciones

• Pocos requisitos sobre la funcion objetivo

• Algoritmo de naturaleza estocastica

• La estructura de los operadores los hace muy efectivos alrealizar busquedas globales

• Multiples objetivos

• Algunas desventajas...?

:

Introduccion Diseno de un AE Caracterısticas principales

Comparacion con otros metodos

Metodos tradicionales Algoritmos evolutivos

Trabajan con los propios parametrosa optimizar

Emplea una codificacion de losparametros∗

Utilizan informacion de las derivadasde la funcion objetivo u otroconocimiento adicional

Utilizan la informacion de la funcionobjetivo en forma directa

Reglas de transicion deterministas Reglas de transicion probabilısticas

Exploran el espacio de soluciones apartir de un punto

Exploran el espacio de soluciones enmultiples puntos a la vez

... ...

:

Introduccion Diseno de un AE Caracterısticas principales

Paralelismo

:

Introduccion Diseno de un AE Caracterısticas principales

Parametros que controlan la evolucion

• Probabilidad de mutaciones

• Probabilidad de cruzas

• Tamano de la poblacion

• Brecha generacional

• Elitismo

...y si los parametros fueran adaptables?

:

Introduccion Diseno de un AE Caracterısticas principales

Parametros que controlan la evolucion

• Probabilidad de mutaciones

• Probabilidad de cruzas

• Tamano de la poblacion

• Brecha generacional

• Elitismo

...y si los parametros fueran adaptables?