• Nenhum resultado encontrado

Alinhamentos de M´ultiplas Seq¨uˆencias

N/A
N/A
Protected

Academic year: 2022

Share "Alinhamentos de M´ultiplas Seq¨uˆencias"

Copied!
48
0
0

Texto

(1)

Alinhamentos de M´ ultiplas Seq¨ uˆ encias

Rog´erio T. Brito

Orientador: Jos´e A. R. Soares

(2)

Motiva¸ c˜ ao

Problema em Biologia: saber qual ´e o grau de parentesco entre um conjunto de esp´ecies (constru¸c˜ao de ´arvores evolucion´arias ou

filogen´eticas).

E necess´´ ario comparar as esp´ecies, de alguma forma.

(3)

Motiva¸ c˜ ao

Problema em Biologia: saber qual ´e o grau de parentesco entre um conjunto de esp´ecies (constru¸c˜ao de ´arvores evolucion´arias ou

filogen´eticas).

E necess´´ ario comparar as esp´ecies, de alguma forma.

• Um m´etodo: comparar caracter´ısticas de cada esp´ecie (n´umero de asas, vertebrado ou n˜ao, n´umero de patas etc).

Foi um dos primeiros m´etodos para construir filogenias.

(4)

Motiva¸ c˜ ao

Problema em Biologia: saber qual ´e o grau de parentesco entre um conjunto de esp´ecies (constru¸c˜ao de ´arvores evolucion´arias ou

filogen´eticas).

E necess´´ ario comparar as esp´ecies, de alguma forma.

• Um m´etodo: comparar caracter´ısticas de cada esp´ecie (n´umero de asas, vertebrado ou n˜ao, n´umero de patas etc).

Foi um dos primeiros m´etodos para construir filogenias.

• Outro m´etodo: usar, de algum jeito, o c´odigo gen´etico (DNA, RNA) das esp´ecies.

(5)

Usando C´ odigo Gen´ etico

• Para o m´etodo de c´odigo gen´etico, comparamos, na realidade, as seq¨uˆencias das esp´ecies em quest˜ao.

(6)

Usando C´ odigo Gen´ etico

• Para o m´etodo de c´odigo gen´etico, comparamos, na realidade, as seq¨uˆencias das esp´ecies em quest˜ao.

• Grande quantidade de dados para an´alise (v´arias bases em cada c´odigo gen´etico) significa bastante trabalho repetitivo.

(7)

Usando C´ odigo Gen´ etico

• Para o m´etodo de c´odigo gen´etico, comparamos, na realidade, as seq¨uˆencias das esp´ecies em quest˜ao.

• Grande quantidade de dados para an´alise (v´arias bases em cada c´odigo gen´etico) significa bastante trabalho repetitivo.

• E adequado um tratamento sistem´´ atico via computador.

(8)

Usando C´ odigo Gen´ etico

• Para o m´etodo de c´odigo gen´etico, comparamos, na realidade, as seq¨uˆencias das esp´ecies em quest˜ao.

• Grande quantidade de dados para an´alise (v´arias bases em cada c´odigo gen´etico) significa bastante trabalho repetitivo.

• E adequado um tratamento sistem´´ atico via computador.

• V´arios modos de comparar uma cole¸c˜ao de seq¨uˆencias; modo mais utilizado ´e fazer um alinhamento.

(9)

Aplica¸ c˜ oes

Alinhamentos possuem conex˜oes com v´arios outros problemas em Biologia Computacional.

Aplica¸c˜oes importantes de alinhamentos:

• busca de fragmentos de DNA em bancos de dados de seq¨uˆencias (BLAST, FASTA);

(10)

Aplica¸ c˜ oes

Alinhamentos possuem conex˜oes com v´arios outros problemas em Biologia Computacional.

Aplica¸c˜oes importantes de alinhamentos:

• busca de fragmentos de DNA em bancos de dados de seq¨uˆencias (BLAST, FASTA);

• compara¸c˜ao de seq¨uˆencias;

(11)

Aplica¸ c˜ oes

Alinhamentos possuem conex˜oes com v´arios outros problemas em Biologia Computacional.

Aplica¸c˜oes importantes de alinhamentos:

