Sei sulla pagina 1di 52

Biologia Molecular Computacional

Guilherme P. Telles
IC

15 de outubro de 2013

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

1 / 52

Avisado est a

Estes slides s ao incompletos e cont em erros, inconsist encias, imperfei c oes e outros defeitos desse g enero. Ningu em deveria usar esses slides como um substituto para os livros ou como fonte de estudos. Estes slides foram escritos usando gram atica anterior ` a reforma ortogr aca de 2009.

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

2 / 52

Parte I Constru c ao de arvores logen eticas

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

3 / 52

Arvore logen etica ou logenia


Tentativa de inferir a hist oria evolucion aria entre objetos com rela c ao a ancestrais hipot eticos comuns. Os objetos podem ser esp ecies, g eneros, popula c oes ou outras unidades taxon omicas. Uma arvore logen etica ou logenia e uma arvore em que as folhas representam objetos que existem atualmente e em que os n os internos representam ancestrais hipot eticos. Uma logenia e sempre uma hip otese: N ao temos dados sucientes sobre os ancestrais, que podem ter pouco signicado biol ogico. E dif cil ter certeza com rela c ao ` a ancestralidade entre os organismos.

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

4 / 52

Exemplo

[ref. desconhecida] Guilherme P. Telles (IC) BMC 15 de outubro de 2013 5 / 52

Exemplo

[Hayden e Jorgensen, BMC Biology,5:32, 2007] Guilherme P. Telles (IC) BMC 15 de outubro de 2013 6 / 52

Filogenia molecular

A constru c ao de logenias e uma sub- area da taxonomia num erica. Filogenia molecular: mol eculas tamb em evoluem e podem ser usadas como unidades taxon omicas.

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

7 / 52

Aspectos de interesse

