Sei sulla pagina 1di 52

ALINHAMENTO DE SEQUNCIAS BIOLGICAS

Vagner K. Okura vagner@cbmeg.unicamp.br

Leandro Costa do Nascimento leandro@lge.ibi.unicamp.br l.costa.nascimento@gmail.com

DADOS BIOLGICOS
Replicao

Transcrio

Traduo

DNA
Tecnologias Sequenciamento

RNA

Protena

Seqncias de DNA

Seqncias de RNA

Seqncias de Protena

NCBI

100

120

140

160

20

40

60

80

0 1982 1984 1986 1987

1988
1989 1991 1992 1993 1994 1995 1995 1996 1997 1998 1999 2000 2001

2001
2002 2003 2004 2005

2006
2006 2007 2008 2009

DADOS BIOLGICOS
Crescimento do Genbank 1982-2012

2010
2011 2011

Seqncias (milhes)

Pares de Base de DNA (bilhes)

ALINHAMENTO DE SEQNCIAS: CONCEITO


Comparao de seqncias Alinhamento de seqncias uma maneira de arranjar/organizar seqncias de DNA, RNA ou protena para identificar regies de similaridade oriundas de relao funcional, estrutural e evolutiva entre as seqncias*.
Muitas protenas com seqncias similares possuem a mesma funo biolgica. A similaridade entre duas seqncias de genes ou protenas podem refletir o fato de que elas derivam por evoluo da mesma seqncia ancestral.

*Mount DM. (2004). Bioinformatics: Sequence and Genome Analysis (2nd ed.). Cold Spring Harbor Laboratory Press: Cold Spring Harbor, NY.. ISBN 087969-608-7.

PORQUE ALINHAR SEQUNCIAS? Localizar trechos conservados entre genomas Comparar uma sequncia desconhecida com bancos de dados de sequncias com funes conhecidas Reconstruo da sequncia consenso a partir da sobreposio de fragmentos de sequncias (montagem)

ALINHAMENTO DE DUAS SEQNCIAS Alinhar duas sequncias colocar uma sobre a outra de modo que todo caractere faa correspondncia com outro ou com um gap.
SEQ1: ATCGGTCCAA SEQ2: ATGGGACCAAAA

ATCGGTCCAA

ATGGGACCAAAA

COMO ESCOLHER O MELHOR ALINHAMENTO?


SEQ1: ATCGGTCCAA SEQ2: ATGGGACCAAAA

ATCGGTCCAA

ATCGGTCC

AA

ATGGGACCAAAA

AT GGGACCAAAA

COMO ESCOLHER O MELHOR ALINHAMENTO?


ATCGGTCCAA ATGGGACCAAAA
Match = 2 Mismatch = -1 Gap = -2

Criar um sistema de pontuao


Matches correspondem a bases casadas (letras iguais). Os mismatches correspondem a substituies (letras diferentes). Gaps representam inseres e delees entre as sequncias (insere-se caracter -).

O melhor alinhamento aquele que maximiza o score.


Score = #Matches*(2) + #Mismatches*(-1) + #Gaps*(-2) Score = 8*(2) + 2*(-1) + 2*(-2) = 10

PROGRAMAO DINMICA
Mtodo computacional que calcula o melhor alinhamento possvel entre sequncias Qualquer valor (i, j) da matriz definido pela seguinte regra: Acima Esquerda Diagonal p(i, j) a pontuao do campo (1 para match e -1 para mismatch) gp a penalidade para gap (gap penalty)

(i-1, j) - gp (i, j) = Max (i, j-1) - gp (i-1, j-1) + p(i, j)

PROGRAMAO DINMICA: EXEMPLO

Sequncia 1: AGCC Sequncia 2: AAACC Gap penalty: -2 Mismatch: -1 Match: 1

PROGRAMAO DINMICA: EXEMPLO A G C C

A
A

0
-2 -4

-2

-4

-6

-8

A C
C

-6 -8 -10

????

G -

C -

