Parallel Processing of Multiple Pattern Matching Algorithms for Biological Sequences: Methods and Performance Results

S. Charalampos, Panagiotis Drakatos, Konstantinos Giannis · InTech eBooks · 2011

Multiple pattern matching is the computationally intensive kernel of many applications including information retrieval and intrusion detection systems, web and spam filters and virus scanners.The use of multiple pattern matching is very important in genomics where the algorithms are frequently used to locate nucleotide or amino acid sequence patterns in biological sequence databases.For example, when proteomics data is used for genome annotation in a process called proteogenomic mapping (Jaffe et al., 2004), a set of peptide identifications obtained using mass spectrometry is matched against a target genome translated in all six reading frames.Given a sequence database (or text) T = t 1 t 2 ...t n of length n and a finite set of r patterns P = p 1 , p 2 , ..., p r ,whereeachp i is a string p i = p i 1 p i 2 ...p i m of length m over a finite character set Σ, the multiple pattern matching problem can be defined as the way to locate all the occurrences of any of the patterns in the sequence database.The naive solution to this problem is to perform r separate searches with one of the sequential algorithms (Navarro & Raffinot, 2002).While frequently used in the past, this technique is not efficient when a large pattern set is involved.The aim of all multiple pattern matching algorithms is to locate the occurrences of all patterns with a single pass of the sequence database.These algorithms are based of single-pattern matching algorithms, with some of their functions generalized to process multiple patterns simultaneously during the preprocessing phase, generally with the use of trie structures or hashing.Multiple pattern matching is widely used in computational biology for a variety of pattern matching tasks.Brundo and Morgenstern used a simplified version of the Aho-Corasick algorithm to identify anchor points in their CHAOS algorithm for fast alignment of large genomic sequences (Brudno & Morgenstern, 2002;Brudno et al., 2004).Hyyro et al. demonstrated that Aho-Corasick outperforms other algorithms for locating unique oligonucleotides in the yeast genome (Hyyro et al., 2005).The SITEBLAST algorithm (Michael et al., 2005) employs the Aho-Corasick algorithm to retrieve all motif anchors for a local alignment procedure for genomic sequences that makes use of prior knowledge.Buhler

Read the paper · More papers on PaperTik