introduccion a bioinspirados

32
Bioinformática Tema 1: Computación basada en modelos naturales

Upload: lisset-duarte

Post on 07-Dec-2015

8 views

Category:

Documents


2 download

DESCRIPTION

Introducción a algoritmos inspirados. 1. Computación basada en modelos naturales.2. Inteligencia de enjambres.3. Introducción a la computación evolutiva.4. Algoritmos genéticos. Conceptos Básicos.5. Algoritmos genéticos. Diversidad y Convergencia.6. Otros modelos evolutivos.7. Algoritmos Genéticos. Problemas multimodales. Problemasmultiobjetivo.8. Introducción a las redes neuronales artificiales.Neurocomputación.9. Fundamentos de redes neuronales artificiales.10. Modelos evolutivos de aprendizaje.11. Otros modelos de computacion bio-inspirados

TRANSCRIPT

Page 1: Introduccion a Bioinspirados

Bioinformática

Tema 1: Computación basada en modelos pnaturales

Page 2: Introduccion a Bioinspirados

Temario teóricoTemario teórico1 Computación basada en modelos naturales1. Computación basada en modelos naturales.2. Inteligencia de enjambres.3. Introducción a la computación evolutiva.4. Algoritmos genéticos. Conceptos Básicos.5. Algoritmos genéticos. Diversidad y Convergencia.6 Ot d l l ti6. Otros modelos evolutivos.7. Algoritmos Genéticos. Problemas multimodales. Problemas

multiobjetivo.j8. Introducción a las redes neuronales artificiales.

Neurocomputación.9 F d t d d l tifi i l9. Fundamentos de redes neuronales artificiales.10. Modelos evolutivos de aprendizaje.11 Otros modelos de computacion bio-inspirados11. Otros modelos de computacion bio inspirados.

Page 3: Introduccion a Bioinspirados

ObjetivosObjetivos

Entender el concepto de algoritmos bio-inspiradosinspirados.

Conocer, a nivel introductorio, algunos de los algoritmos bio-inspirados más desarrollados.

Page 4: Introduccion a Bioinspirados

ÍndiceÍndice

1. Modelos de computación bio-inspirados2 Ejemplos de modelos de computación bioinspirados2. Ejemplos de modelos de computación bioinspirados

2.1. Algoritmos evolutivos2.2. Redes neuronales2.3. Algoritmos inmunológicos2.4. Algoritmos de optimización basados en enjambres2.5. Algoritmos basados en colonias de hormigas

3 Bibli fí3. Bibliografía

Page 5: Introduccion a Bioinspirados