• busca de fragmentos de DNA em bancos de dados de seq¨uˆencias (BLAST, FASTA);

• compara¸c˜ao de seq¨uˆencias;

• predi¸c˜ao de estrutura secund´aria (no plano) de RNA e de prote´ınas;

(12)

Aplica¸ c˜ oes

Alinhamentos possuem conex˜oes com v´arios outros problemas em Biologia Computacional.

Aplica¸c˜oes importantes de alinhamentos:

• busca de fragmentos de DNA em bancos de dados de seq¨uˆencias (BLAST, FASTA);

• compara¸c˜ao de seq¨uˆencias;

• predi¸c˜ao de estrutura secund´aria (no plano) de RNA e de prote´ınas;

• constru¸c˜ao de ´arvores filogen´eticas (via parcimˆonia m´axima, m´axima verossimilhan¸ca, Neighbor-Joining etc);

(13)

Aplica¸ c˜ oes

Alinhamentos possuem conex˜oes com v´arios outros problemas em Biologia Computacional.

Aplica¸c˜oes importantes de alinhamentos:

• busca de fragmentos de DNA em bancos de dados de seq¨uˆencias (BLAST, FASTA);

• compara¸c˜ao de seq¨uˆencias;

• predi¸c˜ao de estrutura secund´aria (no plano) de RNA e de prote´ınas;

• constru¸c˜ao de ´arvores filogen´eticas (via parcimˆonia m´axima, m´axima verossimilhan¸ca, Neighbor-Joining etc);

• aplica¸c˜oes diversas em Ciˆencia da Computa¸c˜ao.

(14)

Mas o que ´ e um Alinhamento?

E uma maneira de comparar v´´ arias seq¨uˆencias, inserindo-se espa¸cos em cada seq¨uˆencia de modo que todas fiquem com mesmo

comprimento.

(15)

Mas o que ´ e um Alinhamento?

E uma maneira de comparar v´´ arias seq¨uˆencias, inserindo-se espa¸cos em cada seq¨uˆencia de modo que todas fiquem com mesmo

comprimento.

Exemplo de um alinhamento entre s = ACTATGC e t = ACTCTC (espa¸cos representados por ):

ACTATGC ACTCTC

(16)

Mas o que ´ e um Alinhamento?

E uma maneira de comparar v´´ arias seq¨uˆencias, inserindo-se espa¸cos em cada seq¨uˆencia de modo que todas fiquem com mesmo

comprimento.

Exemplo de um alinhamento entre s = ACTATGC e t = ACTCTC (espa¸cos representados por ):

ACTATGC ACTCTC

Alinhamento “melhor” entre s e t:

ACTATGC ACTCT C

(17)

Qualidade dos Alinhamentos

Os “bons” alinhamentos (de interesse biol´ogico) evidenciam as diferen¸cas e semelhan¸cas entre as seq¨uˆencias.

Objetivo: escolher o melhor alinhamento dentre todos (ou um melhor, no caso de muitos igualmente “bons”).

Como decidir, via computador, a “qualidade” de um alinhamento (i.e., qual ´e “melhor”)?

(18)

Qualidade dos Alinhamentos

Os “bons” alinhamentos (de interesse biol´ogico) evidenciam as diferen¸cas e semelhan¸cas entre as seq¨uˆencias.

Objetivo: escolher o melhor alinhamento dentre todos (ou um melhor, no caso de muitos igualmente “bons”).

Como decidir, via computador, a “qualidade” de um alinhamento (i.e., qual ´e “melhor”)?

Atribuindo pontua¸c˜ao a eles.

(19)

Pontua¸ c˜ oes

M´etodo usual atribui pontua¸c˜ao a cada coluna do alinhamento

(dependendo dos caracteres alinhados). A pontua¸c˜ao do alinhamento

´e a soma das pontua¸c˜oes das colunas.

Duas estrat´egias para escolha de pontua¸c˜oes:

1. dar pontua¸c˜ao alta a caracteres “semelhantes” pareados e baixa a caracteres “diferentes”;

2. dar pontua¸c˜ao baixa a caracteres “semelhantes” pareados e alta a caracteres “diferentes” (ex.: distˆancia de edi¸c˜ao).

Assume-se que a pontua¸c˜ao p escolhida ´e tal que p( , ) = 0.

