1 / 64

CSE 5290: Algorithms for Bioinformatics Fall 2009

CSE 5290: Algorithms for Bioinformatics Fall 2009. Suprakash D at ta datta@cs.yorku.ca Office: CSEB 3043 Phone: 416-736-2100 ext 77875 Course page: http://www.cs.yorku.ca/course/5290. Next. Graph algorithms Some of the following slides are based on slides by the authors of our text.

Télécharger la présentation

CSE 5290: Algorithms for Bioinformatics Fall 2009

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. CSE 5290:Algorithms for Bioinformatics Fall 2009 Suprakash Datta datta@cs.yorku.ca Office: CSEB 3043 Phone: 416-736-2100 ext 77875 Course page: http://www.cs.yorku.ca/course/5290 CSE 5290, Fall 2009

  2. Next Graph algorithms Some of the following slides are based on slides by the authors of our text. CSE 5290, Fall 2009

  3. DNA Sequencing • Shear DNA into millions of small fragments • Read 500 – 700 nucleotides at a time from the small fragments (Sanger method) CSE 5290, Fall 2009

  4. Fragment Assembly • Computational Challenge: assemble individual short fragments (reads) into a single genomic sequence (“superstring”) • Until late 1990s the shotgun fragment assembly of human genome was viewed as intractable problem CSE 5290, Fall 2009

  5. Shortest Superstring Problem • Problem: Given a set of strings, find a shortest string that contains all of them • Input: Strings s1, s2,…., sn • Output: A string s that contains all strings s1, s2,…., sn as substrings, such that the length of s is minimized • Complexity: NP – complete • Note: this formulation does not take into account sequencing errors CSE 5290, Fall 2009

  6. Shortest Superstring Problem: Example CSE 5290, Fall 2009

  7. Reducing SSP to TSP • Define overlap ( si, sj ) as the length of the longest prefix of sj that matches a suffix of si. aaaggcatcaaatctaaaggcatcaaa aaaggcatcaaatctaaaggcatcaaa What is overlap ( si, sj ) for these strings? CSE 5290, Fall 2009

  8. Reducing SSP to TSP • Define overlap ( si, sj ) as the length of the longest prefix of sj that matches a suffix of si. aaaggcatcaaatctaaaggcatcaaa aaaggcatcaaatctaaaggcatcaaa aaaggcatcaaatctaaaggcatcaaa overlap=12 CSE 5290, Fall 2009

  9. Reducing SSP to TSP • Define overlap ( si, sj ) as the length of the longest prefix of sj that matches a suffix of si. aaaggcatcaaatctaaaggcatcaaa aaaggcatcaaatctaaaggcatcaaa aaaggcatcaaatctaaaggcatcaaa • Construct a graph with n vertices representing the n strings s1, s2,…., sn. • Insert edges of length overlap ( si, sj ) between vertices siand sj. • Find the shortest path which visits every vertex exactly once. This is the Traveling Salesman Problem (TSP), which is also NP – complete. CSE 5290, Fall 2009

  10. Reducing SSP to TSP (cont’d) CSE 5290, Fall 2009

  11. S = { ATC, CCA, CAG, TCC, AGT } SSP AGT CCA ATC ATCCAGT TCC CAG SSP to TSP: An Example TSP ATC 2 0 1 1 AGT 1 CCA 1 2 2 2 1 TCC CAG ATCCAGT CSE 5290, Fall 2009

  12. Sequencing by Hybridization (SBH): History • 1988: SBH suggested as an an alternative sequencing method. Nobody believed it will ever work • 1991: Light directed polymer synthesis developed by Steve Fodor and colleagues. • 1994: Affymetrix develops first 64-kb DNA microarray First microarray prototype (1989) First commercial DNA microarray prototype w/16,000 features (1994) 500,000 features per chip (2002) CSE 5290, Fall 2009

  13. How SBH Works • Attach all possible DNA probes of length l to a flat surface, each probe at a distinct and known location. This set of probes is called the DNA array. • Apply a solution containing fluorescently labeled DNA fragment to the array. • The DNA fragment hybridizes with those probes that are complementary to substrings of length l of the fragment. CSE 5290, Fall 2009

  14. How SBH Works (cont’d) • Using a spectroscopic detector, determine which probes hybridize to the DNA fragment to obtain the l–mer composition of the target DNA fragment. • Apply the combinatorial algorithm (below) to reconstruct the sequence of the target DNA fragment from the l – mer composition. CSE 5290, Fall 2009

  15. Hybridization on DNA Array CSE 5290, Fall 2009

  16. l-mer composition • Spectrum ( s, l ) - unordered multiset of all possible (n – l + 1) l-mers in a string s of length n • The order of individual elements in Spectrum ( s, l ) does not matter • For s = TATGGTGC all of the following are equivalent representations of Spectrum ( s, 3 ): {TAT, ATG, TGG, GGT, GTG, TGC} {ATG, GGT, GTG, TAT, TGC, TGG} {TGG, TGC, TAT, GTG, GGT, ATG} CSE 5290, Fall 2009

  17. l-mer composition • Spectrum ( s, l ) - unordered multiset of all possible (n – l + 1) l-mers in a string s of length n • The order of individual elements in Spectrum ( s, l ) does not matter • For s = TATGGTGC all of the following are equivalent representations of Spectrum ( s, 3 ): {TAT, ATG, TGG, GGT, GTG, TGC} {ATG, GGT, GTG, TAT, TGC, TGG} {TGG, TGC, TAT, GTG, GGT, ATG} • We usually choose the lexicographically maximal representation as the canonical one. CSE 5290, Fall 2009

  18. Different sequences – the same spectrum • Different sequences may have the same spectrum: Spectrum(GTATCT,2)= Spectrum(GTCTAT,2)= {AT, CT, GT, TA, TC} CSE 5290, Fall 2009

  19. The SBH Problem • Goal: Reconstruct a string from its l-mer composition • Input: A set S, representing all l-mers from an (unknown) string s • Output: String s such that Spectrum ( s,l ) = S CSE 5290, Fall 2009

  20. SBH: Hamiltonian Path Approach S = { ATG AGG TGC TCC GTC GGT GCA CAG } H ATG AGG TGC TCC GTC GCA CAG GGT ATG C A G G T C C Path visited every VERTEX once CSE 5290, Fall 2009

  21. A more complicated graph: S = { ATG TGG TGC GTG GGC GCA GCG CGT } SBH: Hamiltonian Path Approach CSE 5290, Fall 2009

  22. S = { ATG TGG TGC GTG GGC GCA GCG CGT } Path 1: SBH: Hamiltonian Path Approach ATGCGTGGCA Path 2: ATGGCGTGCA CSE 5290, Fall 2009

  23. CG GT TG CA AT GC Path visited every EDGE once GG SBH: Eulerian Path Approach S = { ATG, TGC, GTG, GGC, GCA, GCG, CGT } Vertices correspond to ( l – 1 ) – mers : { AT, TG, GC, GG, GT, CA, CG } Edges correspond to l – mers from S CSE 5290, Fall 2009

  24. S = { AT, TG, GC, GG, GT, CA, CG } corresponds to two different paths: SBH: Eulerian Path Approach CG CG GT GT TG AT TG GC AT GC CA CA GG GG ATGGCGTGCA ATGCGTGGCA CSE 5290, Fall 2009

  25. Euler Theorem • A graph is balanced if for every vertex the number of incoming edges equals to the number of outgoing edges: in(v)=out(v) • Theorem: A connected graph is Eulerian if and only if each of its vertices is balanced. CSE 5290, Fall 2009

  26. Euler Theorem: Proof • Eulerian → balanced for every edge entering v (incoming edge) there exists an edge leaving v (outgoing edge). Therefore in(v)=out(v) • Balanced → Eulerian ??? CSE 5290, Fall 2009

  27. Algorithm for Constructing an Eulerian Cycle • Start with an arbitrary vertex v and form an arbitrary cycle with unused edges until a dead end is reached. Since the graph is Eulerian this dead end is necessarily the starting point, i.e., vertex v. CSE 5290, Fall 2009

  28. Algorithm for Constructing an Eulerian Cycle (cont’d) b. If cycle from (a) above is not an Eulerian cycle, it must contain a vertex w, which has untraversed edges. Perform step (a) again, using vertex w as the starting point. Once again, we will end up in the starting vertex w. CSE 5290, Fall 2009

  29. Algorithm for Constructing an Eulerian Cycle (cont’d) c. Combine the cycles from (a) and (b) into a single cycle and iterate step (b). CSE 5290, Fall 2009

  30. Euler Theorem: Extension • Theorem: A connected graph has an Eulerian path if and only if it contains at most two semi-balanced vertices and all other vertices are balanced. CSE 5290, Fall 2009

  31. Some Difficulties with SBH • Fidelity of Hybridization: difficult to detect differences between probes hybridized with perfect matches and 1 or 2 mismatches • Array Size: Effect of low fidelity can be decreased with longer l-mers, but array size increases exponentially in l. Array size is limited with current technology. • Practicality: SBH is still impractical. As DNA microarray technology improves, SBH may become practical in the future • Practicality again: Although SBH is still impractical, it spearheaded expression analysis and SNP analysis techniques CSE 5290, Fall 2009

  32. Traditional DNA Sequencing DNA Shake DNA fragments Known location (restriction site) Vector Circular genome (bacterium, plasmid) + = CSE 5290, Fall 2009

  33. Different Types of Vectors CSE 5290, Fall 2009

  34. Shotgun Sequencing genomic segment cut many times at random (Shotgun) Get one or two reads from each segment ~500 bp ~500 bp CSE 5290, Fall 2009

  35. Fragment Assembly reads Cover region with ~7-fold redundancy Overlap reads and extend to reconstruct the original genomic region CSE 5290, Fall 2009

  36. Read Coverage Length of genomic segment: L Number of reads: n Coverage C = n l / L Length of each read: l How much coverage is enough? Lander-Waterman model: Assuming uniform distribution of reads, C=10 results in 1 gapped region per 1,000,000 nucleotides C CSE 5290, Fall 2009

  37. Repeat Repeat Repeat Green and blue fragments are interchangeable when assembling repetitive DNA Challenges in Fragment Assembly • Repeats: A major problem for fragment assembly • > 50% of human genome are repeats: - over 1 million Alu repeats (about 300 bp) - about 200,000 LINE repeats (1000 bp and longer) CSE 5290, Fall 2009

  38. Triazzle: A Fun Example The puzzle looks simple BUT there are repeats!!! The repeats make it very difficult. Try it – only $7.99 at www.triazzle.com CSE 5290, Fall 2009

  39. Repeat Types • Low-Complexity DNA (e.g. ATATATATACATA…) • Microsatellite repeats (a1…ak)N where k ~ 3-6 (e.g. CAGCAGTAGCAGCACCAG) • Transposons/retrotransposons • SINEShort Interspersed Nuclear Elements (e.g., Alu: ~300 bp long, 106 copies) • LINELong Interspersed Nuclear Elements ~500 - 5,000 bp long, 200,000 copies • LTRretroposonsLong Terminal Repeats (~700 bp) at each end • Gene Families genes duplicate & then diverge • Segmental duplications ~very long, very similar copies CSE 5290, Fall 2009

  40. Overlap-Layout-Consensus Assemblers: ARACHNE, PHRAP, CAP, TIGR, CELERA Overlap: find potentially overlapping reads Layout: merge reads into contigs and contigs into supercontigs Consensus: derive the DNA sequence and correct read errors ..ACGATTACAATAGGTT.. CSE 5290, Fall 2009

  41. Overlap • Find the best match between the suffix of one read and the prefix of another • Due to sequencing errors, need to use dynamic programming to find the optimal overlap alignment • Apply a filtration method to filter out pairs of fragments that do not share a significantly long common substring CSE 5290, Fall 2009

  42. T GA TACA | || || TAGA TAGT Overlapping Reads • Sort all k-mers in reads (k ~ 24) • Find pairs of reads sharing a k-mer • Extend to full alignment – throw away if not >95% similar TAGATTACACAGATTAC ||||||||||||||||| TAGATTACACAGATTAC CSE 5290, Fall 2009

  43. Overlapping Reads and Repeats • A k-mer that appears N times, initiates N2 comparisons • For an Alu that appears 106 times  1012 comparisons – too much • Solution: Discard all k-mers that appear more than t Coverage, (t ~ 10) CSE 5290, Fall 2009

  44. Finding Overlapping Reads Create local multiple alignments from the overlapping reads TAGATTACACAGATTACTGA TAGATTACACAGATTACTGA TAG TTACACAGATTATTGA TAGATTACACAGATTACTGA TAGATTACACAGATTACTGA TAGATTACACAGATTACTGA TAG TTACACAGATTATTGA TAGATTACACAGATTACTGA CSE 5290, Fall 2009

  45. Layout • Repeats are a major challenge • Do two aligned fragments really overlap, or are they from two copies of a repeat? • Solution: repeat masking – hide the repeats!!! • Masking results in high rate of misassembly (up to 20%) • Misassembly means alot more work at the finishing step CSE 5290, Fall 2009

  46. repeat region Merge Reads into Contigs Merge reads up to potential repeat boundaries CSE 5290, Fall 2009

  47. Repeats, Errors, and Contig Lengths • Repeats shorter than read length are OK • Repeats with more base pair differencess than sequencing error rate are OK • To make a smaller portion of the genome appear repetitive, try to: • Increase read length • Decrease sequencing error rate CSE 5290, Fall 2009

  48. Link Contigs into Supercontigs Normal density Too dense: Overcollapsed? Inconsistent links: Overcollapsed? CSE 5290, Fall 2009

  49. Consensus • A consensus sequence is derived from a profile of the assembled fragments • A sufficient number of reads is required to ensure a statistically significant consensus • Reading errors are corrected CSE 5290, Fall 2009

  50. Derive Consensus Sequence Derive multiple alignment from pairwise read alignments TAGATTACACAGATTACTGA TTGATGGCGTAA CTA TAGATTACACAGATTACTGACTTGATGGCGTAAACTA TAG TTACACAGATTATTGACTTCATGGCGTAA CTA TAGATTACACAGATTACTGACTTGATGGCGTAA CTA TAGATTACACAGATTACTGACTTGATGGGGTAA CTA TAGATTACACAGATTACTGACTTGATGGCGTAA CTA Derive each consensus base by weighted voting CSE 5290, Fall 2009

More Related