• Nenhum resultado encontrado

4 Construção de um modelo de análise de estruturas primárias

4.4 Comparar sequências semelhantes

4.4.1 Algoritmo BLAST

Na procura de sequências similares existem sempre duas entradas importantes. A sequência de procura e as sequências alvo. A sequência de procura é fornecida pelo utilizador e vai ser alinhada contra todas as sequências alvo que residem em forma de base de dados previamente construída. A base de dados é o resultado de uma indexação de todas as sequências que se querem como referência, efectuada por uma aplicação associada ao algoritmo de procura.

O algoritmo BLAST tornou-se o método mais usado no campo das ferramentas de alinhamento de sequências [132]. O algoritmo ainda continua em evolução e é dos mais referenciados nos artigos na área da biologia. O algoritmo está disponível em código aberto sendo, por isso, possível alterar o seu código. Este procedimento faz com existam várias variações do BLAST, como o WU-BLAST desenvolvido pela Universidade de Washington.

A necessidade da computação no processo de alinhamento é inevitável, pois o número de símbolos possíveis pode ser elevado. Perante este facto, a procura por um alinhamento óptimo pode levar a uma explosão combinatória, tornando a sua execução extremamente demorada.

Existem duas grandes abordagens que se podem escolher para efectuar alinhamentos. O alinhamento global e local.

O alinhamento global de duas sequências efectua comparação simultânea, recorrendo, por exemplo, ao algoritmo Needleman-Wunsch [133]. O alinhamento global consiste na comparação dos símbolos por posição, e permitindo a utilização de um sistema de pontuação para avaliação do alinhamento obtido e a inserção de espaços para obter melhores resultados.

68 O objectivo de um alinhamento global é obter a maior pontuação possível ou óptima. O sistema mais simples consiste em dar uma pontuação por alinhar um espaço, gap, uma

pontuação por alinhar dois símbolos diferentes, mismatch, e uma pontuação por alinhar

dois símbolos idênticos, match, recorrendo às matrizes de substituição apresentadas no

anexo 8.4 (Figura 25).

Neste exemplo específico, teremos um S=57, utilizando os valores de substituição da tabela BLOSUM62, que consta no anexo 8.4, e atribuindo um peso de 5 ao gap. Como

podemos ter vários resultados para a mesma sequência, pois esta poder-se-á alinhar de forma diferente na mesma região, escolhemos o resultado mais elevado que obtivermos.

Figura 25 – Método de pontuação no alinhamento de uma sequência

O algoritmo do alinhamento global é de complexidade O(mn), onde m e n é o comprimento

das sequências a serem alinhadas, sendo muito pesado a nível computacional. Por este motivo o algoritmo não é muito usado nas aplicações de alinhamento. No entanto, existe

uma versão modificada do algoritmo que transforma a complexidade em O(m+n),

reduzindo o custo computacional. Esta modificação é geralmente baseada em algoritmos dinâmicos [134].

O alinhamento local identifica as sequências através do método heurístico, sendo o método utilizado pelo BLAST, que utiliza uma versão modificada do algoritmo Smith-Waterman [135]. Inicialmente procura pequenas sequências semelhantes, isto é, não tenta alinhar a sequência por completo mas divide a sequência em pequenos pedaços e procede ao seu alinhamento.

69 Como se pode ver na Figura 26, o algoritmo, neste caso específico, está configurado para procurar palavras com um comprimento de três, retiradas da sequência de procura. A partir deste momento o algoritmo baseia-se nos melhores resultados para expandir a procura.

Figura 26 – Procura exacta de uma palavra com comprimento 3

Com as palavras iniciais identificadas, o algoritmo estende a procura nos dois sentidos, avançando três letras em cada iteração, como se pode ver pela Figura 27. Por cada vez que o algoritmo estende a procura em três letras o cálculo do score é efectuado, incrementando

ou decrescendo consoante a sequência encontrada. Se o resultado for inferior a um determinado limite o alinhamento nessa região para. Este método assegura que o alinhamento não inclui regiões com baixa similaridade entre a sequência de procura e a sequência alvo. No momento em que não é possível progredir nos dois sentidos o valor esperado (E-value) é calculado. Se esse valor for inferior a um certo limite o alinhamento é

adicionado aos resultados.

Figura 27 – Expansão do resultado de uma palavra.

Existem vários valores que quantificam a qualidade do alinhamento obtido, resultante do processo de alinhamento. Um dos mais importantes, e certamente o mais informativo, é o valor esperado (E-value). O E-value dá-nos a informação se um determinado alinhamento

poderia ter ocorrido por acaso, relativamente ao tamanho da base de dados em análise, assim como em relação ao comprimento da sequência submetida. Devido a este facto, se fizermos uma procura em base de dados de diferentes tamanhos, o resultado irá ser

70 distinto. Por exemplo, se executarmos o BLASTP com a mesma sequência mas em duas bases de dados de proteínas distintas, como o UniProt e a PIR, verificamos que temos dois

E-values diferentes. Quanto menor é o E-Value, melhor o resultado. A faixa de 0.001 a

0.0000001 é comummente utilizada para definir os alinhamentos de alta qualidade.

A identidade e similaridade são outros valores a ter em conta na análise dos resultados, como se pode ver na Figura 28. A identidade é a razão das igualdades que ocorrem no alinhamento pelo comprimento do alinhamento. A similaridade é a razão do total das igualdades mais pares de aminoácidos que partilham as mesmas propriedades pelo comprimento da sequência.

Figura 28 – Identidade versus similaridade

Outro dos valores obtidos é o score, sendo já referido anteriormente na Figura 25, que

depende do algoritmo aplicado, pois existem várias formas de cálculo.

O método de alinhamento local não garante a melhor procura, mas tem um bom compromisso qualidade versus rapidez. O BLAST é um bom método para um primeiro estudo, pois dá uma boa indicação sobre os possíveis alinhamentos, quando o tempo é uma questão importante. No entanto, se o objectivo for obter resultados mais precisos e o tempo não for um factor importante, é melhor usar o algoritmo Smith-Waterman, ou uma aplicação que o inclua, como a aplicação SSEARCH [136] ou o MPsrch [74].

Documentos relacionados