Results 1  10
of
30
Local similarity in RNA secondary structures
, 2003
"... We present a systematic treatment of alignment distance and local similarity algorithms on trees and forests. We build upon the tree alignment algorithm for ordered trees given by Jiang et. al (1995) and extend it to calculate local forest alignments, which is essential for finding local similar reg ..."
Abstract

Cited by 109 (3 self)
 Add to MetaCart
(Show Context)
We present a systematic treatment of alignment distance and local similarity algorithms on trees and forests. We build upon the tree alignment algorithm for ordered trees given by Jiang et. al (1995) and extend it to calculate local forest alignments, which is essential for finding local similar regions in RNA secondary structures. The time complexity of our algorithm is O(F1  ·F2  ·deg(F1) · deg(F2) · (deg(F1) +deg(F2)) where Fi  is the number of nodes in forest Fi and deg(Fi) is the degree of Fi. We provide carefully engineered dynamic programming implementations using dense, twodimensional tables which considerably reduces the space requirement. We suggest a new representation of RNA secondary structures as forests that allow reasonable scoring of edit operations on RNA secondary structures. The comparison of RNA secondary structures is facilitated by a new visualization technique for RNA secondary structure alignments. Finally, we show how potential regulatory motifs can be discovered solely by their structural preservation, and independent of their sequence conservation and position.
P.: A discipline of dynamic programming over sequence data
 Science of Computer Programming
, 2004
"... Abstract. Dynamic programming is a classical programming technique, applicable in a wide variety of domains such as stochastic systems analysis, operations research, combinatorics of discrete structures, flow problems, parsing of ambiguous languages, and biosequence analysis. Little methodology has ..."
Abstract

Cited by 44 (23 self)
 Add to MetaCart
(Show Context)
Abstract. Dynamic programming is a classical programming technique, applicable in a wide variety of domains such as stochastic systems analysis, operations research, combinatorics of discrete structures, flow problems, parsing of ambiguous languages, and biosequence analysis. Little methodology has hitherto been available to guide the design of such algorithms. The matrix recurrences that typically describe a dynamic programming algorithm are difficult to construct, errorprone to implement, and, in nontrivial applications, almost impossible to debug completely. This article introduces a discipline designed to alleviate this problem. We describe an algebraic style of dynamic programming over sequence data. We define its formal framework, based on a combination of grammars and algebras, and including a formalization of Bellman’s Principle. We suggest a language used for algorithm design on a convenient level of abstraction. We outline three ways of implementing this language, including an embedding in a lazy functional language. The workings of the
M: Design optimization methods for genomic DNA tiling arrays. Genome Res 2006
"... A recent development in microarray construction entails the unbiased coverage, or tiling, of nonrepetitive genomic DNA for the experimental identification of unannotated transcribed sequences and regulatory elements. A central issue in designing tiling arrays is one of sequence similarity, as signi ..."
Abstract

Cited by 28 (1 self)
 Add to MetaCart
A recent development in microarray construction entails the unbiased coverage, or tiling, of nonrepetitive genomic DNA for the experimental identification of unannotated transcribed sequences and regulatory elements. A central issue in designing tiling arrays is one of sequence similarity, as significant experimental crosshybridization can result from the incorporation of nonunique probe sequences. Many genomes contain thousands of repetitive elements that must also be identified and omitted from the array design. Due to the fragmentation introduced by repeats, the problem of obtaining adequate sequence coverage increases with the sizes of subsequence tiles that are to be included on the array. Here we describe the general problem of designing arrays with tiles of varying sizes, and discuss the issues that arise when tiling with shorter and longer sequences. The general problem of sequence tiling can be framed as finding an optimal partitioning of nonrepetitive subsequence fragments, or tiles, for a given range of sizes on a DNA sequence containing repetitive and nonrepetitive regions. Exact solutions to the tiling problem can become computationally infeasible when applied to large genomes, but we develop
Algebraic dynamic programming
 Algebraic Methodology And Software Technology, 9th International Conference, AMAST 2002
, 2002
"... Abstract. Dynamic programming is a classic programming technique, applicable in a wide variety of domains, like stochastic systems analysis, operations research, combinatorics of discrete structures, flow problems, parsing with ambiguous grammars, or biosequence analysis. Yet, no methodology is avai ..."
Abstract

Cited by 16 (5 self)
 Add to MetaCart
(Show Context)
Abstract. Dynamic programming is a classic programming technique, applicable in a wide variety of domains, like stochastic systems analysis, operations research, combinatorics of discrete structures, flow problems, parsing with ambiguous grammars, or biosequence analysis. Yet, no methodology is available for designing such algorithms. The matrix recurrences that typically describe a dynamic programming algorithm are difficult to construct, errorprone to implement, and almost impossible to debug. This article introduces an algebraic style of dynamic programming over sequence data. We define the formal framework including a formalization of Bellman’s principle, specify an executable specification language, and show how algorithm design decisions and tuning for efficiency can be described on a convenient level of abstraction.
A Combinatorial Framework for Designing (Pseudoknotted) RNA Algorithms
 11TH WORKSHOP ON ALGORITHMS IN BIOINFORMATICS (WABI'11)
, 2011
"... We extend an hypergraph representation, introduced by Finkelstein and Roytberg, to unify dynamic programming algorithms in the context of RNA folding with pseudoknots. Classic applications of RNA dynamic programming (Energy minimization, partition function, basepair probabilities...) are reformula ..."
Abstract

Cited by 6 (4 self)
 Add to MetaCart
(Show Context)
We extend an hypergraph representation, introduced by Finkelstein and Roytberg, to unify dynamic programming algorithms in the context of RNA folding with pseudoknots. Classic applications of RNA dynamic programming (Energy minimization, partition function, basepair probabilities...) are reformulated within this framework, giving rise to very simple algorithms. This reformulation allows one to conceptually detach the conformation space/energy model – captured by the hypergraph model – from the specific application, assuming unambiguity of the decomposition. To ensure the latter property, we propose a new combinatorial methodology based on generating functions. We extend the set of generic applications by proposing an exact algorithm for extracting generalized moments in weighted distribution, generalizing a prior contribution by Miklos and al. Finally, we illustrate our fullfledged programme on three exemplary conformation spaces (secondary structures, Akutsu’s simple type pseudoknots and kissing hairpins). This readily gives sets of algorithms that are either novel or have complexity comparable to classic implementations for minimization and Boltzmann ensemble applications of dynamic programming.
Hardware Implementation of the SmithWaterman Algorithm Using Recursive Variable Expansion
 Proceedings of 3rd Inernational Design and Test Workshop IDT08, Monastir
, 2008
"... Abstract: In this paper we adapted a novel approach for accelerating the SmithWaterman (SW) algorithm using Recursive Variable Expansion (RVE), which exposes extra parallelism in the algorithm, as compared to any other technique. The results demonstrate that applying the recursive variable expansi ..."
Abstract

Cited by 5 (4 self)
 Add to MetaCart
(Show Context)
Abstract: In this paper we adapted a novel approach for accelerating the SmithWaterman (SW) algorithm using Recursive Variable Expansion (RVE), which exposes extra parallelism in the algorithm, as compared to any other technique. The results demonstrate that applying the recursive variable expansion technique speeds up the performance by a factor of 1.36 to 1.41, as compared to traditional acceleration approaches at the cost of using 1.25 to 1.28 times more hardware resources.
Implementing algebraic dynamic programming in the functional and the imperative paradigm
 In E.A. Boiten and B. Möller, editors, Mathematics of Program Construction
, 2002
"... Abstract. Algebraic dynamic programming is a new method for developing and reasoning about dynamic programming algorithms. In this approach, socalled yield grammars and evaluation algebras constitute abstract specifications of dynamic programming algorithms. We describe how this theory is put to pr ..."
Abstract

Cited by 5 (5 self)
 Add to MetaCart
(Show Context)
Abstract. Algebraic dynamic programming is a new method for developing and reasoning about dynamic programming algorithms. In this approach, socalled yield grammars and evaluation algebras constitute abstract specifications of dynamic programming algorithms. We describe how this theory is put to practice by providing a specification language that can both be embedded in a lazy functional language, and translated into an imperative language. Parts of the analysis required for the latter translation also gives rise to sourcetosource transformations that improve the asymptotic efficiency of the functional implementation. The multiparadigm system resulting from this approach provides increased programming productivity and effective validation. 1
Matching and Significance Evaluation of Combined SequenceStructure Motifs in RNA
 Z. PHYS. CHEM
, 2001
"... The discipline of Algebraic Dynamic Programming is a powerful method to design and implement versatile pattern matching algorithms on sequences; here we consider mixed sequence and secondary structure motifs in RNA. A recurring challenge when designing new pattern matchers is to provide a statis ..."
Abstract

Cited by 3 (0 self)
 Add to MetaCart
The discipline of Algebraic Dynamic Programming is a powerful method to design and implement versatile pattern matching algorithms on sequences; here we consider mixed sequence and secondary structure motifs in RNA. A recurring challenge when designing new pattern matchers is to provide a statistical analysis of pattern significance. We demonstrate
A Systolic Array Architecture for the SmithWaterman Algorithm with High Performance Cell Design
 Proceedings of IADIS European Conference on Data Mining
, 2008
"... To infer homology and subsequently gene function, the SmithWaterman (SW) algorithm is used to find the optimal local alignment between two sequences. When searching sequence databases that may contain hundreds of millions of sequences, this algorithm becomes computationally expensive. In this pape ..."
Abstract

Cited by 3 (2 self)
 Add to MetaCart
To infer homology and subsequently gene function, the SmithWaterman (SW) algorithm is used to find the optimal local alignment between two sequences. When searching sequence databases that may contain hundreds of millions of sequences, this algorithm becomes computationally expensive. In this paper, we present a systolic array architecture for the SW algorithm with a new high performance cell design. The results demonstrate that the implementation of this architecture achieves a speedup of up to 652x, as compared to a softwareonly implementation, which is almost double the best case reported in the literature. The results also demonstrate that when mapped on the same FPGA platform, our design performs 1.47 to 5.75 times faster in terms of Cell Updates Per Second (CUPS), in comparison with other published systolic array designs, while utilizing 3.69 to 6.36 times less resources.
An Efficient and High Performance Linear Recursive Variable Expansion Implementation of the SmithWaterman Algorithm
"... Abstract — In this paper, we present an efficient and high performance linear recursive variable expansion (RVE) implementation of the SmithWaterman (SW) algorithm and compare it with a traditional linear systolic array implementation. The results demonstrate that the linear RVE implementation per ..."
Abstract

Cited by 2 (1 self)
 Add to MetaCart
(Show Context)
Abstract — In this paper, we present an efficient and high performance linear recursive variable expansion (RVE) implementation of the SmithWaterman (SW) algorithm and compare it with a traditional linear systolic array implementation. The results demonstrate that the linear RVE implementation performs up to 2.33 times better than the traditional linear systolic array implementation, at the cost of utilizing 2 times more resources.