A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Intr. à Biologia Computacional ALINHAMENTO DE SEQÜÊNCIAS.

Apresentações semelhantes


Apresentação em tema: "Intr. à Biologia Computacional ALINHAMENTO DE SEQÜÊNCIAS."— Transcrição da apresentação:

1 Intr. à Biologia Computacional ALINHAMENTO DE SEQÜÊNCIAS

2 Alinhamento de Seqüências Problema: Dadas duas seqüências sobre o mesmo alfabeto, com aproximadamente o mesmo tamanho, encontrar o melhor alinhamento entre estas duas seqüências.

3 Alinhamento de Seqüências O melhor alinhamento entre duas seqüências: G A - C G G A T T A G G A T C G G A AT A G é dado por um score que é a soma dos valores associados a cada posição, de acordo com o critério pré-definido.

4 Alinhamento de Seqüências O score que é a soma dos valores associados a cada posição, de acordo com o grau de similaridade entre os elementos correspondentes. Ex: match +1 mismatch -1 space -2

5 Score de um Alinhamento Ex: match +1 (good) mismatch -1 (bad) space -2 (worse) G A - C G G A T T A G G A T C G G A AT A G score = 9 ·1+ 1·(-1) + 1·(-2) = 6

6 Programação Dinâmica O número de possíveis alinhamentos é exponencial no tamanho das seqüências. (Logo, não podemos experimentar todos.) Abordagem alternativa: Sejam s e t duas seqüências, com |s|=m e |t|=n, construir uma matriz (m+1) x (n+1), onde M(i, j) contém a similaridade entre s[1..i] e t[1..j].

7 Programação Dinâmica Esta é uma abordagem indutiva, onde são definidos os scores para as seqüências menores, e a partir dessas, novos scores são computados os scores de cadeias maiores. Ex: G A - C A T T G G A T C A AT G G custa -2; GA custa -4; G G custa +1; G GA custa -2;

8 Programação Dinâmica 1a. linha e1a. coluna fáceis de computar: G A C A T T G G -2 A -4 T -6 C -8 A -10 A -12 T -14 G -16

9 Programação Dinâmica Dado que eu sei computar os scores dos melhores alinhamentos entre prefixos de s e t com tamanhos menores que i e j, respectivamente, como eu posso calcular o melhor alinhamento de s[1..i] com t[1..j]?

10 Programação Dinâmica O score do melhor alinhamento será calculado em função do último passo de uma transformação de s[1..i] em t[1..j]. Um passo pode ser I (inserção), R (remoção), S (substituição) ou M (match)

11 Programação Dinâmica 1. Se do último passo for I (inserção): Ex: G A G C A T T C G A - C A A T C G Solução: Alinhe s[1..i] com t[1..j-1] e case um espaço com t[j] i s: G A G C A T T C t: G A - C A A T C G j-1 j

12 Programação Dinâmica 2. Se do último passo for M (match) ou S (substituição): Solução: Alinhe s[1..i-1] com t[1..j-1] e case s[i] com t[j] i-1 i s: G A G C A T T C t: G A - C A A T C j-1 j

13 Programação Dinâmica 3. Se do último passo for R (remoção): Solução: Alinhe s[1..i-1] com t[1..j] e case s[i] com um espaço i-1 i s: G A G C A T T C G t: G A - C A A T C j-1 j

14 Programação Dinâmica M (i, j) = max M (i, j-1) - 2 (último passo = I) M (i-1, j-1) + p(i,j) (último passo = S/M) M (i-1, j) - 2 (último passo =R)


Carregar ppt "Intr. à Biologia Computacional ALINHAMENTO DE SEQÜÊNCIAS."

Apresentações semelhantes


Anúncios Google