.
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.
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