. Phylogenetic trees III Maximum Parsimony . Gerhard Jäger ESSLLI 2016 Gerhard Jäger Maximum Parsimony ESSLLI 2016 1 / 30
Background . Background . Gerhard Jäger Maximum Parsimony ESSLLI 2016 2 / 30
Background Character-based tree estimation distance-based tree estimation has several drawbacks: very strong theoretical assumptions - e.g., all characters evolve at the same rate Neighbor Joining and UPGMA produce good but sub-optimal trees no solid statistical justification for those algorithms distances are black boxes — we get a tree, but we learn nothing about the history of individual characters character-based tree estimation estimates complete scenario (or distribution over scenarios) for each character finds the tree that best explains the observed variation in the data (at least in theory, that is...) Gerhard Jäger Maximum Parsimony ESSLLI 2016 3 / 30
Parsimony . Parsimony . Gerhard Jäger Maximum Parsimony ESSLLI 2016 4 / 30
Parsimony Parsimony of a tree background reading: Ewens and Grant (2005), 15.6 suppose a character matrix and a tree are given parsimony score: minimal number of mutations that has to be assumed to explain the character values at the tips, given the tree Gerhard Jäger Maximum Parsimony ESSLLI 2016 5 / 30
Parsimony Parsimony of a tree Kopf kop head tête testa cap "head" "head" "head" "head" "head" "head" Gerhard Jäger Maximum Parsimony ESSLLI 2016 6 / 30
Parsimony Parsimony of a tree Kopf kop head tête testa cap "head" "head" "head" "head" "head" "head" Gerhard Jäger Maximum Parsimony ESSLLI 2016 6 / 30
Parsimony Parsimony of a tree ? ? ? "head" ? ? Kopf kop head tête testa cap "head" "head" "head" "head" "head" "head" Gerhard Jäger Maximum Parsimony ESSLLI 2016 6 / 30
Parsimony Parsimony of a tree *kop testa "head" "head" Kopf kop head tête testa cap "head" "head" "head" "head" "head" "head" Gerhard Jäger Maximum Parsimony ESSLLI 2016 6 / 30
Parsimony Parsimony of a tree *kaput- "head" *haubud- caput "head" "head" *kop testa "head" "head" Kopf kop head tête testa cap "head" "head" "head" "head" "head" "head" Gerhard Jäger Maximum Parsimony ESSLLI 2016 6 / 30
Parsimony Parsimony reconstruction B Parsimony = 2 B B C A B A A C C B Gerhard Jäger Maximum Parsimony ESSLLI 2016 7 / 30
Parsimony Parsimony reconstruction A Parsimony = 3 A B C A B A A C C B Gerhard Jäger Maximum Parsimony ESSLLI 2016 7 / 30
Parsimony Parsimony reconstruction C Parsimony = 3 A C C A B A A C C B Gerhard Jäger Maximum Parsimony ESSLLI 2016 7 / 30
Parsimony Weighted parsimony reconstruction B Weighted Weight matrix Parsimony = 3 A B C B B A 0 1 2 C B 1 0 2 A C 2 2 0 A A B C C B Gerhard Jäger Maximum Parsimony ESSLLI 2016 8 / 30
Parsimony Weighted parsimony reconstruction A Weight matrix Weighted Parsimony = 4 A B C A B A 0 1 2 C B 1 0 2 A C 2 2 0 A A B C C B Gerhard Jäger Maximum Parsimony ESSLLI 2016 8 / 30
Parsimony Weighted parsimony reconstruction C Weighted Weight matrix Parsimony = 5 A B C A C A 0 1 2 C B 1 0 2 A C 2 2 0 A A B C C B Gerhard Jäger Maximum Parsimony ESSLLI 2016 8 / 30
Parsimony Dynamic Programming (Sankoff Algorithm) wp ( mother , s ) ∑ s ′ ∈ states ( w ( s, s ′ ) + wp ( d, s ′ )) min = d ∈ daughters B C A A C B 0 ∞ ∞ ∞ ∞ ∞ ∞ 0 ∞ ∞ ∞ 0 ∞ ∞ ∞ 0 0 0 Gerhard Jäger Maximum Parsimony ESSLLI 2016 9 / 30
Parsimony Dynamic Programming (Sankoff Algorithm) wp ( mother , s ) ∑ s ′ ∈ states ( w ( s, s ′ ) + wp ( d, s ′ )) min = d ∈ daughters 0 2 4 4 4 0 B C A A C B 0 ∞ ∞ ∞ ∞ ∞ ∞ 0 ∞ ∞ ∞ 0 ∞ ∞ ∞ 0 0 0 Gerhard Jäger Maximum Parsimony ESSLLI 2016 9 / 30
Parsimony Dynamic Programming (Sankoff Algorithm) wp ( mother , s ) ∑ s ′ ∈ states ( w ( s, s ′ ) + wp ( d, s ′ )) min = d ∈ daughters 1 1 4 3 2 2 0 2 4 4 4 0 B C A A C B 0 ∞ ∞ ∞ ∞ ∞ ∞ 0 ∞ ∞ ∞ 0 ∞ ∞ ∞ 0 0 0 Gerhard Jäger Maximum Parsimony ESSLLI 2016 9 / 30
Parsimony Dynamic Programming (Sankoff Algorithm) wp ( mother , s ) ∑ s ′ ∈ states ( w ( s, s ′ ) + wp ( d, s ′ )) min = d ∈ daughters 4 3 5 1 1 4 3 2 2 0 2 4 4 4 0 B C A A C B 0 ∞ ∞ ∞ ∞ ∞ ∞ 0 ∞ ∞ ∞ 0 ∞ ∞ ∞ 0 0 0 Gerhard Jäger Maximum Parsimony ESSLLI 2016 9 / 30
Parsimony Dynamic Programming (Sankoff Algorithm) wp ( mother , s ) ∑ s ′ ∈ states ( w ( s, s ′ ) + wp ( d, s ′ )) min = d ∈ daughters 4 3 5 1 1 4 3 2 2 0 2 4 4 4 0 B C A A C B 0 ∞ ∞ ∞ ∞ ∞ ∞ 0 ∞ ∞ ∞ 0 ∞ ∞ ∞ 0 0 0 Gerhard Jäger Maximum Parsimony ESSLLI 2016 10 / 30
Parsimony Dynamic Programming (Sankoff Algorithm) wp ( mother , s ) ∑ s ′ ∈ states ( w ( s, s ′ ) + wp ( d, s ′ )) min = d ∈ daughters 4 3 5 1 1 4 3 2 2 0 2 4 4 4 0 B C A A C B 0 ∞ ∞ ∞ ∞ ∞ ∞ 0 ∞ ∞ ∞ 0 ∞ ∞ ∞ 0 0 0 Gerhard Jäger Maximum Parsimony ESSLLI 2016 10 / 30
Parsimony Dynamic Programming (Sankoff Algorithm) wp ( mother , s ) ∑ s ′ ∈ states ( w ( s, s ′ ) + wp ( d, s ′ )) min = d ∈ daughters 4 3 5 1 1 4 3 2 2 0 2 4 4 4 0 B C A A C B 0 ∞ ∞ ∞ ∞ ∞ ∞ 0 ∞ ∞ ∞ 0 ∞ ∞ ∞ 0 0 0 Gerhard Jäger Maximum Parsimony ESSLLI 2016 10 / 30
Parsimony Dynamic Programming (Sankoff Algorithm) wp ( mother , s ) ∑ s ′ ∈ states ( w ( s, s ′ ) + wp ( d, s ′ )) min = d ∈ daughters 4 3 5 1 1 4 3 2 2 0 2 4 4 4 0 B C A A C B 0 ∞ ∞ ∞ ∞ ∞ ∞ 0 ∞ ∞ ∞ 0 ∞ ∞ ∞ 0 0 0 Gerhard Jäger Maximum Parsimony ESSLLI 2016 10 / 30
Parsimony Dynamic Programming (Sankoff Algorithm) wp ( mother , s ) ∑ s ′ ∈ states ( w ( s, s ′ ) + wp ( d, s ′ )) min = d ∈ daughters 4 3 5 1 1 4 3 2 2 0 2 4 4 4 0 B C A A C B 0 ∞ ∞ ∞ ∞ ∞ ∞ 0 ∞ ∞ ∞ 0 ∞ ∞ ∞ 0 0 0 Gerhard Jäger Maximum Parsimony ESSLLI 2016 10 / 30
Parsimony Searching for the best tree total parsimony score of tree: sum over all characters note: if weight matrix is symmetric, location of the root doesn’t matter Sankoff algorithm efficiently computes parsimony score of a given tree goal: tree which minimizes parsimony score no efficient way to find the optimal tree → heuristic tree search Gerhard Jäger Maximum Parsimony ESSLLI 2016 11 / 30
Searching the tree space . Searching the tree space . Gerhard Jäger Maximum Parsimony ESSLLI 2016 12 / 30
Searching the tree space How many rooted tree topologies are there? n=2 1 2 Gerhard Jäger Maximum Parsimony ESSLLI 2016 13 / 30
Searching the tree space How many rooted tree topologies are there? n=2 1 2 n=3 1 3 2 1 2 3 1 1 2 3 2 3 Gerhard Jäger Maximum Parsimony ESSLLI 2016 13 / 30
Searching the tree space How many rooted tree topologies are there? n=2 1 2 n=3 1 3 2 1 2 3 1 1 2 3 2 3 n=4 1 4 3 2 1 3 4 2 1 3 4 2 1 3 4 2 1 3 2 4 Gerhard Jäger Maximum Parsimony ESSLLI 2016 13 / 30
Searching the tree space How many rooted tree topologies are there? 2 1 3 3 4 15 5 105 6 945 7 10395 8 135135 9 2027025 10 34459425 11 654729075 12 13749310575 13 316234143225 14 7 . 9 e + 12 15 2 . 1 e + 14 16 6 . 1 e + 15 17 1 . 9 e + 17 f (2) = 1 18 6 . 3 e + 18 19 2 . 2 e + 20 20 8 . 2 e + 21 f ( n + 1) = (2 n − 3) f ( n ) 21 3 . 1 e + 23 22 1 . 3 e + 25 23 5 . 6 e + 26 (2 n − 3)! 24 2 . 5 e + 28 f ( n ) = 25 1 . 1 e + 30 26 5 . 8 e + 31 2 n − 2 ( n − 2)! 27 2 . 9 e + 33 28 1 . 5 e + 35 29 8 . 6 e + 36 30 4 . 9 e + 38 31 2 . 9 e + 40 32 1 . 7 e + 42 33 1 . 1 e + 44 34 7 . 2 e + 45 35 4 . 8 e + 47 36 3 . 3 e + 49 37 2 . 3 e + 51 38 1 . 7 e + 53 39 1 . 3 e + 55 40 1 . 0 e + 57 Gerhard Jäger Maximum Parsimony ESSLLI 2016 14 / 30
Searching the tree space How many unrooted tree topologies are there? n=3 3 2 1 Gerhard Jäger Maximum Parsimony ESSLLI 2016 15 / 30
Searching the tree space How many unrooted tree topologies are there? n=3 n=4 3 4 2 1 3 2 4 2 3 1 1 2 3 4 1 Gerhard Jäger Maximum Parsimony ESSLLI 2016 15 / 30
Searching the tree space How many unrooted tree topologies are there? n=5 n=3 n=4 3 4 2 5 2 3 5 4 5 4 3 4 3 2 2 3 5 4 2 5 2 3 4 1 1 1 1 1 1 3 2 4 3 2 4 2 5 2 4 4 5 2 2 3 3 5 3 5 2 3 4 3 4 5 1 1 1 1 1 1 1 2 4 5 3 5 3 4 2 5 2 2 4 3 2 4 2 4 3 5 3 4 5 3 1 1 1 1 1 1 Gerhard Jäger Maximum Parsimony ESSLLI 2016 15 / 30
Recommend
More recommend