Computación evolutiva Manuel García Leonardo Salinas.

Slides:



Advertisements
Presentaciones similares
OTROS CAMPOS DE LA IA.
Advertisements

Inteligencia artificial y sus aplicaciones
INTELIGENCIA ARTIFICIAL
Historia de la Inteligencia Artificial
Historia de la Inteligencia Artificial
INTELIGENCIA ARTIFICIAL
Origen de la vida y evolución.
LA INTELIGENCIA ARTIFICIAL
Inteligencia Artificial
Inteligencia artificial
PROYECTO NUMERARIO.
Lamarck vs Darwin vs Otros
“Impulsando la Sociedad
LA EVOLUCIÓN BIOLÓGICA
COMPONENTIZACIÓN DE ALGORITMOS GENETICOS Y SU IMPLEMENTACIÓN EN UNA PLATAFORMA ABIERTA PARA APRENDIZAJE COMPUTACIONAL.
Definición Machine learning traducido al español significa el aprendizaje automático o también aprendizaje de las maquinas. A partir de esto podemos darle.
Fijismo y creacionismo
Computación Natural Mario Hernández.
Definición Los Algoritmos Genéticos son métodos adaptativos que pueden usarse para resolver problemas de búsqueda y optimización. los Algoritmos Genéticos.
Sistemas Inteligentes Algoritmos Evolutivos
Introducción a las Metaheurísticas
Representación del Conocimiento Sesion 2. Contenido Representación del Conocimiento. Parte de una representación. Manipulación del Conocimiento. Referencias.
Inteligencia artificial
Algoritmos Genéticos.
EVOLUCIÓN.
Algoritmos Genéticos (AG) Integrantes: Rubén Levineri Miguel Rozas Juan Yañez Faltan autores y bibliografía.
FUNDAMENTOS DE DATA MINING Y SUS APLICACIONES N. QUEIPO, S. PINTOS COPYRIGHT 2000 CLASIFICACIÓN NO SUPERVISADA.
UNIDAD: “Variabilidad, evolución y adaptación de los seres vivos”.
INTELIGENCIA ARTIFICIAL
Tema 6 Razonamiento aproximado
EVOLUCIONISMO.
Luis Fernando Gutiérrez. Introducción Estamos de acuerdo en que el proceso creativo es evolutivo Cómo se da esa evolución? Darwinismo Cambio sin Selección.
UNIDAD IV: VARIABILIDAD, EVOLUCIÓN Y ADAPTACIÓN
COMPUTACION EVOLUTIVA Introducción. Computación Evolutiva: Computación Evolutiva: Enfoque alternativo para abordar problemas complejos de: Enfoque alternativo.
Teorías de la Evolución de los seres Vivos
Teorías de la evolución
SIGLO XVIII-XIX Aún antropocentrismo Tierra con unos 6000 años Falsas evidencias. Interpretaciones distintas ( ) FIJISMO CUVIER Realizado por:
BIOINFORMÁTICA TEMA 1 INTRODUCCIÓN
Computación Evolutiva
Practica 4 supercomputadoras.
Parte II. Algorítmica. 5. Backtracking. 1. Análisis de algoritmos.
Neodarwinismo.
Introducción Importancia creciente de los activos de conocimiento
Una introducción a la computación evolutiva
Inteligencia Artificial
 Una supercomputadora o un superordenador es aquella con capacidades de cálculo muy superiores a las computadoras corrientes y de escritorio y que son.
Inteligencia artificial
8.- Inteligencia artificial
INTRODUCCIÓN A LA INTELIGENCIA ARTIFICIAL Y LOS SISTEMAS EXPERTOS
Mary C. Jarur M. ww.udec.cl/~mjarur
1.
NUEVAS TECNOLOGIAS.
3.1 EVOLUCIÓN.
Sistemas Expertos Integrantes Javier Farfán Katherine Jara Héctor Gatica.
Optimización Combinatoria y Grafos Búsqueda Tabú
Introducción a los Sistemas Inteligentes
ALGORITMOS GENETICOS.
INTELIGENCIA ARTIFICIAL. Redes Neuronales Artificiales Mecanismos de aprendizaje ◦ Entrada x ◦ Salida y ◦ Peso w ◦ Transferencia ~
4.- EL LAMARCKISMO, LA PRIMERA TEORÍA EVOLUTIVA
Taller: Inteligencia Computacional
Ing. Uziel Quiroz Castañeda Blanca Esthela Carranza Ortega 8º Semestre Junio/2013.
INTELIGENCIA ARTIFICIAL APLICADA A LA ROBOTICA
Heurística. Los procesos que se llevan a cabo en el cerebro pueden ser analizados, a un nivel de abstacción dado, como procesos computacionales de algún.
Introducción a la Inteligencia Artificial
CIENCIAS CONTEMPORÁNEAS
Marco de Trabajo para Indexación, Clasificación y Recopilación Automática de Documentos Digitales Javier Caicedo Espinoza Gonzalo Parra Chico.
NOMBRE: Paula Andrea Bedoya Rojas. GRADO: 7.3. Institución Educativa Debora Arango P.
Algoritmo Genético para la solución del problema SAT René Clemente Juárez Angel Felipe Lara Valladares Junio 2012.
Psicología como Disciplina
Conclusiones: En este trabajo se ha demostrado que se pueden aplicar los algoritmos OCH al ajuste de los parámetros de un modelo borroso mediante la discretización.
Transcripción de la presentación:

