-
Symmetric Continuous Subgraph Matching with Bidirectional Dynamic Programming
Authors:
Seunghwan Min,
Sung Gwan Park,
Kunsoo Park,
Dora Giammarresi,
Giuseppe F. Italiano,
Wook-Shin Han
Abstract:
In many real datasets such as social media streams and cyber data sources, graphs change over time through a graph update stream of edge insertions and deletions. Detecting critical patterns in such dynamic graphs plays an important role in various application domains such as fraud detection, cyber security, and recommendation systems for social networks. Given a dynamic data graph and a query gra…
▽ More
In many real datasets such as social media streams and cyber data sources, graphs change over time through a graph update stream of edge insertions and deletions. Detecting critical patterns in such dynamic graphs plays an important role in various application domains such as fraud detection, cyber security, and recommendation systems for social networks. Given a dynamic data graph and a query graph, the continuous subgraph matching problem is to find all positive matches for each edge insertion and all negative matches for each edge deletion. The state-of-the-art algorithm TurboFlux uses a spanning tree of a query graph for filtering. However, using the spanning tree may have a low pruning power because it does not take into account all edges of the query graph. In this paper, we present a symmetric and much faster algorithm SymBi which maintains an auxiliary data structure based on a directed acyclic graph instead of a spanning tree, which maintains the intermediate results of bidirectional dynamic programming between the query graph and the dynamic graph. Extensive experiments with real and synthetic datasets show that SymBi outperforms the state-of-the-art algorithm by up to three orders of magnitude in terms of the elapsed time.
△ Less
Submitted 2 April, 2021;
originally announced April 2021.
-
A Linear Time Algorithm for Constructing Hierarchical Overlap Graphs
Authors:
Sangsoo Park,
Sung Gwan Park,
Bastien Cazaux,
Kunsoo Park,
Eric Rivals
Abstract:
The hierarchical overlap graph (HOG) is a graph that encodes overlaps from a given set P of n strings, as the overlap graph does. A best known algorithm constructs HOG in O(||P|| log n) time and O(||P||) space, where ||P|| is the sum of lengths of the strings in P. In this paper we present a new algorithm to construct HOG in O(||P||) time and space. Hence, the construction time and space of HOG ar…
▽ More
The hierarchical overlap graph (HOG) is a graph that encodes overlaps from a given set P of n strings, as the overlap graph does. A best known algorithm constructs HOG in O(||P|| log n) time and O(||P||) space, where ||P|| is the sum of lengths of the strings in P. In this paper we present a new algorithm to construct HOG in O(||P||) time and space. Hence, the construction time and space of HOG are better than those of the overlap graph, which are O(||P|| + n^2).
△ Less
Submitted 27 February, 2021; v1 submitted 25 February, 2021;
originally announced February 2021.
-
Cartesian Tree Matching and Indexing
Authors:
Sung Gwan Park,
Amihood Amir,
Gad M. Landau,
Kunsoo Park
Abstract:
We introduce a new metric of match, called Cartesian tree matching, which means that two strings match if they have the same Cartesian trees. Based on Cartesian tree matching, we define single pattern matching for a text of length n and a pattern of length m, and multiple pattern matching for a text of length n and k patterns of total length m. We present an O(n+m) time algorithm for single patter…
▽ More
We introduce a new metric of match, called Cartesian tree matching, which means that two strings match if they have the same Cartesian trees. Based on Cartesian tree matching, we define single pattern matching for a text of length n and a pattern of length m, and multiple pattern matching for a text of length n and k patterns of total length m. We present an O(n+m) time algorithm for single pattern matching, and an O((n+m) log k) deterministic time or O(n+m) randomized time algorithm for multiple pattern matching. We also define an index data structure called Cartesian suffix tree, and present an O(n) randomized time algorithm to build the Cartesian suffix tree. Our efficient algorithms for Cartesian tree matching use a representation of the Cartesian tree, called the parent-distance representation.
△ Less
Submitted 22 May, 2019;
originally announced May 2019.
-
Precision improvement of MEMS gyros for indoor mobile robots with horizontal motion inspired by methods of TRIZ
Authors:
Dongmyoung Shin,
Sung Gil Park,
Byung Soo Song,
Eung Su Kim,
Oleg Kupervasser,
Denis Pivovartchuk,
Ilya Gartseev,
Oleg Antipov,
Evgeniy Kruchenkov,
Alexey Milovanov,
Andrey Kochetov,
Igor Sazonov,
Igor Nogtev,
Sun Woo Hyun
Abstract:
In the paper, the problem of precision improvement for the MEMS gyrosensors on indoor robots with horizontal motion is solved by methods of TRIZ ("the theory of inventive problem solving").
In the paper, the problem of precision improvement for the MEMS gyrosensors on indoor robots with horizontal motion is solved by methods of TRIZ ("the theory of inventive problem solving").
△ Less
Submitted 18 March, 2014; v1 submitted 15 November, 2013;
originally announced November 2013.