Topologia: como os n os internos est ao conectados entre si e com as folhas. Dist ancia: pesos associados ` as arestas podem representar dist ancia evolucion aria entre os n os. Raiz: a arvore pode ser enraizada ou n ao. A raiz implica uma rela c ao de ancestralidade entre os n os.

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

8 / 52

Dois tipos de entradas

Matriz de caracter sticas. Matriz de dist ancias.

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

9 / 52

N umero de arvores

O n umero de arvores bin arias enraizadas com n folhas distingu veis e n os internos n ao-distingu veis e
n

(2i 3) = ((2n/3)n1 ).
i=0

O n umero de arvores bin arias com n folhas distingu veis e n os internos n ao-distingu veis e
n

(2i 5) = ((2n/3)n2 ).
i=0

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

10 / 52

Matrizes de caracter sticas

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

11 / 52

Matriz de caracter sticas

Uma matriz de caracter sticas ou matriz de estados de caracter sticas e uma matriz n m em que cada um dos n objetos tem m caracter sticas que podem assumir r estados distintos.

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

12 / 52

Exemplo

pelos tubar oes actinopter geos crocodilianos anf bios p assaros primatas roedores n n s n s s s

v ertebras s s s s s s s

esqueleto osseo n s s s s s s

2 aberturas atr as dos olhos n n s n s n n

4 membros n n s s s s s

embri ao amni otico n n s n s s s

[evolution.berkeley.edu/evolibrary/article/phylogenetics 07]

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

13 / 52

Suposi co es sobre as caracter sticas

As caracter sticas s ao discretas: cada caracter stica tem no m aximo r estados que s ao denotados por inteiros entre 0 e r 1. As caracter sticas devem poder ser herdadas independentemente. Para um grupo de objetos, todos os estados observados de uma certa caracter stica evolu ram a partir de um estado ancestral, que eo estado do ancestral comum mais pr oximo. As caracter sticas atribu das aos n os ancestrais podem descrever um objeto biol ogico sem signicado.

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

14 / 52

Diculdades

Converg encia ou evolu c ao paralela: dois objetos com a mesma caracter stica n ao s ao pr oximos evolutivamente. P. ex. asas em morcegos e em aves. Revers oes: um estado ancestral modica-se entre objetos. A princ pio vamos considerar formula c oes do problema em que converg encia e revers oes n ao s ao admitidas.

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

15 / 52

Tipos de caracter sticas

Qualitativa: e uma caracter stica em que o relacionamento entre os estados n ao e conhecido. Clad stica: e uma caracter stica qualitativa associada com uma arvore em que cada v ertice e um estado da caracter stica. Ordenada: e uma caracter stica clad stica em que a arvore e enraizada. N ao-ordenada: e uma caracter stica clad stica em que a arvore n ao e enraizada.

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

16 / 52

Problema da logenia perfeita

Uma logenia T e uma logenia perfeita se o conjunto de todos os n os para os quais o estado e si com respeito a cj forma uma sub arvore de T , para cada estado si de toda caracter stica cj dos objetos. O problema da logenia perfeita consiste em construir uma logenia perfeita a partir de uma matriz de caracter sticas. Se a logenia e perfeita ent ao uma transi c ao de um estado ancestral para um estado derivado de uma caracter stica pode ser associada com a aresta da arvore que conecta a sub arvore que cont em aquele estado. Se um conjunto de objetos admite uma logenia perfeita dizemos que as caracter sticas s ao compat veis.

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

17 / 52

Diculdade

Caracter sticas clad sticas: P. Caracter sticas qualitativas: NP-completo. Caracter sticas qualitativas mas n umero xo de estados: P. Agarwala e Fernandez-Baca, 19941 , em tempo O(23r (nm3 + m4 )). Caracter sticas qualitativas mas n umero xo de caracter sticas: P. McMorris, Warnow e Wimer, 19932 , em tempo O((rm)m+1 + nm2 ).

1 R. Agarwala e D. Fernandez-Baca. A polynomial-time algorithm for the perfect phylogeny problem when the number of character states is xed. SIAM J. Computing, 23, p. 1216, 1994. 2 F.R. McMorris, T. Warnow e T. Wimer. Triangulating vertex colored graphs. SODA 1993, p. 120, 1993. Guilherme P. Telles (IC) BMC 15 de outubro de 2013 18 / 52

Filogenia perfeita para dois estados

Vamos supor que temos apenas dois estados para as caracter sticas e que o estado 0 e ancestral e o 1 e derivado. Uma logenia perfeita para uma matriz bin aria ser a tal que para cada caracter stica em M existe uma u nica aresta na arvore que representa a transi c ao do estado 0 para o estado 1. O estado de todas as caracter sticas da raiz ser a 0.

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

19 / 52

Filogenia perfeita para dois estados

Dada uma matriz M de caracter sticas bin arias, para cada coluna j de M sejam Oj o conjunto de objetos cujo estado e 1 para j e Oj o conjunto de objetos cujo estado e 0 para j . Teorema: Uma matriz de caracter sticas bin arias M admite uma logenia perfeita se e somente se para cada par de caracter sticas i e j os conjuntos Oi e Oj s ao disjuntos ou um deles cont em o outro. Cada par de conjuntos pode ser comparado em tempo O(n), todos os pares podem ser comparados em tempo O(nm2 ).

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

20 / 52

Algoritmo mais eciente

Um algoritmo mais eciente primeiro ordena as colunas de M pelo n umero de uns. Depois constr oi uma matriz auxiliar L para registrar, para cada valor 1, qual a posi c ao do 1 ` a esquerda mais pr oximo, ou 1 se n ao existir. Finalmente o algoritmo usa L para vericar se uma coluna que tem interse c ao com outra est a contida totalmente nela. O custo e O(nm).

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

21 / 52

Algoritmo
Perfect-Phylogeny-Decision(M ) 1 2 3 4 5 6 7 8 9 10 11 12 Sort M by the non-increasing number of 1s in each column L[n, m] = 0 for i = 1 to n k = 1 for j = 1 to m if M [i, j ] == 1 L[i, j ] = k k =j for each column j of L if L[i, j ] = L[l, j ] for some i,l and L[i, j ], L[l, j ] = 0 return false return true

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

22 / 52

Algoritmo
Perfect-Phylogeny-Construction(M ) 1 Sort M by the non-increasing number of 1s in each column 2 Create root 3 for each object i 4 p = root 5 for j = 1 to m 6 if M [i, j ] == 1 7 if exists edge (p, u) labeled j 8 p=u 9 else 10 Create node u 11 Create edge (p, u) labeled j 12 p = u; 13 Place object i in p 14 for each node u except root 15 Create as many leaves linked to u as there are objects in u 16 return root
Guilherme P. Telles (IC) BMC 15 de outubro de 2013 23 / 52

