Computational Genomics 5a Distance Based Trees Reconstruction (cont.) Sections 7.1, 7.2, in Durbin...

Preview:

Citation preview

.

Computational Genomics 5a Distance Based Trees

Reconstruction (cont.) Sections 7.1, 7.2, in Durbin et al.

Chapter 17 in Gusfield

(updated April 12, 2009)

Slides by Shlomo Moran and Ydo Wexler (IIT), modified by Benny Chor

2

Evolution

Evolution of new organisms is driven by

Diversity Different individuals

carry different variants of the same basic blue print

Mutations The DNA sequence

can be changed due to single base changes, deletion/insertion of DNA segments, etc.

Selection bias

3

The Tree of Life

Sou

rce:

Alb

erts

et

al

4

D’après Ernst Haeckel, 1891

Tree of life- a better picture

5

Primate evolution

A phylogeny is a tree that describes the sequence of speciation events that lead to the forming of a set of current day species; also called a phylogenetic tree.

6

Historical Note Until mid 1950’s phylogenies were constructed by

experts based on their opinion (subjective criteria)

Since then, focus on objective criteria for constructing phylogenetic trees

Thousands of articles in the last decades

Important for many aspects of biology Classification Understanding biological mechanisms

7

Morphological vs. Molecular

Classical phylogenetic analysis: morphological features: number of legs, lengths of legs, etc.

Modern biological methods allow to use molecular features

Gene sequences Protein sequences

Analysis based on homologous sequences (e.g., globins) in different species

8

Topology based on Morphology

BonoboChimpanzeeManGorillaSumatran orangutanBornean orangutanCommon gibbonBarbary apeBaboonWhite-fronted capuchinSlow lorisTree shrewJapanese pipistrelleLong-tailed batJamaican fruit-eating batHorseshoe bat

Little red flying foxRyukyu flying foxMouseRatVoleCane-ratGuinea pigSquirrelDormouseRabbitPikaPigHippopotamusSheepCowAlpacaBlue whaleFin whaleSperm whaleDonkeyHorseIndian rhinoWhite rhinoElephantAardvarkGrey sealHarbor sealDogCatAsiatic shrewLong-clawed shrewSmall Madagascar hedgehogHedgehogGymnureMoleArmadilloBandicootWallarooOpossumPlatypus

Archonta

Glires

Ungulata

Carnivora

Insectivora

Xenarthra

(Based on Mc Kenna and Bell, 1997)

9

Rat QEPGGLVVPPTDA

Rabbit QEPGGMVVPPTDA

Gorilla QEPGGLVVPPTDA

Cat REPGGLVVPPTEG

From Sequences to a Phylogenetic Tree

Different genes/proteins may leadto different phylogenetic trees

10

Rat QEPGGLVVPPTDA

Rabbit QEPGGMVVPPTDA

Gorilla QEPGGLVVPPTDA

Cat REPGGLVVPPTEG

From sequences to a phylogenetic tree

There are many possible types of sequences to use (e.g. mitochondrial vs. nuclear proteins).

11

DonkeyHorseIndian rhinoWhite rhinoGrey sealHarbor sealDogCatBlue whaleFin whaleSperm whaleHippopotamusSheepCowAlpacaPigLittle red flying foxRyukyu flying foxHorseshoe batJapanese pipistrelleLong-tailed batJamaican fruit-eating bat

Asiatic shrewLong-clawed shrew

MoleSmall Madagascar hedgehogAardvarkElephantArmadilloRabbitPikaTree shrewBonoboChimpanzeeManGorillaSumatran orangutanBornean orangutanCommon gibbonBarbary apeBaboon

White-fronted capuchinSlow lorisSquirrelDormouseCane-ratGuinea pigMouseRatVoleHedgehogGymnureBandicootWallarooOpossumPlatypus

Perissodactyla

Carnivora

Cetartiodactyla

Rodentia 1

HedgehogsRodentia 2

Primates

ChiropteraMoles+ShrewsAfrotheria

XenarthraLagomorpha

+ Scandentia

Topology1 , based on Mitochondrial DNA(Based on Pupko et al.,)

12

Round Eared Bat

Flying Fox

Hedgehog

Mole