Computación evolutiva Manuel García Leonardo Salinas

 La computación evolutiva es una rama de la inteligencia artificial que involucra problemas de optimización combinatoria. Se inspira en los mecanismos de la Evolución biológica.  Con el término de Computación Evolutiva se engloba al conjunto de técnicas que basándose en la simulación de los procesos naturales y la genética se utilizan para resolver problemas complejos de búsqueda y aprendizaje. Introducción

 1948 –Turing–propone proceso de búsqueda evolutiva.  1964 –Rechenberg–Estrategias Evolutivas (EE)  1965 –Fogel–Programación Evolutiva (PE)  1975 –Holland–Algoritmos Genéticos (AG)  1992 –Koza–Programación Genética (PG) Hitos de la Computación evolutiva

 Puede resultar chocante que ya los primeros ordenadores, aquellos con miles de válvulas, interpretaran programas emulando las técnicas evolutivas actuales. Ya en los años sesenta se empezaban a usar los términos “programación evolutiva”, “estrategias de evolución” y “algoritmo genético”. De entre aquellos pioneros, John Holland fue uno de los más influyentes y se le considera el padre de la disciplina, seguramente porque en su obra “Adaptation in Natural and Artificial Systems” nos dejó los formalismos que permiten comprender la potencia computacional de esta tecnología. Desde los primeros ordenadores

 Sin embargo, no es hasta la última década del siglo pasado cuando el campo de la computación evolutiva florece: la aplicación de los algoritmos genéticos se extiende a una gama muy variada de problemas y nacen estrategias nuevas, como la programación genética. Ya entrado el siglo XXI, el que ha sido denominado siglo de la Biología, la computación evolutiva pasa a ser una de las estrategias representativas en el área de la inteligencia computacional. Florece el campo de la Computación evolutiva

 Pero, ¿qué han aprendido de la evolución biológica las Ciencias de la Computación? La evolución, como proceso transformador de las formas vivas, es una de las ideas que más ha influido en el pensamiento humano desde los antiguos filósofos griegos y era una teoría científica aceptada (aunque no probada) ya en el siglo XVIII. El trabajo de Jean-Baptiste Lamarck a principios del XIX y finalmente la publicación del trabajo cumbre de Charles Darwin On the origin of species (un libro al que se le ha criticado que explique todo sobre la selección natural, excepto el origen mismo de las especies) situaron a la teoría de la evolución en un lugar central para las ciencias de la vida. La evolución como proceso transformador

 Por tanto, no es de extrañar que la evolución haya inspirado modelos de cómputo. En efecto, los conceptos de selección natural, adaptación al ambiente y herencia, o los más actuales, como mutación genética, formas alélicas o reproducción sexual, poseen un componente computacional que ha sido interpretado y formalizado por científicos e ingenieros para dar lugar a lo que hoy conocemos como computación evolutiva. La evolución en la computación

 ¿Cómo puede un programa de ordenador simular la evolución y beneficiarse de ella? La inteligencia computacional es una variante de la inteligencia artificial que se separó de la línea simbólica más tradicional (la de pasar años intentando que un brazo robótico levante una taza de café, para entendernos). Incluye técnicas como las ‘redes neuronales artificiales’, la optimización con enjambres de partículas o la misma computación evolutiva, es decir, estrategias basadas en la inteligencia que emerge de las interacciones en un colectivo, sean neuronas, partículas u organismos. Inteligencia computacional

 Y así fue 30 años de sólida inteligencia artificial empezaron a resquebrajarse cuando Rodney Brooks, un investigador del MIT (Massachusetts Institute of Technology), publicó un artículo con el enigmático título de “Elephants don’t play chess”. Los elefantes no juegan al ajedrez, en efecto, aunque les tenemos por seres inteligentes, por tanto, pasemos de los programas para explorar los infinitos senderos mentales de los juegos de mesa a preguntarnos cómo emular, digamos, un ratón de campo. La nueva tendencia reclutó hordas de ingenieros y científicos deseosos de romper los estándares y dejarse influir por nuevas formas de interpretar la inteligencia. Es en este contexto donde debemos entender la atracción que ha despertado el campo de la biomimética, donde se ubica la computación evolutiva como técnica inspirada en la biología. Nuevas formas de interpretar la inteligencia

 Este proceso quedará más claro ilustrándolo con un ejemplo: el problema del viajante. Éste consiste en encontrar la mejor trayectoria que pasa por un conjunto de ciudades, para lo que un ordenador puede estudiar todas las combinaciones y decidir cuál es mejor si el número de ciudades es pequeño, pero a medida que aumentan la combinatoria se dispara y los tiempos son excesivos. Ejemplo: el problema del viajante

 Esta estrategia, llamada búsqueda exhaustiva, no garantizaría buenas soluciones con un tiempo limitado. Para utilizar computación evolutiva debemos interpretar el problema en clave biológica, es decir, una trayectoria posible es un organismo, cuyo genoma viene dado por el orden en que se visitarán las ciudades (por ejemplo, un vector numérico), el entorno es el mapa de carreteras y el grado de adaptación al entorno de un organismo se mide por los kilómetros recorridos para completar dicha trayectoria (cuanto menor es el recorrido, más adaptada está la trayectoria). Una población inicial de organismos puede ser un conjunto de trayectorias aleatorias. Interpretación en clave biológica

 Esta población, a su vez, podría dar lugar a otra generación de trayectorias mediante operaciones de mutación (pequeñas variaciones en las trayectorias) o reproducción sexual (trayectorias obtenidas por la mezcla de dos trayectorias). Pues bien, lo que Darwin y Wallace nos enseñaron es que cuando las trayectorias de las generaciones futuras se obtienen (por mutación o reproducción) de las mejores trayectorias, la población mejora y tiende a adaptarse al entorno, es decir, que las trayectorias compiten por sobrevivir y dejar descendencia, y sólo las más adaptadas al entorno lo consiguen. Lo que Darwin y Wallace nos enseñaron

 La potencia de la computación evolutiva reside en que sólo necesita una representación de la solución y del problema para obtener, con un algoritmo general, soluciones adecuadas en tiempos razonables, es decir, sin el coste de analizar el problema, encontrar una forma de resolverlo y programar dicha solución. Ésta y otras técnicas similares, como las redes neuronales artificiales, la optimización con sistemas de partículas y la lógica difusa se agrupan dentro del campo de soft computing, es decir, estrategias de búsqueda donde se especifica sólo “qué hay que buscar”, y no “cómo hay que buscarlo”. La potencia de la computación evolutiva

 Estrategias Evolutivas (ES)  Programación Evolutiva (EP)  Algoritmos Genéticos (GAs)  Ramificaciones de los GAs  Relación con otras áres (Busqueda, IA, Optimización, Heurísticas, Soft Computing, Computación Emergente) Paradigmas en Computación Evolutiva

 Las estrategias evolutivas son métodos computacionales que trabajan con una población de individuos que pertenecen al dominio de los números reales, que mediante los procesos de mutación y de recombinación evolucionan para alcanzar el óptimo de la función objetivo.  Utilizadas para resolver problemas duros (sin solución anílitica) de optimización de parámetros (No. reales). Estrategias Evolutivas

 Se inició como un intento de usar la evolución para crear máquinas inteligentes, que pudieran prever su entorno y reaccionar adecuadamente a él.  La programación evolutiva es prácticamente una variación de los algoritmos genéticos, donde lo que cambia es la representación de los individuos. En el caso de la PE los individuos son ternas (tripletas) cuyos valores representan estados de un autómata finito. Programación Evolutiva

Aplicaciones  Predicción  Generalización  Juegos  Control automático  Problema del viajero  Planeación de rutas  Diseño y entrenamiento de redes neuronales  Reconocimiento de patrones.

 Son llamados así porque se inspiran en la evolución biológica y su base genético-molecular. Estos algoritmos hacen evolucionar una población de individuos sometiéndola a acciones aleatorias semejantes a las que actúan en la evolución biológica (mutaciones y recombinaciones genéticas), así como también a una Selección de acuerdo con algún criterio, en función del cual se decide cuáles son los individuos más adaptados, que sobreviven, y cuáles los menos aptos, que son descartados. También es denominado algoritmos evolutivos, e incluye las estrategias evolutiva, la programación evolutiva y la programación genética. Algoritmos Genéticos

Esquema general de un algoritmo evolutivo

Estructura obtenida a partir de un algoritmo genético

 Hoy en día se realizan más de 1000 publicaciones anuales sobre computación evolutiva.  Cada día se amplían más sus campos de aplicación, como por ejemplo el diseño de módulos de aterrizaje para naves espaciales y la biomimética, que busca resolver problemas humanos que ya han sido resueltos en la naturaleza. Conclusión

 Gracias por su atención. FIN