A Linear-Time Algorithm for Computing Inversion Distance between Signed Permutations with an Experimental Study

Hannenhalli and Pevzner gave the first polynomial-time algorithm for computing the inversion distance between two signed permutations, as part of the larger task of determining the shortest sequence of inversions needed to transform one permutation into the other. Their algorithm (restricted to distance calculation) proceeds in two stages: in the first stage, the overlap graph induced by the permutation is decomposed into connected components; then, in the second stage, certain graph structures (hurdles and others) are identified. Berman and Hannenhalli avoided the explicit computation of the overlap graph and gave an O(nalpha(n)) algorithm, based on a Union-Find structure, to find its connected components, where alpha is the inverse Ackerman function. Since for all practical purposes alpha(n) is a constant no larger than four, this algorithm has been the fastest practical algorithm to date. In this paper, we present a new linear-time algorithm for computing the connected components, which is more efficient than that of Berman and Hannenhalli in both theory and practice. Our algorithm uses only a stack and is very easy to implement. We give the results of computational experiments over a large range of permutation pairs produced through simulated evolution; our experiments show a speed-up by a factor of 2 to 5 in the computation of the connected components and by a factor of 1.3 to 2 in the overall distance computation.

[1]  Vineet Bafna,et al.  Sorting permutations by tanspositions , 1995, SODA '95.

[2]  Linda A. Raubeson,et al.  Chloroplast DNA Evidence on the Ancient Evolutionary Split in Vascular Land Plants , 1992, Science.

[3]  J. Nadeau,et al.  Lengths of chromosomal segments conserved since divergence of man and mouse. , 1984, Proceedings of the National Academy of Sciences of the United States of America.

[4]  J. Palmer,et al.  Chloroplast DNA systematics: a review of methods and data analysis , 1994 .

[5]  Bernard M. E. Moret,et al.  A new fast heuristic for computing the breakpoint phylogeny and a phylogenetic analysis of a group of highly rearranged chloroplast genomes , 2000, ISMB 2000.

[6]  Tandy J. Warnow,et al.  A New Fast Heuristic for Computing the Breakpoint Phylogeny and Experimental Phylogenetic Analyses of Real and Synthetic Data , 2000, ISMB.

[7]  David A. Bader,et al.  A New Implmentation and Detailed Study of Breakpoint Analysis , 2000, Pacific Symposium on Biocomputing.

[8]  Catherine C. McGeoch Feature Article - Toward an Experimental Method for Algorithm Simulation , 1996, INFORMS J. Comput..

[9]  Piotr Berman,et al.  Fast Sorting by Reversal , 1996, CPM.

[10]  Henry D. Shapiro,et al.  Algorithms and Experiments: The New (and Old) Methodology , 2001, J. Univers. Comput. Sci..

[11]  Alberto Caprara,et al.  Sorting by reversals is difficult , 1997, RECOMB '97.

[12]  Alberto Caprara,et al.  Sorting Permutations by Reversals and Eulerian Cycle Decompositions , 1999, SIAM J. Discret. Math..

[13]  Vineet Bafna,et al.  Sorting by Transpositions , 1998, SIAM J. Discret. Math..

[14]  Haim Kaplan,et al.  Faster and simpler algorithm for sorting signed permutations by reversals , 1997, SODA '97.

[15]  Haim Kaplan,et al.  A Faster and Simpler Algorithm for Sorting Signed Permutations by Reversals , 1999, SIAM J. Comput..

[16]  João Meidanis,et al.  Introduction to computational molecular biology , 1997 .

[17]  Vineet Bafna,et al.  Genome Rearrangements and Sorting by Reversals , 1996, SIAM J. Comput..

[18]  David Sankoff,et al.  Multiple Genome Rearrangement and Breakpoint Phylogeny , 1998, J. Comput. Biol..

[19]  Pavel A. Pevzner,et al.  Transforming cabbage into turnip: polynomial algorithm for sorting signed permutations by reversals , 1995, JACM.

[20]  J. Palmer,et al.  Comparison of Chloroplast and Mitochondrial Genome Evolution in Plants , 1992 .

[21]  Bernard M. E. Moret,et al.  DIMACS Series in Discrete Mathematics and Theoretical Computer Science Towards a Discipline of Experimental Algorithmics , 2022 .