Pangolin

Whale

Hippo

Cow

Pig

Cat

Dog

Horse

Rhino

Rat

Capybara

Rabbit

Flying Lemur

Tree Shrew

Human

Galago

Sloth

Hyrax

Dugong

Elephant

Aardvark

Elephant Shrew

Opossum

Kangaroo

1

2

3

4

Cetartiodactyla

Afrotheria

Chiroptera

Eulipotyphla

Glires

Xenarthra

CarnivoraPerissodactyla

Scandentia+Dermoptera

Pholidota

Primate

(tree by Madsenl)

(Based on Pupko et al. slide)Topology2 ,based on Nuclear DNA

13

Theory of Evolution

Basic idea speciation events lead to creation of different

species. Speciation caused by physical separation into

groups where different genetic variants become dominant

Any two species share a (possibly distant) common ancestor

14

Phylogenenetic trees

Leafs - current day species Nodes - hypothetical most recent common ancestors Edges length - “time” from one speciation to the next

Aardvark Bison Chimp Dog Elephant

15

Types of Trees

A natural model to consider is that of rooted trees

CommonAncestor

16

Types of treesUnrooted tree represents the same phylogeny without

the root node

Depending on the model, data from current day species often does not distinguish between different placements of the root.

17

Rooted versus unrooted treesTree a

ab

Tree b

c

Tree c

Represents all three rooted trees

18

Number of Different Trees on n Leaves

For n=4, there are 3 different unrooted treesFor n=5, there are 3*5=15 different unrooted treesFor n=6, there are 3*5*7=15 different unrooted trees

For n, there are n!! = 3*5*…*(2n-5)=(2n-5)!/[2n-3 *(n-3)!]different unrooted trees on n labeled leaves.

