Intro to Phylogenetic Trees Computational Genomics Lecture 4b

Slides:



Advertisements
Similar presentations
1 A B C
Advertisements

Simplifications of Context-Free Grammars
Variations of the Turing Machine
PDAs Accept Context-Free Languages
Introduction to Algorithms
AP STUDY SESSION 2.
1
David Burdett May 11, 2004 Package Binding for WS CDL.
Create an Application Title 1Y - Youth Chapter 5.
Add Governors Discretionary (1G) Grants Chapter 6.
CALENDAR.
The 5S numbers game..
Break Time Remaining 10:00.
The basics for simulations
EE, NCKU Tien-Hao Chang (Darby Chang)
Turing Machines.
Table 12.1: Cash Flows to a Cash and Carry Trading Strategy.
PP Test Review Sections 6-1 to 6-6
Chapter 10: Applications of Arrays and the class vector
Outline Minimum Spanning Tree Maximal Flow Algorithm LP formulation 1.
Regression with Panel Data
Copyright © 2012, Elsevier Inc. All rights Reserved. 1 Chapter 7 Modeling Structure with Blocks.
Graphs, representation, isomorphism, connectivity
Adding Up In Chunks.
MaK_Full ahead loaded 1 Alarm Page Directory (F11)
Artificial Intelligence
Subtraction: Adding UP
: 3 00.
5 minutes.
1 Non Deterministic Automata. 2 Alphabet = Nondeterministic Finite Accepter (NFA)
1 hi at no doifpi me be go we of at be do go hi if me no of pi we Inorder Traversal Inorder traversal. n Visit the left subtree. n Visit the node. n Visit.
. Lecture #8: - Parameter Estimation for HMM with Hidden States: the Baum Welch Training - Viterbi Training - Extensions of HMM Background Readings: Chapters.
1 Let’s Recapitulate. 2 Regular Languages DFAs NFAs Regular Expressions Regular Grammars.
Types of selection structures
12 System of Linear Equations Case Study
Converting a Fraction to %
Numerical Analysis 1 EE, NCKU Tien-Hao Chang (Darby Chang)
CSE Lecture 17 – Balanced trees
CSE20 Lecture 15 Karnaugh Maps Professor CK Cheng CSE Dept. UC San Diego 1.
Clock will move after 1 minute
Lial/Hungerford/Holcomb/Mullins: Mathematics with Applications 11e Finite Mathematics with Applications 11e Copyright ©2015 Pearson Education, Inc. All.
Physics for Scientists & Engineers, 3rd Edition
Select a time to count down from the clock above
Copyright Tim Morris/St Stephen's School
1.step PMIT start + initial project data input Concept Concept.
9. Two Functions of Two Random Variables
1 Decidability continued…. 2 Theorem: For a recursively enumerable language it is undecidable to determine whether is finite Proof: We will reduce the.
Bioinformatics Programming 1 EE, NCKU Tien-Hao Chang (Darby Chang)
Maximum Parsimony Probabilistic Models of Evolutions Distance Based Methods Lecture 12 © Shlomo Moran, Ilan Gronau.
. Class 9: Phylogenetic Trees. The Tree of Life Evolution u Many theories of evolution u Basic idea: l speciation events lead to creation of different.
Phylogenetic Trees Lecture 12
. Intro to Phylogenetic Trees Lecture 5 Sections 7.1, 7.2, in Durbin et al. Chapter 17 in Gusfield Slides by Shlomo Moran. Slight modifications by Benny.
The Saitou&Nei Neighbor Joining Algorithm ©Shlomo Moran & Ilan Gronau.
. Computational Genomics 5a Distance Based Trees Reconstruction (cont.) Modified by Benny Chor, from slides by Shlomo Moran and Ydo Wexler (IIT)
. Phylogenetic Trees Lecture 11 Sections 7.1, 7.2, in Durbin et al.
The Tree of Life From Ernst Haeckel, 1891.
. Phylogenetic Trees Lecture 1 Credits: N. Friedman, D. Geiger, S. Moran,
. Class 9: Phylogenetic Trees. The Tree of Life D’après Ernst Haeckel, 1891.
. 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)
. Phylogenetic Trees (2) Lecture 12 Based on: Durbin et al Section 7.3, 7.8, Gusfield: Algorithms on Strings, Trees, and Sequences Section 17.
. Phylogenetic Trees Lecture 11 Sections 7.1, 7.2, in Durbin et al.
Phylogenetic trees Sushmita Roy BMI/CS 576
. Phylogenetic Trees Lecture 11 Sections 7.1, 7.2, in Durbin et al.
Phylogentic Tree Evolution Evolution of organisms is driven by Diversity  Different individuals carry different variants of.
CSCE555 Bioinformatics Lecture 12 Phylogenetics I Meeting: MW 4:00PM-5:15PM SWGN2A21 Instructor: Dr. Jianjun Hu Course page:
Distance-Based Approaches to Inferring Phylogenetic Trees BMI/CS 576 Colin Dewey Fall 2010.
Distance-based methods for phylogenetic tree reconstruction Colin Dewey BMI/CS 576 Fall 2015.
Presentation transcript:

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 .

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

The Tree of Life Source: Alberts et al

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

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.

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

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

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

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

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

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

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

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

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

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

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.

Rooted versus unrooted trees Tree a Tree b Tree c b a c Represents all three rooted trees

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

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.

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.

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.

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?

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.

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

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

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

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

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

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

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

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’

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

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

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.

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.

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.

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

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

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

Sisters Identification: Example Select arbitrarily r=A. C(B,C)=(15+25-30)/2=5 C(B,D)=(15+34-31)/2=8 C(C,D)=(25+34-49)/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.

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

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

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)

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

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

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

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

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

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

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.

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

Distance Matrix

Unrooted Tree - NJ Root

Output - NJ Branch length is proportional to distance

N-J Method produces an Unrooted, Additive tree

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

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

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 = (90.8 + 86.3)/2 = 88.55 Mon-Hum Spinach Human Monkey

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

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

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

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