1.1k likes | 1.29k Views
Bioinformatics PhD. Course. 1. Biological introduction . 2. Comparison of short sequences ( up to 10.000bps) . Dot Matrix Pairwise align. Multiple align. Hash alg. . 3. Comparison of large sequences ( more that 10.000bps) .
E N D
Bioinformatics PhD. Course 1. Biological introduction 2. Comparison of short sequences ( up to 10.000bps) Dot Matrix Pairwise align. Multiple align. Hash alg. 3. Comparison of large sequences ( more that 10.000bps) Data structures Suffix trees MUMs 4. String matching Exact Extended Approximate 5. Sequence assembly 6. Projects: PROMO, MREPATT, …
Comparison of large sequences First part: Alignment of large sequences
Dynamic programming accaccacaccacaacgagcata… acctgagcgatat a c c . . t acc.................................agt | | |.................................|xx acc.................................a-- • Quadratic cost of space and time. • Quadratic cost of space and time. • Short sequences (up to 10.000 bps) can be aligned using dynamic programming What about genomes?
Genomic sequences • The running time is 1.000.000 times higher ! (1 second becomes 11 days) (1 minute becomes 2 years) • Genomic sequences have millions of base pairs. • The length of sequences is 1000 times longer. In which case Dynamic Programming can be applied?
First assumption ………………………….………………...…………...…. Genome A ………………………………………………………………. Genome B Genome B …………………………………… ……………………………. Genome A
Realistic assumption? ………………………….………………...…………...…. Genome A ………………………………………………………………. Genome B ………………………………………………...…………...…. Genome A …………………………………………………………………. Genome B Genome B ………………… Genome A ……………… Unrealistic assumption! More realistic assumption
Realistic assumptions? ………………………….………………...…………...…. Genome A ………………………………………………………………. Genome B ………………………………………………...…………...…. Genome A ………………………………………………………………… Genome B Genome B ………………… Genome A ……………… Unrealistic assumption! More realistic assumption But, now is it a real case?
Preview in a real case Chlamidia muridarum: 1.084.689bps Chlamidia Thrachomatis:1057413bps
Preview in a real case Pyrococcus abyssis: 1.790.334 bps Pyrococcus horikoshu: 1.763.341 bps
Methodology of an alignment …………………...…. 1st: Make a preview: ……………………..…. 2nd: ………………. 3th: Make the alignment: …..………… Identify the portions that can be aligned. (Linear cost) (Linear cost)
Methodology of an alignment …………………...…. 1st: Make a preview: ……………………..…. 2nd: Identify the portions that can be aligned. ………………. 3th: Make the alignment: …..………… ? (Linear cost)
Preview-Revisited … a a t g….c t g... MUM … c g t g….c c c ... Maximal Unique Matching Connect to MALGEN
Methodology of an alignment …………………...…. 1st: Make a preview: ……………………..…. 2nd: ………………. 3th: Make the alignment: …..………… Linear cost with Suffix trees How can MUMs be found? Identify the portions that can be aligned. How can these portions be determined? With CLUSTALW, TCOFFEE,…
Comparison of large sequences M-GCAT Todd Treangen
Homework • Javier 14. Alexis • Dmitry 15. Ramon • Ana Iris • David • Patricia • Rogeli • Atif • Aina • Isaac • Maria Merce • Romina • Guillem • Raul
Bioinformatics PhD. Course Second part: Introducing Suffix trees
Suffix trees 7: s s,7 6: as s,6 5: aas a a as,5 as,3 as,3 ba ba baas,1 baas,1 ba ba as,4 as,4 baas,2 baas,2 s,7 s,6 as,5 Given string ababaas: Suffixes: 3: abaas 1: ababaas 4: baas 2: babaas What kind of queries?
Applications of Suffix trees a ba baas,1 ba as,3 baas,2 as,4 s,7 s,6 as,5 1. Exact string matching • Does the sequence ababaas contain any ocurrence of patterns abab, aab, and ab? …………………………
Quadratic insertion algorithm and the suffix-tree Invariant Properties: Given the string …………………………...... …... P1: the leaves of suffixes from have been inserted
Quadratic insertion algorithm ababaabbs,1 Given the string ababaabbs
Quadratic insertion algorithm babaabbs,2 Given the string ababaabbs ababaabbs,1
Quadratic insertion algorithm aba baabbs,1 Given the string ababaabbs ababaabbs,1 babaabbs,2
Quadratic insertion algorithm abbs,3 aba baabbs,1 Given the string ababaabbs babaabbs,2
Quadratic insertion algorithm abbs,3 aba baabbs,1 ba baabbs,2 Given the string ababaabbs babaabbs,2
Quadratic insertion algorithm abbs,3 aba baabbs,1 ba abbs,4 baabbs,2 Given the string ababaabbs
Quadratic insertion algorithm abbs,3 a aba baabbs,1 abbs,3 ba baabbs,1 abbs,4 abbs,4 Given the string ababaabbs ba baabbs,2
Quadratic insertion algorithm abbs,5 a abbs,3 ba baabbs,1 abbs,4 abbs,4 Given the string ababaabbs ba baabbs,2
Quadratic insertion algorithm abbs,5 a abbs,3 ba baabbs,1 abbs,4 abbs,4 Given the string ababaabbs ba baabbs,2
Quadratic insertion algorithm abbs,5 a abbs,3 b a baabbs,1 abbs,4 abbs,4 Given the string ababaabbs ba ba baabbs,2
Quadratic insertion algorithm abbs,5 a bs,6 abbs,3 b a baabbs,1 abbs,4 abbs,4 Given the string ababaabbs ba baabbs,2
Quadratic insertion algorithm abbs,5 a bs,6 abbs,3 b a baabbs,1 abbs,4 abbs,4 Given the string ababaabbs ba baabbs,2
Quadratic insertion algorithm abbs,5 a bs,6 bs,7 abbs,3 b a baabbs,1 b abbs,4 a baabbs,2 Given the string ababaabbs
Quadratic insertion algorithm abbs,5 a bs,6 bs,7 abbs,3 b a baabbs,1 b abbs,4 a s,8 baabbs,2 Given the string ababaabbs
Quadratic insertion algorithm abbs,5 a bs,6 bs,7 abbs,3 b a baabbs,1 b abbs,4 a s,7 s,9 baabbs,2 Given the string ababaabbs
Generalizad suffix tree the generalized suffix tree of ababaabb and aabaat … is the suffix tree of ababaabαaabaatβ, : The suffix tree of many strings … is called the generalized suffix tree … and it is the suffix tree of the concatenation of strings. For instance,
Generalizad suffix tree abbα,5 a bα,6 bα,7 abbα,3 b a baabbα,1 b abbα,4 a α,8 α,9 baabbα,2 Construction of the suffix tree of ababaabbαaabaaβ: Given the suffix tree of ababaabα:
Generalizad suffix tree abbα,5 a bα,6 bα,7 abbα,3 b a baabbα,1 b abbα,4 a α,8 α,9 baabbα,2 Construction of the suffix tree of ababaabbαaabaaβ:
Generalizad suffix tree aaβ,1 bα,7 bα,6 abbα,3 b a baabbα,1 b abbα,4 a α,8 α,9 baabbα,2 Construction of the suffix tree of ababaabbαaabaaβ: ab a bα,5
Generalizad suffix tree aaβ,1 bα,7 bα,6 abbα,3 b a baabbα,1 b abbα,4 a α,8 α,9 baabbα,2 Construction of the suffix tree of ababaabbαaabaaβ: ab a bα,5
Generalizad suffix tree β,2 bα,7 bα,6 b abbα,4 a α,9 α,8 baabbα,2 Construction of the suffix tree of ababaabbαaabaaβ: aaβ,1 ab a bα,5 b a bbα,3 a baabbα,1
Generalizad suffix tree β,2 bα,7 bα,6 b abbα,4 a α,9 α,8 baabbα,2 Construction of the suffix tree of ababaabbαaabaaβ: aaβ,1 ab a bα,5 b a bbα,3 a baabbα,1
Generalizad suffix tree bα,7 bα,6 β,3 α,9 α,8 Construction of the suffix tree of ababaabbαaabaaβ: aaβ,1 ab a bα,5 β,2 b a bbα,3 a b baabbα,1 a a bbα,4 baabbα,2
Generalizad suffix tree bα,7 bα,6 β,3 α,9 α,8 Construction of the suffix tree of ababaabbαaabaaβ: aaβ,1 ab a bα,5 β,2 b a bbα,3 a b baabbα,1 a a bbα,4 baabbα,2
Generalizad suffix tree β,4 bα,7 bα,6 α,9 α,8 Construction of the suffix tree of ababaabbαaabaaβ: aaβ,1 a b a bα,5 β,2 b a bbα,3 a b baabbα,1 β,3 a a bbα,4 baabbα,2
Generalizad suffix tree β,4 bα,7 bα,6 α,9 α,8 Construction of the suffix tree of ababaabbαaabaaβ: aaβ,1 a b a bα,5 β,2 b a bbα,3 a b baabbα,1 β,3 a a bbα,4 baabbα,2
Generalizad suffix tree bα,6 bα,7 α,8 α,9 Construction of the suffix tree of ababaabbαaabaaβ: β,5 β,4 aaβ,1 a b a bα,5 β,2 b a bbα,3 a b baabbα,1 β,3 a a bbα,4 baabbα,2
Generalizad suffix tree bα,6 bα,7 α,8 α,9 Construction of the suffix tree of ababaabbαaabaaβ: β,5 β,4 aaβ,1 a b a bα,5 β,2 b a bbα,3 a b baabbα,1 β,3 a a bbα,4 baabbα,2
Generalizad suffix tree bα,6 bα,7 α,9 α,8 Construction of the suffix tree of ababaabbαaabaaβ: β,5 β,4 β,6 aaβ,1 a b a bα,5 β,2 b a bbα,3 a b baabbα,1 β,3 a a bbα,4 baabbα,2
Generalizad suffix tree β,5 β,4 β,6 aaβ,1 a b a bα,5 β,2 b bα,6 bα,7 a bbα,3 a b baabbα,1 β,3 a a bbα,4 baabbα,2 α,9 α,8 Generalized suffix tree of ababaabbαaabaaβ:
Applications of Suffix trees a ba baas,1 ba as,3 baas,2 as,4 s,7 s,6 as,5 1. Exact string matching • Does the sequence ababaas contain any ocurrence of patterns abab, aab, and ab? …………………………