No exemplo anterior, as seq¨uˆencias s e t possuem distˆancia de edi¸c˜ao igual a 2: uma substitui¸c˜ao e uma remo¸c˜ao de caracteres.

(20)

Para estrat´egia 1, o problema ´e de maximiza¸c˜ao: se A ´e o conjunto de todos alinhamentos entre s e t, define-se

sim(s, t) = max

A∈A p(A);

procura-se um alinhamento com pontua¸c˜ao igual a sim(s, t).

Para a estrat´egia 2, o problema ´e de minimiza¸c˜ao: define-se d(s, t) = min

A∈A p(A);

procura-se um alinhamento com pontua¸c˜ao igual a d(s, t). Em geral, usam-se m´etricas (i.e., fun¸c˜oes distˆancias) para pontua¸c˜ao.

No trabalho, fazemos uso de distˆancias, embora quase todos algoritmos estudados funcionem com similaridades tamb´em.

(21)

Limita¸ c˜ oes do Trabalho

Variantes do problema n˜ao consideradas no trabalho:

• alinhamentos semiglobais (espa¸cos no in´ıcio ou fim de uma seq¨uˆencia n˜ao s˜ao “penalizados”);

• alinhamentos locais (busca de quais regi˜oes ou segmentos das seq¨uˆencias de entrada possuem similaridade m´axima);

• sistemas de pontua¸c˜ao com lacunas (brancos consecutivos) com pontua¸c˜ao afim (i.e., fun¸c˜oes da forma h + g · l, onde l ≥ 1 ´e o n´umero de brancos consecutivos) ou fun¸c˜oes mais complexas.

(22)

Encontrando Alinhamentos ´ Otimos

Como encontrar alinhamentos ´otimos?

Como v´arios outros problemas combinat´orios, o espa¸co de busca ´e

“grande”: busca exaustiva ´e ruim!

(23)

Encontrando Alinhamentos ´ Otimos

Como encontrar alinhamentos ´otimos?

Como v´arios outros problemas combinat´orios, o espa¸co de busca ´e

“grande”: busca exaustiva ´e ruim!

Propriedades dos alinhamentos: existem apenas trˆes possibilidades para ´ultima coluna:

• s´ımbolo de s alinhado a espa¸co:

s[m]

;

(24)

Encontrando Alinhamentos ´ Otimos

Como encontrar alinhamentos ´otimos?

Como v´arios outros problemas combinat´orios, o espa¸co de busca ´e

“grande”: busca exaustiva ´e ruim!

Propriedades dos alinhamentos: existem apenas trˆes possibilidades para ´ultima coluna:

• s´ımbolo de s alinhado a espa¸co:

s[m]

;

• s´ımbolo de s alinhado a s´ımbolo de t:

s[m]

t[n]

;

(25)

Encontrando Alinhamentos ´ Otimos

Como encontrar alinhamentos ´otimos?

Como v´arios outros problemas combinat´orios, o espa¸co de busca ´e

“grande”: busca exaustiva ´e ruim!

Propriedades dos alinhamentos: existem apenas trˆes possibilidades para ´ultima coluna:

• s´ımbolo de s alinhado a espa¸co:

s[m]

;

• s´ımbolo de s alinhado a s´ımbolo de t:

s[m]

t[n]

;

• s´ımbolo de t alinhado a espa¸co:

t[n]

.

(26)

Encontrando Alinhamentos ´ Otimos

Como encontrar alinhamentos ´otimos?

Como v´arios outros problemas combinat´orios, o espa¸co de busca ´e

“grande”: busca exaustiva ´e ruim!

Propriedades dos alinhamentos: existem apenas trˆes possibilidades para ´ultima coluna:

• s´ımbolo de s alinhado a espa¸co:

s[m]

;

• s´ımbolo de s alinhado a s´ımbolo de t:

s[m]

t[n]

;

• s´ımbolo de t alinhado a espa¸co:

t[n]

. Normalmente, n˜ao alinhamos com .

(27)

Algoritmo B´ asico

Um algoritmo de programa¸c˜ao dinˆamica usando propriedade anterior data de 1970 (Needleman & Wunsch), bastante modificado e

