Computaci on Evolutiva Algoritmos Gen...
Transcript of Computaci on Evolutiva Algoritmos Gen...
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
Parametros que controlan la evolucion
• Probabilidad de mutaciones
• Probabilidad de cruzas
• Tamano de la poblacion
• Brecha generacional
• Elitismo
...y si los parametros fueran adaptables?