Seminário · Biologia Computacional

Alinhamento de
Sequências de DNA

Global · Semi-Global · Local

“Como um computador decide se dois pedaços de DNA são parecidos?”

Lucas Cavalcanti

→ ← avançar e voltarou role a páginaM menuF tela cheia

1 · Início

O que é alinhar duas sequências?

Colocamos duas sequências de DNA lado a lado e decidimos, coluna por coluna, o que corresponde a quê.

A|AMatch: a mesma letra nas duas sequências. (+1)
T×CMismatch: letras diferentes — talvez uma mutação. (−1)
A −Gap: uma letra foi inserida numa sequência ou perdida na outra. (−2)

Pontuação usada em todo o site: match +1 · mismatch −1 · gap −2.

Por que comparamos sequências?

  • Genes homólogosO mesmo gene em espécies diferentes revela parentesco evolutivo.Global
  • MutaçõesComparar o gene de um paciente com o gene de referência mostra onde o DNA mudou.Global
  • Montagem de genomaO sequenciador lê pedaços curtos; é preciso encaixá-los.Semi-Global
  • DiagnósticoReconhecer um vírus, uma bactéria ou uma variante genética numa amostra.Local (BLAST)

1 · Início

E como o computador faz isso?

Tentar todas as combinações não escala

8.097.453

alinhamentos possíveis para duas sequências de só 10 letras.

≈ 2 × 1075

com 100 letras — mais do que átomos na Terra (~1050).

Cada coluna do alinhamento é uma decisão entre 3 opções

↖diagonal: alinhar uma letra de A com uma de B (match ou mismatch)
↑cima: letra de A contra um gap
←esquerda: letra de B contra um gap

Programação dinâmica guarda essas decisões numa tabela: cada célula é calculada uma vez, a partir de 3 vizinhas já prontas. Para 100 letras: 101 × 101 = 10.201 células, e pronto.

Uma matriz mínima (2×2)

A célula destacada fica com o melhor dos 3 caminhos que chegam nela.

5 · Comparador

Resultados

5 · Comparador

Tabela comparativa

Mesma entrada, três perguntas diferentes, três respostas diferentes.

6 · Fechamento

Obrigado!

Depois da aula, volte ao Comparador com as suas próprias sequências — digite, aperte 🎲 Randomizar ou mude o tamanho — e veja as três perguntas darem três respostas.

Lucas Cavalcanti · Seminário de Biologia Computacional