Presentation is loading. Please wait.

Presentation is loading. Please wait.

Intro to Phylogenetic Trees Computational Genomics Lecture 4b

Similar presentations


Presentation on theme: "Intro to Phylogenetic Trees Computational Genomics Lecture 4b"— Presentation transcript:

1 Intro to Phylogenetic Trees Computational Genomics Lecture 4b
Sections 7.1, 7.2, in Durbin et al. Chapter 17 in Gusfield Slides by Shlomo Moran and Ido Wexler. Slight modifications 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 Source: Alberts et al

4 Tree of life- a better picture
D’après Ernst Haeckel, 1891

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
(Based on Mc Kenna and Bell, 1997) Bonobo Chimpanzee Man Gorilla Sumatran orangutan Bornean orangutan Common gibbon Barbary ape Baboon White-fronted capuchin Slow loris Tree shrew Japanese pipistrelle Long-tailed bat Jamaican fruit-eating bat Horseshoe bat Little red flying fox Ryukyu flying fox Mouse Rat Vole Cane-rat Guinea pig Squirrel Dormouse Rabbit Pika Pig Hippopotamus Sheep Cow Alpaca Blue whale Fin whale Sperm whale Donkey Horse Indian rhino White rhino Elephant Aardvark Grey seal Harbor seal Dog Cat Asiatic shrew Long-clawed shrew Small Madagascar hedgehog Hedgehog Gymnure Mole Armadillo Bandicoot Wallaroo Opossum Platypus Archonta Glires Ungulata Carnivora Insectivora Xenarthra

9 From Sequences to a Phylogenetic Tree
Rat QEPGGLVVPPTDA Rabbit QEPGGMVVPPTDA Gorilla QEPGGLVVPPTDA Cat REPGGLVVPPTEG Different genes/proteins may lead to different phylogenetic trees

10 From sequences to a phylogenetic tree
Rat QEPGGLVVPPTDA Rabbit QEPGGMVVPPTDA Gorilla QEPGGLVVPPTDA Cat REPGGLVVPPTEG There are many possible types of sequences to use (e.g. mitochondrial vs. nuclear proteins).

11 Topology1 , based on Mitochondrial DNA
(Based on Pupko et al.,) Perissodactyla Carnivora Cetartiodactyla Donkey Horse Indian rhino White rhino Grey seal Harbor seal Dog Cat Blue whale Fin whale Sperm whale Hippopotamus Sheep Cow Alpaca Pig Little red flying fox Ryukyu flying fox Horseshoe bat Japanese pipistrelle Long-tailed bat Jamaican fruit-eating bat Asiatic shrew Long-clawed shrew Mole Small Madagascar hedgehog Aardvark Elephant Armadillo Rabbit Pika Tree shrew Bonobo Chimpanzee Man Gorilla Sumatran orangutan Bornean orangutan Common gibbon Barbary ape Baboon White-fronted capuchin Slow loris Squirrel Dormouse Cane-rat Guinea pig Mouse Rat Vole Hedgehog Gymnure Bandicoot Wallaroo Opossum Platypus Primates Chiroptera Moles+Shrews Afrotheria Xenarthra Lagomorpha + Scandentia Rodentia 1 Hedgehogs Rodentia 2

12 Topology2 ,based on Nuclear DNA
(Based on Pupko et al. slide) (tree by Madsenl) Cetartiodactyla Afrotheria Chiroptera Eulipotyphla Glires Xenarthra Carnivora Perissodactyla Scandentia+ Dermoptera Pholidota Primate 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

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 Aardvark Bison Chimp Dog Elephant
Leafs - current day species Nodes - hypothetical most recent common ancestors Edges length - “time” from one speciation to the next

15 Types of Trees A natural model to consider is that of rooted trees
Common Ancestor

16 Types of trees Unrooted 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 trees
Tree a Tree b Tree c b a c Represents all three rooted trees

18 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 Proposed root Falcon Aardvark Bison Chimp Dog Elephant

19 Dangers of Gene Duplication
If we happen to consider genes 1A, 2B, and 3A of species 1,2,3, we get a wrong tree that does not represent the phylogeny of the host species of the given sequences because duplication does not create new species. Gene Duplication S S S Speciation events 1A 2A 3A 3B 2B 1B In the sequel we assume all given sequences are orthologs.

20 Types of Data 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.

21 Tree Construction: Two Popular Methods
Distance Based- A weighted tree that realizes the distances between the objects (or gets close to it). Character Based – 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, considering 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.

