Escolar Documentos
Profissional Documentos
Cultura Documentos
Anlise de sequncias
Eduardo Rocha
Atelier de BioInformatique, U. Paris 6 & Institut Pasteur, Paris
erocha@pasteur.fr
Contedo
Alinhamento de sequncias _________________________________________________ 3
Mtodo de "dot plot"____________________________________________________ 3
Combinatria de um alinhamento ________________________________________ 5
Alinhamentos por programao dinmica__________________________________ 7
Alinhamento de sequncias
Mtodo de "dot plot"
Existem essencialmente duas formas de realizar dot-plots:
da mesma protena, dos quais alguns conseguem escapar ao sistema imunitrio (M. pulmonis
provoca pneumonia no rato). A barra representa a fraco do gene que se encontra repetida.
A linha diagonal principal representa a identidade (alinhamento da sequncia com ela
prpria).
Existem muitos programas gratuitos que permitem realizar dot-plots. De entre estes,
sobressai especialmente o programa dotter, pela sua interactividade (Sonnhammer and
Durbin 1995).
Combinatria de um alinhamento
Comeamos por mostrar que ilusrio tentar procurar todos os alinhamentos possveis afim
de os comparar estimando o nmero de alinhamentos (com gaps) possveis entre 2
sequncias A e B de comprimentos n e m.
Mtodo ingnuo:
Vamos considerar um algoritmo directo para alinhar 2 sequncias A e B (cada uma de
comprimento N): para isto vamos considerar que para encontrar o melhor alinhamento se
vo testar todos os alinhamentos de todas as subsequncias das 2 sequncias (uma
subsequncia um conjunto de posies sobre a sequncia). Seja o algoritmo seguinte:
1. Para i de 1 a N fazer
1.1.
1.1.1.
score
dos
gaps
dos
2(N-i)
smbolos
no
alinhados em A e em B
1.1.1.3. guardar o score se ele for melhor
i =1
i =1
Eq. 1
n +1
n
2
Para n = 20 (o que ridiculamente pequeno para uma sequncia biolgica!), tem-se ento
22*20= 240, ou seja cerca de 1011 operaes a fazer.
Se se tiver em linha de conta que um computador actual trata cerca de 20.106 instrues
simples/s, ele alinharia por este algoritmo as 2 sequncias de 20 cidos aminados em 1011/
20.106, ou seja cerca de 55000 segundos, logo 2/3 de um dia. Para alinhar 2 sequncias de 21
cidos aminados, ele levar 22*21= 242 ou seja 4 vezes mais tempo (2,6 dias). Tendo em conta
que uma protena de dimenso mdia tem cerca de 300 cidos aminados, chega-se
concluso que o programa levaria cerca de 1081 anos a alinhar duas protenas tpicas (a
comparar com os cerca de 1.109 anos estimados para a idade do universo).
d(a,b) = 0
se e apenas se a = b
d(a,b) = d(b,a)
cada soluo parcial num passo posterior pode ser calculada por recorrncia a um
nmero fixo de solues parciais de passos anteriores;
Vamos portanto utilizar a recursividade: i.e. vamos supor o problema resolvido at ao passo
i-1 para o resolver no passo i. Este algoritmo descreve-se da forma recursiva seguinte:
Considerem-se duas sequncias a e b de comprimento respectivo m e n; e note-se ai e bj
como os smbolos correspondentes s posies a0 ...... am e b0 ...... bn. Note-se D i,j como a
distncia mnima entre as duas sequncias alinhadas do incio at aos resduos ai e bj.
Calcula-se sucessivamente as distncias Di,j para os valores crescentes de i e j, at atingir o
valor de Dm,n que ser a distncia mnima entre a e b. Os valores correspondentes so
guardados numa tabela a duas dimenses. O procedimento comea em D0,0 = 0. O valor de
uma clula (i,j) definido a partir das trs clulas precedentes (i-1,j), (i-1,j-1) e (i,j-1).
Assim, calcula-se Di,j a partir da equao recursiva seguinte:
Di 1, j +w(ai ,0)
Eq. 2
i-1
+ wd(ai)
d(i,j-1)
+ wi(bj )
j-1
ai
bj
i-1 a
i
j
i
j-1
bj
Eq. 3
di-1,j-1 di,j-1
di-1,j
min
ELA-GUEUR
-LARG-EUR
1 insero
2 delees
ELAGUEUR
-LARGEUR
1 deleo
2 mismat ch
distncia = 3
Waterman (Smith and Waterman 1981) demostram que este pode ser definido de tal forma
que o procedimento seja igualmente mtrico. De seguida apresenta-se uma matriz definida de
acordo com o algoritmo inicial de NWS. Uma vez que na literatura, e nos programas
disponveis, ambas as formas so frequentes, importante verificar qual das
implementaes est a ser utilizada.
medida que se constri a matriz, guarda-se em cada clula um ponteiro direccionado para a
clula que esteve na sua origem do seu score. Na figura seguinte indica-se um exemplo de
uma matriz de NWS. Esta matriz representa um alinhamento de ACGTACGT com
GATGC, utilizando um score de match de 5, um score de gap de mismatch de 5 e um score
de gap de 10.
0
1
A
7
G
8
T
-3 5
-2 0 - 3 0
-1 5 -2 5
-2 0
-3 0
-3 5
-1 0
-2 0
-2 5
-1 5
-2 0
- 5 - 1 5
-2 5
-3 5
-1 5
-5 0
-2 0
-1 5
-1 0
-2 5
-4 0
- 5 5 - 6 5
- 2 0 -3 0 - 4 0 -5 0
6
C
-1 5
-2 0
-3 0
-2 0
-1 0
-5
5
A
- 1 5 - 2 5 - 3 5 - 4 5
-2 0
-1 5
-5
-1 0
4
T
3
G
- 1 0 - 2 0 - 3 0 - 4 0 - 5 0 - 6 0 - 7 0 - 8 0
2
C
-2 5
ACGTACGT
--G-ATGC
10
{
{
}
}
Eq. 4
Di 1, j +w(ai, 0)
Eq. 5
12
L
A
0
0
-1
0
0
-2
0
-1
-1
0
0
-2
-1
-1
0
0
0
0
0
0
-1
-1
-1
-1
-2
-1
-3
-2
13
Sistemas de scores
Trs definies esto em voga para o resumo da noo de identidade entre duas sequncias,
dado um alinhamento:
%Identidade =
2 Nid
Nid
=
L1 + L2 Lt Ngap 2
%Identidade =
Nid
Lt
%Identidade =
Nid
Inf ( L1 , L2 )
onde Nid: nmero de coincidncias estritas, L1: comprimento da primeira sequncia, L2:
comprimento da segunda sequncia, Lt: comprimento total do alinhamento, Ngap: nmero de
gaps, Inf(a,b): mais pequeno de a e b. A primeira definio a mais consensual. A
identidade no necessariamente uma medida muito fina de semelhana. Suponhamos, por
exemplo, um resduo hidroflico numa protena. Espera-se que uma posio numa protena
homloga seja mais semelhante se este resduo for diferente mas tambm hidroflico, que se
for hidrofbico. Assim, em muitos casos a restrio da noo de identidade acarreta uma
perda de informao. Nestes casos costuma-se analisar a semelhana.
Se a percentagem de identidade conhece vrias definies, a percentagem de semelhana, no
tem de todo uma definio precisa. De facto, no caso da semelhana a indefinio
intrnseca, pois a noo de semelhana (ao contrrio da noo de identidade),
necessariamente contingente a um sistema de semelhanas. Assim, antes de falar em
percentagem de semelhana preciso definir uma matriz de semelhanas.
Comeamos por distinguir semelhana de homologia:
semelhana: calculada a partir da distncia de edio entre duas sequncias de
smbolos.
homologia: distncia evolutiva entre duas sequncias biolgicas, estimada em funo
do nmero de eventos mutacionais necessrios para explicar as suas histrias
evolutivas desde a divergncia.
Assim, a homologia refere-se a um modelo biolgico de evoluo, ao passo que a semelhana
refere-se ao processo de edio subjacente ao alinhamento. Naturalmente, o ideal seria que se
pudesse estabelecer uma correspondncia perfeita entre as duas. Nos pargrafos anteriores
14
2.
3.
4.
5.
tornam-se necessrias matrizes mais realistas de um ponto de vista biolgico (Harvey et al.
1996).
As matrizes de scores definem as ponderaes das operaes de edio em funo dos
resduos em questo. Podem-se construir matrizes de distncia (valores entre 0 e 1) que se
transformam facilmente em matrizes de semelhana (entre 1 e 0; 1-valor de distncia). Estes
pesos intervm no clculo da distncia correspondente ao alinhamento optimal entre duas
sequncias. Em particular, se a matriz no uma matriz de distncia no sentido matemtico
do termo, ento o algoritmo no pode assegurar uma soluo optimal. Alm disso, h que ter
presente que a escolha de uma matriz de distncia d analise efectuada um significado
particular. A matriz utilizada impe uma certa perspectiva sobre as sequncias em
comparao e enviesa o resultado da anlise. Mudar a matriz de distncia implica modificar
o alinhamento optimal.
A matriz PAM
A matriz PAM foi a primeira a ser construda (Dayhoff, Schwartz and Orcutt 1978). A sua
utilizao (e a sua construo) assenta sobre trs hipteses: 1) os eventos mutacionais so
independentes do contexto, 2) um acontecimento mutacional numa certa posio
independente dos eventos mutacionais anteriores que tiveram lugar nessa posio (processo
de Markov de ordem 0), 3) a probabilidade de substituio de X em Y a mesma que a de Y
em X.
A construo da matriz pode ser dividida em trs etapas: construo da matriz de
substituies observadas; clculo da matriz de probabilidades de substituio; clculo da
matriz de odds.
Em 1978, para a definio da matriz, A, das substituies observadas, utilizaram-se 1572
sequncias proteicas, agrupadas em 71 famlias. Posteriormente estas anlises foram
repetidas com mais sequncias. As sequncias utilizadas apresentam menos de 15% de
diferenas no seio de uma mesma famlia para evitar os problemas de substituies mltiplas
(XYZ) e para simplificar os alinhamentos. Uma rvore filogentica ento construda
para cada uma das famlias, e as sequncias analisadas por pares de 2 sequncias observadas
ou de uma sequncia observada e uma sequncia ancestral inferida atravs da rvore. Todas
as substituies so contadas nos dois sentidos (XY et YX) (3a hiptese). Compilam-se
ento os resultados na matriz A: Ai,j = Aj,i = Nmero de substituies de ij e de ji.
16
Aij
N
=
Akj
k j
Aij
Akj
Eq. 6
k j
(sendo N o nmero total de resduos). M i,j deveria ser a probabilidade P(ji | j)P(j) e
mj deveria ser a probabilidade de que j sofra uma substituio. De facto, mj antes uma
razo de duas probabilidades (odds): a razo do nmero total de mutaes observadas de
j pela exposio total mudana de j. Esta ltima a soma, sobre todos os pares de
sequncias, do nmero de ocorrncias (Nj,p) de j no par p, multiplicada pela percentagem de
mutaes no par. Assim, este termo permite normalizar em funo cada par de sequncias
aparentadas (por causa das distancias evolutivas diferentes e dos comprimentos de genes
diferentes). Vamos de seguida detalhar a construo de mj a partir dos pares de sequncias
alinhadas.
Denotando fj,p como a frequncia de j no par p, Lp como o comprimento do par, e tp como a
taxa de mutao no par p, obtm-se (Nj,p = fj,p Lp)
kj
mj =
k j
j, p
Eq. 7
Lp t p 100
Fazendo a aproximao de que a frequncia de j nos pares p (ft,p) idntica em todos eles
(fj), e de que a taxa de mutao a mesma para todos os pares (com tp = Mp/Lp
comprimento mdio de um par), tem-se ento:
17
kj
mj =
j, p
A
M
kj
k j
Lp t p 100
fj
A
A
kj
100
fj
kl
100
k l
Pode-se ver a mutabilidade como uma chance (odd) pois a relao entre a probabilidade
que j mude, ou seja
A
N
kj
k j
p(j) =
j, p
sobre a probabilidade de que j mude, se j muda como o conjunto dos cidos aminados mas
em proporo sua frequncia:
f j Akl
l
k l
N t
N
j, p
(ou ainda
j, p
j, p
Tipicamente, esta razo multiplicada por 100, o que d a mutabilidade por cada 100
posies. A multiplicao por d origem probabilidade de que j mude (ver em baixo).
Finalmente, tem-se:
kj
Mij = mj P(ji | j) =
k j
j, p
Lp t p 100
Aij
=
Akj
k j
M ij =
Aij
Aij
=
f j Akl 100
f j M p 100
l
Aij
,
f j, p M p 100
p
Eq. 8
k l
Mij ento a probabilidade de que j mude para i num conjunto de mutaes, ponderada
pela frequncia de j, e multiplicada por 100. De notar que M i,j no simtrica unicamente
por causa da mutabilidade que introduz a frequncia de j (pois a matriz A simtrica).
Na diagonal da matriz, incluem-se as probabilidades de jj, ou seja, a probabilidade no
haver alteraes. Os elementos diagonais escrevem-se portanto Mjj =1-p(j), logo:
Aij
= 1 m j
M jj = 1 Mij = 1 m j
i j
i j
Akj
k j
A
A
ij
i j
kj
k j
18
= 1 m j
Eq. 9
uma constante calculada de tal forma que a matriz M represente a mudana por unidade
M jj =
(1 m j ) =
f j m j = 0.01
j
f f m
= 1 f j m j = 0.99
j
f j Akj
( f
k j
j, p
M p 100)
= 0.01
f j Akj
k j
f j Aml
l
A
A
=1
m l
kj
k j
= 1 = 1,
ml
m l
Podemos assim simular a evoluo de uma protena aplicando a matriz M 1 (PAM1). Para
cada cido aminado j, basta fazer uma extraco aleatria entre 0 e 1, se o nmero est entre
0 e Mj,j, no se muda, se est entre Mjj e M jj + M Aj, muda-se j em A, se est entre M jj +
M Aj e M jj + M Aj + M Cj, muda-se j em C, etc. Aplica-se de seguida este procedimento a
todos os cidos aminados da protena. Pode-se renovar a operao para simular um nmero
maior de mutaes. Uma outra forma de fazer a mesma coisa consiste em multiplicar a
matriz PAM1 por ela mesma, o que d origem a PAM2, e aplic-la como antes para simular
2 mutaes por cada 100 resduos. A matriz M0 a matriz identidade (sem mudana de
cidos aminados) e a matriz:
fa
fc
M =
fd
:
fa
fc
fd
:
fa
fc
fd
:
:
19
Observam-se 1% de diferenas por 1 PAM, 50% por 80 PAM e 85% por 328 PAM.
Utiliza-se em geral a matriz PAM250, excepto quando se pretende comparar sequncias
provenientes de espcies que divergiram h pouco tempo, para o que se utiliza
frequentemente a matriz PAM125.
Nota: ao contrrio do que poderia parecer natural primeira vista, uma matriz PAM50 no representa 50% de
mudanas porque comea a haver uma probabilidade importante de mutaes mltiplas por posio, pois o
nmero de mudanas por posio segue uma distribuio de Poisson. Para valores elevados de PAM, a
distribuio de Poisson deixa de ser um bom indicador das diferenas entre protenas, porque as hipteses de
independncia de mutaes e de probabilidade uniforme de mutaes so violadas (e.g. para os stios activos
de enzimas onde as mutaes so mais fortemente contra-seleccionadas).
Mij
fi
Mij
Aij
Aij
=
=
fi
fi f j M p 100
f j f j Akl 100
p
Eq. 10
lk
kl
lk
20
por acaso (produto das frequncias de i e de j). Um valor (score) superior a 1 indica que j
muda para i nas sequncia prximas com maior frequncia do que se encontra por acaso face
a i em duas sequncias aleatrias de igual composio. Para calcular uma "chance" ("odd") de
alinhamento, basta multiplicar as "chances" dos pares de cidos aminados que so
coincidentes (na realidade, normalmente prefere-se adicionar os logaritmos das chances).
Assim, o log-odds ratio dado por:
S = s( xi , xi )
Eq. 11
onde sij a probabilidade de que o par (i,j) ocorra como um par alinhado, por comparao
com a probabilidade de ocorrer como um par no-alinhado:
p
sij = log ij
qi q j
Eq. 12
21
Regra geral, as pesquisas de alinhamento sem gaps so muito sensveis escolha da matriz,
ao passo que a pesquisa com gaps reduz significativamente as diferenas de performance
entre as matrizes utilizadas (Pearson 1995).
Outras matrizes
O modelo de evoluo por detrs da construo e utilizao das matrizes PAM criticvel:
pode-se notar os erros de estimao da matriz PAM1 atravs de como eles se propagam
e amplificam nas matrizes de ordem mais elevada. Estes erros esto ligados ao facto de
que as mutaes entre as sequncias prximas que servem elaborao da PAM1 so
dominados pelas substituies entre cidos aminados cujos codes apenas diferem de
uma base.
22
-2
-1
-2
-2
-1
-1
-1
-1
-2
-1
-1
-1
-3
-2
-3
-4
-2
-3
-3
-1
-3
-1
-1
-3
-3
-3
-3
-1
-1
-1
-2
-2
-2
-3
-3
-1
-1
-3
-1
-4
-3
-1
-2
-1
-3
-4
-3
-1
-4
-3
-2
-3
-3
-2
-1
-1
-2
-3
-2
-2
-2
-3
-3
-3
-1
-3
-3
-4
-3
-3
-2
-2
-1
-3
-1
-2
-3
-2
-4
-2
-4
-3
-2
-2
-2
-2
-3
-2
-3
-2
-3
-1
-1
-2
-3
-1
-3
-2
-2
-1
-2
-3
-2
-1
-1
-3
-3
-4
-3
-3
-3
-3
-3
-3
-2
-1
-3
-1
-1
-3
-1
-3
-2
-1
-3
-2
-1
-1
-1
-2
-3
-2
-1
-1
-4
-3
-4
-3
-2
-3
-3
-2
-2
-2
-1
-2
-1
-1
-1
-3
-2
-3
-2
-1
-2
-2
-1
-1
-1
-1
-1
-2
-3
-3
-3
-3
-2
-2
-3
-4
-2
-1
-3
-1
-1
-4
-2
-2
-3
-1
-3
-2
-2
-1
-2
-1
-1
-2
-4
-3
-1
-3
-3
-2
-3
-2
-1
-1
-2
-2
-1
-1
-3
-2
-3
-2
-3
-2
-1
-2
-1
-1
-3
-3
-2
-1
-2
-1
-2
-2
-1
-1
-1
-2
-3
-2
-1
-1
-1
-2
-2
-2
-1
-1
-1
-1
-1
-1
-1
-2
-2
-1
-3
-2
-1
-3
-3
-2
-3
-2
-2
-3
-2
-3
-1
-3
-2
-4
-3
-2
-2
-3
-3
-2
-1
-4
-4
-2
-3
-3
-2
-3
11 2
-2
-2
-3
-2
-3
-1
-2
-1
-1
-2
-3
-1
-2
-2
-2
-1
pirimidinas
>
purinas
Scores de gap
Os primeiros algoritmos e sistemas de scores desenvolvidos para o alinhamento de
sequncias biolgicas penalizavam os gaps contabilizando um custo fixo para cada resduo
alinhado com um gap na outra sequncia. Consequentemente, a penalidade do gap era
proporcional ao seu comprimento, o que acarretava a introduo nos alinhamentos de
numerosos pequenos gaps. Ora, muito cedo se tornou evidente que nas sequncias
biolgicas os tamanhos e as frequncias de gaps no se distribuem desta forma (Pescarella
and Argos 1992). Num contexto biolgico, se se considerar a introduo de um gap de
comprimento k, distinguem-se normalmente duas penalidades diferentes: uma referente
existncia do gap e outra referente dimenso do gap. Assim, a generalidade dos algoritmos
de alinhamento utiliza como penalidade para os gaps a frmula:
Pgap(L)= a + bL
Eq. 13
Eq. 14
No entanto como este ltimo clculo mais pesado que o precedente, esta frmula
raramente utilizada. Tal como para os scores de match, as penalidades de gap deveriam
variar com a distncia evolutiva das sequncias em anlise. No entanto, o problema da
24
contextualidade dos scores coloca-se aqui com acrescida acuidade, pois a probabilidade de
um indel dependente da existncia de repeties ou estruturas de ADN ou ARN na sua
proximidade.
25
Eq. 15
ppe
i
s ij x
=1
i , j =1
27
( x )
Eq. 16
onde K uma constante que depende da distribuio de cidos aminados na base de dados e
da matriz de scores. O parmetro u=ln(Kmn)/ corresponde ao mximo (unimodal) da
distribuio de Gumbel. A equao 16 descreve a probabilidade de obter um score de
semelhana S, numa comparao de 2 sequncias de comprimento m e n. Para valores
elevados de x pode-se utilizar a simplificao 1-e-exp(-x) ~ e-x:
Prob[ S x ] ~ e ( x u ) = e x e u = Kmne x
Eq. 17
Na literatura citam-se com frequncia p-values, que correspondem aos calculados pela
equao 17, pois esta corresponde probabilidade de obter um score igual ou superior ao
observado pelo acaso, i.e. utilizando sequncias aleatrias do mesmo comprimento e
composio.
S ( a + b.ln(n))
2
Eq. 18
ax+b
29
Seleco das dez melhores regies. O primeiro passo consiste na localizao das
10 regies de melhor semelhana entre a sequncia de pesquisa e cada sequncia da base
de dados. A abordagem consiste em cortar a sequncia a analisar em palavras de dado
comprimento que se sobrepem. Em geral consideram-se palavras de dimenso 1 a 2
para as protenas e de 4 a 6 para o ADN. Depois, constri-se a tabela que contm as
posies onde cada palavra se encontra ("lookup table" ou "hashing table"). Esta tabela
serve ento como referncia para a anlise de cada entrada da base de dados. Para cada
palavra de uma sequncia da base, determina-se a distncia em relao sequncia a
analisar, i.e. calcula-se a deslocao a efectuar para pr as duas sequncias em
correspondncia (figura seguinte). Definem-se assim "sementes", que correspondem s
relaes entre palavras semelhantes existentes nas duas sequncias e que no fundo so
anlogas s diagonais de dot-plots, onde as distncias correspondem s distncias
diagonal principal. Produz-se ento um histograma com as distncias observadas. As dez
distncias mais abundantes so seleccionadas para posterior anlise. Este passo
extremamente importante no que respeita a sensibilidade do mtodo: apenas as regies
seleccionadas neste passo sero consideradas mais tarde. Adicionalmente, a seleco das
sequncias da base de dados que sero seleccionadas ter como critrio a utilizao
destas diagonais. O valor escolhido para o parmetro k muito importante: quanto
menor for k, maior a sensibilidade (mais potenciais sementes so consideradas) e menor
a velocidade de execuo. A noo de palavra implica a definio de semelhanas estritas.
As regies comuns postas em evidncia no sofrem nenhum rearranjo correspondente
introduo de eventuais substituies ou inseres/delees. Este mtodo constitui um
30
primeiro filtro de pesquisa. De facto, este algoritmo tambm em N2 no pior dos casos
(se a "hashing table" preenchida apenas com uma palavra, e se a sequncia de pesquisa
constituda de ocorrncias de apenas uma palavra).
sequncia de pesquisa
12 3
base de dados
S E Q UE N CE Q U E RY
9 10 11
D A T A B A SE SE Q U EN C E
k-tuples
.........
.........
.........
.........
.........
.........
.........
.........
.........
.........
.........
.........
.........
.........
.........
Tabela indexada
(Hashing Table)
1
a cada k-tuple
associa-se um ndice
(20 k k-tuples
possveis)
3, 9
= deslocao para
emparelhar os k-tuples
Histograma das
diagonais
-Lq
-2 -1 0 1 2 3 4 5 6 7 8 9
2.
3.
Lb
-Lq
+ alinhamentos parciais
sem gaps
sem incompatibilidade
+ juno do
score "initn" com
penalidades para gaps
+ alinhamento (NWS) numa
banda de 32 resduos
volta de init1
->score "optimal"
4.
Alinhamento
+Lb
das sequncias
32
uma fraco de toda a matriz de comparaes, o alinhamento mais rpido, mas perdese a garantia de optimalidade.
Uma vez que o algorimo de Fast termina por um alinhamento produzido por programao
dinmica, podem-se utilizar as estatsticas para alinhamento local para calcular a
probabilidade associada ao hit. O surgimento de Fast permitiu na altura a acelerao das
pesquisas sobre bases de dados por um factor 10 a 100, consoante as exigncias de
sensibilidade.
BLAST
BLAST foi o ltimo dos mais populares programas de pesquisa de semelhanas em bases de
dados a ser publicado (Altschul et al. 1990). A sua vantagem, por comparao com Fasta,
que procura as coincidncias de palavras estritas, a de procurar coincidncias de palavras
que se assemelham (e portanto no estritamente idnticas). A noo de semelhana
incorporada no algoritmo atravs da utilizao de uma matriz de scores, como por exemplo a
matriz BLOSUM62. Para evitar calcular o score associado ao match de cada par de palavras,
BLAST utiliza um dicionrio pr-calculado de palavras equivalentes do ponto de vista da
matriz de scores. Uma vez encontradas as palavras, BLAST tenta estender a regio de
homologia atravs de um alinhamento local nas duas extremidades (sem gaps). Aps este
passo, identificam-se os elementos de maior score "HSP" ( de "High Scoring Pairs"). Na
primeira verso de BLAST, estes elementos constituam o resultado final, i.e. os
alinhamentos produzidos no incluam gaps, o que acelerava consideravelmente as
pesquisas. Surpreendentemente, a pesquisa sem gaps d resultados bastante prximos da
pesquisa com gaps, i.e. os elementos de maior score coincidem na maioria dos casos. Alis,
as estatsticas descritas acima para o alinhamento local sem gaps, foram desenvolvidas para
esta verso do programa e apenas posteriormente includas nos outros programas. BLAST
baseia o score de alinhamento de dois segmentos nesta estatstica. Naturalmente, BLAST
particularmente sensvel matriz de substituio utilizada, pois ela utilizada logo de incio
na procura das sementes e mais tarde na definio dos HSP. A limitao do alinhamento sem
gaps incentivou os autores do algoritmo a elaborarem mais tarde uma verso com gaps. Este
programa chama-se Blast2 e utiliza uma heurstica simples para juntar diferentes HSP
(Altschul et al. 1997). Apenas os HSP prximos de menos de uma distncia pr-definida so
considerados numa tentativa de juno dos elementos por programao dinmica. BLAST2
33
apenas considera os alinhamentos cujo score no desce abaixo do melhor score observado at
esse ponto. A utilizao de dois HSP fazem BLAST2 mais rpido que BLAST, mas
obrigam a diminuir o comprimento das palavras na pesquisa inicial de sementes, para obter a
mesma sensibilidade. No entanto, uma vez que apenas uma pequena parte dos hits so
estendidos, o tempo de clculo diminui significativamente.
34
Alinhamento de N sequncias
Quando se pretende caracterizar uma famlia de sequncias que partilham uma mesma
actividade biolgica, a utilizao de alinhamentos de sequncias duas a duas no
satisfatria pois no providencia uma comparao do conjunto das sequncias. Podemos
estar interessados nesta viso global de um conjunto de sequncias por diversas razes, de
entre as quais duas se destacam: i) as sequncias tm uma histria evolutiva comum e a
partir delas podemos estudar a histria evolutiva das espcies respectivas; ii) as sequncias
esto relacionadas por uma razo de ordem funcional ou estrutural e o estudo das suas
semelhanas permite acrescentar novas informaes sobre elas.
O alinhamento mltiplo foi uma das primeiras respostas a estes tipos de problemas e ainda
continua a ser a abordagem dominante, pelo menos no que se refere ao estudo da filogenia. O
algoritmo de programao dinmica descrito precedentemente para alinhamento global
facilmente generalizvel ao alinhamento de N sequncias (Kruskal and Sankoff 1983). No
entanto, o tempo e a memria necessrios para a sua execuo cresce em LN (L sendo o
comprimento caracterstico das sequncias). Para valores tpicos de L de 1000, este tipo de
abordagem torna-se assim muito rapidamente impraticvel. Trs algoritmos alternativos tm
sido utilizados para contornar este problema, todos baseados em heursticas:
1.
2.
3.
2.
3.
36
Dada uma rvore T com comprimentos aditivos (d.), podemos tentar reconstrui-la a partir
dos pares de distncias entre os elementos (dij) da forma seguinte. Encontre-se um par de
elementos vizinhos, i.e. elementos que esto sob o mesmo nodo imediato, k. Remova-se o
par da lista de elementos e adicione-se o nodo k, definindo a sua distncia a m por:
dkm=1/2 (dim + djm - dij)
Eq 19
0.1
0.1
0.1
0.3
0.4
Definimos:
Dij = dij - (ri - rj)
Eq 20
onde
ri =
1
dik
L 2 k L
Eq 21
37
1.
Inicializao
1.1.
definir T como o conjunto de nodos da rvore, um
para cada sequncia
1.2.
L=T
2.
Iterao
2.1.
escolher um par i, j em L, para o qual D ij minimal
2.2.
definir um novo nodo k e aplicar dkm =1/2 (dim + djm dij), m L
2.3.
adicionar k a T com comprimentos dik=1/2 (dij + ri +
rj), djk = dij - dik
2.4.
juntar k a i, respectivamente
2.5.
remover i e j de L e adicionar k
3.
Concluso
3.1.
quando L consiste de dois elementos i e j adicionase o ltimo ramo entre i e j, com comprimento dij
Suponha-se que a rvore baseada na comparao dois a dois das sequncias inteiras indica
um primeiro alinhamento de x com y, seguido de z. No primeiro passo, existem 3
alinhamentos possveis de x com y dando exactamente o mesmo score:
x ACTTA
ACTTA
ACTTA
y A-GTA
AGT-A
AG-TA
No segundo passo, o gap que j foi introduzido no poder ser mudado. O alinhamento com
z produzir ento:
x ACTTA
ACTTA
ACTTA
y A-GTA
AGT-A
AG-TA
z ACGTA
ACGTA
ACGTA
interessados
ocorre
candidatos. O limiar para a pesquisa de blocos um parmetro do programa que pode ser
diminudo de forma iterativa para encontrar regies conservadas entre os blocos definidos
nos passos anteriores. O facto destes programas comearem por um passo de alinhamentos
dois a dois implica o mesmo problema que para os alinhamentos progressivos, pois
informao conservada entre todas as sequncias no necessariamente evidente nas
comparaes dois a dois.
Eq 22
mtodo para mtodo, mas tem tipicamente a mesma forma da funo para alinhamentos dois
a dois, i.e. inclui um termo para abertura de gaps e outro para extenso. Existem
essencialmente dois mtodos para calcular S(mi), um baseado em princpios de mnima
entropia e outro baseado na soma dos pares.
Entropia Mnima
Considere-se mi como a coluna i do alinhamento, mij como o smbolo na posio i para a
sequncia j. Defina-se cia como as contagens observadas para o smbolo a na coluna i. Se se
considerar que os resduos na coluna assim como entre as colunas so independentes, ento
a probabilidade de uma coluna dada por:
P( mi ) = piacia
a
onde pia a probabilidade do resduo a na coluna i. Pode-se definir o score da coluna como o
negativo do logaritmo desta probabilidade:
S( mi ) = cia log pia
Eq 23
Isto uma medida da entropia da informao tal como ela foi definida por Shannon
(Shannon and Weaver 1949). No fundo, uma medida conveniente da variabilidade
observada numa coluna alinhada de resduos, pois quanto mais varivel a coluna for, maior
ser a entropia. As probabilidades dos resduos na coluna i podem ser estimadas a partir da
composio da coluna nos resduos (i.e. corresponde s suas frequncias empricas).
Eq 24
k <1
42
entanto, como as sequncias esto relacionadas por uma rvore filogentica os resultados so
apenas aproximados.
43
esto mais constrangidas na sua evoluo pela seleco natural. Dito de outra forma, uma
vez que as mutaes so aleatrias, as regies muito fortemente conservadas so
provavelmente regies que sofrem uma forte seleco para no mudarem. partida so
justamente estas que nos interessam.
Apesar destas diferenas, a anlise dos alinhamentos mltiplos comea pela procura das
regies conservadas, uma vez que frequentemente se analisam sequncias com um certo grau
de divergncia. Quando o conjunto de sequncias muito semelhante, a filogenia vai
simplesmente ignorar as colunas homogneas e a anlise de motivos vai providenciar
motivos muito grandes, dada a concordncia entre as colunas. Assim, tanto do ponto de
vista da anlise de motivos como da anlise filogentica a situao ideal aquela em que
existe suficiente variabilidade para identificar as regies importantes, mas no demasiada que
confunda o sinal com rudo.
Mtodo
Dados os comentrios feitos acima, torna-se evidente que no existe nenhum mtodo geral
para definir blocos de forte semelhana. No entanto tm sido propostos esquemas gerais,
tipicamente baseados num conjunto de parmetros regulveis (Castresana 2000):
5.
6.
7.
8.
9.
10.
Consensos
Por comparao de sequncias podem-se pr em evidncia regies conservadas comuns a
certas zonas de controlo da expresso gentica ou ligadas descrio de caractersticas
funcionais ou estruturais particulares. A extraco dos segmentos correspondentes (e.g.
atravs da identificao de blocos descrita acima) permite estabelecer os catlogos dos
motivos caractersticos. Obtm-se assim, exemplos que nos permitem definir uma
"assinatura" da sequncia. Uma primeira abordagem consiste na descrio de uma sequncia
de consenso. Estando os motivos previamente alinhados, procura-se em cada posio o
resduo mais representado (Lecomte and Matthews 1993; Stormo 1990). Os limites deste
mtodo rudimentar so claramente demostrados pelo exemplo da caixa de "Pribnow". Os
promotores procariotas so compostos de duas regies de controlo: a caixa de "Pribnow" ou
"TATA box" centrada volta da posio -10 a montante do incio de transcrio e a regio
de "reconhecimento" situada em torno da posio -35. Estes dois sinais foram durante muito
tempo descritos com a ajuda de duas sequncias de consenso, respectivamente TATAAT e
46
TTGACA. No entanto, medida que novos dados genticos foram obtidos, estes consensos
foram-se revelando mais "moles" que previsto. Em particular, para a caixa de Pribnow resta
hoje apenas o T em posio terminal como verdadeiramente consensual. Por este motivo
mais corrente utilizar consensos degenerados, onde cada posio do consenso descrita por
uma ou mais letras maioritrias na coluna de alinhamento. Se voltarmos ao bloco definido na
figura
acima,
podemos
definir
dois
tipos
de
consensos
para
ele:
IXDVARXAGVSXXTVSRVI ou [IL]XD[VI]A[RK]XAGVSXXTVSRV[IL].
Uma vez definido um consenso, a procura deste na base de dados pode ser feita com um
algoritmo de pesquisa de textos que admita mismatches. Note-se que estes consensos so
normalmente pequenos, pelo que frequentemente se probem os gaps. Quando os consensos
so maiores e a existncia de gaps no pode ser ignorada, ento pode-se usar o algoritmo
bestfit de programao dinmica citado atrs. Existem estatsticas exactas que permitem
determinar a probabilidade de um hit, sem gaps para um padro exacto (i.e. uma nica letra
possvel em cada posio) com mismatches (Tatusov, Altschul and Koonin 1994). No
entanto para uso de consensos gerais costuma-se utilizar a seguinte abordagem por
simulao.
4.
47
sequncia separadamente. Esta ltima abordagem mais pesada, mas mais correcta quando
a base de dados tem sequncias de composio muito diferente.
Quando os sinais so relativamente flexveis em relao ao consenso esta representao
demasiado pobre para descrever correctamente os exemplos. Os mtodos apresentados de
seguida permitem procurar a "assinatura" de um sinal a partir da integrao de informaes
mais flexveis.
Eq 25
que procuramos
Eq 26
e
P( sequncia motivo) = P(ri motivo)
i
Finalmente:
P( r )
i
Se os resduos que constituem o motivo so muito abundantes na base de dados, i.e. P(ri)
so grandes, a probabilidade de obter efectivamente um verdadeiro motivo ser mais baixa.
No conhecemos a priori a probabilidade do motivo. Em contrapartida, conhecemos as
P(ri|motivo), que a frequncia relativa do resduo na posio i do motivo. Da mesma forma,
conhecemos P(ri), que a probabilidade de encontrar o resduo ri nas sequncias examinadas
(frequncia de ri). Assim, P(motivo|ri) = P(ri|motivo)/P(ri) equivalente a ponderar a
frequncia do resduo na coluna de alinhamento pela sua frequncia na base de dados. O
score associado a uma posio numa sequncia examinada ser ento o produto dos
P(motivos|ri) (ou a soma dos log).
Considere-se a seguinte matriz que representa os RBS (ribosome binding site) de B. subtilis.
49
A
C
G
T
0.52
0.08
0.19
0.21
0.52
0.09
0.22
0.14
0.71
0.04
0.16
0.09
0.05
0.01
0.93
0.01
0.04
0.02
0.94
0.00
0.70
0.02
0.16
0.13
0.06
0.01
0.87
0.06
0.23
0.07
0.58
0.12
50
51
ordem da cadeia
i =1 N (wi )
i =1 N (wi wi +1 )
i =1 N (wi wi +1wi + 2 )
...
k-2
i =1 N (wi )
3
i =1 N (wi )
4
n3
N ( w2 )
i =1 N (wi wi +1 )
3
i = 2 N (wi )
3
N ( w2 w3 )
...
k
i =1 N (wi )
k
n k 1
k 1
k =1 N (wi wi +1 )
k 1
i = 2 N (wi )
k 2
i =1 N (wi wi +1wi + 2 )
k 2
i = 2 N (wi wi +1 )
i =1 N (wi ...wi + k 2 )
2
N ( w2 ...wk 1 )
Resumo do mtodo
Vamos agora resumir o mtodo experimental de anlise dos vises de palavras por
comparao com um modelo de Markov de ordem maximal. Comea-se por definir
conjuntos de dados que se considerem homogneos em relao caracterstica biolgica em
estudo. De seguida determina-se o nmero de palavras observadas de um dado comprimento
k. O nosso objectivo ento a determinao no conjunto destas palavras quais so as
enviesadas. Para isso utiliza-se o z-score seguinte:
52
zW =
N (W ) E (W )
Var (W )
Eq. 27
Var (W ) = E(W )
Eq. 28
[( N (w2 w3 ...wm 1 ) N (w1w2 ...wm 1 ))( N (w2 w3 ...wm 1 ) N (w2 w3 ...wm ))] Eq. 29
N ( w2 w3 ...wm 1 )2
Sabe-se que a distribuio asinttica deste z-score uma Gaussiana centrada reduzida
(Schbath 1997). Assim, para contagens suficientemente grandes pode-se aplicar (27) para
cada palavra de comprimento k. O conjunto de palavras enviesadas ento constitudo pelas
palavras cujos z-scores saiam de um intervalo de confiana definido a priori. Utiliza-se
geralmente intervalos de confiana a 1. Naturalmente se k grande (e.g. 6), espera-se
identificar algumas palavras fora do intervalo fixado (uma vez que existem 4096 palavras de
comprimento 6 no ADN). No entanto, isto no ser muito importante dado o nmero muito
maior de palavras encontradas pelo mtodo (Rocha, Viari and Danchin 1998). Esta
observao por si s indica a incapacidade das cadeias de Markov de modelizarem com
grande preciso as sequncias biolgicas.
A figura seguinte resume o mtodo.
Palavras sobrepostas
de comprimento k
N
Modelo:
cadeia de Markov
de ordem k-2
i= 1 N (wi ...wi+ k 2 )
2
N (w2...wk 1 )
Contagens
observadas
Clculo das
contagens E
zW =
N(W) E(W)
Var(W)
Sub/sobre representao
53
Concluso
A anlise das sequncias biolgicas repousa sobre uma dualidade que ope trs aspectos
complementares do problema: o aspecto informtico, que assenta sobre a implementao de
algoritmos; o aspecto estatstico que valida a abordagem; e o aspecto biolgico, que controla
as diferentes etapas e autoriza a interpretao dos resultados. possvel analisar e comparar
as sequncias considerando-as como uma sucesso de smbolos. O problema consiste ento,
de uma maneira geral, a calcular alinhamentos e a definir regies de semelhana entre
sequncias. Os diferentes mtodos apresentados so baseados em tcnicas de comparao
lexicogrfica aptas a resolver o problema posto sobre a sua forma informtica. Para que os
resultados obtidos sejam significativos e interpretveis, certas condies ligadas ao domnio
de aplicao e questo biolgica subjacente devem ser tidas em conta. Em certos casos
estas so expressas com a ajuda de funes de peso permitindo a ligao entre as operaes
elementares de edio sobre as quais repousam os algoritmos de pesquisa de semelhana e os
eventos mutacionais e selectivos que permitem medir a homologia entre duas sequncias.
54
Referncias bibliogrficas
Altschul, S.F., Gish, W., Miller, W., Myers, E.W. and Lipman, D.J. 1990. Basic local
alignment search tool. J. Mol. Biol., 215:403-410.
Altschul, S.F., Madden, T.L., Schfer, A.A., Zhang, J., Zhang, Z., Miller, W. and Lipman,
D. 1997. Gapped BLAST and PSI-BLAST: A new generation of protein database
search programs. Nucleic Acids Res., 25:3389-3402.
Benner, S.A., Cohen, M.A. and Gonnet, G.H. 1993. 1993. Empirical and structural models
for insertions and deletions in the divergent evolution of proteins., 229:1065-1082.
Castresana, J. 2000. Selection of conserved blocks from multiple alignments for their use in
phylogenetic analysis. Mol Biol Evol, 17:540-552.
Dayhoff, M.O., Schwartz, R.M. and Orcutt, B.C. 1978. A model of evolutionary change in
proteins. In Dayhoff, M.O. (ed.) Atlas of protein sequence and structure. Natl.
Biomed. Res. Found., Vol. 5, pp. 345-352.
Durbin, R., Eddy, S., Krogh, A. and Mitchison, G. 1998. Biological sequence analysis.
Cambridge University Press, Cambridge.
Duret, L. and Abdeddaim, S. 2000. Multiple alignments for structural, functional, or
phylogenetic analyses of homologous sequences. In Higgins, D. and Taylor, W.
(eds.), BioInformatics: sequence, structure and databanks. Oxford University Press,
Oxford, pp. 51-76.
Erickson, B.W. and Sellers, P.H. 1983. Recognition of patterns in genetic sequences. In
Sankoff, D. and Kruskal, J.B. (eds.), Time warps, string edits, and macromolecules:
the theory and practice of sequence comparison. Addison-Wesley, pp. 55-91.
Feng, D.-F., Johnson, M.S. and Doolittle, R.F. 1985. Aligning amino acids sequences:
comparison of commonly used methods. J. Mol. Evol., 21:112-125.
Fickett, J.W. 1984. Fast optimal alignment. Nucleic Acids Res, 12:175-179.
Gibbs, A.J. and McIntyre, G.A. 1970. The diagram: a method for comparing sequences. Its
use with amino acid and nucleotide sequences. Eur. J. Biochem., 16:1-11.
Goad, W.B. and Kanehisa, M. 1982. Pattern recognition in nucleic acid sequences I: A
general method for finding local homologies and symmetries. Nucleic Acids Res,
10:247-263.
55
Gotoh, O. 1982. An improved algorithm for matching biological sequences. J. Mol. Biol.,
162:705-708.
Grantham, R. 1974. Amino acid difference formula to help explains protein evolution.
Science, 185:862-864.
Gribskov, M., McLachlan, A.D. and Eisenberg, D. 1987. Profile analysis: detection of
distantly related proteins. Proc. Natl. Acad. Sci. USA, 84:4355-4358.
Harvey, P.H., Brown, A.J.L., Smith, J.M. and Nee, S. (eds.) (1996) New uses for new
phylogenies. Oxford University Press, New York.
Henikoff, S. and Henikoff, J.G. 1993. Performance evaluation of amino acid substitution
matrices. Proteins, 17:49-61.
Higgins, D.G., Bleasby, A.J. and Fuchs, R. 1992. CLUSTAL V: improved software for
multiple sequence alignment. Comput Appl Biosci, 8:189-191.
Jeanmougin, F., Thompson, J.D., Gouy, M., Higgins, D.G. and Gibson, T.J. 1998.
Multiple sequence alignment with Clustal X. Trends Biochem Sci, 23:403-5.
Karlin, S. and Altschul, S.F. 1993. Methods for assessing the statistical significance of
molecular sequence features by using general scoring schemes. Proc. Natl. Acad. Sci.
USA, 87:2264-2268.
Kimura, M. 1980. A simple method for estimating evolutionary rates of base substitutions
through comparative studies of nucleotide sequences. J. Mol. Evol., 16:111-120.
Kruskal, J.B. and Sankoff, D. 1983. An anthology of algorithms and concepts for sequence
comparison. In Sankoff, D. (ed.) Time warps, string edits, and macromolecules: the
theory and practice of sequence comparison. Addison-Wesley, Reading, Mass, pp.
265-310.
Lecomte, J.T.J. and Matthews, C.R. 1993. Unraveling the Mechanism of Protein Folding New Tricks for an Old Problem. Protein Eng., 6:1-10.
Levenshtein, V.I. 1966. Binary codes capable of correcting deletions, insertions and
reversals. Cyber. Contr. Theory, 10:707-710.
Levin, J.M., Robson, B. and Garnier, J. 1986. An algorithm for secondary structure
determination in proteins based on sequence similarity. FEBS Lett., 205:303-308.
Li, W.-H. 1997. Molecular evolution. Sinauer Press, Sunderland, Massachussets.
56
Maizel, J.V., Jr. and Lenk, R.P. 1981. Enhanced graphic matrix analysis of nucleic acid and
protein sequences. Proc Natl Acad Sci U S A, 78:7665-7669.
McLachlan, A.D. 1971. Test for comparing related amino acid sequences. Cytochrome c
and cytochrome c551. J. Mol. Biol., 61:409-424.
Mott, R. 1992. Maximum likelihood estimation of the statistical distribution of SmithWaterman local sequence similarity scores. Bull. Math. Biol., 54.
Needleman, S. and Wunsch, C. 1970. A general method applicable to the search for
similarities in the amino acid sequence of two proteins. J. Mol. Biol., 48:443-453.
Nei, M. 2000. Molecular phylogenetics and evolution. Sinauer Press.
Pearson, W.R. 1995. Comparison of methods for searching protein sequence databases.
Protein Sci, 4:1145.
Pearson, W.R. and Lipman, D.J. 1988. Improved tools for biological sequence comparisons.
Proc. Natl. Acad. Sci. USA, 85:2444-2448.
Pescarella, S. and Argos, P. 1992. Analysis of insertions/deletions in protein sequences. J.
Mol. Biol., 224:461-471.
Rao, J.K.M. 1987. New scoring matrix for amino acid residue exchanges based on residue
characteristic physical parameters. Int. J. Pept. Prot. Res., 29:276-281.
Rennell, D., Bouvier, S.E., Hardy, L.W. and Poteete, A.R. 1991. Systematic mutation of
bacteriophage T4 lysozyme. J. Mol. Biol., 222:67-88.
Risler, J.-L., Delorme, M.-O., Delacroix, H. and Hnaut, A. 1988. Amino acid substitutions
in structurally related proteins. A pattern recognition approach. J. Mol. Biol.,
204:1019-1029.
Rocha, E.P.C., Viari, A. and Danchin, A. 1998. Oligonucleotide bias in Bacillus subtilis:
general trends and taxonomic comparisons. Nucleic Acids Res., 26:2971-2980.
Saitou, N. and Nei, M. 1987. The neighbor-joining method: a new method for reconstructing
phylogenetic trees. Mol. Biol. Evol., 4:406-425.
Sankoff, D. 1972. Matching sequences under deletion/insertion constraints. Proc. Natl.
Acad. Sci. USA, 69:4-6.
Sankoff, D. and Cedergren, R.J. 1973. A test for nucleotide sequence homology. J. Mol.
Biol., 77:159-164.
57
Schbath, S. 1997. An efficient statistic to detect over- and under-represented words in DNA
sequences. J. Comput. Biol., 4:189-192.
Schuler, G.D., Altschul, S.F. and Lipman, D.J. 1991. A workbench for multiple alignment
construction and analysis. Proteins, 9:180-190.
Sellers, P.H. 1974. On the theory and computation of evolutionary distances. SIAM J.
Appl. Math., 26:787-793.
Shannon, C.E. and Weaver, W. 1949. The mathematical theory of communication.
University of Illinois Press, Urbana.
Smith, T.F. and Waterman, M.S. 1981. Comparison of bio-sequences. Adv. Appl. Math.,
2:482-489.
Sonnhammer, E.L. and Durbin, R. 1995. A dot-matrix program with dynamic threshold
control suited for genomic DNA and protein sequence analysis. Gene, 167:GC1-10.
Staden, R. 1982. An interactive graphics program for comparing and aligning nucleic acid
and amino acid sequences. Nucleic Acids Res, 10:2951-2961.
Staden, R. 1989. Methods for calculating the probabilities of finding patterns in sequences.
CABIOS, 5:89-96.
Stormo, G. 1990. Consensus patterns in DNA. Meth. Enzym., 183:211-221.
Tatusov, R.L., Altschul, S.F. and Koonin, E.V. 1994. Detection of conserved segments in
proteins: iterative scanning of sequence databases with alignment blocks. Proc. Natl.
Acad. Sci. USA, 91:12091-12095.
Vingron, M. 1996. Near-optimal sequence alignement. Curr. Opin. Struct. Biol., 6:346-352.
Waterman, M.S. 1984. Efficient sequence alignment algorithms. J. Theor. Biol., 108:333337.
Wilbur, W.J. and Lipman, D.J. 1983. Rapid similarity searches of nucleic acid and protein
data banks. Proc. Natl. Acad. Sci. USA, 80:726-730.
Zuker, M. 1991. Suboptimal sequence alignment in molecular biology: alignment with error
analysis. J. Mol. Biol., 221:403-420.
58