Download presentation
Presentation is loading. Please wait.
Published byCory Garrett Modified over 9 years ago
1
1 A Simpler 1.5- Approximation Algorithm for Sorting by Transpositions Combinatorial Pattern Matching (CPM) 2003 Authors: T. Hartman & R. Shamir Speaker: Chen Ming-Chiang
2
2 Outline Sorting by Transpositions Previous Works Linear & Circular Permutation The Breakpoint Graph Algorithm Performance Ratio & Running Time Discussions References
3
3 Sorting by Transpositions Given two sequences representing two species, find the smallest number of transpositions needed to transform a sequence to the other sequence. Transposition: Swap two adjacent substrings of any length without changing the order in the permutation. 2 4 1 3 1 3 2 4 1 2 3 4
4
4 Previous Works O(n 2 ) 1.5-approximation algorithm [BP98] V. Bafna & P.A. Pevzner, SIAM J.D.M., 1998. O(n 4 ) 1.5-approximation algorithm [C99] D.A. Christie, 1999. At most 2n/3 transpositions for sorting given permutation of size n [EEKSW2001]
5
5 Linear & Circular Permutations Theorem 1 The problem of sorting by transpositions on linear permutation is equivalent to circular permutation. Linear 1 4 7 2 6 5 3 1 2 6 4 7 5 3 Circular
6
6 The Breakpoint Graph Permutation : 1 6 5 4 7 3 2 Step 1: Replace each element i by 2i-1 and 2i. Permutation f( ): 1 2 11 12 9 10 7 8 13 14 5 6 3 4
7
7 The Breakpoint Graph Graph G( ) is an edge-colored graph. For every, Black edge: Gray edge:
8
8 The Breakpoint Graph : The number of cycles. : The number of odd cycles. Odd cycle is the cycle with odd numbers of black edges.
9
9 The Breakpoint Graph For a sorted permutation of size n, there are n cycles, and all of them are odd. The concept is to increase the number of cycles from to n.
10
10 The Breakpoint Graph Lemma [BP98] For all permutation and transposition,. Theorem (Lower bound) For all permutations,. The goal now is to increase the number of odd cycle.
11
11 The Breakpoint Graph Simple graph: A graph is called simple if it contains only cycles which black edges. 1-cycle 2-cycle 3-cycle
12
12 Algorithm Transforming graph into simple graph. While 2-cycle exists, apply a 2-transposition. While 3-cylces exists, If oriented cycle exists, apply a 2-transpostion. If interleaving unoriented cycle exists, apply a (0,2,2)-transposition. If shattered unoriented cycle exists, apply a (0,2,2)-transposition. Mimic the sorting of using the sorting of.
13
13 Algorithm Transforming graph into simple graph ([HP99] & [LX2001]): Lemma: Every permutation can be transformed into a simple one by safe splits. Lemma: Let be a simple permutation that is equivalent to, then every sorting of mimics a sorting of with the same number of operations.
14
14 Algorithm Example: 1 3 5 7 4 2 6 1 3 5 7 4 x 2 6 1 odd-cycle 1 odd-cycle + 1 cycle
15
15 Algorithm Why the translation is safe? The process breaks a cycle into a 3-cycle and (k-2)-cylce.
16
16 Algorithm In the following, there are only three types of cycles in simple graph. 1-cycle 2-cycle 3-cycle
17
17 Algorithm While 2-cycle exists, apply a 2-transposition [C99]: Lemma: If is a permutation that contains a 2-cycle, then there exists a 2-tranposition on.
18
18 Algorithm The result is to increase two odd cycle. Therefore, it is a 2-transposition.
19
19 Algorithm Only two possible configurations of 3-cycle: Oriented cycle: Unoriented cycle:
20
20 Algorithm While 3-cylces exists, If oriented cycle exists, apply a 2-transpostion [BP98]: An oriented cycle can be eliminated by a 2-transposition.
21
21 Algorithm It is a 2-transposition, because.
22
22 Algorithm Now, we only focus on unoriented cycle. Lemma: Let C be an unoriented cycle. Then every pair of black edges in C intersects with some other cycles in.
23
23 For the unoriented cycle, there are two cases, interleaving cycle and shattered cycle. Interleaving cycle: Shattered cycle:
24
24 Algorithm While 3-cylces exists, If interleaving unoriented cycle exists, apply a (0,2,2)- transposition :
25
25
26
26 Algorithm While 3-cylces exists, If shattered unoriented cycle exists, apply a (0,2,2)- transposition : Shattered cycle: Cycle E is shattered by cycles C and D, if E’s black edges belong to different intervals caused by either C or D.
27
27 Algorithm First Case: two out of three cycles are non-intersecting.
28
28 Algorithm Second Case: Three cycles are mutually intersecting.
29
29 Algorithm Transforming graph into simple graph. While 2-cycle exists, apply a 2-transposition. While 3-cylces exists, If oriented cycle exists, apply a 2-transpostion. If interleaving unoriented cycle exists, apply a (0,2,2)- transposition. If shattered unoriented cycle exists, apply a (0,2,2)- transposition. Mimic the sorting of using the sorting of.
30
30 Performance Ratio & Running time Performance ratio is 1.5, since. Running time of algorithm is.
31
31 Discussions Working on circular permutation & better running time. Complexity of the problem is still the open problem. There are many different sorting problems about genome rearrangement.
32
32 References [BP98] Sorting by Transpositions, Bafna, V. and Pevzner, P. A., SIAM Journal on Discrete Mathematics, Vol. 11, No. 2, 1998, pp. 224-240. [C99] Genome Rearrangement Problems, D. A., Christie, PhD thesis, University of Glasgow, 1999. [EEKSW01] Sorting a Bridge Hand, Eriksson, H., Eriksson, K., Karlander, J., Svensson, L. and Waslund, J., SIAM Journal on Discrete Mathematics, Vol. 241, 2001, pp. 289-300. [HP99] Transforming Cabbage into Turnip: Polynomial Algorithm for Sorting Signed Permutations by Reversals, Hannenhalli, S. and Pevzner, P. A., Journal of the ACM, Vol. 46, 1999, pp. 1–27. [LX2001] Signed genome rearrangements by reversals and transpositions: Models and Approximations, G. H. Lin and G. Xue, Theoretical Computer Science, pp. 513-531, 2001.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.