There are 3*5*…*(2n-3)=(2n-3)!/[2n-2 *(n-2)!]different rooted trees on n labeled leaves (same as number ofunrooted trees on n+1 labeled leaves.

In both cases, number is too large to go over all of them!

19

Positioning Roots in Unrooted Trees

We can estimate the position of the root by introducing an outgroup:

a set of species that are definitely distant from all the species of interest

Aardvark Bison Chimp Dog Elephant

Falcon

Proposed root

20

Phylogenetic Trees - Methods

There are several methods with which we construct trees and estimate how good a tree describes the data (and thus the evolution process)

• Distance based methods

• Parsimony character based methods• Likelihood

• Whole genome/proteome methods

21

Methods Distance-based

Input is a matrix of distances between species. Can be fraction of residue they disagree on, or

alignment score between them, etc. Character-based

Input is a multiple sequence alignment. Sequences consist of characters (e.g., residues) that are examined separately.

Genome/Proteome –based Input is whole genome or proteome sequences. No MSA or obvious distance definition.

22

Tree Construction: Different Outcomes

Distance Based- Output is a weighted tree that realizes the distances between the objects (or gets close to it).

Character Based – Output is a tree that optimizes an objective function based on all characters in input sequences (major methods are parsimony and likelihood).

We start with distance based methods, and consider the following question:Given a set of species (leaves in a supposed tree), and distances between them – construct a phylogeny which best “fits” the distances.

USER
לפני הבניה יש להכניס את משפט 4 הנקודות (מקובץ נפרד), שיחליף את ההוכחה הקודמת שלו בהרצאה 12. כמו כן ייתכן שכדאי לוותר על UPGMA. הערה זו משפיעה כמובן גם על הרצאה 12.שלמה 12.3.03

23

Exact solution: Additive sets

Given a set M of L objects with an L×L distance matrix:d(i,i)=0, and for i≠j, d(i,j)>0d(i,j)=d(j,i). For all i,j,k it holds that d(i,k) ≤ d(i,j)+d(j,k).

Can we construct a weighted tree which realizes these distances?

We should first clarify what realizes means.

24

Additive sets (cont)

We say that the set of distances M on L objects is additive if there is a tree T, L of its nodes correspond to the L objects, with positive weights on the edges, such that for all i,j, d(i,j) = dT(i,j), the length of the path from i to j in T.

Note: Sometimes the tree is required to be binary, and then the edge weights are required to be just non-negative.

25

Three objects sets is always additive:

For L=3: There is always a (unique) tree with one internal node.

( , )( , )( , )

d i j a bd i k a cd j k b c

ab

c

i

j

k

m

Thus0

2

1 )],(),(),([),( jidkjdkidmkdc

3 equations in 3 unknowns: a,b,c

26

How about four objects?

L=4: Not all sets with 4 objects are additive:

e.g., there is no tree which realizes the distances below.

i j k l

i 0 2 2 2

j 0 2 2

k 0 3

l 0

27

The Four Points Condition

Theorem: A set M of L objects is additive iff any subset of four objects can be labeled i,j,k,l so that:

d(i,k) + d(j,l) = d(i,l) +d(k,j) ≥ d(i,j) + d(k,l) We call (i,j),(k,l) the “split” of {i,j,k,l}.

ik

lj

Proof:Additivity 4 Points Condition: By the figure (and maybe the board...)

28

Additive Distances

We say that a distance metric D on L objects is additive if there is an unrooted binary tree on L leaves, with positive edge weights, that realizes the distance D.Namely for all i,j, D(i,j)=DT(i,j)

29

Characterizing Additive Distances

Thm: Any additive distance is fully characterized by the four point condition: Any 4 points can be renamed such that 

( , ) ( , ) ( , ) ( , ) ( , ) ( , )d x y d u v d x u d y v d x v d y u

30

Trees from Additive Distances: Algorithm•Verify that the distance matrix constitutes an additive metric

•Choose a pair of objects, which results in the first path in the tree.

•Choose a third object and establish the linear equations to let the object branch off the path.

•Choose a pair of leaves in the tree constructed so far and compute the point a newly chosen object is inserted at.

1. If the new path branches off an existing branch in the tree: Do the insertion step once more, replacing one of the two original leaves by another leaf along the branching path.

2. Once the new path branches off an edge in the tree, this insertion is finished.

A B C D E

A 0 2 7 4 7

B 0 7 4 7

C 0 7 6

D 0 7

E 0

A C7

31

•Verify that the distance matrix constitutes an additive metric

•Choose a pair of objects, which results in the first path in the tree.

•Choose a third object and establish the linear equations to let the object branch off the path.

•Choose a pair of leaves in the tree constructed so far and compute the point a newly chosen object is inserted at.

1. If the new path branches off an existing branch in the tree: Do the insertion step once more, replacing one of the two original leaves by another leaf along the branching path.

2. Once the new path branches off an edge in the tree: This insertion is finished.

A B C D E

A 0 2 7 4 7

B 0 7 4 7

C 0 7 6

D 0 7

E 0

A C6

B

1

1 X

Trees from Additive Distances: Algorithm

32

•Verify that the distance matrix constitutes an additive metric

•Choose a pair of objects, which results in the first path in the tree.

•Choose a third object and establish the linear equations to let the object branch off the path.

•Choose a pair of leaves in the tree constructed so far and compute the point a newly chosen object is inserted at.

1. If the new path branches off an existing branch in the tree: Do the insertion step once more, replacing one of the two original leaves by another leaf along the branching path.

2. Once the new path branches off an edge in the tree: This insertion is finished.

A B C D E

A 0 2 7 4 7

B 0 7 4 7

C 0 7 6

D 0 7

E 0

d(A,B)=d(A,X)+d(X,B)

d(A,C)=d(A,X)+d(X,C)

d(B,C)=d(B,X)+d(X,C)

Trees from Additive Distances: Algorithm

33

•Verify that the distance matrix constitutes an additive metric

•Choose a pair of objects, which results in the first path in the tree.

•Choose a third object and establish the linear equations to let the object branch off the path.

•Choose a pair of leaves in the tree constructed so far and compute the point a newly chosen object is inserted at.

1. If the new path branches off an existing branch in the tree: Do the insertion step once more, replacing one of the two original leaves by another leaf along the branching path.

2. Once the new path branches off an edge in the tree: This insertion is finished.

A B C D E

A 0 2 7 4 7

B 0 7 4 7

C 0 7 6

D 0 7

E 0

A C6

B

1

1 X

Trees from Additive Distances: Algorithm

34

•Verify that the distance matrix constitutes an additive metric

•Choose a pair of objects, which results in the first path in the tree.

•Choose a third object and establish the linear equations to let the object branch off the path.

•Choose a pair of leaves in the tree constructed so far and compute the point a newly chosen object is inserted at.

1. If the new path branches off an existing branch in the tree: Do the insertion step once more, replacing one of the two original leaves by another leaf along the branching path.

2. Once the new path branches off an edge in the tree: This insertion is finished.

A B C D E

A 0 2 7 4 7

B 0 7 4 7

C 0 7 6

D 0 7

E 0

A

C

1

B

1

1

5

2D

Trees from Additive Distances: Algorithm

(we now add E on the A-to-D path)

35

•Verify that the distance matrix constitutes an additive metric

•Choose a pair of objects, which results in the first path in the tree.

•Choose a third object and establish the linear equations to let the object branch off the path.

•Choose a pair of leaves in the tree constructed so far and compute the point a newly chosen object is inserted at.

1. If the new path branches off an existing branch in the tree: Do the insertion step once more, replacing one of the two original leaves by another leaf along the branching path.

2. Once the new path branches off an edge in the tree: This insertion is finished.

A B C D E

A 0 2 7 4 7

B 0 7 4 7

C 0 7 6

D 0 7

E 0

A

C

1

B

1

1

5

2D

E

5

NO!

Trees from Additive Distances: Algorithm

36

•Verify that the distance matrix constitutes an additive metric

•Choose a pair of objects, which results in the first path in the tree.

•Choose a third object and establish the linear equations to let the object branch off the path.

•Choose a pair of leaves in the tree constructed so far and compute the point a newly chosen object is inserted at.

1. If the new path branches off an existing branch in the tree: Do the insertion step once more, replacing one of the two original leaves by another leaf along the branching path.

2. Once the new path branches off an edge in the tree: This insertion is finished.

A B C D E

A 0 2 7 4 7

B 0 7 4 7

C 0 7 6

D 0 7

E 0

A

C

1

B

1

1

2

2D

E

3

3

Trees from Additive Distances: Algorithm

37

•Verify that the distance matrix constitutes an additive metric

•Choose a pair of objects, which results in the first path in the tree.

•Choose a third object and establish the linear equations to let the object branch off the path.

•Choose a pair of leaves in the tree constructed so far and compute the point a newly chosen object is inserted at.

1. If the new path branches off an existing branch in the tree: Do the insertion step once more, replacing one of the two original leaves by another leaf along the branching path.

2. Once the new path branches off an edge in the tree: This insertion is finished.

A B C D E

A 0 2 7 4 7

B 0 7 4 7

C 0 7 6

D 0 7

E 0

A

C

1

B

1

1

2

2D

E

3

3

is this necessary?Trees from Additive Distances: Algorithm

38

Reconstructing a Tree from an Additive Distance

A B C D E

A 0 2 7 4 7

B 0 7 4 7

C 0 7 6

D 0 7

E 0

A

C

1

B

1

1

2

2D

E

3

3

By algorithm, given a distance matrix constituting an additive metric, the topology of the corresponding additive tree is unique.

Q.: Given an additive metric on n leaves, what is the run time of the algorithm?A.: Number of phases is n. Work per phase is O(n).

So total is O(n2).

39

Approximating Additive Metrices

In practice, the distance matrix between molecular sequences will not be additive. In such case we want to find a tree T whose distance matrix is “close” to the given one.

The methods for exact tree reconstruction provide an inventory for heuristics for tree construction based on approximating additive metrics.

Heuristics give exact results when operating on additive metrics, but the performance of solutions gets unclear when non additive metrics are handled.

40

Neighbor Finding

How can we find from distances alone a pair of sisters (neighboring leaves)?

Important observation: Closest nodes are not necessarily neighboring leaves.

AB

CD

Next, we show a way to find neighbors from distances. The methodis simple, but unfortunately not very intuitive

41

Neighbour Joining Algorithm: Outline

• Identify a pair of leaves u,v as neighbors.

• Combine u,v into a new node, w.

• Update the distance matrix: Calculate w’s distance from

any other node x of the tree using

Notice that all 3 quantities on rhs are known.

• When only 3 nodes are left – compute 3 distances & finish.

( , ) ( , )( , ) ( 2[ ]/, )d v x dd u x d u vw x

42

Neighbour Joining Algorithm

n

jiji Dr

1

• Identify a pair of neighbors i,j among n leaves.

• Combine i,j into a new node u.

• Update the distance matrix.

• When only 3 nodes are left – finish.

Let ri be the sum of distances

from i to every other node

The measure between i and j we use

in the algorithm is

2, ,

n

rrDjiX ji

jiD

i m

j n

0.1 0.1 0.1

0.40.4

k l

43

Neighbour Joining Algorithm

n

jiji Dr

1

Let ri be the sum of distances

from i to all other nodes

The measure between i and j we use in the

algorithm is , ( , )2

i jD

r rX i j D i j

n

i m

j n

0.1 0.1 0.1

0.40.4

k l

44

Neighbor Finding: Seitou & Nei method

Theorem (Saitou&Nei) Assume D is additive, and all tree

edge weights are positive. If XD(i,j) is minimal (among all

pairs of leaves), then i and j are sister

taxa in the tree.

ij

kl

m

T1T2

is a leaf

For a leaf , le ( , )t . im

i r D i m , ).: Let be two leaves (out of leaves in Definition

divergence ( ,Then their is ( , ) ( ) /( 2))D i j

i j L TX i j D i j r r L

The proof is rather involved, and will be skipped (no tears, pls).

45

Complexity of Neighbor Joining Algorithm

Naive Implementation:

Initialization: θ(L2) to compute the XD(i,j)’s.

Each Iteration: O(L) to update {XD(i,k):i L} for the new node k.

O(L2) to find the minimal XD(i,j).

Total of O(L3).

This can be improved using better data structures

(e.g. heap)

ij

k

m

46

Reconstructing Trees from Additive Matrices

A B C D E

A 0 2 7 4 7

B 0 7 4 7

C 0 7 6

D 0 7

E 0

A

C

1

B

1

1

2

2D

E

3

3

Q: Do we have to test additivity before running NJ?

A: By Seito-Nei, if matrix is additive, NJ will construct the correct tree. Algorithm does not care about awareness and need not know anything about the matrix!

47

Running NJ: Example on 4 Leaves

A B C D

A 0 2 3 6

B 2 0 3 5

C 3 3 0 6

D 6 5 6 0

11 10 12 17A B C Dr r r r

( , ) 8.5

( , ) 8.5

( , ) 8

( , ) 8

( , ) 8.5

( , ) 8.5

D

D

D

D

D

D

X A B

X A C

X A D

X B C

X B D

X C D

U

BA

Remark: The XD values imply thatthe distances are not additive (why?).

48

Updated Distance Matrix,Choosing A,B as Neighbors

U C D

U 0 2 4.5

C 2 0 6

D 4.5 6 0

6.5 8 10.5U C Dr r r ( , ) 5.25

( , ) 6.5

( , ) 3.25

D

D

D

X U C

X U D

X C D

U

BA

V

D

Notice that now we have only one Choice: The neighbors are U and D.

d(U,x)=[d(A,x)+d(B,x)-d(A,B)]/2

49

Final Distance Matrix

V C

V 0 5.6

C 5.6 0

U

BA

V

D

C

Remark: Resulting tree is unrooted.

50

Reconstructing Trees from non Additive Matrices

Q: What if the distance matrix is not additive?

A: We could still run NJ (like we just did)!

Q: But can anything be said about the resulting tree?

A: Not really. Resulting tree topology could even vary according to way ties are resolved on the way.

Remark: This indeed was the case with last example.

51

Distance Matrix Example

52

Unrooted Tree - NJ

Root (arbitrary)

53

Output - NJ Tree

Branch lengthis proportional

to distance

54

N-J Method produces an Unrooted, Additive tree

55

Almost Additive Matrix

A distance matrix d’ is “almost additive” if there exists an additive matrix D such that

, ,,

' '| | max{| |} mi(

n2

)i j i j

ei jD D D D

l e

Thm (Atteson): If d’ is almost additive with respect to a tree T, then the output of NJ is a tree T’ with the same topology as T

Recommended