The worst case complexity of Maximum Parsimony

Size: px
Start display at page:

Download "The worst case complexity of Maximum Parsimony"

Transcription

1 he worst case complexity of Maximum Parsimony mir armel Noa Musa-Lempel Dekel sur Michal Ziv-Ukelson Ben-urion University June 2, 20 / 2

2 What s a phylogeny Phylogenies: raph-like structures whose topology describes the inferred evolutionary history among a set of species. Modeled as either rooted or unrooted labeled binary trees, where the input entities are assigned to the leaf vertices. 2 / 2

3 haracter based methods for phylogenetic reconstruction Each specie is characterized by a sequence of letters. We are given a subsitution scoring matrix over the letters. Position independence is assumed. : 2: : : 5: / 2

4 rooted/unrooted phylogeny he decision whether to model phylogenies as rooted versus unooted depends on the substitution scoring matrix. Modeling phylogenies as unrooted trees requires the assumption of symmetric scoring matrices. oday, many applications apply asymmetric scoring matrices. / 2

5 Parsimony Maximization classical approach for phylogenetic reconstruction. he Parsimony Maximization approach seeks the phylogenetic tree that supposes the least amount of evolutionary change explaining the observed data. here are two classical problems inferred from phylogenetic parsimony maximization: Small Parsimony (SP) and Maxmimum Parsimony (MP). 5 / 2

6 Small Parsimony Problem (SP) Input: multiple alignment, tree topology on n leaves. : 2: : : 5: 5 oal: ssignment to internal vertices that minimizes the scoring function. 5 Score = 5 Score = 2 6 / 2

7 Small Parsimony Problem (SP) Input: multiple alignment, tree topology on n leaves. : 2: : : 5: 5 oal: ssignment to internal vertices that minimizes the scoring function. 5 Score = 5 Score = 2 We note that known algorithms for Small Parsimony traverse the tree in a bottom up manner. 6 / 2

8 Maximum Parsimony Problem (MP) Input: multiple alignment : 2: : : 5: oal: topology and assignments to internal vertices, that minimizes the SP score. 5 Score = 5 Score = Score = 2 7 / 2

9 Maximum Parsimony Problem (MP) Input: multiple alignment : 2: : : 5: oal: topology and assignments to internal vertices, that minimizes the SP score. 5 Score = 5 Score = Score = 2 he Maximum Parsimony (MP) problem is NP-hard [L. R. Foulds and R. L. raham (982)]. 7 / 2

10 Measuring SP and MP complexity in terms of assignment operations ssignment operation - time to compute the assignment for a single vertex. his depends on the scoring scheme employed, for example: Fitch s algorithm (Hamming distance) O(m), Sankoff s algorithm (weighted edit distance) O(mΣ 2 ). 8 / 2

11 Our contribution Previous results: avalli-sforza and Edwards (967) - (n ) (2n )!! assignment operations. Hendy and Penny (982) - branch&bound algorithm for MP. Where (2n )!! = 5... (2n ). 9 / 2

12 Our contribution New results: avalli-sforza and Edwards (967) - (n ) (2n )!! assignment operations. Hendy and Penny (982) - branch&bound algorithm for MP. Worst case running time: Θ( n (2n )!!) assignment operations. new, faster algorithm which executes Θ((2n )!!) assignment operations. Where (2n )!! = 5... (2n ) 9 / 2

13 he algorithm of avalli-sforza and Edwards 0 / 2

14 he algorithm of avalli-sforza and Edwards avalli-sforza and Edwards showed that the number of rooted phylogenies with n leaves is (2n )!!. 0 / 2

15 he algorithm of avalli-sforza and Edwards avalli-sforza and Edwards showed that the number of rooted phylogenies with n leaves is (2n )!!. he algorithm enumerates all phylogenies with n leaves, and then solves the Small Parsimony (SP) problem on each tree. 0 / 2

16 he algorithm of avalli-sforza and Edwards avalli-sforza and Edwards showed that the number of rooted phylogenies with n leaves is (2n )!!. he algorithm enumerates all phylogenies with n leaves, and then solves the Small Parsimony (SP) problem on each tree. Each phylogeny has exactly n internal vertices, therefore the algorithm has a running time of (n ) (2n )!! assignment operations. 0 / 2

17 he algorithm of Hendy and Penny Preliminaries: 2 2 / 2

18 he algorithm of Hendy and Penny Enumeration space: 2 2 / 2

19 he algorithm of Hendy and Penny Enumeration space: 2 2 / 2

20 he algorithm of Hendy and Penny Enumeration space: 2 2 / 2

21 he algorithm of Hendy and Penny ssignment operations: 2 2 / 2

22 he algorithm of Hendy and Penny ssignment operations: 2 2 / 2

23 he algorithm of Hendy and Penny ssignment operations: / 2

24 he algorithm of Hendy and Penny ssignment operations: / 2

25 he algorithm of Hendy and Penny ssignment operations: / 2

26 he algorithm of Hendy and Penny ssignment operations: / 2

27 he algorithm of Hendy and Penny ssignment operations: / 2

28 he algorithm of Hendy and Penny ssignment operations: / 2

29 he algorithm of Hendy and Penny ssignment operations: / 2

30 he algorithm of Hendy and Penny ssignment operations: / 2

31 he algorithm of Hendy and Penny ssignment operations: / 2

32 he algorithm of Hendy and Penny ssignment operations: / 2

33 he algorithm of Hendy and Penny ssignment operations: he search space tree is developed in top-down order, while the recalculations of assignments is done in a bottom-up order. / 2

34 he algorithm of Hendy and Penny ssignment operations: he complexity of the algorithm equals to the number of assignment operations. / 2

35 he algorithm of Hendy and Penny heir algorithm was originally proposed for the purpose of branch and bound and its worst case bound was not previously properly analyzed. Using combinatorial methods we managed to achieve an exact bound. 2 / 2

36 he number of assignment operations Let Numnc(v) denote the number of ancestors of x in F v. / 2

37 he number of assignment operations Let Numnc(v) denote the number of ancestors of x in F v x 5 / 2

38 he number of assignment operations Let Numnc(v) denote the number of ancestors of x in F v x 5 he number of ancestors of x in F v is equal to the number of assignment operations executes in node v. / 2

