Sorting permutations by reversals through branch-and-price

Citation
A. Caprara et al., Sorting permutations by reversals through branch-and-price, INFORMS J C, 13(3), 2001, pp. 224-244
Citations number
33
Categorie Soggetti
Computer Science & Engineering
Journal title
INFORMS JOURNAL ON COMPUTING
ISSN journal
10919856 → ACNP
Volume
13
Issue
3
Year of publication
2001
Pages
224 - 244
Database
ISI
SICI code
1091-9856(200122)13:3<224:SPBRTB>2.0.ZU;2-1
Abstract
We describe an exact algorithm for the problem of sorting a permutation by the minimum number of reversals, originating from evolutionary studies in m olecular biology. Our approach is based on an integer linear programming fo rmulation of a graph-theoretic relaxation of the problem, calling for a dec omposition of the edge set of a bicolored graph into the maximum number of alternating cycles. The formulation has one variable for each alternating c ycle, and the associated linear programming relaxation is solved by column generation. A major advantage with respect to previous approaches is that the subproble m to face in the column-generation phase no longer requires the solution of min-cost general matching problems, but of min-cost bipartite matching pro blems. Experiments show that there is a tremendous speed-up in going from g eneral matching to bipartite matching, although the best-known algorithms f or the two problems have the same theoretical worst-case complexity. We als o show the worst-case ratio between the lower bound value obtained by our n ew method and previous ones. We illustrate the effectiveness of our approach through extensive computati onal experiments. In particular, we can solve to proven optimality the larg est real-world instances from the literature in a few seconds, and the othe r (smaller) real-world instances within a few milliseconds on a workstation . Moreover, we can solve to optimality random instances with n = 100 within 3 seconds, and with n = 200 within 15 minutes, where n is the size of the permutation, whereas the size of the instances solvable by previous approac hes was at most 100. We also describe a polynomial-time heuristic algorithm that consistently finds solutions within 2% of the optimum for random inst ances with n up to 1000.