• 제목/요약/키워드: suffix matching

검색결과 19건 처리시간 0.018초

Probabilistic Model for Performance Analysis of a Heuristic with Multi-byte Suffix Matching

  • Choi, Yoon-Ho
    • KSII Transactions on Internet and Information Systems (TIIS)
    • /
    • 제7권4호
    • /
    • pp.711-725
    • /
    • 2013
  • A heuristic with multi-byte suffix matching plays an important role in real pattern matching algorithms. By skipping many characters at a time in the process of comparing a given pattern with the text, the pattern matching algorithm based on a heuristic with multi-byte suffix matching shows a faster average search time than algorithms based on deterministic finite automata. Based on various experimental results and simulations, the previous works show that the pattern matching algorithms with multi-byte suffix matching performs well. However, there have been limited studies on the mathematical model for analyzing the performance in a standard manner. In this paper, we propose a new probabilistic model, which evaluates the performance of a heuristic with multi-byte suffix matching in an average-case search. When the theoretical analysis results and experimental results were compared, the proposed probabilistic model was found to be sufficient for evaluating the performance of a heuristic with suffix matching in the real pattern matching algorithms.

접미사 배열을 이용한 Suffix-Prefix가 일치하는 모든 쌍 찾기 (Finding All-Pairs Suffix-Prefix Matching Using Suffix Array)

  • 한선미;우진운
    • 정보처리학회논문지A
    • /
    • 제17A권5호
    • /
    • pp.221-228
    • /
    • 2010
  • 최근 문자열 연산들이 계산 생물학 및 인터넷의 보안, 검색 분야에 응용되면서 효율적인 문자열 연산을 위한 다양한 자료구조와 알고리즘이 연구되고 있다. suffix-prefix가 일치하는 모든 쌍 찾기는 두 개 이상의 문자열이 주어질 때 각 쌍의 문자열에 대해 가장 긴 suffix와 일치하는 prefix를 찾는 것으로 가장 짧은 슈퍼스트링을 검출하는 근사 알고리즘에서 사용될 뿐만 아니라 생물정보학, 데이터 압축 분야에서도 중요하게 사용된다. 본 논문에서는 접미사 배열을 이용하는 suffix-prefix가 일치하는 모든 쌍 찾기 알고리즘을 제안하며 O($k{\cdot}m$) 시간 복잡도를 가진다. 접미사 배열 알고리즘이 접미사 트리 알고리즘 보다 소요 시간과 메모리 면에서 더 우수함을 실험을 통해서 제시한다.

네트워크 보안을 위한 서픽스 트리 기반 고속 패턴 매칭 알고리즘 (High Performance Pattern Matching algorithm with Suffix Tree Structure for Network Security)

  • 오두환;노원우
    • 전자공학회논문지
    • /
    • 제51권6호
    • /
    • pp.110-116
    • /
    • 2014
  • 패턴 매칭 알고리즘은 컴퓨터 네트워크, 유비쿼터스 네트워크, 그리고 센서 네트워크 등을 위한 보안 프로그램에 주로 사용 된다. IT 기술의 발전과 함께 정보의 디지털화가 가속화되면서 네트워크를 통해 전달되는 데이터양이 급증하고 있다. 이에 따라 패턴 매칭 연산의 복잡도도 폭발적으로 증가하고 있다. 따라서 더 많은 패턴을 보다 빠르게 검색할 수 있는 고성능 알고리즘의 개발이 끊임없이 요구되고 있다. 본 논문은 서픽스 트리 기반 패턴 매칭 알고리즘을 새롭게 제안하여 대용량 패턴 매칭 연산의 성능을 높였다. 서픽스 트리는 사전에 정의된 복수 패턴들의 서픽스를 기반으로 생성된다. 이 트리에 쉬프트 노드 개념을 추가하여 기존 패턴 매칭 연산들 중 불필요한 연산의 수행 횟수를 줄였다. 결과적으로 제안하는 구조를 통해 기존 알고리즘 대비 24% 이상의 성능 향상을 이루었다.