39 he number of assignment operations Let Numnc(v) denote the number of ancestors of x in F v x 5 he number of ancestors of x in F v is equal to the number of assignment operations executes in node v. Let H i be the sum of Numnc(v) for all nodes v in level i +. / 2

40 he number of assignment operations Let Numnc(v) denote the number of ancestors of x in F v x 5 he number of ancestors of x in F v is equal to the number of assignment operations executes in node v. Let H i be the sum of Numnc(v) for all nodes v in level i +. By definition, Numnc(v) = n i= H i. / 2

41 he number of assignment operations Lemma H i = (2i)!! (2i )!!. heorem 2 he assignment operations complexity of the algorithm of Hendy and Penny is Θ( n(2n )!!). / 2

42 new, more efficient search space tree 5 / 2

43 new, more efficient search space tree 5 / 2

44 new, more efficient search space tree 2 5 / 2

45 new, more efficient search space tree 2 5 / 2

46 new, more efficient search space tree 2 5 / 2

47 new, more efficient search space tree 2 5 / 2

48 new, more efficient search space tree 2 5 / 2

49 new, more efficient search space tree 2 First challenge: he same node can be obtained from two different sequences of merge operations. 5 / 2

50 new, more efficient search space tree 2 First challenge: he same node can be obtained from two different sequences of merge operations. 5 / 2

51 new, more efficient search space tree Second challenge: We need to count the number of nodes in the search space tree. 5 / 2

52 new, more efficient search space tree he new algorithm develops the search space tree bottom up, which flows along with the natural bottom up direction of Small Parsimony. 6 / 2

53 new, more efficient search space tree he new algorithm develops the search space tree bottom up, which flows along with the natural bottom up direction of Small Parsimony. We first define a graph n, and then, using canonical representation for each node, we transform n into a tree n by removing redundant edges. 6 / 2

54 new, more efficient search space tree he new algorithm develops the search space tree bottom up, which flows along with the natural bottom up direction of Small Parsimony. We first define a graph n, and then, using canonical representation for each node, we transform n into a tree n by removing redundant edges. Using combinatorial analysis we showed that the size of n is approximately e (2n )!!. 6 / 2

55 new, more efficient search space tree he new algorithm develops the search space tree bottom up, which flows along with the natural bottom up direction of Small Parsimony. We first define a graph n, and then, using canonical representation for each node, we transform n into a tree n by removing redundant edges. Using combinatorial analysis we showed that the size of n is approximately e (2n )!!. raversing the search space tree requires performing exactly one assignment operation per node, thus the complexity of our new MP algorithm is Θ((2n )!!) 6 / 2

56 From n to n For a node u in the search space, we denote by F u the corresponding forest. For a tree in a forest define the label of to be label( ) = min{label(v) : v is a leaf in }. he label of a forest F is label(f ) = min{label( ) : is a non-singleton tree in F }. For a node u. let u denote the tree in F u for which label(f u ) = label( u ). Definition he search space tree n is a tree whose nodes are the nodes of n. node v is the parent of a node u in n if F v is obtained from F u by deleting the root of u. 7 / 2

57 From n to n 2 8 / 2

58 From n to n 2 8 / 2

59 From n to n he definition of n gives a characterization for the parent of a node in the tree. In order to perform a top-down traversal of the search space tree, we need a characterization for the children of a node. Such characterization is given in the following lemma. Lemma 2 node u is a child of a node v in n if and only if F u is obtained from F v by merging two trees and 2 from F v with label( ) < label( 2 ) and either. = v (and in particular, is not a singleton), or 2. is a singleton and label( ) < label( v ). 9 / 2

60 From n to n 2. = v (and in particular, is not a singleton), or 2. is a singleton and label( ) < label( v ). 20 / 2

61 From n to n 2. = v (and in particular, is not a singleton), or 2. is a singleton and label( ) < label( v ). 20 / 2

62 omplexity of the new search space Let n i denote the number of nodes in level i of n. Let L n i,k denote the number of nodes v in level i for which label(f v ) = k. For example, n 0 =, n = ( n 2), and n n = (2n )!!. Let µ n denote the size of n. i.e. µ n = n i=0 n i. Lemma L n i+,k = (n i k) n i l=k Ln i,l. Lemma L n i,k = (2i )!!( ) n k+i 2i. Lemma 5 n i = (2i )!! ( ) n+i 2i. 2 / 2

63 omplexity of the new search space Let n i denote the number of nodes in level i of n. Let L n i,k denote the number of nodes v in level i for which label(f v ) = k. For example, n 0 =, n = ( n 2), and n n = (2n )!!. Let µ n denote the size of n. i.e. µ n = n i=0 n i. Lemma L n i+,k = (n i k) n i l=k Ln i,l. Lemma L n i,k = (2i )!!( ) n k+i 2i. Lemma 5 n i = (2i )!! ( ) n+i 2i. heorem he assignment operations complexity for solving MP using the new search space is ( + o()) e (2n )!!, i.e. µ n e (2n )!!. 2 / 2

64 Summary We studied the classical problem of exact Maximum Parsimony, focusing on the running time complexity of various algorithms for the problem. he first approach proposed by avalli-sforza and Edwards yields an assignment operations complexity of (n ) (2n )!!. he second approach we analyzed was proposed by Hendy and Penny. Its theoretical running time complexity has not been previously analyzed. We showed that the assignment operations complexity of this approach is smaller by a factor of Θ( n). We proposed a new, faster MP approach, whose assignment operations complexity is smaller by a factor of Θ( n) than the complexity of the Hendy and Penny approach. 22 / 2

65 hank You 2 / 2

Assignment 3 Phylogenetic Tree Reconstruction and Motif Finding

Assignment 3 Phylogenetic Tree Reconstruction and Motif Finding ssignment Phylogenetic ree Reconstruction and Motif Finding Lecturer: Michal Ziv-Ukelson ssignment hecker: Dina Svetlitsky You may submit the assignment in pairs. Explain your answers as clearly as possible

More information

Parsimony-Based Approaches to Inferring Phylogenetic Trees

