Dynamic Programming (cont d) CS 466 Saurabh Sinha
|
|
- Gabriel Wilkins
- 5 years ago
- Views:
Transcription
1 Dynamic Programming (cont d) CS 466 Saurabh Sinha
2 Spliced Alignment Begins by selecting either all putative exons between potential acceptor and donor sites or by finding all substrings similar to the target protein (as in the Exon Chaining Problem). This set is further filtered in a such a way that attempt to retain all true exons, with some false ones. Then find the chain of exons such that the sequence similarity to the target protein sequence is maximized
3 Input: Genomic sequences G, target sequence T, and a set of candidate exons (blocks) B. Output: A chain of exons Γ such that the global alignment score between Γ* and T is maximized Γ* - concatenation of all exons from chain Γ
4 The DAG Vertices: One vertex for each block in B Directed edge connecting non-overlapping blocks Label of vertex = string of block it represents A path through the DAG spells out the string obtained by concatenating that particular chain of blocks Weight of a path is the score of the optimal alignment between the string it spells out and the target sequence
5 Dynamic programming Genomic sequence G = g 1 g 2 g n Target sequence T = t 1 t 2 t m As usual, we want to find the optimal alignment score of the i-prefix of G and the j-prefix of T Problem is, there are many i-prefixes possible (since multiple blocks may include position i)
6 Idea Find the optimal alignment score of the i-prefix of G and the j-prefix of T assuming that this alignment uses a particular block B at position i S(i, j, B) for every block B that includes i
7 If i is not the starting vertex of block B: S(i, j, B) = max { S(i 1, j, B) indel penalty S(i, j 1, B) indel penalty S(i 1, j 1, B) + δ(g i, t j ) } If i is the starting vertex of block B: S(i, j, B) = max { S(i, j 1, B) indel penalty max all blocks B preceding block B S(end(B ), j, B ) indel penalty max all blocks B preceding block B S(end(B ), j 1, B ) + δ(g i, t j ) }
8 RNA secondary structure prediction
9 RNA RNA is similar to DNA chemically. It is usually only a single strand. T(hyamine) is replaced by U(racil) Some forms of RNA can form secondary structures by pairing up with itself. This can change its properties dramatically. trna linear and 3D view:
10 RNA There s more to RNA than mrna RNA can adopt interesting non-linear structures, and catalyze reactions trnas (transfer RNAs) are the adapters that implement translation
11 Secondary structure Several interesting RNAs have a conserved secondary structure (resulting from basepairing interactions) Sometimes, the sequence itself may not be conserved for the function to be retained It is important to tell what the secondary structure is going to be, for homology detection
12 Conserved secondary structure N-Y A A N-N N-N R N-N N-N N-N N-N N-N / N Consensus binding site for R17 phage coat protein. N = A/C/G/U, N is a complementary base pairing to N, Y is C/U, R is A/G Source: DEKM
13 Basics of secondary structure G-C pairing: three bonds (strong) A-U pairing: two bonds (weaker) Base pairs are approximately coplanar
14 Basics of secondary structure
15 Basics of secondary structure G-C pairing: three bonds (strong) A-U pairing: two bonds (weaker) Base pairs are approximately coplanar Base pairs are stacked onto other base pairs (arranged side by side): stems
16 Secondary structure elements loop at the end of a stem single stranded bases within a stem stem loop on both sides of stem only on one side of stem Loop: single stranded subsequences bounded by base pairs
17 Non-canonical base pairs G-C and A-U are the canonical base pairs G-U is also possible, almost as stable
18 Nesting Base pairs almost always occur in a nested fashion If positions i and j are paired, and positions i and j are paired, then these two base-pairings are said to be nested if: i < i < j < j OR i < i < j < j Non-nested base pairing: pseudoknot
19 Pseudoknot (9, 18) (2, 11) NOT NESTED
20 Pseudoknot problems Pseudoknots are not handled by the algorithms we shall see Pseudoknots do occur in many important RNAs But the total number of pseudoknotted base pairs is typically relatively small
21 Secondary structure prediction Approach 1. Find the secondary structure with most base pairs. Nussinov s algorithm Recursive: finds best structure for small subsequences, and works its way outwards to larger subsequences
22 Nussinov s algorithm: idea There are only four possible ways of getting the best structure for subsequence (i,j) from the best structures of the smaller subsequences (1) Add unpaired position i onto best structure for subsequence (i+1,j) i i+1 j
23 Nussinov s algorithm: idea There are only four possible ways of getting the best structure for subsequence (i,j) from the best structures of the smaller subsequences (2) Add unpaired position j onto best structure for subsequence (i,j-1) i j-1 j
24 Nussinov s algorithm: idea There are only four possible ways of getting the best structure for subsequence (i,j) from the best structures of the smaller subsequences (3) Add (i,j) pair onto best structure for subsequence (i+1,j-1) i+1 j-1 i j
25 Nussinov s algorithm: idea There are only four possible ways of getting the best structure for subsequence (i,j) from the best structures of the smaller subsequences (4)Combine two optimal substructures (i,k) and (k+1,j) i k k+1 j
26 Nussinov RNA folding algorithm Given a sequence s of length L with symbols s 1 s L. Let δ(i,j) = 1 if s i and s j are a complementary base pair, and 0 otherwise. We recursively calculate scores g(i,j) which are the maximal number of base pairs that can be formed for subsequence s i s j. Dynamic programming
27 Recursion Starting with all subsequences of length 2, to length L g(i,j) = max of g(i+1, j) O(n 2 )? g(i,j-1) No. O(n 3 ) g(i+1,j-1) + δ(i,j) max i < k < j [g(i,k) + g(k+1,j)] Initialization g(i,i-1) = 0 g(i,i) = 0
28 Traceback As usual in sequence alignment? Optimal sequence alignment is a linear path in the dynamic programming table Optimal secondary structure can have bifurcations Traceback uses a pushdown stack
29 Traceback Push (1,L) onto stack Repeat until stack is empty: pop (i,j) if i >= j continue else if g(i+1,j) = g(i,j) push (i+1,j) else if g(i,j-1) = g(i,j) push (i,j-1) else if g(i+1,j-1) + δ(i,j) = g(i,j) record (i,j) base pair push (i+1,j-1) else for k = i+1 to j-1, if g(i,k)+g(k+1,j) g(i,j) push (k+1,j) push (i,k) break (for loop)
30 Secondary structure prediction Approach 2 Based on minimization of G, the equilibrium free energy, rather than maximization of number of base pairs Better fit to real (experimental) G Energy of stem is sum of stacking contributions from the interface between neighboring base pairs
31 4nt loop nt bulge +3.3 dangle -0.3 U U A A G-C G-C A G-C U-A A-U C-G A-U A A -1.1 terminal mismatch of hairpin -2.9 stack -2.9 stack (special case) -1.8 stack -0.9 stack -1.8 stack -2.1 stack Source: DEKM Neighboring base pairs: stack Single bulges OK in stacking Longer bulges: no stacking term Loop destabilisation energy Loop terminal mismatch energy
32 hairpin loop: exactly one base pair internal loop: exactly two base pairs bulge: internal loop with one base from each base pair being adjacent multibranched loop: > 2 base pairs in a loop, one base pair is closest to ends of RNA. this is the exterior or closing base pair all other base pairs are interior Source: Martin Tompa s lecture notes
33 Energy contributions es(i,j): Free energy of stacked pair (i,j) and (i+1,j-1) eh(i,j): Free energy of a loop closed by (i,j): depends on length of loop, bases at i,j, and bases adjacent to them el(i,j,i,j ): Free energy of an internal loop or bulge, with (i,j) and (i,j ) being the bordering base pairs. Depends on bases at these positions, and unpaired bases adjacent to them em(i,j,i 1,j 1, i k,j k ): Free energy of a multibranch loop with (i,j) as the closing base pair and i 1 j 1 etc as the internal base pairs
34 Zuker s algorithm: Dynamic programming W(j): FE of optimal structure of s[1..j] V(i,j): FE of optimal structure of s[i..j] assuming i,j form a base pair VBI(i,j): FE of optimal structure of s[i..j] assuming i,j closes a bulge or internal loop VM(i,j): FE of optimal structure of s[i..j] assuming i,j closes a multibranch loop WM(i,j): used to compute VM
35 Dynamic programming recurrences W(j): FE of optimal structure of s[1..j] W(0) = 0 W(j) = min( W(j-1), s[j] is external base (a base not in any loop) min 1<=i<j V(i,j)+W(i-1)) s[j] pairs with s[i], for some i < j
36 Dynamic programming recurrences V(i,j): FE of optimal structure of s[i..j] assuming i,j form a base pair V(i,j) = infinity if i >= j V(i,j) = min( eh(i,j), i,j is exterior base pair of a hairpin loop es(i,j) + V(i+1,j-1), VBI(i,j), VM(i,j)) if i < j
37 Dynamic programming recurrences V(i,j): FE of optimal structure of s[i..j] assuming i,j form a base pair V(i,j) = infinity if i >= j V(i,j) = min( eh(i,j), i,j is exterior pair of a stacked pair. i+1,j-1 is therefore a pair too. es(i,j) + V(i+1,j-1), VBI(i,j), VM(i,j)) if i < j
38 Dynamic programming recurrences V(i,j): FE of optimal structure of s[i..j] assuming i,j form a base pair V(i,j) = infinity if i >= j V(i,j) = min( eh(i,j), i,j is exterior pair of a bulge or interior loop es(i,j) + V(i+1,j-1), VBI(i,j), VM(i,j)) if i < j
39 Dynamic programming recurrences V(i,j): FE of optimal structure of s[i..j] assuming i,j form a base pair V(i,j) = infinity if i >= j V(i,j) = min( eh(i,j), i,j is exterior pair of a multibranch loop es(i,j) + V(i+1,j-1), VBI(i,j), VM(i,j)) if i < j
40 Dynamic programming recurrences VBI(i,j): FE of optimal structure of s[i..j] assuming i,j closes a bulge or internal loop VBI(i,j) = min (el(i,j,i,j ) + V(i,j )) i,j i<i <j <j Slow! Energy of the bulge
41 Dynamic programming recurrences VM(i,j): FE of optimal structure of s[i..j] assuming i,j closes a multibranch loop VM(i,j) = min (em(i,j,i 1,j 1,..,i k,j k ) h V(i h,j h )) k>=2 i 1,j 1, i k,j k Very slow! Energy of the loop itself
42 Order of computation What order to fill the DP table in? Increasing order of (j-i) VBI(i,j) and VM(i,j) before V(i,j)
Dynamic Programming Course: A structure based flexible search method for motifs in RNA. By: Veksler, I., Ziv-Ukelson, M., Barash, D.
Dynamic Programming Course: A structure based flexible search method for motifs in RNA By: Veksler, I., Ziv-Ukelson, M., Barash, D., Kedem, K Outline Background Motivation RNA s structure representations
More informationComputational Genomics and Molecular Biology, Fall
Computational Genomics and Molecular Biology, Fall 2015 1 Sequence Alignment Dannie Durand Pairwise Sequence Alignment The goal of pairwise sequence alignment is to establish a correspondence between the
More informationA Partition Function Algorithm for Nucleic Acid Secondary Structure Including Pseudoknots
A Partition Function Algorithm for Nucleic Acid Secondary Structure Including Pseudoknots ROBERT M. DIRKS, 1 NILES A. PIERCE 2 1 Department of Chemistry, California Institute of Technology, Pasadena, California
More informationA Seeded Genetic Algorithm for RNA Secondary Structural Prediction with Pseudoknots
San Jose State University SJSU ScholarWorks Master's Projects Master's Theses and Graduate Research 2008 A Seeded Genetic Algorithm for RNA Secondary Structural Prediction with Pseudoknots Ryan Pham San
More informationReconstructing long sequences from overlapping sequence fragment. Searching databases for related sequences and subsequences
SEQUENCE ALIGNMENT ALGORITHMS 1 Why compare sequences? Reconstructing long sequences from overlapping sequence fragment Searching databases for related sequences and subsequences Storing, retrieving and
More informationVisualization of Secondary RNA Structure Prediction Algorithms
San Jose State University SJSU ScholarWorks Master's Projects Master's Theses and Graduate Research 2006 Visualization of Secondary RNA Structure Prediction Algorithms Brandon Hunter San Jose State University
More informationPrediction of RNA secondary structure including kissing hairpin motifs
Prediction of RNA secondary structure including kissing hairpin motifs Corinna Theis, Stefan Janssen and Robert Giegerich Faculty of Technology & Center for Biotechnology Bielefeld University, Germany
More informationSpecial course in Computer Science: Advanced Text Algorithms
Special course in Computer Science: Advanced Text Algorithms Lecture 6: Alignments Elena Czeizler and Ion Petre Department of IT, Abo Akademi Computational Biomodelling Laboratory http://www.users.abo.fi/ipetre/textalg
More informationAlgorithms For Predicting Secondary Structures Of Human Viruses
San Jose State University SJSU ScholarWorks Master's Projects Master's Theses and Graduate Research Fall 2012 Algorithms For Predicting Secondary Structures Of Human Viruses Hardik Shah San Jose State
More informationTowards a Weighted-Tree Similarity Algorithm for RNA Secondary Structure Comparison
Towards a Weighted-Tree Similarity Algorithm for RNA Secondary Structure Comparison Jing Jin, Biplab K. Sarker, Virendra C. Bhavsar, Harold Boley 2, Lu Yang Faculty of Computer Science, University of New
More informationEECS730: Introduction to Bioinformatics
EECS730: Introduction to Bioinformatics Lecture 04: Variations of sequence alignments http://www.pitt.edu/~mcs2/teaching/biocomp/tutorials/global.html Slides adapted from Dr. Shaojie Zhang (University
More informationDynamic Programming: Sequence alignment. CS 466 Saurabh Sinha
Dynamic Programming: Sequence alignment CS 466 Saurabh Sinha DNA Sequence Comparison: First Success Story Finding sequence similarities with genes of known function is a common approach to infer a newly
More informationCSE 417 Dynamic Programming (pt 5) Multiple Inputs
CSE 417 Dynamic Programming (pt 5) Multiple Inputs Reminders > HW5 due Wednesday Dynamic Programming Review > Apply the steps... optimal substructure: (small) set of solutions, constructed from solutions
More informationBLAST: Basic Local Alignment Search Tool Altschul et al. J. Mol Bio CS 466 Saurabh Sinha
BLAST: Basic Local Alignment Search Tool Altschul et al. J. Mol Bio. 1990. CS 466 Saurabh Sinha Motivation Sequence homology to a known protein suggest function of newly sequenced protein Bioinformatics
More informationMouse, Human, Chimpanzee
More Alignments 1 Mouse, Human, Chimpanzee Mouse to Human Chimpanzee to Human 2 Mouse v.s. Human Chromosome X of Mouse to Human 3 Local Alignment Given: two sequences S and T Find: substrings of S and
More informationUnit-5 Dynamic Programming 2016
5 Dynamic programming Overview, Applications - shortest path in graph, matrix multiplication, travelling salesman problem, Fibonacci Series. 20% 12 Origin: Richard Bellman, 1957 Programming referred to
More informationNew Implementation for the Multi-sequence All-Against-All Substring Matching Problem
New Implementation for the Multi-sequence All-Against-All Substring Matching Problem Oana Sandu Supervised by Ulrike Stege In collaboration with Chris Upton, Alex Thomo, and Marina Barsky University of
More informationEukaryotic Gene Finding: The GENSCAN System
Eukaryotic Gene Finding: The GENSCAN System BMI/CS 776 www.biostat.wisc.edu/bmi776/ Spring 2016 Anthony Gitter gitter@biostat.wisc.edu These slides, excluding third-party material, are licensed under CC
More informationComputational Molecular Biology
Computational Molecular Biology Erwin M. Bakker Lecture 2 Materials used from R. Shamir [2] and H.J. Hoogeboom [4]. 1 Molecular Biology Sequences DNA A, T, C, G RNA A, U, C, G Protein A, R, D, N, C E,
More informationDeciphering the Information Encoded in RNA Viral Genomes
Deciphering the Information Encoded in RNA Viral Genomes Christine E. Heitsch Genome Center of Wisconsin and Mathematics Department University of Wisconsin Madison Detecting and Processing Regularities
More informationWilson Leung 05/27/2008 A Simple Introduction to NCBI BLAST
A Simple Introduction to NCBI BLAST Prerequisites: Detecting and Interpreting Genetic Homology: Lecture Notes on Alignment Resources: The BLAST web server is available at http://www.ncbi.nih.gov/blast/
More informationLECTURE 17 GRAPH TRAVERSALS
DATA STRUCTURES AND ALGORITHMS LECTURE 17 GRAPH TRAVERSALS IMRAN IHSAN ASSISTANT PROFESSOR AIR UNIVERSITY, ISLAMABAD STRATEGIES Traversals of graphs are also called searches We can use either breadth-first
More information/463 Algorithms - Fall 2013 Solution to Assignment 3
600.363/463 Algorithms - Fall 2013 Solution to Assignment 3 (120 points) I (30 points) (Hint: This problem is similar to parenthesization in matrix-chain multiplication, except the special treatment on
More informationDynamic Programming II
June 9, 214 DP: Longest common subsequence biologists often need to find out how similar are 2 DNA sequences DNA sequences are strings of bases: A, C, T and G how to define similarity? DP: Longest common
More informationDarwin-WGA. A Co-processor Provides Increased Sensitivity in Whole Genome Alignments with High Speedup
Darwin-WGA A Co-processor Provides Increased Sensitivity in Whole Genome Alignments with High Speedup Yatish Turakhia*, Sneha D. Goenka*, Prof. Gill Bejerano, Prof. William J. Dally * Equal contribution
More informationBMI/CS Lecture #22 - Stochastic Context Free Grammars for RNA Structure Modeling. Colin Dewey (adapted from slides by Mark Craven)
BMI/CS Lecture #22 - Stochastic Context Free Grammars for RNA Structure Modeling Colin Dewey (adapted from slides by Mark Craven) 2007.04.12 1 Modeling RNA with Stochastic Context Free Grammars consider
More informationSpecial course in Computer Science: Advanced Text Algorithms
Special course in Computer Science: Advanced Text Algorithms Lecture 8: Multiple alignments Elena Czeizler and Ion Petre Department of IT, Abo Akademi Computational Biomodelling Laboratory http://www.users.abo.fi/ipetre/textalg
More informationPairwise Sequence Alignment: Dynamic Programming Algorithms COMP 571 Luay Nakhleh, Rice University
1 Pairwise Sequence Alignment: Dynamic Programming Algorithms COMP 571 Luay Nakhleh, Rice University DP Algorithms for Pairwise Alignment 2 The number of all possible pairwise alignments (if gaps are allowed)
More informationEECS 4425: Introductory Computational Bioinformatics Fall Suprakash Datta
EECS 4425: Introductory Computational Bioinformatics Fall 2018 Suprakash Datta datta [at] cse.yorku.ca Office: CSEB 3043 Phone: 416-736-2100 ext 77875 Course page: http://www.cse.yorku.ca/course/4425 Many
More informationBrief review from last class
Sequence Alignment Brief review from last class DNA is has direction, we will use only one (5 -> 3 ) and generate the opposite strand as needed. DNA is a 3D object (see lecture 1) but we will model it
More informationEfficient Implementation of a Generalized Pair HMM for Comparative Gene Finding. B. Majoros M. Pertea S.L. Salzberg
Efficient Implementation of a Generalized Pair HMM for Comparative Gene Finding B. Majoros M. Pertea S.L. Salzberg ab initio gene finder genome 1 MUMmer Whole-genome alignment (optional) ROSE Region-Of-Synteny
More informationPairwise Sequence Alignment: Dynamic Programming Algorithms. COMP Spring 2015 Luay Nakhleh, Rice University
Pairwise Sequence Alignment: Dynamic Programming Algorithms COMP 571 - Spring 2015 Luay Nakhleh, Rice University DP Algorithms for Pairwise Alignment The number of all possible pairwise alignments (if
More informationGSNAP: Fast and SNP-tolerant detection of complex variants and splicing in short reads by Thomas D. Wu and Serban Nacu
GSNAP: Fast and SNP-tolerant detection of complex variants and splicing in short reads by Thomas D. Wu and Serban Nacu Matt Huska Freie Universität Berlin Computational Methods for High-Throughput Omics
More informationManual for RNA-As-Graphs Topology (RAGTOP) software suite
Manual for RNA-As-Graphs Topology (RAGTOP) software suite Schlick lab Contents 1 General Information 1 1.1 Copyright statement....................................... 1 1.2 Citation requirements.......................................
More informationWilson Leung 01/03/2018 An Introduction to NCBI BLAST. Prerequisites: Detecting and Interpreting Genetic Homology: Lecture Notes on Alignment
An Introduction to NCBI BLAST Prerequisites: Detecting and Interpreting Genetic Homology: Lecture Notes on Alignment Resources: The BLAST web server is available at https://blast.ncbi.nlm.nih.gov/blast.cgi
More informationChapter 3 Dynamic programming
Chapter 3 Dynamic programming 1 Dynamic programming also solve a problem by combining the solutions to subproblems. But dynamic programming considers the situation that some subproblems will be called
More informationAligning a Splice Graph to a Genomic Sequence. Øyvind Ølberg June 20, 2005
Aligning a Splice Graph to a Genomic Sequence Abstract Øyvind Ølberg June 20, 2005 This paper presents an algorithm for aligning a splice graph with a genomic sequence. The algorithm is an extension of
More informationSo far... Finished looking at lower bounds and linear sorts.
So far... Finished looking at lower bounds and linear sorts. Next: Memoization -- Optimization problems - Dynamic programming A scheduling problem Matrix multiplication optimization Longest Common Subsequence
More informationPairwise alignment II
Pairwise alignment II Agenda - Previous Lesson: Minhala + Introduction - Review Dynamic Programming - Pariwise Alignment Biological Motivation Today: - Quick Review: Sequence Alignment (Global, Local,
More informationCS5371 Theory of Computation. Lecture 8: Automata Theory VI (PDA, PDA = CFG)
CS5371 Theory of Computation Lecture 8: Automata Theory VI (PDA, PDA = CFG) Objectives Introduce Pushdown Automaton (PDA) Show that PDA = CFG In terms of descriptive power Pushdown Automaton (PDA) Roughly
More informationCompiler Design. Register Allocation. Hwansoo Han
Compiler Design Register Allocation Hwansoo Han Big Picture of Code Generation Register allocation Decides which values will reside in registers Changes the storage mapping Concerns about placement of
More informationQuery Languages. Berlin Chen Reference: 1. Modern Information Retrieval, chapter 4
Query Languages Berlin Chen 2005 Reference: 1. Modern Information Retrieval, chapter 4 Data retrieval Pattern-based querying The Kinds of Queries Retrieve docs that contains (or exactly match) the objects
More informationScan and its Uses. 1 Scan. 1.1 Contraction CSE341T/CSE549T 09/17/2014. Lecture 8
CSE341T/CSE549T 09/17/2014 Lecture 8 Scan and its Uses 1 Scan Today, we start by learning a very useful primitive. First, lets start by thinking about what other primitives we have learned so far? The
More informationParametric analysis of RNA branching configurations
Parametric analysis of RNA branching configurations Valerie Hower, Christine E. Heitsch Abstract Motivated by recent work in parametric sequence alignment, we study the parameter space for scoring RNA
More information1 Dynamic Programming
Recitation 13 Dynamic Programming Parallel and Sequential Data Structures and Algorithms, 15-210 (Spring 2013) April 17, 2013 1 Dynamic Programming Dynamic programming is a technique to avoid needless
More informationFrom Smith-Waterman to BLAST
From Smith-Waterman to BLAST Jeremy Buhler July 23, 2015 Smith-Waterman is the fundamental tool that we use to decide how similar two sequences are. Isn t that all that BLAST does? In principle, it is
More informationTCCAGGTG-GAT TGCAAGTGCG-T. Local Sequence Alignment & Heuristic Local Aligners. Review: Probabilistic Interpretation. Chance or true homology?
Local Sequence Alignment & Heuristic Local Aligners Lectures 18 Nov 28, 2011 CSE 527 Computational Biology, Fall 2011 Instructor: Su-In Lee TA: Christopher Miles Monday & Wednesday 12:00-1:20 Johnson Hall
More informationBiology 644: Bioinformatics
A statistical Markov model in which the system being modeled is assumed to be a Markov process with unobserved (hidden) states in the training data. First used in speech and handwriting recognition In
More informationEECS730: Introduction to Bioinformatics
EECS730: Introduction to Bioinformatics Lecture 06: Multiple Sequence Alignment https://upload.wikimedia.org/wikipedia/commons/thumb/7/79/rplp0_90_clustalw_aln.gif/575px-rplp0_90_clustalw_aln.gif Slides
More information1 Dynamic Programming
Recitation 13 Dynamic Programming Parallel and Sequential Data Structures and Algorithms, 15-210 (Fall 2013) November 20, 2013 1 Dynamic Programming Dynamic programming is a technique to avoid needless
More informationLecture 2 Pairwise sequence alignment. Principles Computational Biology Teresa Przytycka, PhD
Lecture 2 Pairwise sequence alignment. Principles Computational Biology Teresa Przytycka, PhD Assumptions: Biological sequences evolved by evolution. Micro scale changes: For short sequences (e.g. one
More informationFastA & the chaining problem
FastA & the chaining problem We will discuss: Heuristics used by the FastA program for sequence alignment Chaining problem 1 Sources for this lecture: Lectures by Volker Heun, Daniel Huson and Knut Reinert,
More informationRead Mapping. Slides by Carl Kingsford
Read Mapping Slides by Carl Kingsford Bowtie Ultrafast and memory-efficient alignment of short DNA sequences to the human genome Ben Langmead, Cole Trapnell, Mihai Pop and Steven L Salzberg, Genome Biology
More informationBLAST. Basic Local Alignment Search Tool. Used to quickly compare a protein or DNA sequence to a database.
BLAST Basic Local Alignment Search Tool Used to quickly compare a protein or DNA sequence to a database. There is no such thing as a free lunch BLAST is fast and highly sensitive compared to competitors.
More informationDESIGN AND ANALYSIS OF ALGORITHMS (DAA 2017)
DESIGN AND ANALYSIS OF ALGORITHMS (DAA 2017) Veli Mäkinen Design and Analysis of Algorithms 2017 week 4 11.8.2017 1 Dynamic Programming Week 4 2 Design and Analysis of Algorithms 2017 week 4 11.8.2017
More informationFastA and the chaining problem, Gunnar Klau, December 1, 2005, 10:
FastA and the chaining problem, Gunnar Klau, December 1, 2005, 10:56 4001 4 FastA and the chaining problem We will discuss: Heuristics used by the FastA program for sequence alignment Chaining problem
More informationRegular Expression Constrained Sequence Alignment
Regular Expression Constrained Sequence Alignment By Abdullah N. Arslan Department of Computer science University of Vermont Presented by Tomer Heber & Raz Nissim otivation When comparing two proteins,
More informationSPAR outputs and report page
SPAR outputs and report page Landing results page (full view) Landing results / outputs page (top) Input files are listed Job id is shown Download all tables, figures, tracks as zip Percentage of reads
More informationBiology 644: Bioinformatics
Find the best alignment between 2 sequences with lengths n and m, respectively Best alignment is very dependent upon the substitution matrix and gap penalties The Global Alignment Problem tries to find
More informationDynamic Programming Part I: Examples. Bioinfo I (Institut Pasteur de Montevideo) Dynamic Programming -class4- July 25th, / 77
Dynamic Programming Part I: Examples Bioinfo I (Institut Pasteur de Montevideo) Dynamic Programming -class4- July 25th, 2011 1 / 77 Dynamic Programming Recall: the Change Problem Other problems: Manhattan
More informationBioinformatics III Structural Bioinformatics and Genome Analysis
Bioinformatics III Structural Bioinformatics and Genome Analysis Chapter 3 Structural Comparison and Alignment 3.1 Introduction 1. Basic algorithms review Dynamic programming Distance matrix 2. SARF2,
More informationarxiv: v1 [cs.dm] 21 Dec 2015
The Maximum Cardinality Cut Problem is Polynomial in Proper Interval Graphs Arman Boyacı 1, Tinaz Ekim 1, and Mordechai Shalom 1 Department of Industrial Engineering, Boğaziçi University, Istanbul, Turkey
More informationComputational Molecular Biology
Computational Molecular Biology Erwin M. Bakker Lecture 3, mainly from material by R. Shamir [2] and H.J. Hoogeboom [4]. 1 Pairwise Sequence Alignment Biological Motivation Algorithmic Aspect Recursive
More informationMapping Reads to Reference Genome
Mapping Reads to Reference Genome DNA carries genetic information DNA is a double helix of two complementary strands formed by four nucleotides (bases): Adenine, Cytosine, Guanine and Thymine 2 of 31 Gene
More informationLinear trees and RNA secondary. structuret's
ELSEVIER Discrete Applied Mathematics 51 (1994) 317-323 DISCRETE APPLIED MATHEMATICS Linear trees and RNA secondary. structuret's William R. Schmitt*.", Michael S. Watermanb "University of Memphis. Memphis,
More informationConnected components - 1
Connected Components Basic definitions Connectivity, Adjacency, Connected Components Background/Foreground, Boundaries Run-length encoding Component Labeling Recursive algorithm Two-scan algorithm Chain
More informationAlignment ABC. Most slides are modified from Serafim s lectures
Alignment ABC Most slides are modified from Serafim s lectures Complete genomes Evolution Evolution at the DNA level C ACGGTGCAGTCACCA ACGTTGCAGTCCACCA SEQUENCE EDITS REARRANGEMENTS Sequence conservation
More informationPresentation for use with the textbook, Algorithm Design and Applications, by M. T. Goodrich and R. Tamassia, Wiley, Dynamic Programming
Presentation for use with the textbook, Algorithm Design and Applications, by M. T. Goodrich and R. Tamassia, Wiley, 25 Dynamic Programming Terrible Fibonacci Computation Fibonacci sequence: f = f(n) 2
More informationAlgorithms Dr. Haim Levkowitz
91.503 Algorithms Dr. Haim Levkowitz Fall 2007 Lecture 4 Tuesday, 25 Sep 2007 Design Patterns for Optimization Problems Greedy Algorithms 1 Greedy Algorithms 2 What is Greedy Algorithm? Similar to dynamic
More informationAcceleration of the Smith-Waterman algorithm for DNA sequence alignment using an FPGA platform
Acceleration of the Smith-Waterman algorithm for DNA sequence alignment using an FPGA platform Barry Strengholt Matthijs Brobbel Delft University of Technology Faculty of Electrical Engineering, Mathematics
More informationAnalysis of Algorithms Prof. Karen Daniels
UMass Lowell Computer Science 91.503 Analysis of Algorithms Prof. Karen Daniels Spring, 2010 Lecture 2 Tuesday, 2/2/10 Design Patterns for Optimization Problems Greedy Algorithms Algorithmic Paradigm Context
More informationLecture 13: Chain Matrix Multiplication
Lecture 3: Chain Matrix Multiplication CLRS Section 5.2 Revised April 7, 2003 Outline of this Lecture Recalling matrix multiplication. The chain matrix multiplication problem. A dynamic programming algorithm
More informationSept. 9, An Introduction to Bioinformatics. Special Topics BSC5936:
Special Topics BSC5936: An Introduction to Bioinformatics. Florida State University The Department of Biological Science www.bio.fsu.edu Sept. 9, 2003 The Dot Matrix Method Steven M. Thompson Florida State
More information12 Dynamic Programming (2) Matrix-chain Multiplication Segmented Least Squares
12 Dynamic Programming (2) Matrix-chain Multiplication Segmented Least Squares Optimal substructure Dynamic programming is typically applied to optimization problems. An optimal solution to the original
More informationRNA Secondary Structure Prediction by Stochastic Context-Free Grammars
Faculty of Applied Sciences Department of Electronics and Information Systems Head of the Department: Prof. Dr. Eng. J. Van Campenhout RNA Secondary Structure Prediction by Stochastic Context-Free Grammars
More informationCLC Server. End User USER MANUAL
CLC Server End User USER MANUAL Manual for CLC Server 10.0.1 Windows, macos and Linux March 8, 2018 This software is for research purposes only. QIAGEN Aarhus Silkeborgvej 2 Prismet DK-8000 Aarhus C Denmark
More informationAlgorithms IV. Dynamic Programming. Guoqiang Li. School of Software, Shanghai Jiao Tong University
Algorithms IV Dynamic Programming Guoqiang Li School of Software, Shanghai Jiao Tong University Dynamic Programming Shortest Paths in Dags, Revisited Shortest Paths in Dags, Revisited The special distinguishing
More informationCMSC423: Bioinformatic Algorithms, Databases and Tools Lecture 8. Note
MS: Bioinformatic lgorithms, Databases and ools Lecture 8 Sequence alignment: inexact alignment dynamic programming, gapped alignment Note Lecture 7 suffix trees and suffix arrays will be rescheduled Exact
More informationGene expression & Clustering (Chapter 10)
Gene expression & Clustering (Chapter 10) Determining gene function Sequence comparison tells us if a gene is similar to another gene, e.g., in a new species Dynamic programming Approximate pattern matching
More informationReducing Genome Assembly Complexity with Optical Maps
Reducing Genome Assembly Complexity with Optical Maps Lee Mendelowitz LMendelo@math.umd.edu Advisor: Dr. Mihai Pop Computer Science Department Center for Bioinformatics and Computational Biology mpop@umiacs.umd.edu
More informationThe Dot Matrix Method
Special Topics BS5936: An Introduction to Bioinformatics. Florida State niversity The Department of Biological Science www.bio.fsu.edu Sept. 9, 2003 The Dot Matrix Method Steven M. Thompson Florida State
More informationData Structures and Algorithms Week 8
Data Structures and Algorithms Week 8 Dynamic programming Fibonacci numbers Optimization problems Matrix multiplication optimization Principles of dynamic programming Longest Common Subsequence Algorithm
More information15.4 Longest common subsequence
15.4 Longest common subsequence Biological applications often need to compare the DNA of two (or more) different organisms A strand of DNA consists of a string of molecules called bases, where the possible
More informationCMPSCI 250: Introduction to Computation. Lecture #14: Induction and Recursion (Still More Induction) David Mix Barrington 14 March 2013
CMPSCI 250: Introduction to Computation Lecture #14: Induction and Recursion (Still More Induction) David Mix Barrington 14 March 2013 Induction and Recursion Three Rules for Recursive Algorithms Proving
More informationEE/CSCI 451 Spring 2018 Homework 8 Total Points: [10 points] Explain the following terms: EREW PRAM CRCW PRAM. Brent s Theorem.
EE/CSCI 451 Spring 2018 Homework 8 Total Points: 100 1 [10 points] Explain the following terms: EREW PRAM CRCW PRAM Brent s Theorem BSP model 1 2 [15 points] Assume two sorted sequences of size n can be
More information15.4 Longest common subsequence
15.4 Longest common subsequence Biological applications often need to compare the DNA of two (or more) different organisms A strand of DNA consists of a string of molecules called bases, where the possible
More informationGRaph theory is a field of mathematics with applications
IAENG International Journal of Computer Science, 44:2, IJCS_44_2_3 Partitioning and Classification of RNA Secondary Structures into Pseudonotted and Pseudoknot-free Regions Using a Graph-Theoretical Approach
More informationArtificial Intelligence
Artificial Intelligence Shortest Path Problem G. Guérard Department of Nouvelles Energies Ecole Supérieur d Ingénieurs Léonard de Vinci Lecture 3 GG A.I. 1/42 Outline 1 The Shortest Path Problem Introduction
More informationMSCBIO 2070/02-710: Computational Genomics, Spring A4: spline, HMM, clustering, time-series data analysis, RNA-folding
MSCBIO 2070/02-710:, Spring 2015 A4: spline, HMM, clustering, time-series data analysis, RNA-folding Due: April 13, 2015 by email to Silvia Liu (silvia.shuchang.liu@gmail.com) TA in charge: Silvia Liu
More informationLong Read RNA-seq Mapper
UNIVERSITY OF ZAGREB FACULTY OF ELECTRICAL ENGENEERING AND COMPUTING MASTER THESIS no. 1005 Long Read RNA-seq Mapper Josip Marić Zagreb, February 2015. Table of Contents 1. Introduction... 1 2. RNA Sequencing...
More informationMarch 13/2003 Jayakanth Srinivasan,
Statement Effort MergeSort(A, lower_bound, upper_bound) begin T(n) if (lower_bound < upper_bound) Θ(1) mid = (lower_bound + upper_bound)/ 2 Θ(1) MergeSort(A, lower_bound, mid) T(n/2) MergeSort(A, mid+1,
More informationCS 321 Programming Languages and Compilers. VI. Parsing
CS 321 Programming Languages and Compilers VI. Parsing Parsing Calculate grammatical structure of program, like diagramming sentences, where: Tokens = words Programs = sentences For further information,
More informationAnalysis of Algorithms Chapter 11. Instructor: Scott Kristjanson CMPT 125/125 SFU Burnaby, Fall 2013
Analysis of Algorithms Chapter 11 Instructor: Scott Kristjanson CMPT 125/125 SFU Burnaby, Fall 2013 2 Scope Analysis of Algorithms: Efficiency goals The concept of algorithm analysis Big-Oh notation The
More informationGraph Algorithms Using Depth First Search
Graph Algorithms Using Depth First Search Analysis of Algorithms Week 8, Lecture 1 Prepared by John Reif, Ph.D. Distinguished Professor of Computer Science Duke University Graph Algorithms Using Depth
More informationLectures by Volker Heun, Daniel Huson and Knut Reinert, in particular last years lectures
4 FastA and the chaining problem We will discuss: Heuristics used by the FastA program for sequence alignment Chaining problem 4.1 Sources for this lecture Lectures by Volker Heun, Daniel Huson and Knut
More informationEval: A Gene Set Comparison System
Masters Project Report Eval: A Gene Set Comparison System Evan Keibler evan@cse.wustl.edu Table of Contents Table of Contents... - 2 - Chapter 1: Introduction... - 5-1.1 Gene Structure... - 5-1.2 Gene
More informationCS301 - Data Structures Glossary By
CS301 - Data Structures Glossary By Abstract Data Type : A set of data values and associated operations that are precisely specified independent of any particular implementation. Also known as ADT Algorithm
More informationAs of August 15, 2008, GenBank contained bases from reported sequences. The search procedure should be
48 Bioinformatics I, WS 09-10, S. Henz (script by D. Huson) November 26, 2009 4 BLAST and BLAT Outline of the chapter: 1. Heuristics for the pairwise local alignment of two sequences 2. BLAST: search and
More informationGlobal Register Allocation - Part 2
Global Register Allocation - Part 2 Y N Srikant Computer Science and Automation Indian Institute of Science Bangalore 560012 NPTEL Course on Compiler Design Outline Issues in Global Register Allocation
More informationIntroduction to Algorithms
Introduction to Algorithms Dynamic Programming Well known algorithm design techniques: Brute-Force (iterative) ti algorithms Divide-and-conquer algorithms Another strategy for designing algorithms is dynamic
More information