써픽스 배열 합병을 이용한 일반화된 써픽스 배열의 효율적인 구축 알고리즘 (Efficient Construction of Generalized Suffix Arrays by Merging Suffix Arrays)

  • 전정은;박희진;김동규
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제32권6호
    • /
    • pp.268-278
    • /
    • 2005
  • 본 논문에서는 A와 B의 써픽스 배열이 주어졌을 때 두 배열을 합병하여 이들의 일반화된 써픽스 배열을 구축하는 방법을 연구하였다. 흘수 써픽스와 짝수 써픽스같이 특별한 경우의 두 써픽스를 합병하는 알고리즘은 이미 발표되었지만, A와 』가 임의의 문자열인 일반적인 경우 두 써픽스 배열을 합병하는 효율적인 알고리즘은 아직 개발되지 않았다. 따라서 현재까지는 A와 B의 써픽스 배열을 합병하기 위해서 A와 B의 써픽스 배열이 이미 주어져 있음에도 불구하고 A$\#$B$\$$라는 문자열에 대한 써픽스 배열을 다시 구축해야했다. 본 논문에서는 상수 문자집합이나 정수 문자집합에서 정의된 임의의 두 문자열 A와 B에 대한 써픽스 배열을 합병하는 효율적인 알고리즘을 제시한다. 실험결과 상수문자집합의 경우 A$\#$B$\$$에대한 써픽스 배열을 다시 구축하는 것보다 합병하는 것이 5배 정도 빨랐다. 여기서 제시한 알고리즘은 써픽스 배열 A에서 스트링 B의 모든 써픽스를 검색하여야 한다. 이를 위해 써픽스 배열에서 정의한 써픽스 링크를 사용하였고, 또 써픽스 링크를 계산하는 효율적인 알고리즘도 개발하였다. 써픽스 링크는 생물정보학에서 사용되는 매칭 통계나 최장 공통 부분 문자열 검색처럼 다른 스트링의 써픽스 배열에서 주어진 스트링의 모든 써픽스를 찾는 데 이용할 수 있으므로, 이를 계산하는 효율적인 방법을 제시한 것 역시 많은 의미를 가진다. 실험을 통해 여기서 제시한 방법이 기존 알고리즘 중 가장 빠른 방법보다 3$\~$4배 정도 빠르다는 것을 보였다.

외부 메모리에서 문자열을 효율적으로 탐색하기 위한 인덱스 자료 구조 (An Index Data Structure for String Search in External Memory)

  • 나중채;박근수
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제32권11_12호
    • /
    • pp.598-607
    • /
    • 2005
  • 본 논문에서는 새로운 외부 메모리 인덱스 자료 구조인 접미사 B-tree를 제안한다. 접미사 B-tree는 String B-tree와 마찬가지로 문자열을 키로 가지는 B-tree이다. String B-tree의 노드는 복잡한 Patricia ie로 구현된 반면, 접미사 B-tree의 노드는 일반적인 B-tree처럼 배열로 구현되어 보다 간단하고 구현하기 쉽다. 그럼에도 불구하고 접미사 B-tree에서 배열을 이용하여 String B-tree만큼 효율적으로 분기를 찾을 수 있다. 결과적으로 문자열 알고리즘 분야에서 기본적이고 중요한 문제인 문자열 매칭을 String B-tree와 동일한 디스크 접근을 사용하여 수행할 수 있다.

서픽스트리 클러스터링 방법과 블라스트를 통합한 유전자 서열의 클러스터링과 기능검색에 관한 연구 (A Study on Clustering and Identifying Gene Sequences using Suffix Tree Clustering Method and BLAST)

  • 한상일;이성근;김경훈;이주영;김영한;황규석
    • 제어로봇시스템학회논문지
    • /
    • 제11권10호
    • /
    • pp.851-856
    • /
    • 2005
  • The DNA and protein data of diverse species have been daily discovered and deposited in the public archives according to each established format. Database systems in the public archives provide not only an easy-to-use, flexible interface to the public, but also in silico analysis tools of unidentified sequence data. Of such in silico analysis tools, multiple sequence alignment [1] methods relying on pairwise alignment and Smith-Waterman algorithm [2] enable us to identify unknown DNA, protein sequences or phylogenetic relation among several species. However, in the existing multiple alignment method as the number of sequences increases, the runtime increases exponentially. In order to remedy this problem, we adopted a parallel processing suffix tree algorithm that is able to search for common subsequences at one time without pairwise alignment. Also, the cross-matching subsequences triggering inexact-matching among the searched common subsequences might be produced. So, the cross-matching masking process was suggested in this paper. To identify the function of the clusters generated by suffix tree clustering, BLAST was combined with a clustering tool. Our clustering and annotating tool is summarized as the following steps: (1) construction of suffix tree; (2) masking of cross-matching pairs; (3) clustering of gene sequences and (4) annotating gene clusters by BLAST search. The system was successfully evaluated with 22 gene sequences in the pyrubate pathway of bacteria, clustering 7 clusters and finding out representative common subsequences of each cluster