22 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)>0 d(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?

23 Additive sets (cont) We say that the set M with 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 non-negative.

24 Three objects sets always additive:
For L=3: There is always a (unique) tree with one internal node. a b c i j k m Thus

25 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 2 3

26 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}. i k l j Proof: Additivity 4 Points Condition: By the figure...

27 4P Condition Additivity:
Induction on the number of objects, L. For L ≤ 3 the condition is empty and tree exists. Consider L=4. B = d(i,k) +d(j,l) = d(i,l) +d(j,k) ≥ d(i,j) + d(k,l) = A Let y = (B – A)/2 ≥ 0. Then the tree should look as follows: We have to find the distances a,b, c and f. k c f l n y b a m i j

28 Tree construction for L=4
Construct the tree by the given distances as follows: Construct a tree for {i, j,k}, with internal vertex m Add vertex n ,d(m,n) = y Add edge (n,l), c+f=d(k,l) l k f f f f Remains to prove: d(i,l) = dT(i,l) d(j,l) = dT(j,l) c n n n n y b j m a i

29 Proof for L=4 By the 4 points condition and the definition of y:
d(i,l) = d(i,j) + d(k,l) +2y - d(k,j) = a + y + f = dT(i,l) (the middle equality holds since d(i,j), d(k,l) and d(k,j) are realized by the tree) d(j,l) = dT(j,l) is proved similarly. a b i j k m c y l n f

30 Induction step for L>4:
Remove Object L from the set By induction, there is a tree, T’, for {1,2,…,L-1}. For each pair of labeled nodes (i,j) in T’, let aij, bij, cij be defined by the following figure: aij bij cij i j L mij

31 Induction step: T’ Pick i and j that minimize cij.
T is constructed by adding L (and possibly mij) to T’, as in the figure. Then d(i,L) = dT(i,L) and d(j,L) = dT(j,L) Remains to prove: For each k ≠ i,j: d(k,L) = dT(k,L). aij bij cij i j L mij T’

32 Induction step (cont.) T’
Let k ≠i,j be an arbitrary node in T’, and let n be the branching point of k in the path from i to j. By the minimality of cij , {{i,j},{k,L}} is not a “split” of {i,j,k,L}. So assume WLOG that {{i,L},{j,k}} is a “split” of {i,j, k,L}. aij bij cij i j L mij T’ k n

33 d(L,k) = d(i,k) + d(L,j) - d(i,j)
Induction step (end) Since {{i,L},{j,k}} is a split, by the 4 points condition d(L,k) = d(i,k) + d(L,j) - d(i,j) d(i,k) = dT(i,k) and d(i,j) = dT(i,j) by induction, and d(L,j) = dT(L,j) by the construction. Hence d(L,k) = dT(L,k). QED aij bij cij i j L mij T’ k n

34 From Additive Distance to a Tree
By following the proof, the four point condition can be used to construct a tree from a distance matrix, or to decide that there is no such tree (namely that the distance is not additive). But this algorithm will go over all quartets, resulting in O(L4) many steps for L species (too sllllllllllllow). The most popular method for constructing trees for additive sets uses the neighbor joining approach.

35 Constructing additive trees: The neighbor joining problem
Let i, j be sisters (neighboring leaves) in a tree, let k be their father, and let m be any other vertex. Using eq. we can compute the distances from k to all other leaves. This suggest the following method to construct tree from an additive distance matrix: Find sisters i,j in the tree, Replace i,j by their father, k, and recursively construct a tree T for the smaller set. Add i,j as children of k in T.

36 Neighbor Finding How can we find from distances alone a pair of sisters (neighboring leaves)? Closest nodes are not necessarily neighboring leaves. A B C D Next, we show a way to find neighbors from distances.

37 Neighbor Finding: Seitou & Nei method
Theorem (Saitou&Nei) Assume d is additive, with all tree edge weights positive. If D(i,j) is minimal (among all pairs of leaves), then i and j are sister taxa in the tree. i j k l m T1 T2 The proof is rather involved, and will be skipped (no tears pls).

38 Saitou & Nei proof (to be skipped)
Notations used in the proof p(i,j) = the path from vertex i to vertex j; P(D,C) = (e1,e2,e3) = (D,E,F,C) For a vertex i, and an edge e=(i’,j’): Ni(e) = |{k : e is on p(i,k)}|. ND(e1) = 3, ND(e2) = 2, ND(e3) = 1 NC(e1) = 1 A B C D e1 e3 e2 F E