PROGRAMAO DINMICA: EXEMPLO A G C C

A
A

0 -2
-4

-2 (i, j)

-4

-6

-8

A C
C

-6 -8
-10

Mximo (i-1, j) - 2 = -2 -2 = -4 (i, j-1) - 2 = -2 -2 = -4 (i-1, j-1) + p(i, j) = 0 + 1 = 1

Match: A e A

PROGRAMAO DINMICA: EXEMPLO A G C C

A
A

0 -2
-4

-2 1

-4

-6

-8

A C
C

-6 -8
-10

PROGRAMAO DINMICA: EXEMPLO A G C C

A
A

0 -2
-4

-2 1

-4 (i,j)

-6

-8

A C
C

-6 -8
-10

Mximo (i-1, j) - 2 = -4 -2 = -6 (i, j-1) - 2 = 1 -2 = -1 (i-1, j-1) + p(i, j) = -2 - 1 = -3

Mismatch: A e G

PROGRAMAO DINMICA: EXEMPLO A G C C

A
A

0 -2
-4

-2 1

-4 -1

-6

-8

A C
C

-6 -8
-10

PROGRAMAO DINMICA: EXEMPLO A G C C

A
A

0 -2
-4

-2 1
-1

-4 -1
0

-6 -3
-2

-8 -5
-4

A C
C

-6 -8
-10

-3 -5
-7

-2 -4
-6

-1 -1
-3

-3 0
0

RECONSTRUO DO ALINHAMENTO O alinhamento timo deve ser construdo a partir da ltima clula da matriz. O valor da ltima clula tambm representa o score do(s) alinhamento(s) timo(s) para as duas sequncias. O alinhamento termina somente na 1 clula da matriz.

RECONSTRUO DO ALINHAMENTO A G
-4
-1

C
-6
-3

C
-8
-5

0
A A
-2 -4

-2
1

-1 -3 -5
-7

0 -2 -4
-6

-2
-1 -1 -3

-4
-3 0

A
C C

-6
-8 -10

RECONSTRUO DO ALINHAMENTO AGCC

AG CC
AAACC

GCC

AAACC

AAACC

Matches: 3 Mismatches: 1 Gaps: 1 Score = 3 * 1 + 1 * (-1) + 1 * (-2) = 0

ALINHAMENTO GLOBAL, LOCAL E SEMI-GLOBAL Alinhamento Global: as seqncias so alinhadas completamente. Alinhamento local: so alinhados trechos conservados entre as seqncias. Alinhamento semi-global: Similar ao alinhamento global, mas ignora espaos nos extremos das seqncias.
Aplicao: Montagem de Fragmentos

ALINHAMENTO GLOBAL, LOCAL E SEMI-GLOBAL Exemplos


TCGATTCTCCTCATCTTCCTTTCCATTCAAATCTCAC-TTCCCTCTTCAC ------CTCCTCATC-TCTTTTCC--------CTCACATTCC-------Alinhamento Global

CTCCTCATCTTCCTTTCC CTCCTCATC-TCTTTTCC

CTCAC-TTCC CTCACATTCC

Alinhamento Local

GTTAGTGACTTAATTACCCTCACGCGAAGCACCTTAC CACGCGGAGCACCCTACCTCTGCTAGTCCTCCTAC

Alinhamento Semi-Global

ALINHAMENTO LOCAL

Sequncia 1: ACC Sequncia 2: AAACCGT Gap: -2 Mismatch: -1 Match: 1 Matriz de alinhamento do alinhamento global com algumas adaptaes

ALINHAMENTO LOCAL Qualquer valor (i, j) da matriz definido pela seguinte regra: (i, j) = Max 0
(i-1, j) -2 (i, j-1) 2 (i-1, j-1) + p(i, j) Acima Esquerda Diagonal

Onde p(i, j) a pontuao do campo (1 para match e -1 para mismatch)

ALINHAMENTO LOCAL A 0 0 A 0 A 0 A 0 C 0 C 0 G 0 T 0

C C

0 0