adaptado desde ent˜ao, principalmente por Smith & Waterman (1981).

Complexidade de tempo original: O(n3); complexidade da melhor vers˜ao conhecida: O(n2).

O algoritmo opera em duas etapas:

1. Preenche uma tabela a com “c´alculos parciais” da distˆancia, de forma que a[i, j] = d(s[1..i], t[1..j]);

2. Constr´oi um alinhamento ´otimo observando as entradas da tabela que “levaram” `a pontua¸c˜ao do alinhamento (a[m, n]).

(28)

Pela propriedade dos alinhamentos, o c´alculo de a[i, j] depende de, no m´aximo, 3 outras entradas:

a[i − 1, j − 1] a[i − 1, j] a[i, j − 1] oo a[i, j]

hhRRRRRRRRRRRRRRRR

OO

(29)

Pela propriedade dos alinhamentos, o c´alculo de a[i, j] depende de, no m´aximo, 3 outras entradas:

a[i − 1, j − 1] a[i − 1, j] a[i, j − 1] oo a[i, j]

hhRRRRRRRRRRRRRRRR

OO

O algoritmo roda em tempo O(mn) ou, para ambas seq¨uˆencias de tamanho n, em tempo O(n2).

C´alculo do alinhamento propriamente dito (etapa 2 do algoritmo) ´e feito em tempo linear (O(m + n)).

Observa¸c˜ao: por meio de divis˜ao e conquista, ´e poss´ıvel usar espa¸co linear para ambas etapas do algoritmo, ainda mantendo o tempo quadr´atico.

(30)

Alinhamentos de M´ ultiplas Seq¨ uˆ encias (AMS)

Para as aplica¸c˜oes, desejamos comparar v´arias esp´ecies. O que fazer?

Alinhamento de M´ultiplas Seq¨uˆencias.

Muitas semelhan¸cas s˜ao sutis e pouco percebidas em alinhamentos de 2 seq¨uˆencias, mas vis´ıveis em alinhamentos m´ultiplos.

“One or two homologous sequences whisper... a full multiple sequence alignment shouts out loud.” — Arthur Lesk

(31)

Alinhamentos de M´ ultiplas Seq¨ uˆ encias (AMS)

Para as aplica¸c˜oes, desejamos comparar v´arias esp´ecies. O que fazer?

Alinhamento de M´ultiplas Seq¨uˆencias.

Muitas semelhan¸cas s˜ao sutis e pouco percebidas em alinhamentos de 2 seq¨uˆencias, mas vis´ıveis em alinhamentos m´ultiplos.

“One or two homologous sequences whisper... a full multiple sequence alignment shouts out loud.” — Arthur Lesk

Problema (vers˜ao de minimiza¸c˜ao): Dadas k seq¨uˆencias s1, . . . , sk, encontrar um alinhamento A de s1, . . . , sk com pontua¸c˜ao m´ınima.

(32)

A pontua¸c˜ao usada para o AMS geralmente ´e a pontua¸c˜ao SP(·), SP(A) = X

i<j

p(s0i, s0j),

onde s0i e s0j s˜ao, respectivamente, as seq¨uˆencias si e sj ap´os inser¸c˜ao de espa¸cos.

Cada par (s0i, s0j), removidas colunas s´o com espa¸cos, ´e uma proje¸c˜ao (ou restri¸c˜ao) de A ao par si e sj.

Problema ´e resolvido por generaliza¸c˜ao do algoritmo para 2 seq¨uˆencias.

(33)

A pontua¸c˜ao usada para o AMS geralmente ´e a pontua¸c˜ao SP(·), SP(A) = X

i<j

p(s0i, s0j),

onde s0i e s0j s˜ao, respectivamente, as seq¨uˆencias si e sj ap´os inser¸c˜ao de espa¸cos.

Cada par (s0i, s0j), removidas colunas s´o com espa¸cos, ´e uma proje¸c˜ao (ou restri¸c˜ao) de A ao par si e sj.

Problema ´e resolvido por generaliza¸c˜ao do algoritmo para 2 seq¨uˆencias.

N˜ao ´e pr´atico. Para k seq¨uˆencias de tamanho n, espa¸co usado Θ(nk); tempo usado: Ω(2knk).

N˜ao ´e polinomial, nem eficiente na pr´atica.

(34)

M´ etodo de Carrillo-Lipman

Interpreta a matriz k-dimensional de programa¸c˜ao dinˆamica como um reticulado ou grafo e observa que, possivelmente, nem todos os n´os s˜ao necess´arios para calcular pontua¸c˜ao a[~n].

(35)

M´ etodo de Carrillo-Lipman

Interpreta a matriz k-dimensional de programa¸c˜ao dinˆamica como um reticulado ou grafo e observa que, possivelmente, nem todos os n´os s˜ao necess´arios para calcular pontua¸c˜ao a[~n].

Tenta limitar o n´umero de n´os considerados (i.e., visitados) no caminho do n´o ~0 ao n´o ~n (“fim” do reticulado).

Usa um alinhamento qualquer como referˆencia (para limitar a regi˜ao considerada).

Problema: ainda assim pode n˜ao ficar muito pr´atico.

(36)

Complexidade do AMS

Na realidade, algoritmos eficientes para o AMS s˜ao improv´aveis.

Em 1994, Wang e Jiang mostraram redu¸c˜ao para o problema de superseq¨uˆencia de comprimento m´ınimo; AMS ´e NP-dif´ıcil.

Demonstra¸c˜ao usa matriz “n˜ao realista”.

Em 2001, Bonizzoni e Vedova mostraram que o AMS ´e NP-dif´ıcil para a seguinte m´etrica:

a b

a 0 1 2 b 1 0 1 2 1 0

Um resultado posterior de Just (2001) generaliza o resultado de Bonizzoni e Vedova.

(37)

Usando Menos Recursos

Obter alinhamento ´otimo ´e provavelmente intrinsecamente dif´ıcil. O que fazer?

(38)

Usando Menos Recursos

Obter alinhamento ´otimo ´e provavelmente intrinsecamente dif´ıcil. O que fazer?

• Usar heur´ısticas: Divis˜ao e Conquista

(39)

Usando Menos Recursos

Obter alinhamento ´otimo ´e provavelmente intrinsecamente dif´ıcil. O que fazer?

• Usar heur´ısticas: Divis˜ao e Conquista

• Usar algoritmos de aproxima¸c˜ao

? Algoritmo de Alinhamentos Estrela

? Algoritmo de Alinhamentos l-Estrela

(40)

Usando Menos Recursos

Obter alinhamento ´otimo ´e provavelmente intrinsecamente dif´ıcil. O que fazer?

• Usar heur´ısticas: Divis˜ao e Conquista

• Usar algoritmos de aproxima¸c˜ao

? Algoritmo de Alinhamentos Estrela

? Algoritmo de Alinhamentos l-Estrela

Heur´ısticas

Funcionam r´apido em geral, s˜ao empregadas na pr´atica, mas n˜ao garantem a “qualidade” da solu¸c˜ao.

Estudaremos a heur´ıstica de Divis˜ao e Conquista.

(41)

Algoritmos de Aproxima¸ c˜ ao

Tempo polinomial no tamanho da entrada;

Solu¸c˜oes com “garantia de qualidade”;

Limita¸c˜ao: Assumem que a fun¸c˜ao objetivo ´e m´etrica.

(42)

Algoritmos de Aproxima¸ c˜ ao

Tempo polinomial no tamanho da entrada;

Solu¸c˜oes com “garantia de qualidade”;

Limita¸c˜ao: Assumem que a fun¸c˜ao objetivo ´e m´etrica.

Algoritmo de Estrelas (Gusfield, 1993) Escolhe seq¨uˆencia para “centro” da estrela;

Alinha demais seq¨uˆencias com o centro;

Raz˜ao de aproxima¸c˜ao: 2 − 2/k.

(43)

Algoritmos de Aproxima¸ c˜ ao

Tempo polinomial no tamanho da entrada;

Solu¸c˜oes com “garantia de qualidade”;

Limita¸c˜ao: Assumem que a fun¸c˜ao objetivo ´e m´etrica.

Algoritmo de Estrelas (Gusfield, 1993) Escolhe seq¨uˆencia para “centro” da estrela;

Alinha demais seq¨uˆencias com o centro;

Raz˜ao de aproxima¸c˜ao: 2 − 2/k.

Algoritmo de l-Estrelas (Bafna et.al., 1996) Generaliza o algoritmo anterior;

Em vez de estrelas, l-estrelas;

Raz˜ao de aproxima¸c˜ao: 2 − l/k.

(44)

Alinhamentos na Pr´ atica

ClustalW

Um dos programas mais populares ´e o ClustalW, com diversas variantes, dispon´ıvel via WWW em v´arios sites (uso on-line).

Seu funcionamento ´e feito em 3 etapas:

1. alinha seq¨uˆencias duas a duas;

2. constr´oi uma “´arvore guia”;

3. constr´oi o alinhamento m´ultiplo a partir da ´arvore.

(45)

MSA

Em 1995, Gupta, Kececioglu e Sch¨affer implementaram segunda vers˜ao do programa MSA, de Lipman, Altschul e Kececioglu (1989, publicado sem muitos coment´arios sobre a implementa¸c˜ao original).

O MSA procura construir alinhamentos ´otimos, embora nem sempre consiga.

Vers˜ao 2.0 do programa bem documentada, com objetivo de melhorar tempo e espa¸co.

Usa id´eias do m´etodo de Carrilo-Lipman e variante do algoritmo de Dijkstra.

Tamb´em dispon´ıvel em sites da WWW.

(46)

Apˆ endice

Algoritmo de Ukkonen (1983, 1985)

• Especializado para 2 seq¨uˆencias;

• Calcula distˆancia de edi¸c˜ao d(s, t);

• Modifica algoritmo de programa¸c˜ao dinˆamica;

• Tempo O(d(s, t) min(|s|, |t|));

• Espa¸co O(d2(s, t)).

(47)

Apˆ endice

Algoritmo de Ukkonen (1983, 1985)

• Especializado para 2 seq¨uˆencias;

• Calcula distˆancia de edi¸c˜ao d(s, t);

• Modifica algoritmo de programa¸c˜ao dinˆamica;

• Tempo O(d(s, t) min(|s|, |t|));

• Espa¸co O(d2(s, t)).

Alinhamentos de 3 seq¨uˆencias (Powell et. al., 2000)

• Especializado para 3 seq¨uˆencias;

• Tempo O(d3 + n) (m´edia), O(nd2) (pior caso).

(48)

Proposta de Trabalho

Estudar os artigos e livros relacionados a Alinhamentos de M´ultiplas Seq¨uˆencias listados na Bibliografia da Proposta de Exame de

Qualifica¸c˜ao.

Escrever um texto em l´ıngua portuguesa, introdut´orio, acess´ıvel a alunos de gradua¸c˜ao, descrevendo, de forma unificada, os principais algoritmos e resultados sobre o problema de Alinhamento de

M´ultiplas Seq¨uˆencias.

Referências

Documentos relacionados

Animador e funcionários e voluntários Material de desgaste --- “cantinho das habilidades” Sala de convívio Diariamente, durante todo o ano “O cantinho da leitura”

Em suma, da conjugação do disposto nos artigos 135.º do Código de Processo do Trabalho e 50.º, 52.º e 75.º da Lei n.º 98/2009, conclui-se que o tribunal tem o dever oficioso

*Quando o plantio for realizado fora da época preferencial, deve-se aumentar 10% a população de plantas indicadas. Para área de refúgio, recomenda-se semear BRASMAX VALENTE RR (GM

4.2 O candidato poderá optar pela análise do seu histórico escolar do ensino médio em substituição à Prova Objetiva, valendo neste caso, para sua

Sou capaz de escrever um texto articulado de forma simples sobre assuntos conhecidos ou de interesse pessoal. Sou capaz de escrever cartas pessoais para descrever experiências e

- Informações sobre assistência financeira, questões sociais e de residência Se necessário, podemos providenciar serviços especializados adequados, escritórios competentes

A primeira parte do questionário tinha como objetivo traçar o perfil sociodemográfico dos entrevistados, tendo como método a aplicação de 14 questões para

1) Gabriel Siggelkow Guimarães, matrícula nº 241.763-9; 2) Yuri Chaves Dias, matrícula nº 241.731-8. 2º - Esta portaria entra em vigor, gerando seus efeitos, na data de