Parsimony-Based Approaches to Inferring Phylogenetic Trees Parsimony-Based Approaches to Inferring Phylogenetic Trees BMI/CS 576 www.biostat.wisc.edu/bmi576.html Mark Craven craven@biostat.wisc.edu Fall 0 Phylogenetic tree approaches! three general types! distance:

More information

Evolutionary tree reconstruction (Chapter 10)

Evolutionary tree reconstruction (Chapter 10) Evolutionary tree reconstruction (Chapter 10) Early Evolutionary Studies Anatomical features were the dominant criteria used to derive evolutionary relationships between species since Darwin till early

More information

Molecular Evolution & Phylogenetics Complexity of the search space, distance matrix methods, maximum parsimony

Molecular Evolution & Phylogenetics Complexity of the search space, distance matrix methods, maximum parsimony Molecular Evolution & Phylogenetics Complexity of the search space, distance matrix methods, maximum parsimony Basic Bioinformatics Workshop, ILRI Addis Ababa, 12 December 2017 Learning Objectives understand

More information

Genetics/MBT 541 Spring, 2002 Lecture 1 Joe Felsenstein Department of Genome Sciences Phylogeny methods, part 1 (Parsimony and such)

Genetics/MBT 541 Spring, 2002 Lecture 1 Joe Felsenstein Department of Genome Sciences Phylogeny methods, part 1 (Parsimony and such) Genetics/MBT 541 Spring, 2002 Lecture 1 Joe Felsenstein Department of Genome Sciences joe@gs Phylogeny methods, part 1 (Parsimony and such) Methods of reconstructing phylogenies (evolutionary trees) Parsimony

More information

Backtracking. Chapter 5

Backtracking. Chapter 5 1 Backtracking Chapter 5 2 Objectives Describe the backtrack programming technique Determine when the backtracking technique is an appropriate approach to solving a problem Define a state space tree for

More information

Phylogenetics. Introduction to Bioinformatics Dortmund, Lectures: Sven Rahmann. Exercises: Udo Feldkamp, Michael Wurst

Phylogenetics. Introduction to Bioinformatics Dortmund, Lectures: Sven Rahmann. Exercises: Udo Feldkamp, Michael Wurst Phylogenetics Introduction to Bioinformatics Dortmund, 16.-20.07.2007 Lectures: Sven Rahmann Exercises: Udo Feldkamp, Michael Wurst 1 Phylogenetics phylum = tree phylogenetics: reconstruction of evolutionary

More information

( ) + n. ( ) = n "1) + n. ( ) = T n 2. ( ) = 2T n 2. ( ) = T( n 2 ) +1

( ) + n. ( ) = n 1) + n. ( ) = T n 2. ( ) = 2T n 2. ( ) = T( n 2 ) +1 CSE 0 Name Test Summer 00 Last Digits of Student ID # Multiple Choice. Write your answer to the LEFT of each problem. points each. Suppose you are sorting millions of keys that consist of three decimal

More information

Algorithms for Bioinformatics

Algorithms for Bioinformatics Adapted from slides by Leena Salmena and Veli Mäkinen, which are partly from http: //bix.ucsd.edu/bioalgorithms/slides.php. 582670 Algorithms for Bioinformatics Lecture 6: Distance based clustering and

More information

CISC 636 Computational Biology & Bioinformatics (Fall 2016) Phylogenetic Trees (I)

CISC 636 Computational Biology & Bioinformatics (Fall 2016) Phylogenetic Trees (I) CISC 636 Computational iology & ioinformatics (Fall 2016) Phylogenetic Trees (I) Maximum Parsimony CISC636, F16, Lec13, Liao 1 Evolution Mutation, selection, Only the Fittest Survive. Speciation. t one

More information

Alignment of Trees and Directed Acyclic Graphs

Alignment of Trees and Directed Acyclic Graphs Alignment of Trees and Directed Acyclic Graphs Gabriel Valiente Algorithms, Bioinformatics, Complexity and Formal Methods Research Group Technical University of Catalonia Computational Biology and Bioinformatics

More information

What is a phylogenetic tree? Algorithms for Computational Biology. Phylogenetics Summary. Di erent types of phylogenetic trees

What is a phylogenetic tree? Algorithms for Computational Biology. Phylogenetics Summary. Di erent types of phylogenetic trees What is a phylogenetic tree? Algorithms for Computational Biology Zsuzsanna Lipták speciation events Masters in Molecular and Medical Biotechnology a.a. 25/6, fall term Phylogenetics Summary wolf cat lion

More information

EVOLUTIONARY DISTANCES INFERRING PHYLOGENIES

EVOLUTIONARY DISTANCES INFERRING PHYLOGENIES EVOLUTIONARY DISTANCES INFERRING PHYLOGENIES Luca Bortolussi 1 1 Dipartimento di Matematica ed Informatica Università degli studi di Trieste luca@dmi.units.it Trieste, 28 th November 2007 OUTLINE 1 INFERRING

More information

implementing the breadth-first search algorithm implementing the depth-first search algorithm

implementing the breadth-first search algorithm implementing the depth-first search algorithm Graph Traversals 1 Graph Traversals representing graphs adjacency matrices and adjacency lists 2 Implementing the Breadth-First and Depth-First Search Algorithms implementing the breadth-first search algorithm

More information

Recent Research Results. Evolutionary Trees Distance Methods

Recent Research Results. Evolutionary Trees Distance Methods Recent Research Results Evolutionary Trees Distance Methods Indo-European Languages After Tandy Warnow What is the purpose? Understand evolutionary history (relationship between species). Uderstand how

More information

Lower Bound on Comparison-based Sorting

Lower Bound on Comparison-based Sorting Lower Bound on Comparison-based Sorting Different sorting algorithms may have different time complexity, how to know whether the running time of an algorithm is best possible? We know of several sorting

More information

Lecture 20: Clustering and Evolution

Lecture 20: Clustering and Evolution Lecture 20: Clustering and Evolution Study Chapter 10.4 10.8 11/11/2014 Comp 555 Bioalgorithms (Fall 2014) 1 Clique Graphs A clique is a graph where every vertex is connected via an edge to every other

More information

CISC 889 Bioinformatics (Spring 2003) Multiple Sequence Alignment

