• Title/Summary/Keyword: String matching

Search Result 101, Processing Time 0.026 seconds

Structure Based Information Retrieval Algorithm Using XML Technology and String Matching Algorithm (XML 기술과 스트링 매칭 기법을 이용한 구조 기반 정보 검색 알고리즘)

  • Han, Gi-Deok;Kwon, Hyuk-Chul
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2007.06c
    • /
    • pp.171-176
    • /
    • 2007
  • Parsing 작업의 결과인 Parse Tree 정보는 문장에 관한 구조적 정보를 가지고 있는 Tree 정보로 이 정보를 이용하여 정보 검색에 활용하는 알고리즘을 제안한다. 제안하는 알고리즘은 XML 기술과 스트링 매칭 기법을 이용하였으며, 사용한 스트링 매칭 기법은 Approximate String Matching 기법이다. Query 정보와 문서 정보를 Parsing하여 얻은 Parse Tree를 XML 형태의 정보로 변환한 후, 두 정보를 가지고 Approximate String Matching 기법을 적용하여 Query 정보와 문서 정보 간의 유사도를 계산한다. 제안하는 알고리즘의 장점은 구조 기반의 정보 검색 기능이 가능하고 비슷한 정보에 대한 검색 기능이 가능하며 비슷한 구조에 대한 검색 기능이 가능하다는 것이다.

  • PDF

Parallel Approximate String Matching with k-Mismatches for Multiple Fixed-Length Patterns in DNA Sequences on Graphics Processing Units (GPU을 이용한 다중 고정 길이 패턴을 갖는 DNA 시퀀스에 대한 k-Mismatches에 의한 근사적 병열 스트링 매칭)

  • Ho, ThienLuan;Kim, HyunJin;Oh, SeungRohk
    • The Transactions of The Korean Institute of Electrical Engineers
    • /
    • v.66 no.6
    • /
    • pp.955-961
    • /
    • 2017
  • In this paper, we propose a parallel approximate string matching algorithm with k-mismatches for multiple fixed-length patterns (PMASM) in DNA sequences. PMASM is developed from parallel single pattern approximate string matching algorithms to effectively calculate the Hamming distances for multiple patterns with a fixed-length. In the preprocessing phase of PMASM, all target patterns are binary encoded and stored into a look-up memory. With each input character from the input string, the Hamming distances between a substring and all patterns can be updated at the same time based on the binary encoding information in the look-up memory. Moreover, PMASM adopts graphics processing units (GPUs) to process the data computations in parallel. This paper presents three kinds of PMASM implementation methods in GPUs: thread PMASM, block-thread PMASM, and shared-mem PMASM methods. The shared-mem PMASM method gives an example to effectively make use of the GPU parallel capacity. Moreover, it also exploits special features of the CUDA (Compute Unified Device Architecture) memory structure to optimize the performance. In the experiments with DNA sequences, the proposed PMASM on GPU is 385, 77, and 64 times faster than the traditional naive algorithm, the shift-add algorithm and the single thread PMASM implementation on CPU. With the same NVIDIA GPU model, the performance of the proposed approach is enhanced up to 44% and 21%, compared with the naive, and the shift-add algorithms.

Implementation of An On-Line Continuous Recognition System for Cursive Handwriting (자소간의 흘림을 허용하는 연속형 온라인 필기 인식 시스템의 구현)

  • 권오성;권영빈
    • Journal of the Korean Institute of Telematics and Electronics B
    • /
    • v.31B no.9
    • /
    • pp.166-177
    • /
    • 1994
  • In this paper, an implemenation of on-line continuous recognizer for cursive Hangul handwriting is explained. For the Hangul recognition system, we propose a high speed string matching. The editing process in our proposed string matching is accomplished by single editing path. And the matching results are stored in a heap structure and we decide the user comfortibility of unceasing writing during recognition owing to the high speed matching. In the experimental result, a recongition rate of 86.36% at 1.75 second/character over 21,076 characters collected from 50 persons are abtained. And it is shown that the proposed recognition system is operated properly for the on-line recognition for cursive handwring between graphemes.

  • PDF