39 A simpler neighbor finding method:
Select an arbitrary (fixed) node r. For each pair of labeled nodes (i,j) let C(i,j) be defined by the following expression (also see figure): r C(i,j) j Claim: Let i, j be such that C(i,j) is maximized. Then i and j are neighboring leaves. i

40 Sisters Identification: Example
Select arbitrarily r=A. C(B,C)=( )/2=5 C(B,D)=( )/2=8 C(C,D)=( )/2=5 A B C D 5 4 6 20 25 Claim: Let i, j be such that C(i,j) is maximized. Then i and j are neighboring leaves.

41 Neighbor Joining Algorithm
Set M to contain all leaves, and select a root r. |M|=L If L =2, return a tree of two vertices Iteration: Choose i,j such that C(i,j) is maximal Create a new vertex k, and update distances remove i,j, and add k to M Recursively construct a tree on the smaller set. When done, add i,j as children on k, at distances d(i,k) and d(j,k). i j k m

42 Complexity of Neighbor Joining Algorithm
Naive Implementation: Initialization: θ(L2) to compute the C(i,j)’s. Each Iteration: O(L) to update {C(i,k):i L} for the new node k. O(L2) to find the maximal C(i,j). Total of O(L3). i j k m

43 Complexity of Neighbor Joining Algorithm
Using a Heap to store the C(i,j)’s: Initialization: θ(L2) to compute and heapify the C(i,j)’s. Each Iteration: O(1) to find the maximal C(i,j). O(L log L) to delete {C(m,i), C(m,j)} and add C(m,k) for all vertices m. Total of O(L2 log L). (implementation details are omitted)

44 Reconstructing Trees from Additive Matrices
Given a distance matrix constituting an additive metric, the topology of the corresponding additive tree is unique. Q: Do we have to test additivity before running NJ? A: This would be bad news, as this takes O(L4) time! E A B C D E 2 7 4 6 3 A 1 2 1 3 C 1 B 2 D

45 Reconstructing Trees from Additive Matrices
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! E A B C D E 2 7 4 6 3 A 1 2 1 3 C 1 B 2 D

46 NJ Algorithm: Example Identify i,j as neighbours if their divergence is minimal. Combine i,j into a new node u. update the distance matrix. If only 3 nodes are left – finish. i m j n 0.1 0.4 k l Let ri be the sum of distances from i to every other node

47 Distance Matrix U B A B C D 2 3 6 5 A

48 Distance Matrix Y U C D 3 5.5 6 U B C A

49 Distance Matrix Y D 5.6 Z Y U B D C A

50 Reconstructing Trees from non Additive Matrices
Q: What if the distance matrix is not additive? A: We could still run NJ! 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.

51 Almost Additive Matrix
A distance matrix d’ is “almost additive” if there exists an additive matrix d such that 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

52 Distance Matrix

53 Unrooted Tree - NJ Root

54 Output - NJ Branch length is proportional to distance

55 N-J Method produces an Unrooted, Additive tree

56 Neighbor-Joining Method
An Example What is required for the Neighbour joining method? Distance matrix 0. Distance Matrix

57 1. First Step Mon-Hum Mosquito Spinach Rice Human Monkey
PAM distance 3.3 (Human - Monkey) is the minimum. So we'll join Human and Monkey to MonHum and we'll calculate the new distances. Mon-Hum Mosquito Spinach Rice Human Monkey

58 2. Calculation of New Distances
After we have joined two species in a subtree we have to compute the distances from every other node to the new subtree. We do this with a simple average of distances: Dist[Spinach, MonHum] = (Dist[Spinach, Monkey] + Dist[Spinach, Human])/2 = ( )/2 = 88.55 Mon-Hum Spinach Human Monkey

59 3. Next Cycle Mos-(Mon-Hum) Mon-Hum Rice Spinach Mosquito Human Monkey

60 4. Penultimate Cycle Mos-(Mon-Hum) Spin-Rice Mon-Hum Rice Spinach
Mosquito Human Monkey

61 5. Last Joining (Spin-Rice)-(Mos-(Mon-Hum)) Mos-(Mon-Hum) Spin-Rice
Spinach Mosquito Human Monkey

62 The result: Unrooted Neighbor-Joining Tree
Human Spinach Monkey Mosquito Rice


Download ppt "Intro to Phylogenetic Trees Computational Genomics Lecture 4b"

Similar presentations


Ads by Google