Parallel Three-Sequence Alignment with Space-efficiency

碩士 === 國立清華大學 === 資訊工程學系 === 94 === The sequence alignment is a fundamental problem in computational biology. Many sequence alignment methods have been proposed such as pair-wise sequence alignment, multiple sequence alignment (MSA), syntenic alignment, constraint multiple sequence alignment, and so...

Full description

Bibliographic Details
Main Authors: Chen-Tai Huang, 黃振臺
Other Authors: Chuan-Yi Tang
Format: Others
Language:en_US
Published: 2006
Online Access:http://ndltd.ncl.edu.tw/handle/00443899292006936454
Description
Summary:碩士 === 國立清華大學 === 資訊工程學系 === 94 === The sequence alignment is a fundamental problem in computational biology. Many sequence alignment methods have been proposed such as pair-wise sequence alignment, multiple sequence alignment (MSA), syntenic alignment, constraint multiple sequence alignment, and so on. Among these methods, pair-wise sequence alignment is most commonly used. Recently, MSA is more and more important which has been used to solve many molecular biological problems. The sum-of-pairs MSA problem has been proved to be a NP-complete problem. A progressive algorithm is used to solve MSA problem which is based on the pair-wise sequence alignment. However, the quality of the result of progressive MSA is not satisfied sometimes. This problem may be solved by using three-sequence alignment as a basic step instead of pair-wise sequence alignment. Three-sequence alignment can be solved sequentially in O(mnl) time complexity and O(mn) space complexity, where m, n and l are the lengths of the sequences to be aligned. The complexities of three-sequence alignment limit its applicability. Hence, to reduce the complexities becomes an important issue. In this paper, we propose a parallel algorithm to solve this problem. Our algorithm requires O(mn/p) space complexity and O(mnl/p) time complexity, where p is number of processors. Both experimental results and theoretical analysis are presented. The experimental results show that our algorithm is applicable and achieves a good speed up.