Algoritmos Genéticos.

Anuncio
Tema 3: Áreas de la IA: Ejemplos de investigación actual
pp. 1
TEMA 3: Áreas de la IA: Ejemplos de
investigación actual.
Algoritmos Genéticos
1 Introducción
2 Esquema general
2.1 Operadores
3 Aplicaciones a la Documentación
Bibliografía
Bibliografía
S. Russell, P. Norvig. Inteligencia Artificial . Un enfoque moderno. Prentice Hall. 1996
S. Russell, P. Norvig. Inteligencia Artificial . Un enfoque moderno. Prentice Hall. 1996
Inteligencia Artificial/Departamento de Sistemas Informáticos y ComputaciónFacultad de Informática / UPV
Tema 3: Áreas de la IA: Ejemplos de investigación actual
pp. 2
1 Introducción
El algoritmo genético es una técnica de búsqueda basada en la teoría
de la evolución de Darwin.
Ha cobrado tremenda popularidad en los últimos años.
Esta técnica se basa en los mecanismos de selección que utiliza la
naturaleza:
los individuos más aptos de una población son los que sobreviven pues
se adaptan más fácilmente a los cambios que se producen en su
entorno.
Los cambios se traducen en transformaciones en los genes de un
individuo (unidad básica de codificación de cada uno de los atributos de
un ser vivo)
Las características más destacadas de un individuo (i.e., los que le
permiten adaptarse mejor a su entorno) se deben transmitir a sus
descendientes.
Inteligencia Artificial/Departamento de Sistemas Informáticos y ComputaciónFacultad de Informática / UPV
Tema 3: Áreas de la IA: Ejemplos de investigación actual
pp. 3
1 Introducción
Definición
“Es un algoritmo matemático altamente paralelo que transforma un conjunto de
objetos matemáticos individuales con respecto al tiempo usando operaciones
modeladas de acuerdo al principio Darwiniano de reproducción y supervivencia
del más apto, y tras haberse presentado de forma natural una serie de
operaciones genéticas de entre las que destaca la recombinación sexual. Cada
uno de estos objetos matemáticos suele ser una cadena de caracteres (letras o
números) de longitud fija que se ajusta al modelo de las cadenas de cromosomas,
y se les asocia con una cierta función matemática que refleja su aptitud.”
Un AG empieza por uno o varios individuos y mediante operaciones de
transformación y selección va haciendo evolucionar su especie,
desarrollando individuos mejores.
Un AG se caracteriza por su aleatoriedad en todo su proceso (empleo
de probabilidades)
Inteligencia Artificial/Departamento de Sistemas Informáticos y ComputaciónFacultad de Informática / UPV
Tema 3: Áreas de la IA: Ejemplos de investigación actual
pp. 4
2 Esquema general
Elementos de un AG:
Población:
Población individuos que representan cada uno de ellos una solución
codificada de una forma adecuada (cromosomas).
Operadores:
Operadores conjunto de operaciones a realizar sobre los individuos de
una población.
Función de adaptación:
adaptación función que se emplea para evaluar la
idoneidad de un individuo determinado.
Un AG desarrolla un proceso de evolución de los individuos de una
población, obteniendo nuevas poblaciones a partir de los individuos más
fuertes.
Un AG busca un individuo que maximice o minimice la función de
adaptación.
Inteligencia Artificial/Departamento de Sistemas Informáticos y ComputaciónFacultad de Informática / UPV
Tema 3: Áreas de la IA: Ejemplos de investigación actual
pp. 5
2 Esquema general
Esquema de un algoritmo genético:
generar población inicial G(0);
evaluar G(0);
t:=0;
repetir
t:=t+1;
generar G(t) usando G(t-1);
evaluar G(t);
hasta encontrar una solución;
Se seleccionan
los mejores
Se transforman
los padres
generando
nuevos hijos
Se seleccionan
los mejores
Sol. considerada
suficientemente
buena
Inteligencia Artificial/Departamento de Sistemas Informáticos y ComputaciónFacultad de Informática / UPV
Tema 3: Áreas de la IA: Ejemplos de investigación actual
pp. 6
2 Esquema general
Ejemplo de ejecución de un algoritmo genético:
1ª generación
Selección
Selecciónde
delos
los
mejores
mejores
2ª generación
Se
AApartir
partirde
deellos
ellos
Sepasa
pasaaalala
siguiente
segeneran
generanlos
los
siguientegeneración
generación se
aalos
nuevos
nuevoshijos
hijos
losmejores
mejores
Volvemos
Volvemos
aaseleccionar
seleccionar
los
losmejores
mejores
Inteligencia Artificial/Departamento de Sistemas Informáticos y ComputaciónFacultad de Informática / UPV
Tema 3: Áreas de la IA: Ejemplos de investigación actual
pp. 7
2 Esquema general
A la hora de desarrollar un AG debemos tener en cuenta:
¿Cómo se representa un individuo?
¿Cuál es la función de adaptación?
¿Como se escogen los individuos?
¿Como se reproducen los individuos?
Individuos:
Un individuo representa una solución
La codificación más común de las soluciones es a través de cadenas
binarias
Gen
1 0 0 0 1 1 0 0 1 1 0 0 1 0 0 1
Cromosoma
Inteligencia Artificial/Departamento de Sistemas Informáticos y ComputaciónFacultad de Informática / UPV
Tema 3: Áreas de la IA: Ejemplos de investigación actual
pp. 8
2 Esquema general
Función de adaptación:
Se aplica sobre un individuo dando idea de la calidad del mismo
Depende del problema en cuestión
Entrada: individuo Salida: número real
El AG tratará de maximizar o minimizar dicho valor real
Estrategia de selección (de individuos)
La estrategia de selección es aleatoria (en general)
La probabilidad de selección es proporcional a su adaptación.
Supongamos un individuo de adaptación X y otro de adaptación Y, si
X=2*Y entonces el primer individuo tiene el doble de probabilidades de
ser seleccionado
Inteligencia Artificial/Departamento de Sistemas Informáticos y ComputaciónFacultad de Informática / UPV
Tema 3: Áreas de la IA: Ejemplos de investigación actual
pp. 9
2.1. Operadores
Reproducción de individuos:
Permite la obtención de una nueva generación de individuos.
Se lleva a cabo mediante dos operadores: Cruzamiento y Mutación
Son operadores binarios.
Los nuevos hijos de una generación necesitan 1 o 2 individuos padres
Ambos tienen una probabilidad asociada de aplicación
CRUCE
Operador que a a partir de dos cromosomas realiza un intercambio de
parte de su material genético.
0 1 0 1 0 1 1 0 0 1 C. padre 1
0 1 0 0 1 1 1 0 0 1 C. hijo 1
1 0 0 0 1 1 0 0 1 1 C. padre 2
1 0 0 1 0 1 0 0 1 1 C. hijo 2
Inteligencia Artificial/Departamento de Sistemas Informáticos y ComputaciónFacultad de Informática / UPV
Tema 3: Áreas de la IA: Ejemplos de investigación actual
pp. 10
2 2.1.
Esquema
Operadores
general
MUTACIÓN
Operador que introduce diversidad de los descendientes respecto a los
progenitores.
0 1 0 1 0 1 1 0 0 1
C. padre
0 1 0 1 1 1 1 0 0 0 C. hijo
Inteligencia Artificial/Departamento de Sistemas Informáticos y ComputaciónFacultad de Informática / UPV
Tema 3: Áreas de la IA: Ejemplos de investigación actual
pp. 11
3 Aplicaciones a la Documentación
La aplicación de los AG’s a la recuperación de información ha crecido
notablemente en los últimos años.
Áreas de aplicación:
Indización de documentos
Agrupamiento de documentos y términos
Mejoras en la definición de consultas
Inteligencia Artificial/Departamento de Sistemas Informáticos y ComputaciónFacultad de Informática / UPV
Tema 3: Áreas de la IA: Ejemplos de investigación actual
pp. 12
3 Aplicaciones a la Documentación
Indización de documentos:
Problema: encontrar una descripción de términos apropiada para un
documento.
Pueden asociarse varias descripciones a un documento e ir
adaptándolas a lo largo del tiempo.
Cuando el usuario introduce una consulta, el sistema empareja ésta con
todas las descripciones y decide en promedio.
Se puede disponer de un AG, el cual:
Cada cromosoma es una descripción representada por un vector binario.
La población sería un conjunto de descripciones
El AG se aplicaría para cada documento
La función de adaptación dispone de un conjunto de consultas
relevantes para el documento y de otro conjunto de consultas no
relevantes
Inteligencia Artificial/Departamento de Sistemas Informáticos y ComputaciónFacultad de Informática / UPV
Tema 3: Áreas de la IA: Ejemplos de investigación actual
pp. 13
3 Aplicaciones a la Documentación
Indización de documentos:
El
funcionamiento sería:
El conjunto de descripciones van transformándose aplicando
mutaciones y cruce.
La función de adaptación obtiene la relevancia de la descripción
frente a los conjuntos de documentos disponibles. De esta forma
se pueden obtener las mejores descripciones.
Agrupamiento de documentos y términos
Empleo de un AG para formar grupos (clusters)
Inteligencia Artificial/Departamento de Sistemas Informáticos y ComputaciónFacultad de Informática / UPV
Tema 3: Áreas de la IA: Ejemplos de investigación actual
pp. 14
3 Aplicaciones a la Documentación
Mejoras en la definición de consultas
Para aprender las características de una consulta se suele emplear un
conjunto de documentos relevantes proporcionados por el usuario.
Un AG se puede emplear para:
1) Aprendizaje de términos:
Los cromosomas serían vectores binarios de tamaño fijo, donde
cada posición está asociada a un término existente.
La función de adaptación mide la similitud entre un individuo y el
conjunto de documentos suministrados
0 1 0 1 0 1 1 0 0 1
El término es o
no es relevante
Inteligencia Artificial/Departamento de Sistemas Informáticos y ComputaciónFacultad de Informática / UPV
Tema 3: Áreas de la IA: Ejemplos de investigación actual
pp. 15
3 Aplicaciones a la Documentación
Mejoras en la definición de consultas
2) Aprendizaje de pesos:
Los cromosomas serían vectores de valores reales [0,1] de
tamaño fijo, donde cada posición está asociada a un término
existente.
La función de adaptación (igual que antes) mide la similitud
entre un individuo y el conjunto de documentos suministrados
0.8 0.2 0.5 1 0.1 0 0.9
Se indica el peso del
término en la consulta
Inteligencia Artificial/Departamento de Sistemas Informáticos y ComputaciónFacultad de Informática / UPV
Tema 3: Áreas de la IA: Ejemplos de investigación actual
pp. 16
3 Aplicaciones a la Documentación
Mejoras en la definición de consultas
3) Aprendizaje de la consulta completa:
Los cromosomas serían árboles representado también las
conectivas lógicas entre términos
El algoritmo trata de aprender las estructura de términos, pesos
y conexiones entre los términos por medio de expresiones
booleanas.
and
or
Inteligencia Artificial/Departamento de Sistemas Informáticos y ComputaciónFacultad de Informática / UPV
Descargar