1 / 47

Genome Rearrangements

Genome Rearrangements. (Lecture for CS498-CXZ Algorithms in Bioinformatics) Dec. 6, 2005 ChengXiang Zhai Department of Computer Science University of Illinois, Urbana-Champaign. Outline. The Problem of Genome Rearrangements Sorting By Reversals Greedy Algorithm for Sorting by Reversals

mya
Download Presentation

Genome Rearrangements

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Genome Rearrangements (Lecture for CS498-CXZ Algorithms in Bioinformatics) Dec. 6, 2005 ChengXiang Zhai Department of Computer Science University of Illinois, Urbana-Champaign

  2. Outline • The Problem of Genome Rearrangements • Sorting By Reversals • Greedy Algorithm for Sorting by Reversals • Position-based • Breakpoint-based

  3. Genome Rearrangements Example I:Turnip vs Cabbage • Although cabbages and turnips share a recent common ancestor, they look and taste different

  4. Turnip vs Cabbage: Comparing Gene Sequences Yields No Evolutionary Information

  5. Turnip vs Cabbage: Almost Identical mtDNA gene sequences • In 1980s Jeffrey Palmer studied evolution of plant organelles by comparing mitochondrial genomes of the cabbage and turnip • 99% similarity between genes • These surprisingly identical gene sequences differed in gene order • This study helped pave the way to analyzing genome rearrangements in molecular evolution

  6. Turnip vs Cabbage: Different mtDNA Gene Order • Gene order comparison:

  7. Turnip vs Cabbage: Different mtDNA Gene Order • Gene order comparison:

  8. Turnip vs Cabbage: Different mtDNA Gene Order • Gene order comparison:

  9. Turnip vs Cabbage: Different mtDNA Gene Order • Gene order comparison:

  10. Turnip vs Cabbage: Different mtDNA Gene Order • Gene order comparison: Before After Evolution is manifested as the divergence in gene order

  11. Transforming Cabbage into Turnip

  12. Genome Rearrangements Example II:Human vs. Mouse Mouse (X chrom.) • What are the similarity blocks and how to find them? • What is the architecture of the ancestral genome? • What is the evolutionary scenario for transforming one genome into the other? Unknown ancestor~ 75 million years ago Human (X chrom.)

  13. History of Chromosome X Rat Consortium, Nature, 2004

  14. Mouse vs Human Genome • Humans and mice have similar genomes, but their genes are ordered differently • ~245 rearrangements • Reversal, fusion, fission, translocation • Reversal: flipping a block of genes within a genomic sequence

  15. Types of Rearrangements Reversal 1 2 3 4 5 6 1 2 -5 -4 -3 6 Translocation 1 2 3 45 6 1 2 6 4 5 3 Chromosome 1: Chromosome 2: Fusion 1 2 3 4 5 6 Chromosome 1: Chromosome 2: 1 2 3 4 5 6 Fission

  16. 1 2 3 9 10 8 4 7 5 6 Reversals • Blocks represent conserved genes. • In the course of evolution blocks 1,…,10 could be misread as 1, 2, 3, -8, -7, -6, -5, -4, 9, 10. • Rearrangements occurred about once-twice every million years on the evolutionary path between human and mouse. 1, 2, 3, 4, 5, 6, 7, 8, 9, 10

  17. Reversals 1 2 3 9 10 8 4 7 5 6 1, 2, 3, -8, -7, -6, -5, -4, 9, 10 • Blocks represent conserved genes. • In the course of evolution or in a clinical context, blocks 1,…,10 could be misread as 1, 2, 3, -8, -7, -6, -5, -4, 9, 10. • Reversals occurred one-two times every million years on the evolutionary path between human and mouse.

  18. Reversals 1 2 3 9 10 8 4 7 5 6 1, 2, 3, -8, -7, -6, -5, -4, 9, 10 The reversion introduced two breakpoints(disruptions in order).

  19. Reversals • Let’s first assume that genes in genome p do not have direction p = p1------ pi-1 pi pi+1 ------pj-1 pj pj+1 -----pn p` = p1------ pi-1pj pj-1 ------pi+1 pipj+1 -----pn • Reversal r( i, j ) reverses the elements from i to j inpand transforms p into p` r(i,j)

  20. Reversals: Example • Example: p = 1 2 3 4 5 6 7 8 r(3,5) p’= 1 2 5 4 3 6 7 8

  21. Reversal Distance Problem • Goal: Given two permutations, find the shortest series of reversals that transforms one into another • Input: Permutations pand s • Output: A series of reversals r1,…rttransforming p into s, such that t is minimum • t - reversal distance between p and s • d(p, s) - smallest possible value of t, given p and s

  22. Sorting By Reversals Problem[s = (1 2 … n )] • Goal: Given a permutation, find a shortest series of reversals that transforms it into the identity permutation (1 2 … n ) • Input: Permutation p • Output: A series of reversals r1,… rt transforming p into the identity permutation such that t is minimum

  23. Sorting By Reversals: Example • t =d(p ) - reversal distance between p and s • Example : input: p = 3 4 2 1 5 6 7 10 9 8 output: 4 3 2 1 5 6 7 10 9 8 4 3 2 1 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 So d(p ) = 3

  24. Sorting by reversals

  25. Sorting by reversalsMost parsimonious scenarios The reversal distance is the minimum number of reversals required to transform p into g.Here, the reversal distance is d=4.

  26. Sorting By Reversals: A Greedy Algorithm • If sorting permutation p = 1 2 3 6 4 5, the first three numbers are already in order so it does not make any sense to break them. These already sorted numbers of p will be defined as prefix(p) • prefix(p) = 3 • This results in an idea for a greedy algorithm: increase prefix(p) at every step

  27. Doing so, p can be sorted 1 2 36 4 5 1 2 3 46 5 1 2 3 4 5 6 d(p) = 2 Number of steps to sort permutation of length n is at most (n – 1) Greedy Algorithm: An Example

  28. Greedy Algorithm: Pseudocode SimpleReversalSort(p) 1 for i 1 to n – 1 2 j position of element i in p(i.e., pj = i) 3 if j != i 4 p p * r(i, j) 5 output p 6 if p is the identity permutation 7 return Progress is ensured by moving forward in the position

  29. Analyzing SimpleReversalSort • Greedy algorithm; does not guarantee the smallest number of reversals • For example, let p = 6 1 2 3 4 5 • SimpleReversalSort(p) takes five steps: • Step 1: 1 6 2 3 4 5 • Step 2: 1 2 6 3 4 5 • Step 3: 1 2 3 6 4 5 • Step 4: 1 2 3 4 6 5 • Step 5: 1 2 3 4 5 6

  30. But it can be done in two steps: p = 6 1 2 3 4 5 Step 1: 5 4 3 2 1 6 Step 2: 1 2 3 4 5 6 So, SimpleReversalSort(p) is not optimal Analyzing SimpleReversalSort (cont’d)

  31. Breakpoints p = p1p2p3…pn-1pn • A pair of elements pi and pi + 1are adjacent if pi+1 = pi + 1 • For example: p = 1 9 3 4 7 8 2 6 5 • (3, 4) or (7, 8) and (6,5) are adjacent pairs

  32. Breakpoints: An Example There is a breakpoint between any pair of non-adjacent elements: p = 1 9 3 4 7 8 2 6 5 • Pairs (1,9), (9,3), (4,7), (8,2) and (2,5) form breakpoints of permutation p

  33. Extending Permutations • We put two elements p0 and pn + 1 at the ends of p p0 = 0 and pn + 1 = n + 1 • This gives us the goal to sort the elements between the end blocks to the identity permutation • Example: p = 1 9 3 4 7 8 2 6 5 Extending with 0 and 10 • p = 01 9 3 4 7 8 2 6 510 Note: A new breakpoint was created after extending

  34. Reversal Distance and Breakpoints • b(p) = number of breakpoints • Each reversal eliminates at most 2 breakpoints. This implies that d(p) >= b(p) / 2 p = 2 3 1 4 6 5 0 2 3 1 4 6 5 7 b(p) = 5 01 3 24 6 5 7 b(p) = 4 0 1 2 3 4 6 57 b(p) = 2 0 1 2 3 4 5 6 7b(p) = 0

  35. Sorting By Reversals: A Better Greedy Algorithm BreakPointReversalSort(p) 1while b(p) > 0 2Among all possible reversals, chooserminimizing b(p•r) 3p p•r(i, j) 4output p 5return

  36. Strip: an interval between two consecutive breakpoints in p Decreasing strips: strips that are in decreasing order (e.g. 6 5 and 3 2 ). Increasing strips: strips that are in increasing order (e.g. 7 8) A single-element strip can be declared either increasing or decreasing. We will choose to declare them as decreasing with possible exception of the strips with 0 and n+1 Strips

  37. Strips: An Example • For permutation 1 9 3 4 7 8 2 5 6: • There are 7 strips: 01 9 4 3 7 8 2 5 6 10

  38. Things To Consider • Fact 1: • If permutation pcontains at least one decreasing strip, then there exists a reversal r which decreases the number of breakpoints (i.e. b(p •r) < b(p) )

  39. Things To Consider (cont’d) • Forp = 1 4 6 5 7 8 3 2 • 01 4 6 5 7 8 3 2 9 b(p) = 5 • Choose decreasing strip with the smallest element k in p ( k = 2 in this case) • Find k – 1 in the permutation, reverse the segment between k and k-1: • 01 4 6 5 7 8 3 29b(p) = 5 • 012 3 8 7 5 6 4 9b(p) = 4

  40. Things To Consider (cont’d) • Fact 2: • If there is no decreasing strip, there may be no reversal r that reduces the number of breakpoints (i.e. b(p • r) = b(p) ). • By reversing an increasing strip ( # of breakpoints stay unchanged ), we will create a decreasing strip at the next step. Then (fact 1) the number of breakpoints will be reduced in the next step.

  41. Things To Consider (cont’d) • There are nodecreasing strips in p, for: p = 01 2 5 6 7 3 4 8 b(p) = 3 p•r(3,4) = 01 2 5 6 7 4 3 8b(p) = 3 • r(3,4) does not change the # of breakpoints • r(3,4) creates a decreasing strip, guaranteeing that the next step will decrease the # of breakpoints.

  42. ImprovedBreakpointReversalSort ImprovedBreakpointReversalSort(p) 1 while b(p) > 0 2 ifphas a decreasing strip 3 Among all possible reversals, chooserthat minimizes b(p•r) 4 else 5 Choose a reversalr that flips an increasing strip in p 6 p p•r 7 output p 8 return

  43. ImprovedBreakpointReversalSort: Performance Guarantee • ImprovedBreakPointReversalSort is an approximation algorithm with a performance guarantee of at most 4 • It eliminates at least one breakpoint in every two steps; at most 2b(p) steps • Approximation ratio: 2b(p) / d(p) • Optimal algorithm eliminates 2 breakpoints in every step: d(p) b(p) / 2 • Performance guarantee: • ( 2b(p) / d(p) )  [ 2b(p) / (b(p) / 2) ] = 4

  44. 5’ 3’ Signed Permutations • Up to this point, all permutations to sort were unsigned • But genes have directions… so we should consider signed permutations p = 1-23-4

  45. GRIMM Web Server • Real genome architectures are represented by signed permutations • Efficient algorithms to sort signed permutations have been developed • GRIMM web server computes the reversal distances between signed permutations: http://nbcr.sdsc.edu/GRIMM/grimm.cgi

  46. GRIMM Web Server http://www-cse.ucsd.edu/groups/bioinformatics/GRIMM

  47. What You Should Know • What is genome rearrangement? • How does the problem of sorting by reversal capture genome rearrangements? • How do the two greedy algorithms work?

More Related