2006: Computação Bioinspirada - Novas Perspectivas para Pesquisa em Biologia

1,305 views

Published on

Palestra proferida no Instituto de Biologia da USP

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,305
On SlideShare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
82
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

2006: Computação Bioinspirada - Novas Perspectivas para Pesquisa em Biologia

  1. 1. Computação Bio-Inspirada: Novas Perspectivas em Biologia Instituto de Biologia/USP 22 de Março de 2006 Leandro Nunes de Castro [email_address] http://lsin.unisantos.br/lnunes Laboratório de Sistemas Inteligentes (LSIn) Universidade Católica de Santos - UniSantos
  2. 2. Sumário <ul><li>Introdução </li></ul><ul><li>Conceitos Importantes </li></ul><ul><li>Computação & Biologia </li></ul><ul><ul><li>A biologia como fonte de inspiração </li></ul></ul><ul><ul><li>A computação como ferramenta de análise e síntese de sistemas biológicos </li></ul></ul><ul><li>Casos de Estudo </li></ul><ul><ul><li>aiNet </li></ul></ul><ul><ul><li>FranksTree </li></ul></ul><ul><ul><li>Boids </li></ul></ul><ul><li>A Computação no Novo Milênio </li></ul>
  3. 3. Introdução <ul><li>Principais perspectivas da biologia para a computação: </li></ul><ul><ul><li>Como uma fonte de idéias </li></ul></ul><ul><ul><li>Como uma fonte de problemas </li></ul></ul><ul><li>Qual a perspectiva da computação para a biologia? </li></ul><ul><ul><li>Como ferramenta? </li></ul></ul><ul><li>Porque o diálogo pode ser difícil? </li></ul><ul><ul><li>Nomenclatura </li></ul></ul><ul><ul><li>Interesses </li></ul></ul><ul><ul><li>Formação </li></ul></ul>
  4. 4. Objetivos <ul><li>Conceitualizar </li></ul><ul><li>Contextualizar </li></ul><ul><li>Introduzir a computação inspirada na biologia (CIB) </li></ul><ul><li>Ilustrar a CIB </li></ul><ul><li>Identificar interesses em comum </li></ul>
  5. 5. Conceitos Importantes <ul><li>Obs.: cuidado com os conceitos ! </li></ul><ul><li>Experimento: </li></ul><ul><ul><li>Procedimento realizado em ambiente controlado com o objetivo de reunir observações e/ou dados que demonstram teorias ou fatos conhecidos, ou que permitem testar hipóteses ou teorias. Grande parte dos experimentos biológicos são feitos in vivo ou in vitro . </li></ul></ul><ul><li>Modelo: </li></ul><ul><ul><li>O termo modelo pode ser encontrado em diversos contextos e disciplinas e, portanto, pode apresentar significados distintos. </li></ul></ul>
  6. 6. Conceitos Importantes <ul><li>Modelos: </li></ul><ul><ul><li>Podem ser definidos como abstrações de fenômenos reais ou implementação de uma hipótese para investigar questões particulares ou para demonstrar características específicas de um sistema ou hipótese. </li></ul></ul><ul><ul><li>Correspondem a descrições (esquemáticas) de um sistema, teoria ou fenômeno que considera suas características conhecidas ou inferidas e que pode ser usado para estudos mais aprofundados. </li></ul></ul><ul><ul><li>A utilidade de um modelo está em sua habilidade de nos ensinar algo sobre o fenômeno representado. </li></ul></ul>
  7. 7. Conceitos Importantes <ul><li>Objetivos dos modelos em biologia teórica: </li></ul><ul><ul><li>Obter uma descrição quantitativa mais precisa de um determinado fenômeno e dos respectivos modelos experimentais </li></ul></ul><ul><ul><li>Contribuir para a análise crítica de hipóteses e compreensão dos mecanismos biológicos envolvidos </li></ul></ul><ul><ul><li>Ajudar na predição de comportamentos e projeto de experimentos </li></ul></ul><ul><ul><li>Permitir a recuperação de informação de experimentos (incompletos) </li></ul></ul>
  8. 8. Conceitos Importantes <ul><li>Metáfora: </li></ul><ul><ul><li>As metáforas permitem uma atribuição de propriedades salientes de um objeto em relação a outro. </li></ul></ul><ul><ul><li>Exemplos: </li></ul></ul><ul><ul><ul><li>‘Ela é uma rosa’; </li></ul></ul></ul><ul><ul><ul><li>‘Redes neurais artificiais’; </li></ul></ul></ul><ul><ul><ul><li>‘Aquele carro é um avião’; </li></ul></ul></ul><ul><ul><ul><li>‘Vida artificial’. </li></ul></ul></ul><ul><ul><li>Qualitativo x Quantitativo . </li></ul></ul>
  9. 9. Conceitos Importantes <ul><li>Simular: </li></ul><ul><ul><li>Imitar um fenômeno real. </li></ul></ul><ul><ul><li>Requer a representação de aspectos importantes do fenômeno a ser simulado. </li></ul></ul><ul><li>Adaptação: </li></ul><ul><ul><li>Capacidade de um sistema ajustar sua resposta dependendo do ambiente. </li></ul></ul><ul><ul><li>Aprendizagem x Evolução. </li></ul></ul>
  10. 10. Conceitos Importantes <ul><li>Auto-Organização </li></ul><ul><ul><li>Ampla gama de processos de formação espontânea de padrões em sistemas físicos, químicos e biológicos. Exemplos: </li></ul></ul><ul><ul><ul><li>Grãos de areia formando dunas, reagentes químicos formando espirais, células compondo tecidos, peixes se organizando em cardumes, etc. </li></ul></ul></ul><ul><ul><li>Contra-exemplos: </li></ul></ul><ul><ul><ul><li>Organizações militares, acompanhamento de uma receita, uso de uma forma, etc. </li></ul></ul></ul><ul><li>Emergência </li></ul><ul><ul><li>Propriedades globais de um sistema ou organismo que não estão presentes e nem são diretamente deriváveis de seus componentes individuais. </li></ul></ul>
  11. 11. Computação & Biologia
  12. 12. Filosofia
  13. 13. Natureza x Computação <ul><li>Computação Bio-Inspirada = Natureza + Computação </li></ul><ul><li>Formas de interação: </li></ul><ul><ul><li>Computação bio-inspirada: A natureza como fonte de inspiração para o desenvolvimento de ferramentas computacionais para solução de problemas </li></ul></ul><ul><ul><li>Vida artificial e fractais: A computação como ferramenta para a análise e síntese de fenômenos naturais </li></ul></ul>
  14. 14. Computação Bio-Inspirada <ul><li>A natureza evoluiu por milhões de anos para resolver problemas complexos </li></ul><ul><li>Exemplos: construção e limpeza de ninhos, descoberta de caminhos e táticas de exploração, sentidos (visão, audição, tato, olfato), etc. </li></ul><ul><li>Algoritmos computacionais inspirados ou baseados na natureza existem com dois propósitos: </li></ul><ul><ul><li>Para modelar a natureza; </li></ul></ul><ul><ul><li>Ou principalmente para resolver problemas complexos. </li></ul></ul>
  15. 15. Principais Temas <ul><li>Neurocomputação </li></ul><ul><li>Computação evolutiva </li></ul><ul><li>Inteligência de enxame </li></ul><ul><li>Imunocomputação </li></ul><ul><li>Química artificial </li></ul><ul><li>Algoritmos de crescimento e desenvolvimento </li></ul><ul><li>etc. </li></ul>Abordagens mais antigas
  16. 16. O Neurocomputador mais Simples <ul><li>Neurônio de McCulloch & Pitts </li></ul><ul><ul><li>Simulação de portas lógicas: Computação Universal </li></ul></ul>u = w 1 x 1 + w 2 x 2
  17. 17. <ul><li>Um formigueiro ‘artificial’ ( ant farm ) </li></ul>Inteligência de Enxame
  18. 18. <ul><li>Limpeza de ninhos e organização de larvas </li></ul>Inteligência de Enxame
  19. 19. <ul><li>Um modelo matemático da limpeza de ninhos </li></ul><ul><li>Melhorias no modelo </li></ul>Inteligência de Enxame
  20. 20. <ul><li>Navegação autônoma de robôs </li></ul>Inteligência de Enxame
  21. 21. <ul><li>Agrupamento de dados de bioinformática </li></ul>Inteligência de Enxame
  22. 22. <ul><li>Segurança de redes de computadores </li></ul>Sistemas Imunológicos Artificiais
  23. 23. Sistemas Imunológicos Artificiais <ul><li>Navegação autônoma de robôs </li></ul>
  24. 24. <ul><li>Computer simulations </li></ul>Sistemas Imunológicos Artificiais
  25. 25. <ul><li>Implementação robôs reais </li></ul>Sistemas Imunológicos Artificiais
  26. 26. Vida Artificial e Geometria Fractal
  27. 27. Idéias Principais <ul><li>Biociência: abordagem reducionista para o entendimento da natureza </li></ul><ul><li>Vida artificial e geometria fractal: abordagem bottom-up para a síntese de padrões e comportamentos naturais </li></ul><ul><li>Foco na síntese computacional de padrões e comportamentos naturais e não na resolução de problemas </li></ul><ul><li>Amplamente usada em computação gráfica e na indústria cinematográfica </li></ul>
  28. 28. <ul><li>Artificial Life: </li></ul><ul><ul><li>“ Vida artificial é o estudo de sistemas feitos pelo homem que exibem comportamentos característicos de sistemas naturais. Ela complementa as ciências biológicas preocupadas com a análise de organismos vivos tentando sintetizar em computador ou outro meio comportamentos similares aos de organismos vivos. A vida artificial contribui para a biologia localizando a vida-como-nós-a-conhecemos dentro de um contexto mais amplo da vida-como-ela-poderia-ser .” (Chris Langton) </li></ul></ul>Vida Artificial
  29. 29. <ul><li>“ A vida artificial é o processo de entender a biologia através da construção de fenômenos biológicos a partir de componentes artificiais, ao invés de reduzir as formas de vida naturais a seus componentes mais elementares. É uma abordagem sintética e não reducionista.” (Ray, 1994) </li></ul>Vida Artificial
  30. 30. <ul><li>Vida natural: Um exemplo </li></ul>Vida Artificial
  31. 31. <ul><li>Boids: Regras comportamentais simples </li></ul><ul><ul><li>Evitar colisão e separação </li></ul></ul><ul><ul><li>Alinhamento e ajuste de velocidade </li></ul></ul><ul><ul><li>Centralização e coesão </li></ul></ul>Vida Artificial
  32. 32. <ul><li>Boids </li></ul>Vida Artificial
  33. 33. <ul><li>Vida-como-ela-é x Vida-como-ela-poderia-ser </li></ul>Vida Artificial
  34. 34. Geometria Fractal <ul><li>“ Porque a geometria geralmente é descrita como ‘fria’ e ‘seca’? Uma razão é devido a sua incapacidade de descrever a forma de uma nuvem, uma montanha, uma costa marítma, ou uma árvore. Nuvens não são esferas, montanhas não são cones, costas marítmas não são círculos, a casca de uma árvore não é lisa e um raio não viaja em linha reta....A existência destes padrões nos desafia a estudar estas formas que Euclides deixou de lado como sendo ‘sem forma’, a investigar a morfologia do ‘amorfo’.” (Mandelbrot, 1983; p. 1) </li></ul><ul><li>Um grande avanço no processo de modelagem e síntese de padrões naturais foi o reconhecimento de que a natureza é fractal e o desenvolvimento da geometria fractal. </li></ul><ul><li>A geometria fractal é a geometria da natureza, como todas as suas estruturas fragmentadas e complexas. </li></ul>
  35. 35. Fractais <ul><li>Fractais são caracterizados por: </li></ul><ul><ul><li>Dimensão fractal </li></ul></ul><ul><ul><li>Auto-similaridade </li></ul></ul><ul><ul><li>Nível infinito de detalhes em múltiplas escalas </li></ul></ul>
  36. 36. Geometria Fractal <ul><li>Algumas ferramentas: </li></ul><ul><ul><li>Autômatos celulares </li></ul></ul><ul><ul><li>Sistemas de funções iterativas </li></ul></ul><ul><ul><li>Sistemas de Lyndenmayer </li></ul></ul><ul><ul><li>Movimento Browniano </li></ul></ul><ul><ul><li>Sistemas de partículas </li></ul></ul><ul><ul><li>Projeto evolutivo </li></ul></ul><ul><ul><li>etc. </li></ul></ul>
  37. 37. <ul><li>Sistemas de Lindenmayer </li></ul><ul><ul><li>Um formalismo para simular o desenvolvimento de organismos multi-celulares </li></ul></ul><ul><ul><li>Um sistema L é definido como a tripla ordenada G  =   V ,  , P  , onde V é o alfabeto do sistema,       V + é uma palavra não vazia chamada de axioma , e P      V      V* é um conjunto finito de regras </li></ul></ul><ul><ul><li>A interpretação geométrica das palavras geradas por um sistema L pode ser usada para gerar imagens esquemáticas de diversos padrões naturais </li></ul></ul>Geometria Fractal
  38. 38. <ul><li>Sistemas de Lindenmayer (sem renderizar) </li></ul>Geometria Fractal
  39. 39. <ul><li>Sistemas de Lindenmayer (renderizados) </li></ul>Geometria Fractal
  40. 40. <ul><li>O Projeto FranksTree </li></ul><ul><ul><li>Investiga a influência do cruzamento de tecidos de indivíduos de mesma espécie e de espécies distintas </li></ul></ul>Geometria Fractal
  41. 41. <ul><li>Movimento Browniano </li></ul><ul><ul><li>Para modelar alguns cenários naturais é preciso ter curvas que parecem diferentes quando ampliadas mas que ainda apresentem a mesma característica </li></ul></ul><ul><ul><li>O termo movimento Browniano fracionário (fBm) foi introduzido para denotar uma família de funções aleatórias Gaussianas capazes de fornecer modelos interessantes de diversas séries temporais naturais </li></ul></ul>Geometria Fractal
  42. 42. <ul><li>Movimento Browniano Fracionário (sem renderização) </li></ul>Geometria Fractal
  43. 43. <ul><li>Movimento Browniano Fracionário (renderizado) </li></ul>Geometria Fractal
  44. 44. Casos de Estudo aiNet
  45. 45. Modelos de Redes Imunológicas <ul><li>A Teoria da Rede </li></ul><ul><ul><li>O sistema imune é composto por uma grande e complexa rede de paratopos que reconhecem idiotopos e de idiotopos que são reconhecidos por paratopos. Assim, cada elemento pode reconhecer e ser reconhecido (Jerne, 1974) </li></ul></ul><ul><li>Características: </li></ul><ul><ul><li>Estrutura </li></ul></ul><ul><ul><li>Dinâmica </li></ul></ul><ul><ul><li>Metadinâmica </li></ul></ul>
  46. 46. Modelos de Redes Imunológicas <ul><li>Interações na Teoria da Rede </li></ul>
  47. 47. aiNet: Rede Imunológica Artificial <ul><li>Agrupamento e classificação </li></ul><ul><ul><li>aiNet (de Castro & Von Zuben, 2001) </li></ul></ul><ul><ul><li>Definição: </li></ul></ul><ul><ul><ul><li>A aiNet é um grafo ponderado, não necessariamente conexo, composto por um conjunto de nós e arcos ponderados. </li></ul></ul></ul><ul><ul><li>Características: </li></ul></ul><ul><ul><ul><li>Conhecimento distribuído pelas células </li></ul></ul></ul><ul><ul><ul><li>Aprendizagem competitiva (não-superivisonada) </li></ul></ul></ul><ul><ul><ul><li>Modelo construtivo com etapas de poda </li></ul></ul></ul><ul><ul><ul><li>Dinâmica que promove a geração e manutenção de diversidade </li></ul></ul></ul>
  48. 48. aiNet: Reconhecimento de Padrões <ul><li>aiNet: </li></ul><ul><ul><li>Crescimento: </li></ul></ul><ul><ul><ul><li>Princípio da seleção clonal </li></ul></ul></ul><ul><ul><li>Aprendizagem: </li></ul></ul><ul><ul><ul><li>Maturação de afinidade direcionada </li></ul></ul></ul><ul><ul><li>Poda: </li></ul></ul><ul><ul><ul><li>Teoria da rede (supressão de anticorpos) </li></ul></ul></ul>
  49. 49. <ul><li>aiNet a cada geração : </li></ul><ul><ul><li>Para cada antígeno Ag </li></ul></ul><ul><ul><ul><li> Afinidade com o antígeno ( A i ) Ag i -Ab </li></ul></ul></ul><ul><ul><ul><li> Seleção clonal ( n cells)  A i </li></ul></ul></ul><ul><ul><ul><li> Clonagem  A i </li></ul></ul></ul><ul><ul><ul><li> Maturação direcionada (mutação)  1/ A i </li></ul></ul></ul><ul><ul><ul><li> Re-seleção (  %)  A i </li></ul></ul></ul><ul><ul><ul><li> Morte natural (  d )  1/ A i </li></ul></ul></ul><ul><ul><ul><li> Afinidade entre as células da rede ( D ii ) Ab-Ab </li></ul></ul></ul><ul><ul><ul><li> Supressão clonal (  s )  D ii : ( m - memória) </li></ul></ul></ul><ul><ul><ul><li> M t  [M t ; m ] </li></ul></ul></ul><ul><ul><li>Supressão da rede (  s )  D ii : (M  M t ) </li></ul></ul><ul><ul><li>M  [M;meta] </li></ul></ul>aiNet: Reconhecimento de Padrões
  50. 50. <ul><li>Agrupamento </li></ul>aiNet: Reconhecimento de Padrões 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 x y Padrões de entrada 0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Estrutura final da rede
  51. 51. <ul><li>Agrupamento </li></ul>aiNet: Reconhecimento de Padrões -2 -1 0 1 2 -2 0 2 4 -1.5 -1 -0.5 0 0.5 1 1.5 -1 -0.5 0 0.5 1 -1 0 1 2 3 -1 -0.5 0 0.5 1 1.5 Estrutura final da rede
  52. 52. aiNet: Uma Aplicação em Bioinformática <ul><li>Base de dados Yeast </li></ul>E’ E’’ E J K B C H D F,G
  53. 53. <ul><li>A resposta imunológica da aiNet (de Castro, 2004) </li></ul><ul><li>Hipóteses da teoria da rede usadas na aiNet </li></ul><ul><ul><li>Seleção clonal, expansão e maturação devido a estímulos externos </li></ul></ul><ul><ul><li>Interações de rede (supressão) </li></ul></ul><ul><ul><li>Metadinâmica </li></ul></ul><ul><li>Dinâmica: Híbrida de aprendizagem e evolução </li></ul><ul><ul><li>Ab k * = Ab k   +  k (Ag – Ab k );  k  Aff k ; k  = 1,..., Nc . </li></ul></ul><ul><ul><li> Ab =  Nc      Ns  +  Nb      Nd </li></ul></ul>aiNet: Reconhecimento de Padrões
  54. 54. <ul><li>A resposta imune da aiNet </li></ul>aiNet: Reconhecimento de Padrões
  55. 55. <ul><li>A resposta imune da aiNet </li></ul>aiNet: Reconhecimento de Padrões
  56. 56. <ul><li>A resposta imune da aiNet </li></ul>aiNet: Reconhecimento de Padrões
  57. 57. A Computação no Novo Milênio
  58. 58. <ul><li>Algumas idéias que formam a base da computação bio-inspirada: </li></ul><ul><ul><li>Capacidade de tratar problemas complexos </li></ul></ul><ul><ul><li>Uso de mais de uma solução candidata </li></ul></ul><ul><ul><li>Capacidade de manipular informação imprecisa de maneira imprecisa </li></ul></ul><ul><ul><li>Robustez, distributividade e auto-reparo </li></ul></ul><ul><ul><li>Representações simplificadas </li></ul></ul><ul><ul><li>Auto-organização e emergência </li></ul></ul><ul><ul><li>etc. </li></ul></ul>Computação no Novo Milênio
  59. 59. <ul><li>Aplicações em potencial </li></ul><ul><ul><li>Aproximação de funções </li></ul></ul><ul><ul><li>Busca e otimização (exemplos: planejamento, roteamento, agendamento e empacotamento) </li></ul></ul><ul><ul><li>Agrupamento e classificação (exemplos: aprendizagem de máquina e reconhecimento de padrões) </li></ul></ul><ul><ul><li>Projeto (exemplo: processamento de sinais) </li></ul></ul><ul><ul><li>Simulação, identificação e controle </li></ul></ul><ul><ul><li>Detecção de falhas e anomalias, segurança de sistemas de informação </li></ul></ul><ul><ul><li>Robótica </li></ul></ul>Computação no Novo Milênio
  60. 60. <ul><li>Vida Artificial e Geometria Fractal </li></ul><ul><ul><li>Aumenta a compreensão da natureza </li></ul></ul><ul><ul><li>Fornece novas perspectivas sobre a ‘vida’ e seus diversos modelos </li></ul></ul><ul><ul><li>Permite o desenvolvimento de novas tecnologias: softwares, robótica, jogos interativos, computação gráfica, sistemas educacionais, ferramentas de animação comportamental </li></ul></ul><ul><ul><li>Forma computacionalmente barata de gerar modelos computacionais da natureza </li></ul></ul><ul><ul><li>Estudar padrões naturais: vegetações extintas, projeto de novas variedades de plantas, estudo de processos de crescimento e desenvolvimento, auxílio a fazendeiros e decoradores, predição de produtividade, indústria cinematográfica, etc. </li></ul></ul>Computação no Novo Milênio
  61. 61. Computação no Novo Milênio <ul><li>Da singularidade à pluralidade </li></ul>
  62. 62. <ul><li>A natureza nunca foi tão importante! </li></ul>Computação no Novo Milênio
  63. 63. <ul><li>Um Vídeo para Resumir a Motivação Biológica </li></ul><ul><ul><li>BIC – Biologically Inspired Computing 2005 </li></ul></ul>Computação no Novo Milênio
  64. 64. Principal Referência <ul><li>Fundamentals of Natural Computing: Basic Concepts, Algorithms, and Applications </li></ul><ul><li>Leandro N. de Castro, CRC Press LLC, 2006 </li></ul>
  65. 65. Obrigado! Questões, comentários? Contato : [email_address]

×