Design and Implementation of High-Speed Pattern Matcher in Network Intrusion Detection System (네트워크 침입 탐지 시스템에서 고속 패턴 매칭기의 설계 및 구현)

  • Yoon, Yeo-Chan;Hwang, Sun-Young
    • The Journal of Korean Institute of Communications and Information Sciences
    • /
    • v.33 no.11B
    • /
    • pp.1020-1029
    • /
    • 2008
  • This paper proposes an high speed pattern matching algorithm and its implementation. The pattern matcher is used to check patterns from realtime input packet. The proposed algorithm can find exact string, range of string values, and combination of string values from input packet at high speed. Given string and rule set are modelled as a state transition graph which can find overlapped strings simultaneously, and the state transition graph is partitioned according to input implicants to reduce implementation complexity. The pattern matcher scheme uses the transformed state transition graph and input packet as an input. The pattern matcher was modelled and implemented in VHDL language. Experimental results show the proprieties of the proposed approach.

An Analysis System for Whole Genomic Sequence Using String B-Tree (스트링 B-트리를 이용한 게놈 서열 분석 시스템)

  • Choe, Jeong-Hyeon;Jo, Hwan-Gyu
    • The KIPS Transactions:PartA
    • /
    • v.8A no.4
    • /
    • pp.509-516
    • /
    • 2001
  • As results of many genome projects, genomic sequences of many organisms are revealed. Various methods such as global alignment, local alignment are used to analyze the sequences of the organisms, and k -mer analysis is one of the methods for analyzing the genomic sequences. The k -mer analysis explores the frequencies of all k-mers or the symmetry of them where the k -mer is the sequenced base with the length of k. However, existing on-memory algorithms are not applicable to the k -mer analysis because a whole genomic sequence is usually a large text. Therefore, efficient data structures and algorithms are needed. String B-tree is a good data structure that supports external memory and fits into pattern matching. In this paper, we improve the string B-tree in order to efficiently apply the data structure to k -mer analysis, and the results of k -mer analysis for C. elegans and other 30 genomic sequences are shown. We present a visualization system which enables users to investigate the distribution and symmetry of the frequencies of all k -mers using CGR (Chaotic Game Representation). We also describe the method to find the signature which is the part of the sequence that is similar to the whole genomic sequence.

  • PDF

The Design of a Code-String Matching Processor using an EWLD Algorithm (EWLD 알고리듬을 이용한 코드열 정합 프로세서의 설계)

  • 조원경;홍성민;국일호
    • Journal of the Korean Institute of Telematics and Electronics A
    • /
    • v.31A no.4
    • /
    • pp.127-135
    • /
    • 1994
  • In this paper we propose an EWLD(Enhanced Weighted Levenshtein Distance) algorithm to organize code-string pattern matching linear array processor based on the mappting to an one-dimensional array from a two-dimensional matching matrix, and design a processing element(PE) of the processor, N PEs are required instead of NS02T in the processor because of the mapping. Data input and output between PEs and all internal operations of each PE are performed in bit-serial fashion. The bit-serial operation consists of the computing of word distance (WD) by comparison and the selection of optimal code transformation path, and takes 22 clocks as a cycle. The layout of a PE is designed based on the double metal $1.5\mu$m CMOS rule. About 1,800 transistors consistute a processing element and 2 PEs are integrated on a 3mm$\times$3mm sized chip.

  • PDF

Comparing String Similarity Algorithms for Recognizing Task Names Found in Construction Documents (문자열 유사도 알고리즘을 이용한 공종명 인식의 자연어처리 연구 - 공종명 문자열 유사도 알고리즘의 비교 -)

  • Jeong, Sangwon;Jeong, Kichang
    • Korean Journal of Construction Engineering and Management
    • /
    • v.21 no.6
    • /
    • pp.125-134
    • /
    • 2020
  • Natural language encountered in construction documents largely deviates from those that are recommended by the authorities. Such practice that is lacking in coherence will discourage integrated research with automation, and it will hurt the productivity in the industry for the long run. This research aims to compare multiple string similarity (string matching) algorithms to compare each algorithm's performance in recognizing the same task name written in multiple different ways. We also aim to start a debate on how prevalent the aforementioned deviation is. Finally, we composed a small dataset that associates construction task names found in practice with the corresponding task names that are less cluttered w.r.t their formatting. We expect that this dataset can be used to validate future natural language processing approaches.

