|
Acadêmico(a): Felipe Fernandes Albrecht |
Título: Reconstrução Filogenética em Ambiente Distribuído |
|
Introdução: |
Desde o início da história, a humanidade preocupa-se em compreender a vida e suas origens. Diversos foram os filósofos e cientistas que propuseram teorias e métodos para explicar a origem da vida. Com a publicação do livro “A Origem das Espécies” por Charles Darwin em 1859, o conceito da evolução foi apresentada pela primeira vez. A Teoria da Evolução diz que os organismos sofrem mutações entre diferentes gerações e as modificações vantajosas são perpetuadas, enquanto as desvantajosas são eliminadas pela seleção natural. Com os conceitos propostos por Charles Darwin, é possível analisar as mudanças que ocorreram nas espécies de seres vivos e propor uma linhagem evolutiva delas. Através destes conceitos, pode-se afirmar que os seres humanos e demais espécies de primatas possuem uma espécie ancestral em comum. O estudo das relações evolucionárias entre espécies de seres vivos, tanto vivas quanto extintas e a inferência de possíveis árvores evolutivas é denominado de filogenética (MOUNT, 2004). Este estudo era feito primordialmente pela observação das características morfológicas, ou seja, através da aparência e funcionamento dos órgãos e sistemas dos seres vivos. Com o advento da genética molecular, onde são estudadas principalmente seqüências genéticas e protéicas, a filogenética passa a utilizar estas informações moleculares. O estudo da filogenética destes dados tem como principal objetivo inferir árvores evolutivas destas seqüências e das espécies que as possuem com o maior grau de confiabilidade possível. Esta nova abordagem de filogenética utilizando dados moleculares é chamado de filogenética molecular. Desta forma, a filogenética molecular descreve a origem e evolução de seqüências genéticas e protéicas e, segundo Mount (2004, p. 282), uma análise filogenética de uma família de ácidos nucléicos ou de proteínas relacionadas é a determinação de como os membros desta família derivaram-se durante a evolução. Em diversas situações é utilizado o termo reconstrução filogenética, para denotar uma inferência filogenética. Isto porquê, através de informações, visíveis ou molulares, sobre os seres vivos e do estudo desdes dados, pretende-se reconstruir, ou inferir, uma árvore mais próxima possível da verdadeira, formada pela evolução dos organismos. Nas pesquisas de filogenias mais complexas, é comum a utilização de workflows, que sãoum conjunto de softwares, cada qual com sua função específica, que executam uma operação. Para a filogenética, utiliza-se um workflows composto por um software de pesquisa de seqüências em banco de dados, outro que recebe estas seqüências e faz um alinhamento delas, ressaltando suas semelhanças e por fim um software que lê o resultado do alinhamento das seqüências e reconstrói uma árvore filogenética baseada nestes dados. Um problema comum a todos os métodos de reconstrução de árvore filogenética é a alta necessidade computacional caso o número de seqüências seja alto. Para resolver esta questão, a principal solução seria distribuir o problema entre diversos processadores. Desta forma, duas soluções são possíveis: a utilização de supercomputadores ou a de clusters. A utilização de supercomputadores esbarra no alto custo desses equipamentos, inacessíveis para diversas instituições de pesquisa e uma solução que se destaca em ambientes distribuídos são os clusters beowulf. Cluster é um termo largamente utilizado e significa uma interligação de computadores através de software e rede independentes num único sistema, ou seja, uma interligação de computadores independentes para resolverem um problema em comum. Os clusters podem ser utilizados para sistemas High Availability (HA) para garantir alta disponibilidade do sistema ou em High Performace Computing (HPC) para proporcionarem poder computacional maior do que um único computador proporcionaria (STERLING, 2002). Os clusters beowulf são de desempenho escalável baseados em hardware facilmente encontrado no mercado, em sistemas de redes comuns e tendo como infraestrutura o software livre. Os clusters beowulf possuem alta adaptabilidade, podendo ser formados por dois nodos conectados via ethernet ou ser um complexo sistema de 1024 nodos conectados através de rede de alta velocidade (BEOWULF.. . , 2004). A comunicação entre os nodos de um cluster beowulf é feita através de bibliotecas de troca de mensagens. Atualmente o principal padrão é o MPI (MESSAGE. . . , 2006). Possui diversas implementações que são utilizadas como bibliotecas nos programas a serem implementados, fazendo abstração da comunicação entre os nodos. é importante ressaltar que os softwares executados em clusters beowulf devem ser preparados para isto, utilizando algoritmos para processamento distribuído e tendo na sua implementação, uma iblioteca para a comunicação entre os nodos. |
|
|