COMPUTACION EVOLUTIVA Introducción. Computación Evolutiva: Computación Evolutiva: Enfoque alternativo para abordar problemas complejos de: Enfoque alternativo.

Slides:



Advertisements
Presentaciones similares
Inteligencia artificial y sus aplicaciones
Advertisements

ALGORITMOS GENETICOS EVOLUCIÓN DE UNA POBLACIÓN DE
CICLO DE VIDA DEL DESARROLLO DE SOFTWARE
Algoritmo GENETICO.
Simulación Prof. Daniel Ramírez C..
Evolución según Lamarck y Darwin
AGENDA INTRODUCCIÓN. TEORIA Y DESARROLLO DE LA APLICACIÓN.
COMPONENTIZACIÓN DE ALGORITMOS GENETICOS Y SU IMPLEMENTACIÓN EN UNA PLATAFORMA ABIERTA PARA APRENDIZAJE COMPUTACIONAL.
Telekom Solutions.
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.
Modelos de Proceso del Software
Ajustando el Algoritmo al problema Universidad Nacional Oscar Lozano.
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
Sistemas Inteligentes Algoritmos Geneticos
Representación del Conocimiento Sesion 2. Contenido Representación del Conocimiento. Parte de una representación. Manipulación del Conocimiento. Referencias.
Optimización matemática Algoritmos Genéticos – Parte 2 Por: Antonio H
Algoritmos Genéticos.
Algoritmos Genéticos (AG) Integrantes: Rubén Levineri Miguel Rozas Juan Yañez Faltan autores y bibliografía.
Tesis para Grado de Ms.C. Optimización de Portafolios de Inversión en Bienes Raíces Mediante Algoritmos de Solución de Restricciones (Chile)
Universidad Michoacana de San Nicolás de Hidalgo Facultad de Ingeniería Eléctrica División de Estudios de Posgrado Algoritmos Genéticos.
Programación Modular (Pseudocódigo)
Algoritmos.

RESUMEN En este artículo se describe en forma breve una de las líneas de investigación que se están llevando a cabo en el Laboratorio de Tecnologías Emergentes.
Ciclo de Vida del Software Paradigmas de Desarrollo
Qué le dice la palabra pedagogía Es ajena La conoce La rechaza Tiene dominio de sus esencialidades Es útil para su trabajo en la alfabetización informacional.
INTRODUCCIÓN CONCEPTUAL A LA GESTIÓN DEL CONOCIMIENTO
BIOINFORMÁTICA TEMA 1 INTRODUCCIÓN
UNIDAD 2. ALGORITMOS Y ESTRUCTURAS DE DATOS.
INVESTIGACION DE OPERACIONES
Método de Proyectos.
Tema Unidad Indagación N° 1: “Denominación: “El PROCESO DE DISEÑO ARQUITECTÓNCO” (PDA). FASE I: Teoría del Diseño desde una perspectiva racionalizada.
1 Introducción a la Computación para Biólogos, Bioquímicos, Médicos, etc.
Algoritmos genéticos Introducción Esquema básico Codificación
Sistema De Apoyo A La Asignación De Horarios De Clases Para El Colegio Piamarta UCINFSantiago, 18 de Noviembre 2006 Darío Díaz Videla iii. Teoría Enfoques.
EL CONOCIMIENTO DEL MEDIO EN LA EDUCACIÓN PRIMARIA.
Una introducción a la computación evolutiva
AGENDA INTRODUCCIÓN. TEORIA Y DESARROLLO DE LA APLICACIÓN.
Trabajo de Graduación “SISTEMA DE PLANEACIÓN AVANZADO (APS) PARA DETERMINAR LA UBICACIÓN ÓPTIMA DE CAPACITORES EN UNA RED DE DISTRIBUCIÓN DE ENERGÍA ELÉCTRICA.
Propuesta del algoritmo
Mary C. Jarur M. ww.udec.cl/~mjarur
Asignación de Horarios
INTRODUCCIÓN A LA INGENIERÍA DEL SOFTWARE
Juan Carlos Camacho Javier Martínez Correa Yaneth Villamizar.
Teoría de Sistemas.
“El mundo del Software Educativo”
EVOLUCIÓN DE UNA POBLACIÓN DE CURVAS EN EL TIEMPO Y EN EL ESPACIO Francisco Antonio González Salas Luis Valencia Cabrera.
TIPOS DE INVESTIGACION CUANTITATIVA Y CUALITATIVA
Optimización Combinatoria y Grafos Búsqueda Tabú
Investigación Algorítmica ChasquiSoft. Integrantes Contreras Ames, Roy Carlos Gaspar Calle, Ronald Urlich Ames, Rafael Paredes.
Introducción a los Sistemas Inteligentes
ALGORITMOS GENETICOS.
INTELIGENCIA ARTIFICIAL. Redes Neuronales Artificiales Mecanismos de aprendizaje ◦ Entrada x ◦ Salida y ◦ Peso w ◦ Transferencia ~
Artesanal e industrial,
3.4 PRINCIPALES FACTORES DE LA EVOLUCION
Taller: Inteligencia Computacional
Conalep Coacalco Algoritmos Recursivos
Unidad TemáticaI. Conceptos Básicos Horas Prácticas10 Horas Teóricas8 Horas Totales18 Objetivo El alumno determinará las entradas, procesos y salidas.
Ingeniería del Software I
Ing. Uziel Quiroz Castañeda Blanca Esthela Carranza Ortega 8º Semestre Junio/2013.
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.
TEORÍAS SOBRE LA EVOLUCIÓN
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.
Hernández Camacho Víctor Jesus Islas Sánchez Karla Vanessa
TEORÍAS SOBRE LA EVOLUCIÓN
Entorno de Recomendación para el Desarrollo de Objetos de Aprendizaje Manuel E. Prieto Universidad de Castilla-La Mancha, España Victor H. Menéndez Universidad.
Virtualización del Curso: Recursos TIC para presentación de ideas Presentado por: Edith Marcela Ruiz Examen de grado Maestría en Entornos Virtuales de.
Transcripción de la presentación:

COMPUTACION EVOLUTIVA Introducción

Computación Evolutiva: Computación Evolutiva: Enfoque alternativo para abordar problemas complejos de: Enfoque alternativo para abordar problemas complejos de: Búsqueda Búsqueda Aprendizaje Aprendizaje Trabaja a través de modelos computacionales de procesos evolutivos Trabaja a través de modelos computacionales de procesos evolutivos Algoritmos evolutivos: Algoritmos evolutivos: Implantaciones concretas de tales modelos Implantaciones concretas de tales modelos Propósito: guiar una búsqueda estocástica Propósito: guiar una búsqueda estocástica haciendo evolucionar un conjunto de estructuras y haciendo evolucionar un conjunto de estructuras y seleccionando de modo iterativo las más adecuadas seleccionando de modo iterativo las más adecuadas

Contexto Forma parte de un conjunto de metodologías de resolución que remedan con mayor o menor exactitud procesos naturales: COMPUTACIÓN NATURAL Forma parte de un conjunto de metodologías de resolución que remedan con mayor o menor exactitud procesos naturales: COMPUTACIÓN NATURAL Por ejemplo: Por ejemplo: Redes Neuronales Redes Neuronales Solidificación Simulada Solidificación Simulada Algoritmos Genéticos Algoritmos Genéticos

Clasificación de procedimientos de optimización Basada en la naturaleza de las soluciones Basada en la naturaleza de las soluciones NUMÉRICOS (completamente especificada en términos de un conjunto de m parámetros) NUMÉRICOS (completamente especificada en términos de un conjunto de m parámetros) COMBINATORIOS (basadas en el orden) COMBINATORIOS (basadas en el orden)

Clasificación de procedimientos de optimización Basada en el grado de aleatoriedad que se le da al proceso de búsqueda Basada en el grado de aleatoriedad que se le da al proceso de búsqueda DETERMINISTAS (procedimiento de búsqueda dirigido: en las mismas condiciones de partida proporciona idénticos resultados) DETERMINISTAS (procedimiento de búsqueda dirigido: en las mismas condiciones de partida proporciona idénticos resultados) Requiere mucho conocimiento adicional de la función objetivo ALEATORIAS (al azar: usa argumentos estadísticos) No requiere ninguna información adicional; se puede aplicar a cualquier tipo de problema ALEATORIAS (al azar: usa argumentos estadísticos) No requiere ninguna información adicional; se puede aplicar a cualquier tipo de problema ESTOCÁSTICAS (orientadas: la componente determinista orienta la dirección de búsqueda, y la aleatoria se encarga de la búsqueda local ) ESTOCÁSTICAS (orientadas: la componente determinista orienta la dirección de búsqueda, y la aleatoria se encarga de la búsqueda local )

Clasificación de procedimientos de optimización Basada en la información disponible sobre la función a optimizar Basada en la información disponible sobre la función a optimizar BÚSQUEDAS CIEGAS (el proceso a optimizar funciona como caja negra) BÚSQUEDAS CIEGAS (el proceso a optimizar funciona como caja negra) BÚSQUEDAS HEURÍSTICAS (se dispone de cierta información explícita sobre el proceso a optimizar.) BÚSQUEDAS HEURÍSTICAS (se dispone de cierta información explícita sobre el proceso a optimizar.) Se la aprovecha para guiar la búsqueda

Teoría moderna de optimización Añadir conocimiento específico a un problema Añadir conocimiento específico a un problema En problemas reales de mediana complejidad resulta muy difícil En problemas reales de mediana complejidad resulta muy difícil Es fundamental: Es fundamental: Cuánto añadir? Cuánto añadir? Cómo añadirlo? Cómo añadirlo? El conocimiento específico sólo sirve cuando es de muy buena calidad El conocimiento específico sólo sirve cuando es de muy buena calidad Cuidado! Acentúa la tendencia a estancar la búsqueda en óptimos locales Cuidado! Acentúa la tendencia a estancar la búsqueda en óptimos locales