CISC 889 Bioinformatics (Spring 2003) Multiple Sequence Alignment CISC 889 Bioinformatics (Spring 2003) Multiple Sequence Alignment Courtesy of jalview 1 Motivations Collective statistic Protein families Identification and representation of conserved sequence features

More information

A Note on Scheduling Parallel Unit Jobs on Hypercubes

A Note on Scheduling Parallel Unit Jobs on Hypercubes A Note on Scheduling Parallel Unit Jobs on Hypercubes Ondřej Zajíček Abstract We study the problem of scheduling independent unit-time parallel jobs on hypercubes. A parallel job has to be scheduled between

More information

CS 581. Tandy Warnow

CS 581. Tandy Warnow CS 581 Tandy Warnow This week Maximum parsimony: solving it on small datasets Maximum Likelihood optimization problem Felsenstein s pruning algorithm Bayesian MCMC methods Research opportunities Maximum

More information

human chimp mouse rat

human chimp mouse rat Michael rudno These notes are based on earlier notes by Tomas abak Phylogenetic Trees Phylogenetic Trees demonstrate the amoun of evolution, and order of divergence for several genomes. Phylogenetic trees

More information

Terminology. A phylogeny is the evolutionary history of an organism

Terminology. A phylogeny is the evolutionary history of an organism Phylogeny Terminology A phylogeny is the evolutionary history of an organism A taxon (plural: taxa) is a group of (one or more) organisms, which a taxonomist adjudges to be a unit. A definition? from Wikipedia

More information

CSE 549: Computational Biology

CSE 549: Computational Biology CSE 549: Computational Biology Phylogenomics 1 slides marked with * by Carl Kingsford Tree of Life 2 * H5N1 Influenza Strains Salzberg, Kingsford, et al., 2007 3 * H5N1 Influenza Strains The 2007 outbreak

More information

Lecture 20: Clustering and Evolution

Lecture 20: Clustering and Evolution Lecture 20: Clustering and Evolution Study Chapter 10.4 10.8 11/12/2013 Comp 465 Fall 2013 1 Clique Graphs A clique is a graph where every vertex is connected via an edge to every other vertex A clique

More information

Sequence clustering. Introduction. Clustering basics. Hierarchical clustering

Sequence clustering. Introduction. Clustering basics. Hierarchical clustering Sequence clustering Introduction Data clustering is one of the key tools used in various incarnations of data-mining - trying to make sense of large datasets. It is, thus, natural to ask whether clustering

More information

Maximum Parsimony on Phylogenetic networks

Maximum Parsimony on Phylogenetic networks RESEARCH Open Access Maximum Parsimony on Phylogenetic networks Lavanya Kannan * and Ward C Wheeler Abstract Background: Phylogenetic networks are generalizations of phylogenetic trees, that are used to

More information

Lab 8 Phylogenetics I: creating and analysing a data matrix

Lab 8 Phylogenetics I: creating and analysing a data matrix G44 Geobiology Fall 23 Name Lab 8 Phylogenetics I: creating and analysing a data matrix For this lab and the next you will need to download and install the Mesquite and PHYLIP packages: http://mesquiteproject.org/mesquite/mesquite.html

More information

Uses for Trees About Trees Binary Trees. Trees. Seth Long. January 31, 2010

Uses for Trees About Trees Binary Trees. Trees. Seth Long. January 31, 2010 Uses for About Binary January 31, 2010 Uses for About Binary Uses for Uses for About Basic Idea Implementing Binary Example: Expression Binary Search Uses for Uses for About Binary Uses for Storage Binary

More information

4/4/16 Comp 555 Spring

4/4/16 Comp 555 Spring 4/4/16 Comp 555 Spring 2016 1 A clique is a graph where every vertex is connected via an edge to every other vertex A clique graph is a graph where each connected component is a clique The concept of clustering

More information

Distance based tree reconstruction. Hierarchical clustering (UPGMA) Neighbor-Joining (NJ)

Distance based tree reconstruction. Hierarchical clustering (UPGMA) Neighbor-Joining (NJ) Distance based tree reconstruction Hierarchical clustering (UPGMA) Neighbor-Joining (NJ) All organisms have evolved from a common ancestor. Infer the evolutionary tree (tree topology and edge lengths)

More information

Section 5.5. Left subtree The left subtree of a vertex V on a binary tree is the graph formed by the left child L of V, the descendents

Section 5.5. Left subtree The left subtree of a vertex V on a binary tree is the graph formed by the left child L of V, the descendents Section 5.5 Binary Tree A binary tree is a rooted tree in which each vertex has at most two children and each child is designated as being a left child or a right child. Thus, in a binary tree, each vertex

More information

Parsimony methods. Chapter 1

Parsimony methods. Chapter 1 Chapter 1 Parsimony methods Parsimony methods are the easiest ones to explain, and were also among the first methods for inferring phylogenies. The issues that they raise also involve many of the phenomena

More information

12/5/17. trees. CS 220: Discrete Structures and their Applications. Trees Chapter 11 in zybooks. rooted trees. rooted trees

12/5/17. trees. CS 220: Discrete Structures and their Applications. Trees Chapter 11 in zybooks. rooted trees. rooted trees trees CS 220: Discrete Structures and their Applications A tree is an undirected graph that is connected and has no cycles. Trees Chapter 11 in zybooks rooted trees Rooted trees. Given a tree T, choose

More information

BMI/STAT 768: Lecture 06 Trees in Graphs

BMI/STAT 768: Lecture 06 Trees in Graphs BMI/STAT 768: Lecture 06 Trees in Graphs Moo K. Chung mkchung@wisc.edu February 11, 2018 Parts of this lecture is based on [3, 5]. Many objects and data can be represented as networks. Unfortunately networks

More information

Phylogenetic Trees Lecture 12. Section 7.4, in Durbin et al., 6.5 in Setubal et al. Shlomo Moran, Ilan Gronau

Phylogenetic Trees Lecture 12. Section 7.4, in Durbin et al., 6.5 in Setubal et al. Shlomo Moran, Ilan Gronau Phylogenetic Trees Lecture 12 Section 7.4, in Durbin et al., 6.5 in Setubal et al. Shlomo Moran, Ilan Gronau. Maximum Parsimony. Last week we presented Fitch algorithm for (unweighted) Maximum Parsimony:

