Presentation is loading. Please wait.

Presentation is loading. Please wait.

Building phylogenetic trees Jurgen Mourik & Richard Vogelaars Utrecht University.

Similar presentations

Presentation on theme: "Building phylogenetic trees Jurgen Mourik & Richard Vogelaars Utrecht University."— Presentation transcript:

1 Building phylogenetic trees Jurgen Mourik & Richard Vogelaars Utrecht University

2 Building phylogenetic trees2 Overview Background Making a tree from pairwise distances; Parsimony; – ; Assessing the trees: the bootstrap; Simultaneous alignment and phylogeny; Application: Phylip

3 Building phylogenetic trees3 Background Phylogenetic tree: diagram showing evolutionary lineages of species/genes Trees are used: –To understand lineage of various species –To understand how various functions evolved –To inform multiple alignments

4 Building phylogenetic trees4 Phylogenetic tree approaches Distance: –UPGMA –Neighbour-joining Parsimony: –Traditional parsimony –Weighted parsimony

5 Building phylogenetic trees5 Making a tree from pairwise distances Given a set of sequences you want to build a tree. Compute the distances d ij between each pair i, j of the sequences. There are many different distance measures. Average distance between pairs of sequences from each cluster.

6 Building phylogenetic trees6 UPGMA Unweighted Pair Group Method using arithmetic Averages. It works by clustering the sequences, at each stage combining two clusters and at the same time creating a new node in a tree, using a distance measure.

7 Building phylogenetic trees7 Distance between points |C i | and |C j | denote the number of sequences in clusters i and j. 3 2 4 i l j

8 Building phylogenetic trees8 Distance between clusters Let C k be the union of clusters C i and C j,then d kl Where C l is any other cluster. 3 4 k l i j

9 Building phylogenetic trees9 Building the tree: UPGMA Initialisation: Assign each sequence i to its own cluster C i, Define one leaf of T for each sequence, and place at height zero. Iteration: Determine the two clusters i, j for which d ij is minimal. Define a new cluster k by, and define d kl for all l. Define a node k with daughter nodes i an j, and place it at height d ij /2. Add k to the current clusters and remove i and j. Terminiation: When only two clusters i, j remain, place the root at height d ij /2.

10 Building phylogenetic trees10 UPGMA: Initialisation

11 Building phylogenetic trees11 UPGMA: Iteration 1

12 Building phylogenetic trees12 UPGMA: Iteration 2

13 Building phylogenetic trees13 UPGMA: Iteration 3

14 Building phylogenetic trees14 UPGMA: Terminiation

15 Building phylogenetic trees15 Properties of UPGMA Molecular clock & ultrametric property of distances Additivity

16 Building phylogenetic trees16 Properties of UPGMA: Molecular clock & ultrametric The molecular clock assumption: divergence of sequences is assumed to occur at the same rate at all points in the tree. If this does holds, then the data is said to be ultrametric.

17 Building phylogenetic trees17 Properties of UPGMA: Additivity Given a tree, its edge lengths are said to be additive if the distance between any pair of leaves is the sum of the lengths of the edges on the path connecting them. j i m k

18 Building phylogenetic trees18 Neighbour-joining N-j constructs a tree by iteratively joining subtrees (like UPGMA). Produces an unrooted tree. Doesn’t make the molecular clock assumption, therefore the ultrametric property does not hold.

19 Building phylogenetic trees19 Distances in Neighbour-joining Given a new internal node k, the distance to another node m is given by: j i m k

20 Building phylogenetic trees20 Distances in Neighbour-joining Generalizing this so that the distance to all other leaves are taken into account: Where And |L| denotes the size of the set L of leaves. j i m k

21 Building phylogenetic trees21 Building the tree: Neighbour-joining Initialisation: Define T to be the set of leaf nodes, one for each given sequence, and put L=T. Iteration: Pick a pair i, j in L for which defined by is minimal. Define a new node k and set, for all m in L. Add k to T with edges of lengths, joining k to i and j, respectively. Remove i and j from L and add k. Termination: When L consists of two leaves i and j add the remaining edge between i and j, with length d ij.

22 Building phylogenetic trees22 Rooting trees Finding a root in an unrooted tree is sometimes accomplished by using an outgroup: –A species known to be more distantly related to remaining species than they are to each other The point where the outgroup joins the rest of the tree is the best candidate for root position j i m k outgroup Candidate root l

23 Building phylogenetic trees23 Comments on distance based methods If the given data is ultrametric (and these distances represent real distances), then UPGMA will identify the correct tree. If the data is additive (and these distances represent real distances), then Neighbour-joining will identify the correct tree. Otherwise, the methods may not recover the correct tree, but they may still be reasonable heuristics.

24 Building phylogenetic trees24 Phylogenetic tree approaches Distance: –UPGMA –Neighbour-joining Parsimony: –Traditional parsimony –Weighted parsimony

25 Building phylogenetic trees25 Parsimony Most widely used tree building algorithm(?). Finds the tree that explains the data with a minimal number of changes. Instead of building a tree, it assigns a cost to a given tree. Two components of the parsimony algorithm can be distinguished: –The computation of a cost for a given tree; –A search through all trees, to find the overall minimum of this cost.

26 Building phylogenetic trees26 Parsimony example Given the following sequences: AAG,AAA,GGA,AGA. Several trees could explain the phylogeny

27 Building phylogenetic trees27 Traditional Parsimony Count the number of substitutions At each node keep: –a list of minimal cost residues –the current cost Post-order traversal of the tree