Complexidade

A ordena c ao pode ser feita em tempo O(nm) usando radix sort. Cada elemento de M vai ser processado uma vez, a um custo constante. O tempo de execu c ao total e O(nm).

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

24 / 52

Filogenia perfeita para duas caracter sticas

Um grafo de interse c oes para uma cole c ao de conjuntos C e um grafo que tem um v ertice para cada conjunto em C e que tem uma aresta entre dois conjuntos se os conjuntos t em interse c ao n ao-vazia. Seja Ou o conjunto dos objetos que t em um estado de uma carater stica u. O grafo de interse c ao de estados S tem um v ertice para cada estado de uma carater stica u e uma aresta entre os v ertices u e v de S se e somente se os conjuntos correspondentes possuem interse c ao n ao-vazia.

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

25 / 52

Filogenia perfeita duas caracter sticas

Teorema: Uma matriz de estados de caracter sticas com duas caracter sticas admite uma logenia perfeita se e somente se seu grafo de interse c ao de estados e ac clico. O custo dessa verica c ao e O(mr2 ).

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

26 / 52

Filogenia perfeita para duas caracter sticas

1 2

Construa o grafo de interse c ao de estados S para M . Construa um grafo G = (V, E ) com um v ertice v para cada aresta (x, y ) de S , representando o conjunto Ov = Ox Oy e associado com o conjunto de estados Ev = {x} {y }. uma aresta entre dois v ertices u e v se Eu Ev = . Se G n ao for conexo, adicione uma aresta entre pares de n os em componentes conexos distintos, conectando-os. Construa uma arvore geradora T de G. Para cada n o v adicione os objetos em Ov como folhas de v .

4 5

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

27 / 52

Caracter sticas ordenadas


Caracter sticas ordenadas n ao-bin arias podem ser fatoradas em caracter sticas bin arias. Seja c uma caracter stica clad stica e seja Tc a arvore para os estados da caracter stica c. O fator bin ario de c em rela c ao a v e a caracter stica bin aria d cujo estado 1 consiste de todos os objetos s cujo estado na caracter stica c e um n o da sub arvore de Tc enraizada em v . Teorema: Um conjunto de caracter sticas ordenadas C e compat vel se e somente se o conjunto dos fatores bin arios das caracter sticas em C e compat vel. Podemos vericar se uma matriz de caracter sticas ordenadas admite logenia perfeita em tempo O(nmr). Podemos construir a logenia em tempo polinomial (C.A. Meacham, 1981).

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

28 / 52

Caracter sticas n ao-ordenadas

F.R. McMorris, 1977. Teorema: Seja C um conjunto de caracter sticas bin arias n ao-ordenadas. Seja C o conjunto de caracter sticas bin arias ordenadas obtido de C enraizando cada caracter stica pelo estado que tem mais objetos quebrando empates arbitrariamente. Ent ao C e compat vel se e somente se C e compat vel. Dada uma caracter stica n ao-ordenada c e sempre poss vel escolher uma raiz para Tc tal que em todo fator bin ario da caracter stica ordenada resultante o estado ancestral tenha pelo menos tantos objetos quanto o estado descendente.

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

29 / 52

Parcim onia e compatibilidade

Filogenia perfeita raramente e admitida por matrizes de caracter sticas: erros experimentais. viola c ao da aus encia de revers oes e converg encia. Parcim onia: minimizar a ocorr encia de revers oes e converg encia. NP-completo. Compatibilidade: excluir o menor n umero de caracter sticas para evitar revers oes e converg encia. NP-completo.

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

30 / 52

Matrizes de dist ancias

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

31 / 52

Matriz de dist ancias

Uma matriz de dist ancias para n objetos e uma matriz n n de reais n ao-negativos. A c elula M [i, j ] armazena a dist ancia entre do objeto i para o objeto j.

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

32 / 52

Filogenia baseada em dist ancias

