Ζ-함수를 이용한 순위패턴매칭과 순위다중패턴매칭 병렬계산

Parallel Computation of Ζ-Function for Order-Preserving Pattern Matching and Order-Preserving Multiple Pattern Matching

초록

순위패턴매칭문제는 길이가 각각 n, m인 텍스트 Τ와 패턴 Ρ가 주어졌을 때, Ρ와 순위동형인 Τ의 모든 부분문자열의 위치를 찾는 문제이다. 순위다중패턴매칭문제는 길이가 n인 텍스트 Τ와 패턴집합 W={Ρ₁, Ρ₂,…,Ρb}가 주어졌을 때 W의 패턴들과 순위동형인 Τ의 모든 부분문자열의 위치를 찾는 문제이다. 본 논문에서는 Ζ-함수를 기반으로, 순위패턴매칭문제를 Ο(n+hm)개의 스레드를 사용하여 Ο(m) 시간에 해결하는 병렬알고리즘과 순위다중패턴매칭문제를 Ο(b(n+M))개의 스레드를 사용하여 Ο(n+M) 시간에 해결하는 병렬알고리즘을 제시한다. 이때, h는 블록의 개수이며, M은 W에서 가장 긴 패턴의 길이를 나타낸다. 실험 결과, 순위패턴매칭문제에 대한 병렬알고리즘은 순차알고리즘보다 m=10, n=1,000,000일 때 약 71.2배 빠르게 수행되었다. 또한 순위다중패턴매칭문제에 대한 병렬알고리즘은 b=1,000, m=10, n=1,000일 때 순차알고리즘보다 약 12.2배 빠르게 수행되었다.

키워드

order-preserving pattern matchingorder-preserving multiple pattern matchingΖ-functionparallel algorithm순위패턴매칭순위다중패턴매칭Ζ-함수병렬알고리즘
제목
Ζ-함수를 이용한 순위패턴매칭과 순위다중패턴매칭 병렬계산
제목 (타언어)
Parallel Computation of Ζ-Function for Order-Preserving Pattern Matching and Order-Preserving Multiple Pattern Matching
저자
신유건김영호심정섭
DOI
10.5626/JOK.2018.45.8.778
발행일
2018-08
유형
Y
저널명
정보과학회논문지
45
8
페이지
778 ~ 785