????

C -

G -

ALINHAMENTO LOCAL A 0 0 A 0 (i,j) A 0 A 0 C 0 C 0 G 0 T 0

Mximo

C C

0 0

0 (i-1, j) - 2 = 0 -2 = -2 (i, j-1) - 2 = 0 -2 = -2 (i-1, j-1) + p(i, j) = 0 + 1 = 1 Match: A e A

ALINHAMENTO LOCAL A 0 0 A 0 1 A 0 A 0 C 0 C 0 G 0 T 0

C C

0 0

ALINHAMENTO LOCAL A 0 0 A 0 1 A 0 1 A 0 1 C 0 0 C 0 (i,j)


Mximo

G 0

T 0

C C

0 0

0 (i-1, j) - 2 = 0 - 2 = -2 (i, j-1) - 2 = 0 - 2 = -2 (i-1, j-1) + p(i, j) = 0 - 1 = -1

Mismatch: AeC

ALINHAMENTO LOCAL A 0 0 A 0 1 A 0 1 A 0 1 C 0 0 C 0 0 G 0 T 0

C C

0 0

ALINHAMENTO LOCAL A 0 0 A 0 1 A 0 1 A 0 1 C 0 0 C 0 0 G 0 0 T 0 0

C C

0 0

0 0

0 0

0 0

2 1

1 3

0 0

0 0

RECONSTRUO DO ALINHAMENTO LOCAL No alinhamento local o alinhamento deve ser construdo a partir do maior valor da matriz O alinhamento deve ser encerrado quando for encontrado um valor zero na matriz Se o maior valor no for nico, existe mais de um bloco conservado entre as duas sequncias

RECONSTRUO DO ALINHAMENTO LOCAL A 0 0 A 0 1 A 0 1 A 0 1 C 0 0 C 0 0 G 0 0 T 0 0

C C

0 0

0 0

0 0

0 0

2 1

1 3

0 0

0 0

RECONSTRUO DO ALINHAMENTO LOCAL

AAACC G T ACC

SCORE DO ALINHAMENTO: 3

ALINHAMENTO SEMI-GLOBAL Tambm conhecido como Pontas livres No penaliza Gaps nas extremidades til para encontrar sobreposies entre as sequncias -> montagem

CAGCATGGTGGATTCTCGC
ATTCAGCGTGG

ALINHAMENTO SEMI-GLOBAL

Sequncia 1: CGTAT Sequncia 2: AACCGT Gap: -2 Mismatch: -1 Match: 1 Matriz de alinhamento do alinhamento global com algumas adaptaes -> 1 linha e coluna so computadas com zero

ALINHAMENTO SEMI-GLOBAL Qualquer valor (i, j) da matriz definido pela seguinte regra: (i, j) = Max (i-1, j) -2 Acima
(i, j-1) 2 (i-1, j-1) + p(i, j)
Esquerda Diagonal

Onde p(i, j) a pontuao do campo (1 para match e -1 para mismatch)

ALINHAMENTO SEMI-GLOBAL A A C C G T

C G

0
0 0

T
A

0
0

????

C -

G -

ALINHAMENTO SEMI-GLOBAL A A C C G T

C G

0
0 0

0
(i,j)

T
A

0
0

Mximo (i-1, j) - 2 = 0 -2 = -2 (i, j-1) - 2 = 0 -2 = -2 (i-1, j-1) + p(i, j) = 0 - 1 = - 1 Mismatch: C e A

ALINHAMENTO SEMI-GLOBAL A A C C G T

C G

0
0 0

0
-1

T
A

0
0

ALINHAMENTO SEMI-GLOBAL A A C C G T

C G

0
0 0

0
-1

0
-1

0
(i,j)

T
A

0
0

Mximo (i-1, j) - 2 = 0 -2 = -2 (i, j-1) - 2 = -1 -2 = -3 (i-1, j-1) + p(i, j) = 0 + 1 = 1


Match: C e C

ALINHAMENTO SEMI-GLOBAL A A C C G T