Las técnicas clásicas de búsqueda determinística y analítica no suelen ser de gran utilidad Las técnicas clásicas de búsqueda determinística y analítica no suelen ser de gran utilidad Esto obliga a desarrollar nuevos paradigmas Esto obliga a desarrollar nuevos paradigmas Menos analíticos Menos analíticos Más sintéticos Más sintéticos LA BÚSQUEDA DE ANALOGÍAS CON LA NATURALEZA ES MÁS UNA NECESIDAD QUE UNA PREFERENCIA ESTÉTICA

No se persigue una simulación de los procesos naturales No se persigue una simulación de los procesos naturales Es más bien una emulación de dichos procesos Es más bien una emulación de dichos procesos Un AE será tanto mejor cuanto mejores resultados proporcione en la resolución del problema planteado Independientemente de su fidelidad a la biología La mayoría son enfoques simplistas desde el punto de vista biológico Pero lo suficientemente complejos como para proporcionar mecanismos de búsqueda robustos y potentes

Estructura genérica de los AEs AE es cualquier procedimiento estocástico de búsqueda basado en el principio de evolución. AE es cualquier procedimiento estocástico de búsqueda basado en el principio de evolución. Principio de Evolución: Principio de Evolución: Supervivencia del más apto Supervivencia del más apto Adaptación al entorno Adaptación al entorno Los más aptos tienen Los más aptos tienen más posibilidades de sobrevivir más posibilidades de sobrevivir más oportunidades de transmitir sus características a las generaciones siguientes más oportunidades de transmitir sus características a las generaciones siguientes

Población: conjunto de candidatos a soluciones de un problema Población: conjunto de candidatos a soluciones de un problema Al ejecutar un AE una población de individuos es sometida a Al ejecutar un AE una población de individuos es sometida a una serie de transformaciones con las que se actualiza la búsqueda una serie de transformaciones con las que se actualiza la búsqueda y después de un proceso de selección que favorece a los mejores individuos y después de un proceso de selección que favorece a los mejores individuos

GENERACION TRANSFORMACIÓN SELECCIÓN

Estructura La CE trata de desarrollar mecanismos estocásticos de búsqueda en paralelo con los que mejorar las técnicas clásicas de búsqueda determinista La CE trata de desarrollar mecanismos estocásticos de búsqueda en paralelo con los que mejorar las técnicas clásicas de búsqueda determinista Para que la mejora sea efectiva, tales mecanismos deben estar dirigidos (procedimiento de selección) Para que la mejora sea efectiva, tales mecanismos deben estar dirigidos (procedimiento de selección)

Herramientas para poder emular un proceso de evolución de un AE Individuos: población de posibles soluciones debidamente representadas Individuos: población de posibles soluciones debidamente representadas Selección: procedimiento basado en la APTITUD de los individuos Selección: procedimiento basado en la APTITUD de los individuos Transformación: construcción de nuevas soluciones a partir de las disponibles Transformación: construcción de nuevas soluciones a partir de las disponibles

Implantación sobre este esquema: BeginAlgorithm (EvolutionAlgorithm) P[0]=InitPop(); Población Inicial FitP[0]=EvalPop(P[0]); Aptitudes iniciales for (t=0; t<MaxNumGen; t++) { Q[t]=SelectBreedersFrom(P[t]); Selección de reproductores Q[t]=Transform(Q[t]); Reproducción FitQ[t]=EvalPop(Q[t]); P[t]=SelSurv( P[t],Q[t],FitP[t],FitQ[t]); FitP[t]=EvalPop(P[t]); Evaluación de la nueva población if( ChkTermCond(P[t],FitP[t]) ) Condición de terminación return;} End algorithm

Paradigmas fundamentales ALGORITMOS GENÉTICOS ALGORITMOS GENÉTICOS Se hace evolucionar una población de enteros binarios sometiéndolos a transformaciones unitarias y binarias genéricas y a un proceso de selección Se hace evolucionar una población de enteros binarios sometiéndolos a transformaciones unitarias y binarias genéricas y a un proceso de selección PROGRAMAS EVOLUTIVOS PROGRAMAS EVOLUTIVOS Se hace evolucionar una población de estructuras de datos sometiéndolas a una serie de transformaciones específicas y a un proceso de selección Se hace evolucionar una población de estructuras de datos sometiéndolas a una serie de transformaciones específicas y a un proceso de selección ESTRATEGIAS EVOLUTIVAS ESTRATEGIAS EVOLUTIVAS Se hace evolucionar una población de números reales que codifican las posibles soluciones de un problema numérico y los tamaños de salto. La selección es implícita. Se hace evolucionar una población de números reales que codifican las posibles soluciones de un problema numérico y los tamaños de salto. La selección es implícita. PROGRAMACIÓN EVOLUTIVA PROGRAMACIÓN EVOLUTIVA Se hace evolucionar una población de máquinas de estados finitos sometiéndolas a transformaciones unitarias Se hace evolucionar una población de máquinas de estados finitos sometiéndolas a transformaciones unitarias