Optimal Sequence Alignment Algorithm Using Space Division Technique

공간 분할 방법을 이용한 최적 서열정렬 알고리즘

  • 안희국 (강원대학교 컴퓨터과학과) ;
  • 노희영 (강원대학교 컴퓨터과학과)
  • Published : 2007.05.15

Abstract

The problem of finding an optimal alignment between sequence A and B can be solved by dynamic programming algorithm(DPA) efficiently. But, if the length of string was longer, the problem might not be solvable because it requires O(m*n) time and space complexity.(where, $m={\mid}A{\mid},\;n={\mid}B{\mid}$) For space, Hirschberg developed a linear space and quadratic time algorithm, so computer memory was no longer a limiting factor for long sequences. As computers's processor and memory become faster and larger, a method is needed to speed processing up, although which uses more space. For this purpose, we present an algorithm which will solve the problem in quadratic time and linear space. By using division method, It computes optimal alignment faster than LSA, although requires more memory. We generalized the algorithm about division problem for not being divided into integer and pruned additional space by entry/exit node concept. Through the proofness and experiment, we identified that our algorithm uses d*(m+n) space and a little more (m*n) time faster than LSA.

두 서열 A와 B간의 최적정렬을 찾는 문제는 동적프로그래밍 알고리즘을 사용하여 효과적으로 해결 될 수 있다. 하지만, 길이가 각각 m, n인 두 서열, $S_1$, $S_2$를 정렬하기 위해서는 O(m*n)의 시간과 공간 복잡도를 갖기 때문에 서열의 길이가 길어질 경우에는 시간과 공간 비용 문제로 인해 적용 할 수 없게 된다. 실제 계산상에 제한요소로 작용하는 공간비용 문제를 해결하기 위해 Hirschberg에 의해 제시된 선형공간 알고리즘은 이 문제를 O(n*m)의 시간복잡도와 O(n+m)의 공간복잡도로서 해결하였다. 컴퓨터 기술의 발전으로 CPU의 처리속도가 향상되고, 사용가능한 주기억장치의 공간이 확대됨에 따라, 기억공간은 더 사용하더라도 처리속도는 높일 수 있는 방법이 필요하다. 이를 위해, 본 논문에서는 공간 분할 방법을 통하여 공간 소모는 선형공간 알고리즘보다 많지만, 처리 속도는 빠른 O(n*m)의 시간과 O(n+m)의 공간비용을 갖는 알고리즘을 제안한다. 또한 분할 시 서열의 길이변화에 따른 분할 수(d) 문제를 일반화하고, 입/출구 노드 개념을 이용하여 불필요한 연산을 제거하였다. 선형공간 알고리즘이 (m+n)의 공간으로 2*m*n에 가까운 속도를 갖는데 비해, 본 알고리즘은 (m+n)*d의 공간으로 m*n에 가까운 결과를 보임을 증명과 실험결과로부터 확인한다.

Keywords

References

  1. Setubal, J. and Meidanis, J. 'Introduction to Computational Molecular Biology,' PWS Publishing Company, 1997
  2. Wagner, R. A. and Fischer, M. J. 'The string-to-string correction problem,' J. ACM 21, 168-173, Jan. 1974 https://doi.org/10.1145/321796.321811
  3. Tao Jiang, Ying Xu and Michael Q. Zhang, 'Current topics in computational molecular biology,' The MIT Press, 5, Cambridge Center, Cambridge, 2002
  4. Andreas D. Baxevanis and B. F. Francis Ouellette. 'Bioinformatics : A practical guide to the analysis of genes and progeins,' 2-ed; Willey & Sons, 2001
  5. Dennis A. Benson, Ilene Karsch-Mizrachi, David J. Lipman, James Ostell and David L. Wheeler. 'GeneBank,' Nucleic Acids Research, Vol. 24, Database issue, 2006 https://doi.org/10.1093/nar/gkj157
  6. Cohen J. 'Bioinformatics: An introduction for computer scientists,' ACM Comput. Surv. Vol. 36, No. 2, 122-158, Jun. 2004 https://doi.org/10.1145/1031120.1031122
  7. Schwartz, S. Zhang, Z., Frazer, K. A., et al, 'PipMaker-A Web Server for Aligning Two Genomic DNA Sequences,' Genome Research 10, 577-686., 2002 https://doi.org/10.1101/gr.10.4.577
  8. Ning, Z., et al, 'SSAHA: a fast search method for large DNA databases,' Genome Research 11(10), 1725-1729., 2001 https://doi.org/10.1101/GR.194201
  9. Delcher, A.L., Kasif, S., Fleishmann, R.D., Peterson, J., White, O. & Salzberg, S.L. 'Alignment of whole genomes,' Nucleic Acids Research 27, 2369-2376., 1999 https://doi.org/10.1093/nar/27.11.2369
  10. Brudno, M. & Morgenstern, B. 'Fast and sensitive alignment of large genomic sequences,' in 'IEEE Computer Society Bioinformamtics Conference 2002', Standford University, CA, USA, pp. 138-147., 2002 https://doi.org/10.1109/CSB.2002.1039337
  11. Needleman, S. B. and Wunsch C.D. 'A general method applicable to the search for similarities in the amino acid sequences of two proteins,' J. Mol. Biol. vol. 48: 443-453, 1970 https://doi.org/10.1016/0022-2836(70)90057-4
  12. Hirschberg, D. S. 'A linear space algorithm for computing maximal common subsequences,' Commun. Assoc. Comput. March. vol. 18: 341-343, 1975 https://doi.org/10.1145/360825.360861
  13. Myers, E. W. and Miller, W. 'Optimal alignments in linear space,' Comput. Applic. Biosci. vol. 4: 11-17, 1988 https://doi.org/10.1093/bioinformatics/4.1.11
  14. Steven L. Salzberg. 'Gene Discovery in DNA Sequences,' IEEE. Intelligent System. Nov. 1999 https://doi.org/10.1109/5254.809567
  15. F. S. Roberts. 'Applied Combinatorics,' Prentice-Hall, 1984
  16. Arthur M. Lesk. 'Introduction to Bioinformatics,' Oxford University Press Inc, 2002