C G

0
0 0

0
-1

0
-1

0
1

T
A

0
0

ALINHAMENTO SEMI-GLOBAL A A C C G T

C G

0
0 0

0
-1 -1

0
-1 -2

0
1 -1

0
1 0

0
-1 2

0
-1 0

T
A

0
0

-1
1

-2
0

-3
-2

-2
-4

0
-2

3
1

-1

-1

-3

-5

-1

RECONSTRUO DO ALINHAMENTO SEMI-GLOBAL No alinhamento semi-global deve-se selecionar o maior valor entre a ltima linha e a ltima coluna e iniciar o alinhamento a partir dele O alinhamento deve ser encerrado quando chegar na 1 linha

RECONSTRUO DO ALINHAMENTO SEMI-GLOBAL A A C C G T

C G

0
0 0

0
-1 -1

0
-1 -2

0
1 -1

0
1 0

0
-1 2

0
-1 0

T
A

0
0

-1
1

-2
0

-3
-2

-2
-4

0
-2

3
1

-1

-1

-3

-5

-1

MATRIZ ALINHAMENTO GLOBAL A A C C G T

C G

0
-2 -4

-2
-1 -3

-4
-3 -2

-6
-3 -4

-8
-5 -4

-10
-7 -4

-12
-9 -6

T
A

-6
-8

-5
-5

-4
-4

-3
-5

-5
-4

-5
-6

-3
-5

-10

-7

-6

-5

-6

-5

-5

GLOBAL X SEMI-GLOBAL
GLOBAL SEMI-GLOBAL

CGTA T

CGTA T

AACCGT

AACCGT

Se estivermos em busca de reconstruir a sequncia original, o segundo alinhamento muito mais interessante. A montagem das duas sequncias formaria a seguinte:
AACCGTAT

MELHOR ALINHAMENTO X TEMPO DE EXECUO


Os algoritmos de programao dinmica calculam o melhor alinhamento ou a soluo tima para o alinhamento entre duas seqncias. Porm, na prtica, o tempo de execuo ainda um limitante, quando h milhares de sequncias.
Montagem de 1.000.000 de fragmentos de 500 bp demoraria muito tempo. O problema que todos os fragmentos tem que ser comparados com todos e em ambos os sentidos.

ALINHAMENTOS BASEADOS EM HEURSTICAS Heursticas so algoritmos que produzem um resultado o mais prximo possvel da soluo tima, mas de maneira mais eficiente em relao ao tempo de execuo.

BUSCAR ALINHAMENTOS BASEADO EM PALAVRAS Uma abordagem heurstica para comparar milhares de seqncias duas a duas diminuir o nmero de alinhamentos. Duas seqncias so parecidas se elas possuem um trecho em comum (uma palavra).
Busca por palavras (exatas) em computao bem eficiente (linear).

BUSCAR ALINHAMENTOS BASEADO EM PALAVRAS Criar sequncias curtas (words ou palavras) de tamanho k dos fragmentos e buscar alinhamentos entre essas sequncias. Reduz muito o nmero de alinhamentos.
A T T A C G G T C C A G C T A

K = 10

BUSCAR ALINHAMENTOS BASEADO EM PALAVRAS


A
A

T
T T

T
T T

A
A A

C
C C

G
G G

G
G G

T
T T

C
C C

C
C C

A
A

C
C C

G
G G

G
G G

T
T T

C
C C

C
C C

A
A A

G
G G C C T

BUSCAR ALINHAMENTOS BASEADO EM PALAVRAS


TACA ATTACGGTCC C GA || |||||||||| | || TAGT ATTACGGTCC CAGA

o -> Tamanho da sobreposio P -> % de bases idnticas em o

Buscar sobreposies exatas entre essas sequncias curtas e tentar estender os alinhamentos para conseguir os parmetros o e p Ponto fraco: Podem existir alinhamentos que satisfaam o e p, mas que no tem sobreposies exatas entre as sequncias curtas

Potrebbero piacerti anche