set 112009
 

Quando estava pesquisando um pouco sobre algoritmos genéticos (basicamente, combinação de genes de soluções e passagens de gerações onde a melhor solução sobrevive), me deparei com mais um tópico interessante da computação baseada em mecanismos biológicos, os sistemas imunológicos artificiais.

De fato, a natureza pode nos ajudar muito, levando em conta que já nos deu as redes neurais artificiais, a computação evolucionária, a inteligência de enxames (swarm intelligence) e a computação molecular (de DNA). O sistema imunológico chamou a atenção dos cientistas da computação por sua capacidade de reconhecer padrões (anti-corpos que reconhecem invasores), sua robustez, capacidade de aprendizado, memória e distributividade – um sistema composto por vários elementos se comunicando eficientemente é de chamar atenção mesmo.

O sistema imunológico dos mamíferos (no qual se inclui o nosso) basicamente se divide em duas partes: sistema inato e sistema adaptativo. O inato já vem “embutido” quando nascemos e tem anticorpos e células capazes de saber se um objeto estranho entrou no organismo e de diferenciá-lo das nossas células. O adaptativo tem elementos diferentes mas com os mesmos princípios, com a diferença de que muda e se adapta durante o nosso tempo de vida.

Na computação, pode ser usado como reconhecedor de padrões, para segurança de redes, para aprendizado de máquinas e outras coisas mais. Das duas aplicações práticas que vi, uma foi um sistema de detecção de intrusos, para segurança de redes. A outra é um tipo de rede imunológica artificial, uma contrapartida às redes neurais artificiais. Impressionante!

A teoria em si é um pouco trabalhosa e ainda estou a estudando hehe. Quem sabe eu escreva um post detalhado sobre isso for dummies, mas por ora, deixo os links abaixo para a devida apreciação (leitura técnica, ok?). :)

Ver mais:
Link de uma tese de doutorado no assunto. No final da página, tem vários links.
Verbete da Wikipedia sobre o assunto.
Artificial Immune Systems – Portal que agrega tudo sobre o assunto.

set 022009
 

Eu acho bacana mesmo quando o pessoal usa conceitos de computação para explicar biologia! :D Vi esse post interessante sobre o vírus H1N1 sob a óptica de um computeiro. O cara se deu ao trabalho de ler um artigo da Nature e dissecou o vírus usando analogias de computação. Em termos computacionais, o vírus pode ser representado por até 26 mil bits de dados brutos. É pouca coisa, equivale a uns 3,2 kbytes apenas.

Pode ser novidade ou não para vocês, mas eu achei interessante saber que existem empresas que fazem síntese de DNA por encomenda. Tipo, o Mr. Gene. Claro que eles têm uns mecanismos de verificação para não aceitarem sequências que dêem origem a coisas perigosas.

Outra coisa que descobri: é possível ver as sequências mapeadas do vírus no banco de dados do NCBI (National Center for Biotechnology Information). Interessante, será que no futuro teremos banco de dados com acesso livre a sequências de tudo quanto é ser vivo na natureza? Pelo menos já tem na net a do Homo Sapiens. Bem que alguém podia se dar ao trabalho de revisar o código fonte humano…

Recomendo a leitura do post (é um pouco grande), vale a pena! Mesmo que não possa ser 100% acurado (como na parte de que seria suficiente mudar 2 bits para criar uma variante letal do vírus – nada garante que uma pequena mudança não vá afetar todo o mecanismo do vírus), ainda assim é worth reading.

Meu respeito por esses 3,2 kbytes de dados aumentou…

Veja mais:
DNA seen through the eyes of a coder

Fonte:
Science Slashdot