기능 도메인 예측을 위한 유전자 서열 클러스터링 (Gene Sequences Clustering for the Prediction of Functional Domain)

  • 한상일;이성근;허보경;변윤섭;황규석
    • 제어로봇시스템학회논문지
    • /
    • 제12권10호
    • /
    • pp.1044-1049
    • /
    • 2006
  • Multiple sequence alignment is a method to compare two or more DNA or protein sequences. Most of multiple sequence alignment tools rely on pairwise alignment and Smith-Waterman algorithm to generate an alignment hierarchy. Therefore, in the existing multiple alignment method as the number of sequences increases, the runtime increases exponentially. In order to remedy this problem, we adopted a parallel processing suffix tree algorithm that is able to search for common subsequences at one time without pairwise alignment. Also, the cross-matching subsequences triggering inexact-matching among the searched common subsequences might be produced. So, the cross-matching masking process was suggested in this paper. To identify the function of the clusters generated by suffix tree clustering, BLAST and CDD (Conserved Domain Database)search were combined with a clustering tool. Our clustering and annotating tool consists of constructing suffix tree, overlapping common subsequences, clustering gene sequences and annotating gene clusters by BLAST and CDD search. The system was successfully evaluated with 36 gene sequences in the pentose phosphate pathway, clustering 10 clusters, finding out representative common subsequences, and finally identifying functional domains by searching CDD database.

A Generalization of the Linearized Suffix Tree to Square Matrices

  • Na, Joong-Chae;Lee, Sun-Ho;Kim, Dong-Kyue
    • 한국멀티미디어학회논문지
    • /
    • 제13권12호
    • /
    • pp.1760-1766
    • /
    • 2010
  • The linearized suffix tree (LST) is an array data structure supporting traversals on suffix trees. We apply this LST to two dimensional (2D) suffix trees and obtain a space-efficient substitution of 2D suffix trees. Given an $n{\times}n$ text matrix and an $m{\times}m$ pattern matrix over an alphabet ${\Sigma}$, our 2D-LST provides pattern matching in $O(m^2log{\mid}{\Sigma}{\mid})$ time and $O(n^2)$ space.

대용량 DNA서열 처리를 위한 서픽스 트리 생성 알고리즘의 개발 (Suffix Tree Constructing Algorithm for Large DNA Sequences Analysis)

  • 최해원
    • 한국산업정보학회논문지
    • /
    • 제15권1호
    • /
    • pp.37-46
    • /
    • 2010
  • 서픽스 트리는 데이터의 내부구조를 자세히 나타내고 선형시간 탐색이 가능한 효과적인 자료구조로서 DNA 서열분석 등에 유용하다. 그러나 서열을 서픽스 트리로 구축하는 경우 트리의 크기가 원본의 최소 30배 이상으로 커지므로 테라바이트(TB)급의 대용량 DNA 서열의 경우에 메모리상의 응용은 매우 어려운 문제점이 있다. 이에 본 논문에서는 디스크를 이용한 대용량 DNA의 서픽스 트리 응용기법을 제시한다. 이때 DNA 서열구조를 고려한 서픽스 트리 선형 탐색 특성 유지를 보장한다. 이를 검증하기 위하여 9G Byte의 유전자 단편 서열을 이용해 424G Byte의 서픽스 트리를 디스크에 구축한 다음, 임의의 질의 서열에 대해 KMP알고리즘과 비교한 결과 질의 응답시간에서 우수한 성능을 보였다.

Effective Biological Sequence Alignment Method using Divide Approach

  • 최해원;김상진;피수영
    • 한국산업정보학회논문지
    • /
    • 제17권6호
    • /
    • pp.41-50
    • /
    • 2012
  • This paper presents a new sequence alignment method using the divide approach, which solves the problem by decomposing sequence alignment into several sub-alignments with respect to exact matching subsequences. Exact matching subsequences in the proposed method are bounded on the generalized suffix tree of two sequences, such as protein domain length more than 7 and less than 7. Experiment results show that protein sequence pairs chosen in PFAM database can be aligned using this method. In addition, this method reduces the time about 15% and space of the conventional dynamic programming approach. And the sequences were classified with 94% of accuracy.