28 Building phylogenetic trees28 Traditional Parsimony Initialisation: Set current cost C=0 and k =2n-1, the number of the root node. Recursion: To obtain the set R k : If k is a leaf node: Set If k is not a leaf node: Compute R i, R j for the daughter i, j of k, and set if this intersection is not empty, or else set and increment C. Termination: Minimal cost of tree = C.

29 Building phylogenetic trees29 Weighted Parsimony Extension of the traditional parsimony. Adds a cost function S(a,b) for each substitution of a by b. Post-order traversal of the tree Aim is now to minimize the cost.

30 Building phylogenetic trees30 Weighted Parsimony Initialisation: Set k =2n-1, the number of the root node Recursion: Compute S k (a) for all a as follows: If k is a leaf node: Set, otherwise If k is not a leaf node: Compute S i (a), S j (a) for all a at the daughter i, j and define Termination: Minimal cost of tree = min a S 2n-1 (a).

31 Building phylogenetic trees31 Break Questions so far? After the break: –Assessing the trees: the bootstrap; –Simultaneous alignment and phylogeny; –Application: Phylip

32 Building phylogenetic trees32 Branch and bound Parsimony itself can not build a tree! Using simple enumeration methods the number of trees become very large very fast. How to build the trees? –Stochastically –Branch and bound

33 Building phylogenetic trees33 Branch and bound B&B uses the parsimony algorithm. It guarantees to find the overall best tree. It systematically builds trees by increasing the number of leaves. Abandons a particular avenue of tree building whenever the current incomplete tree (T*) has a cost(T*)>cost(T min ).

34 Building phylogenetic trees34 The Bootstrap A measure how much a tree should be trusted. Use the bootstrap as a method of assessing the significance of some phylogenetic feature.

35 Building phylogenetic trees35 The Bootstrap (2) The bootstrap works as follows: –Given a dataset of an alignment of sequences. –Generate an artificial dataset of the same size as the original dataset by picking columns from the alignment at random with replacement. –Apply the tree building algorithm to this artificial dataset. –Repeat selection and tree building procedure n times. –The feature with which a chosen phylogenetic features appears is taken to be a measure of the confidence we can have in this feature.

36 Building phylogenetic trees36 Simultaneous alignment and phylogeny Simultaneously aligning sequences and finding a plausible phylogeny: –Sankoff & Cedergren’s gap-substitution algorithm; –Hein’s affine cost algorithm. Both find an optimal alignment given a tree.

37 Building phylogenetic trees37 Sankoff & Cedergren’s gap- substitution algorithm Guarantees to find ancestral sequences, and alignments of them and the leaf sequences. It uses a character-substitution model of gaps Together this minimizes a tree-based parsimony- type cost. The algorithm is a combination of two known methods: –Dynamic programming method (Chapter 6); –Weighted Parsimony algorithm.

38 Building phylogenetic trees38 Hein’s affine cost algorithm It uses affine gap penalties. Faster than the Sankoff & Cedergren algorithm. The aim is to find sequences z at a given node aligned to both of the sequences x and y at the daughter nodes satisfying: Where S is the total cost for a given alignment of two sequences. (mismatch cost =1 and 0 otherwise)

39 Building phylogenetic trees39 Hein’s affine cost algorithm Compared to equation (2.16) (alignment with affine gap scores) here the algorithm searches for the minimal cost path. The affine gap cost for a gap of length k is d+(k-1)e, where e<=d.

40 Building phylogenetic trees40 Dynamic programming matrix for two sequences VMVM VXVX VYVY d=2 e=1 i j

41 Building phylogenetic trees41 Hein’s affine cost algorithm Find the z for whichis minimal. From the matrix follows: –C - - A C - –C A C - - - CAC could be possible z. CAC(?) CACCTCACA

42 Building phylogenetic trees42 Hein’s affine cost algorithm CAC(?) CACCTCACA CACACA(?) CACCTCACA CACAC(?) CACCTCACA Which z could serve best as ancestor?

43 Building phylogenetic trees43 Hein’s affine cost algorithm CAC CACACA CACAC

44 Building phylogenetic trees44 Sequence graph Follow a path through the dynamic programming matrix. Derive a graph from this matrix. Whenever a cell is used by an optimal path a vertex is added to the graph.

45 Building phylogenetic trees45 Sequence graph Graph 1

46 Building phylogenetic trees46 Sequence graph: line arrangement Graph 1 Graph 2

47 Building phylogenetic trees47 Sequence graph: replacing the dummy edges Graph 2 Graph 3

48 Building phylogenetic trees48 Dynamic Programming matrix: TAC – Graph 3

49 Building phylogenetic trees49 Ancestors Possible ancestral sequences for the leaf sequences TAC, CAC and CTCACA given the tree shown. Derived from the sequence graphs. CAC CTCACA CAC TAC CAC 1 5

50 Building phylogenetic trees50 Limitations of Hein’s model Hein’s algorithm takes the minimal cost sequences at each node upward. This can fail to give the overall optimum. Suppose the cost for a gap of length k is: – 13+3(k-1) Mismatch: –4 Suppose the leaves G and GTT.

51 Building phylogenetic trees51 Limitations of Hein’s model A eligible ancestor of G and GTT would be themselves, since they both have a cost of 13+3=16. GT would not be eligible because of the total cost of 2*13=26. Now we want to branch to the ancestor of G and GTT and there is a third leave GT. –The total cost for ineligible GT would be lower than for either G or GTT.

52 Building phylogenetic trees52 Application: PHYLIP (Phylogeny Inference Package) Many features, among: –Traditional (unrooted) parsimony –Branch and bound to find all most parsimonious trees


54 Demo

55 Questions?

Download ppt "Building phylogenetic trees Jurgen Mourik & Richard Vogelaars Utrecht University."

Similar presentations

Ads by Google