1. Modelos de computación bio-inspiradosinspirados La Computación Bioinspirada (BioinspiredLa Computación Bioinspirada (Bioinspired

Algorithms/Natural Computing) se basa en emplear analogías con sistemas naturales o sociales para la resolución de problemasresolución de problemas.

Los algoritmos bioinspirados simulan el comportamiento Los algoritmos bioinspirados simulan el comportamiento de sistemas naturales para el diseño de métodos heurísticos no determinísticos de “búsqueda”, de ” di j ” d i it ió d ” t i t ””aprendizaje”, de imitación de ”comportamiento”, ...

En la act alidad los algoritmos bio inspirados son no En la actualidad los algoritmos bio-inspirados son uno de los campos más prometedores de investigación en el diseño de algoritmos.g

Page 6: Introduccion a Bioinspirados

1. Modelos de computación bio-inspiradosinspirados

Características de los algoritmos bio-inspiradosCaracterísticas de los algoritmos bio inspirados

Modelan (de forma aproximada) un fenómeno existente en ( p )la naturaleza

Metáfora biológica para resolver problemas

S d t i í ti Son no determinísticos. A menudo presentan, implícitamente, una estructura

paralela (múltiples agentes)paralela (múltiples agentes). Son adaptativos (utilizan realimentación con el entorno

para modificar el modelo y los parámetros).

Page 7: Introduccion a Bioinspirados

1. Modelos de computación bio-inspiradosinspirados

Algoritmos bio-inspirados <> BioinformáticaAlgoritmos bio inspirados Bioinformática

Bioinformática es la aplicación de las matemáticas y de la informática en el procesamiento de datos experimentales para comprender problemas biológicos,

l d ili d i f á i d l á inormalmente creando o utilizando programas informáticos, modelos matemáticos o ambos.

Una de las principales aplicaciones de la bioinformática es la simulación, la minería de datos (data mining) y el análisis de los datos obtenidos en los proyectos genoma (Proyecto Genoma Humano) o el proteoma. Otras aplicaciones son el alineamiento de secuencias, la predicción de estructuras proteicas y las redes metabólicas.

La bioinformática se nutre especialmente de dos grandes áreas del conocimiento, las ciencias biológicas y las ciencias de la computación. Dado este origen existen dos grandes líneas de trabajo:

La primera en la que las ciencias de la computación utilizan modelos de las ciencias La primera en la que las ciencias de la computación utilizan modelos de las ciencias biológicas, ejemplo de ello lo constituyen las redes neuronales, los algoritmos genéticos, computación con DNA, entre otras.

La segunda en la cual las ciencias biológicas utilizan modelos y herramientas de las ciencias de la computación Ésta es la que se considera en mayor medida Bioinformáticade la computación. Ésta es la que se considera en mayor medida Bioinformática.

Page 8: Introduccion a Bioinspirados

2. Ejemplos de modelos de computación bio inspiradoscomputación bio-inspiradosAlgunos modelos de computación bio-inspirados:Algunos modelos de computación bio-inspirados:

1. Algoritmos evolutivos2. Redes neuronales3. Algoritmos inmunológicos4 Algoritmos basados en enjambres (swarm4. Algoritmos basados en enjambres (swarm

intelligence) y dentro de ellos 5 Algoritmos basados en colonias de hormigas5. Algoritmos basados en colonias de hormigas

Page 9: Introduccion a Bioinspirados

2 1 Algoritmos evolutivos2.1. Algoritmos evolutivos

Basados en los principios Darwinianos de Evolución

N lNatural

Modelan la evolución naturalModelan la evolución natural

Page 10: Introduccion a Bioinspirados

2 1 Algoritmos evolutivos2.1. Algoritmos evolutivosEl fenómeno natural: La evolución naturalEl fenómeno natural: La evolución natural

En la naturaleza, los procesos evolutivos ocurren cuando, pse satisfacen las siguientes condiciones:

Una entidad o individuo tiene la habilidad de reproducirse Una entidad o individuo tiene la habilidad de reproducirse.

Hay una población de tales individuos que son capaces dereproducirse.

Existe alguna variedad, diferencia, entre los individuos que sereproducen.

Algunas diferencias en la habilidad para sobrevivir en el entornoestán asociadas con esa variedad.

Page 11: Introduccion a Bioinspirados

2 1 Algoritmos evolutivos2.1. Algoritmos evolutivos

El fenómeno natural: La evolución naturalEl fenómeno natural: La evolución natural

Los mecanismos que conducen esta evolución no son qtotalmente conocidos, pero sí algunas de sus características:

La evolución es un proceso que opera sobre los cromosomas más que sobre las estructuras de la vida que están codificadas en ellos.

La selección natural es el enlace entre los cromosomas y la actuación de sus estructuras decodificadas.

El proceso de reproducción es el punto en el cual la evolución toma parte, actúa.

La evolución biológica no tiene memoria La evolución biológica no tiene memoria.

Page 12: Introduccion a Bioinspirados

2 1 Algoritmos evolutivos2.1. Algoritmos evolutivos

La técnica bio-inspirada: la evolución artificialLa técnica bio-inspirada: la evolución artificial

E tá t d l d l ió b d Está compuesta por modelos de evolución basados en poblaciones cuyos elementos representan soluciones a problemasproblemas.

La simulación de este proceso en un ordenador es una La simulación de este proceso en un ordenador es una técnica de optimización probabilística, que con frecuencia mejora a otros métodos clásicos en jproblemas difíciles.

Page 13: Introduccion a Bioinspirados

2 1 Algoritmos evolutivos2.1. Algoritmos evolutivosParadigmas básicos:Paradigmas básicos:

Algoritmos Genéticos que utilizan operadores g q pgenéticos sobre cromosomas.

Estrategias de Evolución que enfatizan los cambios de g qcomportamiento al nivel de los individuos.

Programación Evolutiva que enfatizan los cambios de g qcomportamiento al nivel de las especies.

Programación Genética que evoluciona expresionesProgramación Genética que evoluciona expresiones representadas como árboles.

Existen otros modelos de evolución de poblaciones.

Page 14: Introduccion a Bioinspirados

2 2 Redes neuronales artificiales2.2. Redes neuronales artificialesEl fenómeno natural: El cerebro humanoEl fenómeno natural: El cerebro humano

Excepto en tareas basadas en el cálculo aritméticoExcepto en tareas basadas en el cálculo aritmético simple, actualmente el cerebro humano es superior a cualquier ordenador:

i i t d i á reconocimiento de imágenes, interpretación de sonidos, en general, en tareas de percepcióng , p p

Características del cerebro:f f Robusto: su funcionamiento no se altera ante fallos de pequeña

importancia Flexible: se adapta con facilidad a un entorno cambiante Puede tratar con información ambigua o incompleta

Page 15: Introduccion a Bioinspirados

2 2 Redes neuronales artificiales2.2. Redes neuronales artificialesLa técnica bio-inspirada: Las redes neuronalesLa técnica bio inspirada: Las redes neuronales

artificiales

Surgen como un intento de desarrollar sistemas que emulen las características del cerebro para conseguir su sofisticada capacidad de procesamiento de informaciónsofisticada capacidad de procesamiento de información.

Sistemas convencionales de I.A. frente a las redes neuronales artificiales: Los sistemas convencionales de IA pretenden modelar las

funciones de la mente humana con independencia de lafunciones de la mente humana con independencia de la estructura física en la que está basada (cerebro).

En las redes neuronales artificiales la inteligencia surge de la interacción de las células nerviosas (neuronas artificiales) queinteracción de las células nerviosas (neuronas artificiales) que componen el cerebro (la red neuronal).

Page 16: Introduccion a Bioinspirados

2 2 Redes neuronales artificiales2.2. Redes neuronales artificialesLa técnica bioinspirada: Las redes neuronales

Basadas en la simulación del

partificiales

Basadas en la simulación del comportamiento del sistema nervioso

Pretenden sintetizar un sistema con la estructura funcional del cerebro y que desarrolle un equivalente algorítmico de los procesos de reconocimiento y

di japrendizaje

Page 17: Introduccion a Bioinspirados

2.3. Sistemas inmunológicos artificialesartificiales

El fenómeno natural: El sistema inmune naturalEl fenómeno natural: El sistema inmune natural

El sistema inm ne nat ral es n sistema m complejo con arios El sistema inmune natural es un sistema muy complejo con varios mecanismos para la defensa contra organismos patógenos.

El propósito principal del sistema inmune es reconocer todas las células (o las moléculas) dentro del cuerpo y categorizar esas células como propios o no Las células no propias se categorizancélulas como propios o no. Las células no propias se categorizan más a fondo para inducir un tipo apropiado de mecanismo de defensa.

El sistema inmune aprende con la evolución a distinguir entre los antígenos peligrosos (bacterias, virus, etc.) y células o las moléculas g p g ( , , ) ydel cuerpo propias.

Page 18: Introduccion a Bioinspirados

2.3. Sistemas inmunológicos artificialesartificiales

La técnica bio-inspirada: Los sistemas inmunológicos

Basados en la simulación del

a téc ca b o sp ada os s ste as u o óg cosartificiales

Basados en la simulación del comportamiento del sistema

inmunológico

El éxito de los sistemas inmunológicos se basa en que

el organismo continúa suel organismo continúa su función normalmente aunque

alguna parcela de él haya sido infectada por lo que el cuerpoinfectada, por lo que el cuerpo

tiene tiempo para producir suficientes anticuerpos para

reaccionar al virus.

http://ais.cs.memphis.edu/home/

Page 19: Introduccion a Bioinspirados

2.4. Algoritmos de optimización basados en enjambresbasados en enjambres

El fenómeno natural: Las sociedades de insectosEl fenómeno natural: Las sociedades de insectos

Objetivo: Imitar la inteligencia colectiva emergente de un grupo de agentes simples

Características de las sociedades de insectos:Características de las sociedades de insectos:

Llevan a cabo actuaciones colectivas que no serían posibles para un único individuoun único individuo

Proporcionan comportamientos adecuados para la computación distribuidaEl t i d t i t d d i t li it d El repertorio de comportamientos de cada insecto es limitado

No existe acceso individual al estado completo de la colonia No pueden hacer una división efectiva de la labor a realizarp No pueden garantizar el progreso de la colonia

Page 20: Introduccion a Bioinspirados

2.4. Algoritmos de optimización basados en enjambresbasados en enjambresLa técnica bio-inspirada: Los algoritmos de optimización b d j b ( i lli )basados en enjambres (swarm intelligence)

Algoritmos o mecanismos distribuidos d l ió d blde resolución de problemas inspirados en el comportamiento colectivo de colonias de insectos sociales u otras sociedades de animales

http://www.swarmintelligence.org/

Page 21: Introduccion a Bioinspirados

2.5. Algoritmos basados en colonias de hormigasde hormigas

El fenómeno natural: Las colonias de hormigas

Las hormigas son insectos

El fenómeno natural: Las colonias de hormigas

gsociales que viven en colonias y que tienen un comportamiento dirigido al desarrollo de la colonia como un todo mas que a uncomo un todo mas que a un desarrollo individual

Una característica interesante del Una característica interesante delcomportamiento de las coloniasde hormigas es cómo puedenencontrar los caminos más cortosentre el hormiguero y la comida

Lo hacen a través de un rastro deferomona

Page 22: Introduccion a Bioinspirados

2.5. Algoritmos basados en colonias de hormigasde hormigas

La técnica bio-inspirada: Los algoritmos deLa técnica bio-inspirada: Los algoritmos de optimización basados en colonias de hormigas

La optimización basada en colonias de hormigas está basada en la simulación del comportamiento de las hormigas cuando recogen comida

Page 23: Introduccion a Bioinspirados

Bibliografía. Modelos de computación bio inspiradoscomputación bio-inspirados

P BentleyP. Bentley, DIGITAL BIOLOGY. How Nature is Transforming our g

Technology. Headline, 2001.

Page 24: Introduccion a Bioinspirados

Bibliografía. Modelos de computación bio inspiradoscomputación bio-inspirados

M ShipperM. Shipper. MACHINE NATURE. The Coming Age of Bio-Inspired

Computing.McGraw-Hill, 2002.

Page 25: Introduccion a Bioinspirados

Bibliografía. Modelos de computación bio inspiradoscomputación bio-inspiradosNancy ForbesyIMITATION OF LIFE. How Biology Is

Inspiring Computing.The MIT 2004The MIT,2004

Preface ix

1 Artificial Neural Networks 1

2 i A i 132 Evolutionary Algorithms 13

3 Cellular Automata 25

4 Artificial Life 37

5 DNA Computation 51

6 Biomolecular Self-Assembly 67

7 Amorphous Computing 83

8 Computer Immune Systems 97

9 Biologically Inspired Hardware 113

10 Biology through the Lens of Computer Science 139

Epilogue 155

Notes 159

Index 163

Page 26: Introduccion a Bioinspirados

Bibliografía. Modelos de computación bio inspiradoscomputación bio-inspirados

Leandro N. de Castro, Fernando J. Von Zuben

Recent Developments in Biologically Inspired Computing.p g

Idea Group Publishing, 2005.

Page 27: Introduccion a Bioinspirados

Bibliografía. Modelos de computación bio inspiradoscomputación bio-inspiradosAlgunas revistas científicas:Algunas revistas científicas:

MIT Press IEEE Press Elsevier MIT Press IEEE Press

Springer SpringerSpringer Springer

Page 28: Introduccion a Bioinspirados

Bibliografía. Algoritmos basados en colonias de hormigascolonias de hormigas

E. Bonabeau, M. Dorigo, G. Theraulaz Swarm Intelligence. From Nature to Artificial

Systems.Oxford University Press 1999

M. Dorigo, T. StuetzleAnt Colony Optimization.MIT Press, 2004.Oxford University Press, 1999.

Page 29: Introduccion a Bioinspirados

Bibliografía. Computación evolutivaevolutiva

A.E. Eiben, J.E. SmithIntroduction to Evolutionary Computation.Springer Verlag 2003Springer Verlag 2003.(Natural Computing Series)

D B Fogel (Ed )D.B. Fogel (Ed.) Evolutionary Computation. The Fossil Record.

(Selected Readings on the History of Evolutionary Computation). y y p )

IEEE Press, 1998.

Page 30: Introduccion a Bioinspirados

Bibliografía Redes neuronalesBibliografía. Redes neuronales

Neural networks for pattern recognitiongC. M. BishopOxford University Press, 1995Oxford University Press, 1995

Redes de neuronas artificiales Un Redes de neuronas artificiales. Un enfoque práctico.P. Isasi Viñuela, I. M. Galván Leónsas ue a, Ga á eóMcGraw Hill, 2004

Page 31: Introduccion a Bioinspirados

Bibliografía: Swarm intelligenceBibliografía: Swarm intelligenceKennedy J Eberhart R C and Shi YKennedy, J., Eberhart, R. C., and Shi, Y., Swarm intelligence San Francisco: Morgan Kaufmann Publishers 2001San Francisco: Morgan Kaufmann Publishers, 2001.

Page 32: Introduccion a Bioinspirados

Bibliografía: Sistemas inmune artificialesartificialesArtificial Immune Systems: A New Comp tational Intelligence ApproachComputational Intelligence ApproachCastro, Leandro Nunes de, Timmis, Jonathan 2002, Springer.2002, Springer.

Immunity-Based SystemsA Design PerspectiveIshida YoshiteruIshida, Yoshiteru 2004, Springer.