Dada uma matriz de dist ancias M para n objetos, queremos construir uma arvore n ao-enraizada T tal que: cada uma das n folhas corresponde a um objeto de M , os n os internos t em grau 3, todas as arestas na arvore t em um custo n ao-negativo, o custo do caminho entre os objetos i e j e igual a M [i, j ]. Se uma tal arvore pode ser constru da, dizemos que M e T s ao aditivas.

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

33 / 52

M etrica

Uma matriz M e m etrica se M [i, j ] = 0 para i = j , M [i, j ] > 0 para i = j , M [i, j ] = M [j, i] para todo para todo i, j e M [i, j ] M [i, k ] + M [k, j ] para todo i, j, k .

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

34 / 52

4PC
Teorema: Quaisquer 4 v ertices em uma arvore satisfazem d(x, y ) + d(z, t) max d(x, z ) + d(y, t), d(x, t) + d(y, z )

Essa condi c ao e chamada de condi c ao dos quatro pontos (4PC). Equivalentemente, das tr es somas d(x, y ) + d(z, t) d(x, z ) + d(y, t) d(x, t) + d(y, z ) duas s ao iguais e n ao menores que a terceira. Fazendo z = t temos a desigualdade triangular como caso particular.

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

35 / 52

Matriz aditiva

Teorema: Uma matriz de dist ancias M e aditiva se e somente se e m etrica e para qualquer subconjunto de quatro objetos existe uma rotula c ao x, y , z e t que satisfaz ` a 4PC.

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

36 / 52

Algoritmo para matrizes aditivas

Se temos apenas dois objetos x e y ent ao uma arvore com uma aresta de peso M [x, y ] ligando x e y e aditiva. A arvore resultante da adi c ao de um terceiro objeto tem a seguinte topologia:
x y c

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

37 / 52

Algoritmo para matrizes aditivas


O custo das arestas pode ser calculado da seguinte forma. Seja dij o custo da aresta (i, j ). Da arvore, M [x, z ] = dxc + dcz M [y, z ] = dyc + dcz dyc = M [x, y ] dxc Subtraindo (2) de (1) e substituindo (3) obtemos: d[x, c] = M [x, y ] + M [x, z ] M [y, z ] 2 (4) (1) (2) (3)

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

38 / 52

Algoritmo para matrizes aditivas

Podemos proceder de maneira similar e obter d[y, c] = M [x, y ] + M [y, z ] M [x, z ] 2 M [x, z ] + M [y, z ] M [x, y ] 2 (5)

d[z, c] =

(6)

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

39 / 52

Algoritmo para matrizes aditivas

Vamos adicionar w a uma arvore com tr es folhas. Vamos supor que o n o interno d vai ser adicionado ` a arvore. Escolhemos dois n os j a na arvore, digamos x e y , e aplicamos as equa c oes (4), (5) e (6) com z substitu do por w. Se d coincidir com o n o c, isso signica que e a aresta (z, c) que deve ser dividida. Ent ao aplicamos as equa c oes (4), (5) e (6) usando z no lugar de x ou de y . Sen ao d deve dividir a aresta (x, c) ou a aresta (y, c), de acordo com os pesos dados pelas equa c oes.

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

40 / 52

Algoritmo para matrizes aditivas

Generalizando a id eia anterior, suponha que temos uma arvore aditiva com k objetos. Para adicionar o objeto k + 1:
1

