A memory-efficient algorithm for multiple sequence alignment with constraints.
BACKGROUND
Recently, the concept of the constrained sequence alignment was proposed to incorporate the knowledge of biologists about structures/functionalities/consensuses of their datasets into sequence alignment such that the user-specified residues/nucleotides are aligned together in the computed alignment. The currently developed programs use the so-called progressive approach to efficiently obtain a constrained alignment of several sequences. However, the kernels of these programs, the dynamic programming algorithms for computing an optimal constrained alignment between two sequences, run in (gamman2) memory, where gamma is the number of the constraints and n is the maximum of the lengths of sequences. As a result, such a high memory requirement limits the overall programs to align short sequences only.


RESULTS
We adopt the divide-and-conquer approach to design a memory-efficient algorithm for computing an optimal constrained alignment between two sequences, which greatly reduces the memory requirement of the dynamic programming approaches at the expense of a small constant factor in CPU time. This new algorithm consumes only O(alphan) space, where alpha is the sum of the lengths of constraints and usually alpha << n in practical applications. Based on this algorithm, we have developed a memory-efficient tool for multiple sequence alignment with constraints.


BACKGROUND
http://genome.life.nctu.edu.tw/MUSICME.
Lu
Chin Lung
CL
Department of Biological Science and Technology, National Chiao Tung University Hsinchu 300, Taiwan, Republic of China. cllu@mail.nctu.edu.tw
Huang
Yen Pin
YP
D000465:Algorithms; D000595:Amino Acid Sequence; D001483:Base Sequence; D016247:Information Storage and Retrieval / Q000379:methods*; D020407:Internet; D008969:Molecular Sequence Data; D015203:Reproducibility of Results; D012680:Sensitivity and Specificity; D016415:Sequence Alignment / Q000379:methods*; D017421:Sequence Analysis / Q000379:methods*; D020539:Sequence Analysis, Protein / Q000379:methods; D017423:Sequence Analysis, RNA / Q000379:methods; D017385:Sequence Homology; D012984:Software