More information

Introduction to Triangulated Graphs. Tandy Warnow

Introduction to Triangulated Graphs. Tandy Warnow Introduction to Triangulated Graphs Tandy Warnow Topics for today Triangulated graphs: theorems and algorithms (Chapters 11.3 and 11.9) Examples of triangulated graphs in phylogeny estimation (Chapters

More information

Efficient Generation of Evolutionary Trees

Efficient Generation of Evolutionary Trees fficient Generation of volutionary Trees MUHMM ULLH NN 1 M. SIUR RHMN 2 epartment of omputer Science and ngineering angladesh University of ngineering and Technology (UT) haka-1000, angladesh 1 adnan@cse.buet.ac.bd

More information

A Fast Algorithm for Optimal Alignment between Similar Ordered Trees

A Fast Algorithm for Optimal Alignment between Similar Ordered Trees Fundamenta Informaticae 56 (2003) 105 120 105 IOS Press A Fast Algorithm for Optimal Alignment between Similar Ordered Trees Jesper Jansson Department of Computer Science Lund University, Box 118 SE-221

More information

arxiv: v2 [q-bio.pe] 8 Aug 2016

arxiv: v2 [q-bio.pe] 8 Aug 2016 Combinatorial Scoring of Phylogenetic Networks Nikita Alexeev and Max A. Alekseyev The George Washington University, Washington, D.C., U.S.A. arxiv:160.0841v [q-bio.pe] 8 Aug 016 Abstract. Construction

More information

Copyright 2000, Kevin Wayne 1

Copyright 2000, Kevin Wayne 1 Chapter 3 - Graphs Undirected Graphs Undirected graph. G = (V, E) V = nodes. E = edges between pairs of nodes. Captures pairwise relationship between objects. Graph size parameters: n = V, m = E. Directed

More information

Three-Dimensional Cost-Matrix Optimization and Maximum Cospeciation

Three-Dimensional Cost-Matrix Optimization and Maximum Cospeciation Cladistics 14, 167 172 (1998) WWW http://www.apnet.com Article i.d. cl980066 Three-Dimensional Cost-Matrix Optimization and Maximum Cospeciation Fredrik Ronquist Department of Zoology, Uppsala University,

More information

Evolution Module. 6.1 Phylogenetic Trees. Bob Gardner and Lev Yampolski. Integrated Biology and Discrete Math (IBMS 1300)

Evolution Module. 6.1 Phylogenetic Trees. Bob Gardner and Lev Yampolski. Integrated Biology and Discrete Math (IBMS 1300) Evolution Module 6.1 Phylogenetic Trees Bob Gardner and Lev Yampolski Integrated Biology and Discrete Math (IBMS 1300) Fall 2008 1 INDUCTION Note. The natural numbers N is the familiar set N = {1, 2, 3,...}.

More information

Approximation Algorithms for Constrained Generalized Tree Alignment Problem

Approximation Algorithms for Constrained Generalized Tree Alignment Problem DIMACS Technical Report 2007-21 December 2007 Approximation Algorithms for Constrained Generalized Tree Alignment Problem by Srikrishnan Divakaran Dept. of Computer Science Hofstra University Hempstead,

More information

Scaling species tree estimation methods to large datasets using NJMerge

Scaling species tree estimation methods to large datasets using NJMerge Scaling species tree estimation methods to large datasets using NJMerge Erin Molloy and Tandy Warnow {emolloy2, warnow}@illinois.edu University of Illinois at Urbana Champaign 2018 Phylogenomics Software

More information

Applied Mathematics Letters. Graph triangulations and the compatibility of unrooted phylogenetic trees

Applied Mathematics Letters. Graph triangulations and the compatibility of unrooted phylogenetic trees Applied Mathematics Letters 24 (2011) 719 723 Contents lists available at ScienceDirect Applied Mathematics Letters journal homepage: www.elsevier.com/locate/aml Graph triangulations and the compatibility

More information

( ) ( ) C. " 1 n. ( ) $ f n. ( ) B. " log( n! ) ( ) and that you already know ( ) ( ) " % g( n) ( ) " #&

( ) ( ) C.  1 n. ( ) $ f n. ( ) B.  log( n! ) ( ) and that you already know ( ) ( )  % g( n) ( )  #& CSE 0 Name Test Summer 008 Last 4 Digits of Mav ID # Multiple Choice. Write your answer to the LEFT of each problem. points each. The time for the following code is in which set? for (i=0; i

More information

11/17/2009 Comp 590/Comp Fall

11/17/2009 Comp 590/Comp Fall Lecture 20: Clustering and Evolution Study Chapter 10.4 10.8 Problem Set #5 will be available tonight 11/17/2009 Comp 590/Comp 790-90 Fall 2009 1 Clique Graphs A clique is a graph with every vertex connected

More information

logn D. Θ C. Θ n 2 ( ) ( ) f n B. nlogn Ο n2 n 2 D. Ο & % ( C. Θ # ( D. Θ n ( ) Ω f ( n)

logn D. Θ C. Θ n 2 ( ) ( ) f n B. nlogn Ο n2 n 2 D. Ο & % ( C. Θ # ( D. Θ n ( ) Ω f ( n) CSE 0 Test Your name as it appears on your UTA ID Card Fall 0 Multiple Choice:. Write the letter of your answer on the line ) to the LEFT of each problem.. CIRCLED ANSWERS DO NOT COUNT.. points each. The

More information

Dynamic Programming for Phylogenetic Estimation

Dynamic Programming for Phylogenetic Estimation 1 / 45 Dynamic Programming for Phylogenetic Estimation CS598AGB Pranjal Vachaspati University of Illinois at Urbana-Champaign 2 / 45 Coalescent-based Species Tree Estimation Find evolutionary tree for

More information

Trinets encode tree-child and level-2 phylogenetic networks

Trinets encode tree-child and level-2 phylogenetic networks Noname manuscript No. (will be inserted by the editor) Trinets encode tree-child and level-2 phylogenetic networks Leo van Iersel Vincent Moulton the date of receipt and acceptance should be inserted later

More information

Isometric gene tree reconciliation revisited

Isometric gene tree reconciliation revisited DOI 0.86/s05-07-008-x Algorithms for Molecular Biology RESEARCH Open Access Isometric gene tree reconciliation revisited Broňa Brejová *, Askar Gafurov, Dana Pardubská, Michal Sabo and Tomáš Vinař Abstract

More information

An undirected graph is a tree if and only of there is a unique simple path between any 2 of its vertices.

An undirected graph is a tree if and only of there is a unique simple path between any 2 of its vertices. Trees Trees form the most widely used subclasses of graphs. In CS, we make extensive use of trees. Trees are useful in organizing and relating data in databases, file systems and other applications. Formal

More information

( ) n 3. n 2 ( ) D. Ο

( ) n 3. n 2 ( ) D. Ο CSE 0 Name Test Summer 0 Last Digits of Mav ID # Multiple Choice. Write your answer to the LEFT of each problem. points each. The time to multiply two n n matrices is: A. Θ( n) B. Θ( max( m,n, p) ) C.

More information

The SNPR neighbourhood of tree-child networks

The SNPR neighbourhood of tree-child networks Journal of Graph Algorithms and Applications http://jgaa.info/ vol. 22, no. 2, pp. 29 55 (2018) DOI: 10.7155/jgaa.00472 The SNPR neighbourhood of tree-child networks Jonathan Klawitter Department of Computer

More information

( ). Which of ( ) ( ) " #& ( ) " # g( n) ( ) " # f ( n) Test 1

( ). Which of ( ) ( )  #& ( )  # g( n) ( )  # f ( n) Test 1 CSE 0 Name Test Summer 006 Last Digits of Student ID # Multiple Choice. Write your answer to the LEFT of each problem. points each. The time to multiply two n x n matrices is: A. "( n) B. "( nlogn) # C.

More information

Undirected Graphs. V = { 1, 2, 3, 4, 5, 6, 7, 8 } E = { 1-2, 1-3, 2-3, 2-4, 2-5, 3-5, 3-7, 3-8, 4-5, 5-6 } n = 8 m = 11

Undirected Graphs. V = { 1, 2, 3, 4, 5, 6, 7, 8 } E = { 1-2, 1-3, 2-3, 2-4, 2-5, 3-5, 3-7, 3-8, 4-5, 5-6 } n = 8 m = 11 Chapter 3 - Graphs Undirected Graphs Undirected graph. G = (V, E) V = nodes. E = edges between pairs of nodes. Captures pairwise relationship between objects. Graph size parameters: n = V, m = E. V = {

More information

CS 441 Discrete Mathematics for CS Lecture 26. Graphs. CS 441 Discrete mathematics for CS. Final exam

CS 441 Discrete Mathematics for CS Lecture 26. Graphs. CS 441 Discrete mathematics for CS. Final exam CS 441 Discrete Mathematics for CS Lecture 26 Graphs Milos Hauskrecht milos@cs.pitt.edu 5329 Sennott Square Final exam Saturday, April 26, 2014 at 10:00-11:50am The same classroom as lectures The exam

More information

Study of a Simple Pruning Strategy with Days Algorithm

Study of a Simple Pruning Strategy with Days Algorithm Study of a Simple Pruning Strategy with ays Algorithm Thomas G. Kristensen Abstract We wish to calculate all pairwise Robinson Foulds distances in a set of trees. Traditional algorithms for doing this

More information

Notes 4 : Approximating Maximum Parsimony

Notes 4 : Approximating Maximum Parsimony Notes 4 : Approximating Maximum Parsimony MATH 833 - Fall 2012 Lecturer: Sebastien Roch References: [SS03, Chapters 2, 5], [DPV06, Chapters 5, 9] 1 Coping with NP-completeness Local search heuristics.

More information

CS521 \ Notes for the Final Exam

CS521 \ Notes for the Final Exam CS521 \ Notes for final exam 1 Ariel Stolerman Asymptotic Notations: CS521 \ Notes for the Final Exam Notation Definition Limit Big-O ( ) Small-o ( ) Big- ( ) Small- ( ) Big- ( ) Notes: ( ) ( ) ( ) ( )

More information

Phylogenetic Trees - Parsimony Tutorial #11

Phylogenetic Trees - Parsimony Tutorial #11 Phylogenetic rees Parsimony utorial #11 Ilan ronau.. Based on original slides of Ydo Wexler & Dan eiger Phylogenetic econstruction he input: a speciescharacters matrix he ouput: a tree with n leaves corresponding

More information

( D. Θ n. ( ) f n ( ) D. Ο%

( D. Θ n. ( ) f n ( ) D. Ο% CSE 0 Name Test Spring 0 Multiple Choice. Write your answer to the LEFT of each problem. points each. The time to run the code below is in: for i=n; i>=; i--) for j=; j

More information

A more efficient algorithm for perfect sorting by reversals

A more efficient algorithm for perfect sorting by reversals A more efficient algorithm for perfect sorting by reversals Sèverine Bérard 1,2, Cedric Chauve 3,4, and Christophe Paul 5 1 Département de Mathématiques et d Informatique Appliquée, INRA, Toulouse, France.

More information

EE 368. Weeks 5 (Notes)

EE 368. Weeks 5 (Notes) EE 368 Weeks 5 (Notes) 1 Chapter 5: Trees Skip pages 273-281, Section 5.6 - If A is the root of a tree and B is the root of a subtree of that tree, then A is B s parent (or father or mother) and B is A

More information

An Efficient Algorithm for Identifying the Most Contributory Substring. Ben Stephenson Department of Computer Science University of Western Ontario

An Efficient Algorithm for Identifying the Most Contributory Substring. Ben Stephenson Department of Computer Science University of Western Ontario An Efficient Algorithm for Identifying the Most Contributory Substring Ben Stephenson Department of Computer Science University of Western Ontario Problem Definition Related Problems Applications Algorithm

More information

CSCI2100B Data Structures Trees

CSCI2100B Data Structures Trees CSCI2100B Data Structures Trees Irwin King king@cse.cuhk.edu.hk http://www.cse.cuhk.edu.hk/~king Department of Computer Science & Engineering The Chinese University of Hong Kong Introduction General Tree

More information

( ) D. Θ ( ) ( ) Ο f ( n) ( ) Ω. C. T n C. Θ. B. n logn Ο

( ) D. Θ ( ) ( ) Ο f ( n) ( ) Ω. C. T n C. Θ. B. n logn Ο CSE 0 Name Test Fall 0 Multiple Choice. Write your answer to the LEFT of each problem. points each. The expected time for insertion sort for n keys is in which set? (All n! input permutations are equally

More information

Methods and Models for Combinatorial Optimization Exact methods for the Traveling Salesman Problem

Methods and Models for Combinatorial Optimization Exact methods for the Traveling Salesman Problem Methods and Models for Combinatorial Optimization Exact methods for the Traveling Salesman Problem L. De Giovanni M. Di Summa The Traveling Salesman Problem (TSP) is an optimization problem on a directed

More information

Chapter 11: Graphs and Trees. March 23, 2008

Chapter 11: Graphs and Trees. March 23, 2008 Chapter 11: Graphs and Trees March 23, 2008 Outline 1 11.1 Graphs: An Introduction 2 11.2 Paths and Circuits 3 11.3 Matrix Representations of Graphs 4 11.5 Trees Graphs: Basic Definitions Informally, a

More information

Phylogenetic networks that display a tree twice

Phylogenetic networks that display a tree twice Bulletin of Mathematical Biology manuscript No. (will be inserted by the editor) Phylogenetic networks that display a tree twice Paul Cordue Simone Linz Charles Semple Received: date / Accepted: date Abstract

More information

) $ f ( n) " %( g( n)

) $ f ( n)  %( g( n) CSE 0 Name Test Spring 008 Last Digits of Mav ID # Multiple Choice. Write your answer to the LEFT of each problem. points each. The time to compute the sum of the n elements of an integer array is: # A.

More information

Computing the All-Pairs Quartet Distance on a set of Evolutionary Trees

Computing the All-Pairs Quartet Distance on a set of Evolutionary Trees Journal of Bioinformatics and Computational Biology c Imperial College Press Computing the All-Pairs Quartet Distance on a set of Evolutionary Trees M. Stissing, T. Mailund, C. N. S. Pedersen and G. S.

More information

Algorithms for Computing Cluster Dissimilarity between Rooted Phylogenetic

Algorithms for Computing Cluster Dissimilarity between Rooted Phylogenetic Send Orders for Reprints to reprints@benthamscience.ae 8 The Open Cybernetics & Systemics Journal, 05, 9, 8-3 Open Access Algorithms for Computing Cluster Dissimilarity between Rooted Phylogenetic Trees

More information

Trees. 3. (Minimally Connected) G is connected and deleting any of its edges gives rise to a disconnected graph.

Trees. 3. (Minimally Connected) G is connected and deleting any of its edges gives rise to a disconnected graph. Trees 1 Introduction Trees are very special kind of (undirected) graphs. Formally speaking, a tree is a connected graph that is acyclic. 1 This definition has some drawbacks: given a graph it is not trivial

More information

COP 4531 Complexity & Analysis of Data Structures & Algorithms

COP 4531 Complexity & Analysis of Data Structures & Algorithms COP 4531 Complexity & Analysis of Data Structures & Algorithms Lecture 8 Data Structures for Disjoint Sets Thanks to the text authors who contributed to these slides Data Structures for Disjoint Sets Also

More information

1 Introduction 2. 2 A Simple Algorithm 2. 3 A Fast Algorithm 2

1 Introduction 2. 2 A Simple Algorithm 2. 3 A Fast Algorithm 2 Polyline Reduction David Eberly, Geometric Tools, Redmond WA 98052 https://www.geometrictools.com/ This work is licensed under the Creative Commons Attribution 4.0 International License. To view a copy

More information

Union/Find Aka: Disjoint-set forest. Problem definition. Naïve attempts CS 445

Union/Find Aka: Disjoint-set forest. Problem definition. Naïve attempts CS 445 CS 5 Union/Find Aka: Disjoint-set forest Alon Efrat Problem definition Given: A set of atoms S={1, n E.g. each represents a commercial name of a drugs. This set consists of different disjoint subsets.

More information

Trees : Part 1. Section 4.1. Theory and Terminology. A Tree? A Tree? Theory and Terminology. Theory and Terminology

Trees : Part 1. Section 4.1. Theory and Terminology. A Tree? A Tree? Theory and Terminology. Theory and Terminology Trees : Part Section. () (2) Preorder, Postorder and Levelorder Traversals Definition: A tree is a connected graph with no cycles Consequences: Between any two vertices, there is exactly one unique path

More information

Evolution of Tandemly Repeated Sequences

Evolution of Tandemly Repeated Sequences University of Canterbury Department of Mathematics and Statistics Evolution of Tandemly Repeated Sequences A thesis submitted in partial fulfilment of the requirements of the Degree for Master of Science

More information

Test points UTA Student ID #

Test points UTA Student ID # CSE Name Test points UTA Student ID # Multiple Choice. Write your answer to the LEFT of each problem. points each. Which of the following statements is true about HEAPSOT? A. It is stable.. It has a worse-case

More information

Phylogenetics on CUDA (Parallel) Architectures Bradly Alicea

Phylogenetics on CUDA (Parallel) Architectures Bradly Alicea Descent w/modification Descent w/modification Descent w/modification Descent w/modification CPU Descent w/modification Descent w/modification Phylogenetics on CUDA (Parallel) Architectures Bradly Alicea

More information

Test 1 Last 4 Digits of Mav ID # Multiple Choice. Write your answer to the LEFT of each problem. 2 points each t 1

Test 1 Last 4 Digits of Mav ID # Multiple Choice. Write your answer to the LEFT of each problem. 2 points each t 1 CSE 0 Name Test Fall 00 Last Digits of Mav ID # Multiple Choice. Write your answer to the LEFT of each problem. points each t. What is the value of k? k=0 A. k B. t C. t+ D. t+ +. Suppose that you have

More information

DIMACS Tutorial on Phylogenetic Trees and Rapidly Evolving Pathogens. Katherine St. John City University of New York 1

DIMACS Tutorial on Phylogenetic Trees and Rapidly Evolving Pathogens. Katherine St. John City University of New York 1 DIMACS Tutorial on Phylogenetic Trees and Rapidly Evolving Pathogens Katherine St. John City University of New York 1 Thanks to the DIMACS Staff Linda Casals Walter Morris Nicole Clark Katherine St. John

More information

Lecture 2 : Counting X-trees

Lecture 2 : Counting X-trees Lecture 2 : Counting X-trees MATH285K - Spring 2010 Lecturer: Sebastien Roch References: [SS03, Chapter 1,2] 1 Trees We begin by recalling basic definitions and properties regarding finite trees. DEF 2.1

More information

A New Algorithm for the Reconstruction of Near-Perfect Binary Phylogenetic Trees

A New Algorithm for the Reconstruction of Near-Perfect Binary Phylogenetic Trees A New Algorithm for the Reconstruction of Near-Perfect Binary Phylogenetic Trees Kedar Dhamdhere, Srinath Sridhar, Guy E. Blelloch, Eran Halperin R. Ravi and Russell Schwartz March 17, 2005 CMU-CS-05-119

More information

Lecture 3: Graphs and flows

Lecture 3: Graphs and flows Chapter 3 Lecture 3: Graphs and flows Graphs: a useful combinatorial structure. Definitions: graph, directed and undirected graph, edge as ordered pair, path, cycle, connected graph, strongly connected

More information

Randomized incremental construction. Trapezoidal decomposition: Special sampling idea: Sample all except one item

Randomized incremental construction. Trapezoidal decomposition: Special sampling idea: Sample all except one item Randomized incremental construction Special sampling idea: Sample all except one item hope final addition makes small or no change Method: process items in order average case analysis randomize order to

More information

9/29/2016. Chapter 4 Trees. Introduction. Terminology. Terminology. Terminology. Terminology

9/29/2016. Chapter 4 Trees. Introduction. Terminology. Terminology. Terminology. Terminology Introduction Chapter 4 Trees for large input, even linear access time may be prohibitive we need data structures that exhibit average running times closer to O(log N) binary search tree 2 Terminology recursive

More information

Codon models. In reality we use codon model Amino acid substitution rates meet nucleotide models Codon(nucleotide triplet)

Codon models. In reality we use codon model Amino acid substitution rates meet nucleotide models Codon(nucleotide triplet) Phylogeny Codon models Last lecture: poor man s way of calculating dn/ds (Ka/Ks) Tabulate synonymous/non- synonymous substitutions Normalize by the possibilities Transform to genetic distance K JC or K

More information

Data Structures and Algorithms Week 4

Data Structures and Algorithms Week 4 Data Structures and Algorithms Week. About sorting algorithms. Heapsort Complete binary trees Heap data structure. Quicksort a popular algorithm very fast on average Previous Week Divide and conquer Merge

More information

Solutions to relevant spring 2000 exam problems

Solutions to relevant spring 2000 exam problems Problem 2, exam Here s Prim s algorithm, modified slightly to use C syntax. MSTPrim (G, w, r): Q = V[G]; for (each u Q) { key[u] = ; key[r] = 0; π[r] = 0; while (Q not empty) { u = ExtractMin (Q); for

More information

Query Evaluation Strategies

Query Evaluation Strategies Introduction to Search Engine Technology Term-at-a-Time and Document-at-a-Time Evaluation Ronny Lempel Yahoo! Research (Many of the following slides are courtesy of Aya Soffer and David Carmel, IBM Haifa

More information

Reference Sheet for CO142.2 Discrete Mathematics II

Reference Sheet for CO142.2 Discrete Mathematics II Reference Sheet for CO14. Discrete Mathematics II Spring 017 1 Graphs Defintions 1. Graph: set of N nodes and A arcs such that each a A is associated with an unordered pair of nodes.. Simple graph: no

More information

CSE 21 Mathematics for Algorithm and System Analysis

CSE 21 Mathematics for Algorithm and System Analysis CSE 21 Mathematics for Algorithm and System Analysis Unit 4: Basic Concepts in Graph Theory Section 3: Trees 1 Review : Decision Tree (DT-Section 1) Root of the decision tree on the left: 1 Leaves of the

More information

Identifiability of Large Phylogenetic Mixture Models

Identifiability of Large Phylogenetic Mixture Models Identifiability of Large Phylogenetic Mixture Models John Rhodes and Seth Sullivant University of Alaska Fairbanks and NCSU April 18, 2012 Seth Sullivant (NCSU) Phylogenetic Mixtures April 18, 2012 1 /

More information

Assignment No 2 (Group B)

Assignment No 2 (Group B) Assignment No 2 (Group B) 1 Problem Statement : Concurrent Implementation of Travelling Salesman Problem. 2 Objective : To develop problem solving abilities using Mathematical Modeling. To apply algorithmic

More information

REGULAR GRAPHS OF GIVEN GIRTH. Contents

REGULAR GRAPHS OF GIVEN GIRTH. Contents REGULAR GRAPHS OF GIVEN GIRTH BROOKE ULLERY Contents 1. Introduction This paper gives an introduction to the area of graph theory dealing with properties of regular graphs of given girth. A large portion

More information

Chapter 10: Trees. A tree is a connected simple undirected graph with no simple circuits.

Chapter 10: Trees. A tree is a connected simple undirected graph with no simple circuits. Chapter 10: Trees A tree is a connected simple undirected graph with no simple circuits. Properties: o There is a unique simple path between any 2 of its vertices. o No loops. o No multiple edges. Example

More information

March 20/2003 Jayakanth Srinivasan,

March 20/2003 Jayakanth Srinivasan, Definition : A simple graph G = (V, E) consists of V, a nonempty set of vertices, and E, a set of unordered pairs of distinct elements of V called edges. Definition : In a multigraph G = (V, E) two or

More information

PAPER Constructing the Suffix Tree of a Tree with a Large Alphabet

PAPER Constructing the Suffix Tree of a Tree with a Large Alphabet IEICE TRANS. FUNDAMENTALS, VOL.E8??, NO. JANUARY 999 PAPER Constructing the Suffix Tree of a Tree with a Large Alphabet Tetsuo SHIBUYA, SUMMARY The problem of constructing the suffix tree of a tree is

More information