Selecione dois objetos x e y quaisquer na arvore e calcule a posi c ao do novo n o interno c. Se ap os esse c alculo a posi c ao de c n ao coincide com a posi c ao de nenhum outro n o interno na arvore, adicionamos k + 1 e c. Sen ao a posi c ao de c coincide com a de algum n o u na arvore. Ent ao escolhemos um objeto r que pertence ` a (outra) sub arvore pendurada em u e vericamos o caso para tr es objetos. Repetimos esse processo at e que a posi c ao correta da divis ao seja encontrada.

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

41 / 52

Matrizes n ao-aditivas

comum que matrizes de dist E ancias n ao sejam aditivas. erros experimentais, muta c oes sucessivas, revers oes, converg encias. O problema de aproximar a aditividade por v arias medidas e NP-completo.

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

42 / 52

Arvores ultra-m etricas

Uma matriz m etrica n n M e ultra-m etrica se e somente se M [i, j ] max{M [i, k ], M [j, k ]} para todo i, j, k . Um arvore aditiva e ultra-m etrica se puder ser enraizada de forma que todos os caminhos da raiz a uma folha tenham o mesmo tamanho. Uma matriz M e ultra-m etrica se e somente se existe T tal que dT (i, j ) = M [i, j ]. Uma arvore ultra-m etrica est a relacionada com a no c ao de evolu c ao a uma taxa constante a partir de um ancestral comum.

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

43 / 52

Arvore ultra-m etrica sandu che


Vamos considerar um problema de logenia que pode ser resolvido em tempo polinomial. Suponha que a incerteza sobre as dist ancias possa ser quanticada por intervalos que denem um limite inferior e um limite superior para dist ancia real entre dois objetos. Temos ent ao duas matrizes de dist ancias, Ml e Mh com os limites inferiores e superiores para dist ancias reais. Ml B C D 3 2 4 4 1 3 Mh B C 7 3 10

A B C D

E 3 1 3 1

A B C D

D 6 4 8

E 5 8 5 7

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

44 / 52

Arvore ultra-m etrica sandu che

O problema e reconstruir uma arvore ultra-m etrica tal que para todo par de objetos i, j Ml [i, j ] dT (i, j ) Mh [i, j ].

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

45 / 52

Arvore ultra-m etrica sandu che

Dada uma matriz de dist ancias n n M podemos associar a ela um grafo completo com pesos com n v ertices, onde w(i, j ) = M [i, j ]. Sejam Gl e Gh os grafos que correspondem a Ml e Mh . Seja T uma arvore geradora m nima para o grafo Gh .

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

46 / 52

Arvore ultra-m etrica sandu che

Dados dois n os u e v em T , a aresta de maior peso no caminho de u av e chamada de link e e denotada (u, v )max . O peso de corte de uma aresta e de T e cw(e) = max{Ml [a, b] | e = (a, b)max }.

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

47 / 52

Algoritmo

Construa uma arvore geradora m nima T para Gh e para cada aresta e T compute cw(e). Ordene as arestas em ordem decrescente de cw, e1 , e2 , . . . , en1 . Construa uma arvore ultra-m etrica da seguinte forma. Crie um novo n o r raiz de uma arvore T . Construa as arvores T1 e T2 recursivamente para as duas componentes resultantes da remo c ao de e1 . Conecte r com Ti por uma aresta de peso cw(e1 )/2 H (Ti ) e fa ca H (T ) = cw(e1 )/2.

2 3

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

48 / 52

Uma tentativa de intui c ao

Seja (a, b) o par de objetos mais distantes. Seja d(a, b) a dist ancia entre eles. d(a, b) deve ser maior que Ml [a, b]. Mas d(a, b) n ao precisa ser maior que Ml [a, b]. Ent ao podemos fazer dT (a, b) = Ml [a, b] e coloc a-los em duas sub arvores distintas da raiz.

2 3 4

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

49 / 52

Corre c ao

A corre c ao do algoritmo est a baseada em parte nos seguintes resultados. Uma arvore aditiva M e ultram etrica se e somente se no grafo completo com pesos G correspondente a M a aresta de maior peso de qualquer ciclo n ao eu nica. Existe uma arvore ultram etrica que se encaixa em duas matrizes Ml e Mh se e somente se Ml [a, b] w((a, b)max ) para todos os pares de objetos a e b.

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

50 / 52

Implementa c ao eciente

A arvore geradora m nima pode ser computada usando o algoritmo de Kruskal ou o de Prim. Para calcular cw podemos usar estruturas para conjuntos disjuntos para construir uma arvore auxiliar R que permite encontrar o link entre dois objetos rapidamente. Depois a logenia e constru da iterativamente, resultando em um algoritmo O(n2 ). Esses algoritmos est ao no livro SM.

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

51 / 52

Arvore aditiva sandu che

NP-completo. E

Guilherme P. Telles (IC)

BMC

15 de outubro de 2013

52 / 52

Potrebbero piacerti anche