Fingerprint Matching Algorithm using MHC Detector Set of String Structure (스트링 구조의 MHC 인식부를 이용한 지문 매칭알고리즘)

  • Sim, Kwee-Bo;Jeong, Jae-Won;Lee, Dong-Wook
    • Journal of the Korean Institute of Intelligent Systems
    • /
    • v.14 no.3
    • /
    • pp.279-284
    • /
    • 2004
  • Fingerprints have been widely used in the biometric authentication because of its performance, uniqueness and universality. Recently, the speed of identification becomes a very important point in the fingerprint-based security applications. Also, the reliability still remains the main issue in the fingerprint identification. In this paper, we propose the fast and reliable fingerprint matching algorithm based on the process of the 'self-nonself' discrimination in the biological immune system. The proposed algorithm is organized by two-matching stage. The 1st matching stage does the matching process by the use of the 'self-space' and MHC detector string set that are generated from the minutiae and the values of the directional field. Then the 2nd matching stage is made based on the local-structure of the minutiae. The proposed two matching stage reduces matching time while the reliability of the matching algorithm is maintained.

The Recognition of Occluded 2-D Objects Using the String Matching and Hash Retrieval Algorithm (스트링 매칭과 해시 검색을 이용한 겹쳐진 이차원 물체의 인식)

  • Kim, Kwan-Dong;Lee, Ji-Yong;Lee, Byeong-Gon;Ahn, Jae-Hyeong
    • The Transactions of the Korea Information Processing Society
    • /
    • v.5 no.7
    • /
    • pp.1923-1932
    • /
    • 1998
  • This paper deals with a 2-D objects recognition algorithm. And in this paper, we present an algorithm which can reduce the computation time in model retrieval by means of hashing technique instead of using the binary~tree method. In this paper, we treat an object boundary as a string of structural units and use an attributed string matching algorithm to compute similarity measure between two strings. We select from the privileged strings a privileged string wIth mmimal eccentricity. This privileged string is treated as the reference string. And thell we wllstructed hash table using the distance between privileged string and the reference string as a key value. Once the database of all model strings is built, the recognition proceeds by segmenting the scene into a polygonal approximation. The distance between privileged string extracted from the scene and the reference string is used for model hypothesis rerieval from the table. As a result of the computer simulation, the proposed method can recognize objects only computing, the distance 2-3tiems, while previous method should compute the distance 8-10 times for model retrieval.

  • PDF

High Throughput Parallel KMP Algorithm Considering CPU-GPU Memory Hierarchy (CPU-GPU 메모리 계층을 고려한 고처리율 병렬 KMP 알고리즘)

  • Park, Soeun;Kim, Daehee;Lee, Myungho;Park, Neungsoo
    • The Transactions of The Korean Institute of Electrical Engineers
    • /
    • v.67 no.5
    • /
    • pp.656-662
    • /
    • 2018
  • Pattern matching algorithm is widely used in many application fields such as bio-informatics, intrusion detection, etc. Among many string matching algorithms, KMP (Knuth-Morris-Pratt) algorithm is commonly used because of its fast execution time when using large texts. However, the processing speed of KMP algorithm is also limited when the text size increases significantly. In this paper, we propose a high throughput parallel KMP algorithm considering CPU-GPU memory hierarchy based on OpenCL in GPGPU (General Purpose computing on Graphic Processing Unit). We focus on the optimization for the allocation of work-times and work-groups, the local memory copy of the pattern data and the failure table, and the overlapping of the data transfer with the string matching operations. The experimental results show that the execution time of the optimized parallel KMP algorithm is about 3.6 times faster than that of the non-optimized parallel KMP algorithm.