INTRODUCCION                                            Durante muchos años, la tesis más                                 ...
COMPUTACION EVOLUTIVA                                  Está compuesta por modelos de                                  evol...
HISTORIA
Georges Louis Leclerc (Conde de Buffon), 1749-1788, Historia                                                 fue tal vez e...
Darwin                           Weismann                           Mendel                              Neo-Darwinismo  El...
Dentro de la computación evolutiva tenemos:                ALGORITMOS GENETICOS                     (Holland 1975)        ...
ALGORITMOS GENETICOS
¿QUE ES UN ALGORITMO?Un algoritmo es una serie de pasos organizados que describe elproceso que se debe seguir, para dar so...
¿QUE ES UN ALGORITMO GENETICO?  Denominados originalmente “planes reproductivos”),fuerondesarrollados por John H. Holland ...
SIMILITUD CON SISTEMAS BILOGICOS   Sistemas Biológicos                  Algoritmos Genéticos Los miembros de una         ...
GENES    En un AG los genes son evaluados según una llamada    Fitness Function y los mejores son los que pasaran ala    p...
HERENCIAEs la transmisión del material genético contenido en núcleo celularEn los seres humanos el 50% del material genéti...
MUTACION    En Biología                                             En un AGEs una alteración o cambio en la            1....
CROMOSOMAS      En Biología                            En un AGEs un sistema de los parámetros           Suponga que el pr...
CRUCESEl Algoritmo Genético Canónico descrito anteriormente utiliza el cruce basado en unpunto, en el cual los dos individ...
CRUCES1.   Se decide con alguna probabilidad si se aplica la cruza o no.2.   De aplicarse se selecciona con alguna probabi...
MUTACIONLa mutación se considera un operador básico, que proporciona un pequeño elementode aleatoriedad en la vecindad (en...
APLICACIONES
EL ALGORITMO BASICO ES EL SIGUIENTE        GENERAR UNA POBLACION (ALEATORIA) DE                  UNA POBLACION        CALC...
CUANDO USAR LOS A.G Si la función a optimizar tiene muchos máximos/mínimos locales serequerirán más iteraciones del algori...
VENTAJAS Son intrínsecamente paralelos. Pueden evaluar implícitamente muchos esquemas a la vez. Se desenvuelven bien en...
ESTRATEGIAS EVOLUTIVAS
Esta técnica esta básicamente enfocada hacia la optimización paramétrica. En esencia sonmétodos estocásticos con paso adap...
EE SIMPLES: (1+1) EEEn este caso, se hace evolucionar un solo individuo usando únicamente a lamutación como operador genét...
EE MÚLTIPLES (λ+μ) EE Ó(λ,μ) EETamaño de la población ( λ)Tamaño de la descendencia ( μ)Reemplazo por inclusión ( +)   ...
MUTACIÓN EN EE
RECOMBINACIÓN EN EE
EJEMPLO: MINIMIZACIÓN DE LA FUNCIÓN DE ACKLEY
PROGRAMACION GENETICA
PROGRAMACION GENETICA La programación genética provee un mecanismo automático para la creación de   programas de alto niv...
Emplea cuatro operadoresEmplea cuatro operadores: Reproducción:   copia un programa a la nueva población.Cruzamiento:   ...
DEFINICIÓN DE UN PROBLEMA EN PG1.Conjunto de símbolos terminales    Variables independientes.     Funciones con aridad= ...
EJEMPLO DE REPRESENTACION DE PG
NEUROCOMPUTACION
INTRODUCCIONNeurocomputación: Modelo computacional. Basado en redes neuronales. Gran apogeo en los 80’s y 90’s.Objetivo...
Modelo alternativo de computación encontraposición con el de Von Neumann: Masivamente paralelos Computación y representa...
 Entradas: dendritas. Salida: axón Soma: procesador de información.
MODELO BIOLOGICONeuronas sensitivas:Reciben las entradas directamenteNeuronas actuadoras:Materializan la respuestaVelocida...
BREVE RESEÑA HISTORICA(1943) El neurobiólogo McCulloch y el       (1982) Hopfield:estadístico Pitts:                      ...
Modelo de McCulloch y Pitts              RNA (sistema computacional):               Conjunto de autómatas celulares      ...
APRENDIZAJE Y RECUPERACIONSistema neuronal: Altamente no lineal Gran robustez Tolerante a fallosAdicionalmente: Aprend...
El modelo computacional equivalente alde Von NeumannPrincipal inconveniente: No se conoce algoritmo capaz de entrenar  un...
Aprendizaje: Definir una función objetivo explícita o  implícitamente para representar el estado  de la red. Buscar un ó...
Principal característica:    Capacidad de GENERALIZACIÓN:    Calidad de la respuesta ante ejemplos    desconocidos: no uti...
APLICACIONESReconocimiento de patrones:    Asignar a cada entrada un patrón:     Estáticos     Dinámicos: trata explícit...
Aproximación funcional:Correspondencia (x, y) contaminados conruidoPredicción:    Adivinar el siguiente término de una ser...
Optimización Definir función objetivo Encontrar óptimo bajo restricciones Ejemplo: problema del viajanteMemorias asocia...
Generación de señales de control Calcular señales de control para que la“consigna” siga a la “referencia”. Especialmente...
COMPUTACIÓN EVOLUTIVA
COMPUTACIÓN EVOLUTIVA
COMPUTACIÓN EVOLUTIVA
Upcoming SlideShare
Loading in...5
×

COMPUTACIÓN EVOLUTIVA

1,171

Published on

Published in: Education
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,171
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

COMPUTACIÓN EVOLUTIVA

  1. 1. INTRODUCCION Durante muchos años, la tesis más aceptadas obre el origen de las especies fue el creacionismo : Dios creó a todas las especies del planeta de forma separada.Además, según el creacionismo, las especies estaban jerarquizadas por Dios de talmanera que el hombre ocupaba el rango superior, al lado del creador.
  2. 2. COMPUTACION EVOLUTIVA Está compuesta por modelos de evolución basados en poblaciones cuyos elementos representan soluciones a problemas. La simulación de este proceso en un ordenador resulta ser una técnica deoptimización probabilística, que con frecuencia mejora a otros métodosclásicos en problemas difíciles.
  3. 3. HISTORIA
  4. 4. Georges Louis Leclerc (Conde de Buffon), 1749-1788, Historia fue tal vez el primero en especular (que las especies se originaron entre sí, en una abierta oposición al “creacionismo”.El naturalista inglés Charles Darwin enunció su teoríasobre el origen de las especies en 1858, derrumbando el El biólogo francés Jean-BaptisteLamarck enuncióLamarckismoal indicar que la evolución se origina a una teoría sobre la evolución a principios del siglotravés de cambios aleatorios de características heredi- XIX.tarias, combinados con un proceso de selección naturalEl científico alemán August Weismann formuló en elsiglo XIX una teoría denominada delgermoplasma, El monje austriaco Johann GregorMendelrealizó unasegún la cual la información hereditaria se transmite a serie de experi-mentoscon guisantes durante unatravés de ciertas células (llamadas germinales), mien- buena parte de su vida, enunciando a partir de ellostras que otras células (llamadas somáticas) no pueden las leyes básicas que gobiernan la herencia.transmitir nada.James Mark Baldwin propuso en 1896 que si el apren- James Mark Baldwin propuso en 1896 que si el apren-dizajeayuda a la supervivencia, entonces los orga- dizajeayuda a la supervivencia, entonces los orga-nismoscon mayor capacidad de aprendizaje tendrán nismoscon mayor capacidad de aprendizaje tendránmás descendientes, incrementando de esa manera la más descendientes, incrementando de esa manera lafrecuencia de los genes responsables del aprendizaje frecuencia de los genes responsables del aprendizaje
  5. 5. Darwin Weismann Mendel Neo-Darwinismo El cual establece que toda la vida en el planeta puede ser explicada a través de sólo 4 procesos:Reproducción Mutación Competencia Selección
  6. 6. Dentro de la computación evolutiva tenemos: ALGORITMOS GENETICOS (Holland 1975) ESTRATEGIAS EVOLUTIVAS (Rechenberg 1962) PROGRAMACION EVOLUTIVA (Fogel 1962) PROGRAMACION GENETICA (Kosa 1992) SISTEMAS CLASIFICATORIOS (Holland 1962)
  7. 7. ALGORITMOS GENETICOS
  8. 8. ¿QUE ES UN ALGORITMO?Un algoritmo es una serie de pasos organizados que describe elproceso que se debe seguir, para dar solución aun problemaespecifico. ¿QUE ES GENETICA?La genética es el campo de la biología que busca comprender laherencia biológica que se transmite de generación en generación
  9. 9. ¿QUE ES UN ALGORITMO GENETICO? Denominados originalmente “planes reproductivos”),fuerondesarrollados por John H. Holland a principios de los 1960s. Son métodos adaptivos que pueden usarcé para resolverproblemas de búsqueda y optimización. Están basados en elproceso genético de los organismos vivos. Que utilizan operadoresgenéticos sobre cromosomas. Su característica principal es que se basan en técnicas inspiradasen la evolución biológica.
  10. 10. SIMILITUD CON SISTEMAS BILOGICOS Sistemas Biológicos Algoritmos Genéticos Los miembros de una  Muchas soluciones compiten por población compiten por resolver el problema y sobrevivir y reproducirse. reproducirse Las especies que mejor se  Las soluciones que mejor adapten a su ambiente son las resuelven el problema son las que que tienen más posibilidades tienen más posibilidades de de reproducirse reproducirse. Los hijos son un híbrido de sus  A partir de 2 soluciones se padres. obtienen otras mediante el operador crossover.
  11. 11. GENES En un AG los genes son evaluados según una llamada Fitness Function y los mejores son los que pasaran ala próxima iteración. REPRESENTACION DE LOS GENES EN UN AG •En la naturaleza: •En un algoritmo genético (ejemplos): Un valor numérico (178) expresado en binarioUna secuencia de nucleótidos 1 0 1 1 0 0 1 0A C C T G C A G G
  12. 12. HERENCIAEs la transmisión del material genético contenido en núcleo celularEn los seres humanos el 50% del material genético proviene de lamadre y el otro 50 del padre; pero el individuo resultante esdistinto a los dos progenitores. Algo análogo se hace conalgoritmos genéticos.
  13. 13. MUTACION En Biología En un AGEs una alteración o cambio en la 1. Se decide con algunainformación genética(genotipo) de probabilidad si se aplica laun ser vivo y que, por lo tanto, va a mutación o no.producir un cambio de 2. De aplicarse se selecciona concaracterísticas, que se presenta alguna probabilidad el bit (osubita y expontaneamente, y que se item del arreglo) a mutar.puede transmitir o heredar aladescendencia 3. De no ser un bit (que sería negado) se elije con alguna probabilidad en que muta. 1 0 1 1 0 0 1 0 1 0 1 1 1 0 1 0
  14. 14. CROMOSOMAS En Biología En un AGEs un sistema de los parámetros Suponga que el problema esque definen una solución encontrar el valor del númeropropuesta al problema que el entero de x entre 0 y 255algoritmo genético está intentandosolucionar El cromosoma se representa a menudo como simple secuencia, aunque una variedad amplia de otra estructuras de datos también Secuencias binarias de 8 dígitos se utilizan. Si un cromosoma dado en la población representa el valor 155, su cromosoma sería 10011011.
  15. 15. CRUCESEl Algoritmo Genético Canónico descrito anteriormente utiliza el cruce basado en unpunto, en el cual los dos individuos seleccionados para jugar el papel de padres, sonrecombinados por medio de la selección de un punto de corte, para posteriormenteintercambiar las secciones que se encuentran a la derecha de dicho punto.En el operador de cruce basado en dos puntos, los cromosomas (individuos) puedencontemplarse como un circuito en el cual se efectúa la selección aleatoria de dos puntos,tal y como se indica en la Figura .
  16. 16. CRUCES1. Se decide con alguna probabilidad si se aplica la cruza o no.2. De aplicarse se selecciona con alguna probabilidad la posición del arreglo donde se aplica. Gen A 1 0 1 1 0 0 1 0 Gen B 0 0 1 1 1 0 0 1 1 0 1 1 1 0 0 1 0 0 1 1 0 0 1 0
  17. 17. MUTACIONLa mutación se considera un operador básico, que proporciona un pequeño elementode aleatoriedad en la vecindad (entorno) de los individuos de la población. Si bien seadmite que el operador de cruce es el responsable de efectuar la búsqueda a lo largo delespacio de posibles soluciones, también parece desprenderse de los experimentosefectuados por varios investigadores que el operador de mutación va ganando enimportancia a medida que la población de individuos va convergiendo (Davis).
  18. 18. APLICACIONES
  19. 19. EL ALGORITMO BASICO ES EL SIGUIENTE GENERAR UNA POBLACION (ALEATORIA) DE UNA POBLACION CALCULAR APTITUD DE CADA INDIVIDUO SELECCIONAR (PROBALISTICAMENTE) CON BASE EN APTITUD APLICAR OPERADORES GENETICOS (CRUCE Y MUTACION) PARA GENERAR LA SIGUIENTE POBLACION CICLAR HASTA QUE CIERTA CONDICION SE SATISFAGA
  20. 20. CUANDO USAR LOS A.G Si la función a optimizar tiene muchos máximos/mínimos locales serequerirán más iteraciones del algoritmo para "asegurar" elmáximo/mínimo global.Si la función a optimizar contiene varios puntosmuy cercanos en valor al óptimo, solamente podemos "asegurar" queencontraremos uno de ellos (no necesariamente el óptimo).COMO SABER SI ES POSIBLE USAR UN A.G Su espacio de búsqueda (i.e., sus posibles soluciones) debe estar delimitado dentro de un cierto rango. Debe poderse definir una función de aptitud que nos indique qué tan buena o mala es una cierta respuesta. Las soluciones deben codificarse de una forma que resulte relativamente fácil de implementar en la computadora.
  21. 21. VENTAJAS Son intrínsecamente paralelos. Pueden evaluar implícitamente muchos esquemas a la vez. Se desenvuelven bien en problemas donde la función de aptitud es discontinua, ruidosa, cambia con el tiempo, o tiene muchos óptimos locales. Tienen habilidad para manipular muchos parámetros simultáneamente. DESVENTAJAS El lenguaje utilizado para especificar soluciones candidatas debe ser robusto. El problema de cómo escribir la función de aptitud debe considerarse cuidadosamente para que se pueda alcanzar una mayor aptitud y verdaderamente signifique una solución mejor para el problema dado. El problema de cómo escribir la función de aptitud debe considerarse cuidadosamente para que se pueda alcanzar una mayor aptitud y verdaderamente signifique una solución mejor para el problema dado. La situación de los puntos mejorados ofrecen información engañosa sobre dónde se encuentra probablemente el óptimo global.
  22. 22. ESTRATEGIAS EVOLUTIVAS
  23. 23. Esta técnica esta básicamente enfocada hacia la optimización paramétrica. En esencia sonmétodos estocásticos con paso adaptativo, que permiten resolver problemas deoptimización paramétrica. Las EEs pueden definirse como algoritmos evolutivos enfocados hacia la optimizaciónparamétrica, teniendo como características principales que utilizan una representación através de vectores reales, una selección determinística y operadores genéticos específicosde cruce y mutación. Además, su objetivo fundamental consiste en encontrar el valor realde un vector de N dimensiones.
  24. 24. EE SIMPLES: (1+1) EEEn este caso, se hace evolucionar un solo individuo usando únicamente a lamutación como operador genético. Son relativamente sencillas, y sedenominan también EEs de dos miembros. Debido a que evoluciona un soloindividuo a la vez, no son consideradas estrictamente como métodosevolutivos.
  25. 25. EE MÚLTIPLES (λ+μ) EE Ó(λ,μ) EETamaño de la población ( λ)Tamaño de la descendencia ( μ)Reemplazo por inclusión ( +) se juntan los μ descendientes con los λ progenitores en una única población y en ella se muestrean λ miembros (normalmente los mejores)Reemplazo por inserción ( , ) Se muestrean (según un criterio: normalmente los peores) μ miembros de la población para ser eliminados y sustituidos por sus descendientesPermiten corregir la convergencia hacia sub-óptimos
  26. 26. MUTACIÓN EN EE
  27. 27. RECOMBINACIÓN EN EE
  28. 28. EJEMPLO: MINIMIZACIÓN DE LA FUNCIÓN DE ACKLEY
  29. 29. PROGRAMACION GENETICA
  30. 30. PROGRAMACION GENETICA La programación genética provee un mecanismo automático para la creación de programas de alto nivel (también se conoce como síntesis o inducción de programas). La idea consiste en evolucionar en forma iterativa una población de programas de computadora generados aleatoriamente. Se utiliza un conjunto de terminales para representar las variables independientes del problema, las funciones sin parámetros y las constantes. Se maneja un conjunto de funciones primitivas que pueden ser aplicadas sobre los terminales.Es una abstracción de la evolución a nivel de las especies. Enfatiza fuertemente los nexos de comportamiento entre padre e hijos. Utiliza selección probabilística.
  31. 31. Emplea cuatro operadoresEmplea cuatro operadores: Reproducción: copia un programa a la nueva población.Cruzamiento: crea nuevo(s) programa(s) combinando partes de dos programas. Mutación: crea un nuevo programa, modificando una parte de un programa yaexistente. Operación de cambio de arquitectura: selecciona una operación de la biblioteca de este tipo deoperaciones y la aplica a un programa.
  32. 32. DEFINICIÓN DE UN PROBLEMA EN PG1.Conjunto de símbolos terminales Variables independientes.  Funciones con aridad= 0 (sin operandos) Constantes aleatorias2.Conjunto de funciones permitidas junto con la aridad de cada función (nºde operandos)3.Método para evaluar el desempeño de los programas4.Valores de los parámetros que controlan el desarrollo del proceso evolutivo Tamaño de la población Probabilidades de los operadores genéticos Técnica de creación de los individuos (programas) de la población inicial5.Criterio de terminación
  33. 33. EJEMPLO DE REPRESENTACION DE PG
  34. 34. NEUROCOMPUTACION
  35. 35. INTRODUCCIONNeurocomputación: Modelo computacional. Basado en redes neuronales. Gran apogeo en los 80’s y 90’s.Objetivo de crear sistemas inteligentes: “tareas inteligentes -> reservadas al cerebro”Idea inicial: “un modelo computacional más cercano al cerebro”
  36. 36. Modelo alternativo de computación encontraposición con el de Von Neumann: Masivamente paralelos Computación y representación distribuida. Computación y representación distribuida. Generalización. Adaptabilidad. Procesamiento de la información inherente al contexto. Tolerante a fallos. Bajo consumo de energía
  37. 37.  Entradas: dendritas. Salida: axón Soma: procesador de información.
  38. 38. MODELO BIOLOGICONeuronas sensitivas:Reciben las entradas directamenteNeuronas actuadoras:Materializan la respuestaVelocidad de procesamiento: 1011 neuronas en el cortex. 103 – 104 conexiones. Lentitud de las señales electroquímicas Reconocimiento de una cara en milisegundos. Por tanto, es un sistema conexionista.
  39. 39. BREVE RESEÑA HISTORICA(1943) El neurobiólogo McCulloch y el (1982) Hopfield:estadístico Pitts: Red más plausible con el modeloModelo de neurona artificial biológico (1986) Rumelhart y McClelland:(1962) Rosenblatt: Aprendizaje del perceptrón Teorema de convergencia del multicapa perceptrón. 􀂄 Original de Werbos (1974): Tesis Extendió la euforia: “RNA, solución Doctoral universal”(1969) Minsky y Papert:Limitaciones del perceptrón: problema delXOR
  40. 40. Modelo de McCulloch y Pitts RNA (sistema computacional):  Conjunto de autómatas celulares (neuronas).  Flujo de información según una topología de interconexiones (sinapsis).  El paralelismo está marcado por la disponibilidad de las entradas
  41. 41. APRENDIZAJE Y RECUPERACIONSistema neuronal: Altamente no lineal Gran robustez Tolerante a fallosAdicionalmente: Aprendizaje: adaptación de sus pesos a cambios en el entorno. Manejo de información imprecisa, difusa, con ruido y basada en probabilidades. Generalización: respuesta satisfactoria ante casos desconocidos.
  42. 42. El modelo computacional equivalente alde Von NeumannPrincipal inconveniente: No se conoce algoritmo capaz de entrenar una RNA arbitrariaActualmente:Se conocen tipos particulares de redes con,al menos, un algoritmo de aprendizaje.
  43. 43. Aprendizaje: Definir una función objetivo explícita o implícitamente para representar el estado de la red. Buscar un óptimo de esta función modificando los pesos.Tipos: Supervisado: maneja (entrada, salida deseada) Ajuste de pesos para minimizar esta diferencia Ejemplo: perceptrón multicapa (MLP) No supervisado: Evolución del sistema hasta un estado estable Ejemplo: mapa autoorganizado (SOM)
  44. 44. Principal característica: Capacidad de GENERALIZACIÓN: Calidad de la respuesta ante ejemplos desconocidos: no utilizados en el aprendizajeDos modos de funcionamiento: Aprendizaje y recuperación Redes heteroasociativas Aprendizaje conlleva mayor cómputo Redes autoasocitivas Recuperación es la fase más costosa
  45. 45. APLICACIONESReconocimiento de patrones: Asignar a cada entrada un patrón:  Estáticos  Dinámicos: trata explícitamente el tiempoClustering:  Agrupamiento no supervisado de muestras  Extracción de características diferenciadoras entre muestras  Actúa de forma opaca: espacio de características
  46. 46. Aproximación funcional:Correspondencia (x, y) contaminados conruidoPredicción: Adivinar el siguiente término de una serie:  Meteorología  Bolsa  Demanda de consumo
  47. 47. Optimización Definir función objetivo Encontrar óptimo bajo restricciones Ejemplo: problema del viajanteMemorias asociativas: Direccionables por contenido Recuperar la información original a partir de una parcialmente distorsionada
  48. 48. Generación de señales de control Calcular señales de control para que la“consigna” siga a la “referencia”. Especialmente aplicables en sistemasaltamente no lineales y complejos. Se consigue la respuesta a partir delaprendizaje con ejemplos.

×