Incremental k -core decomposition: algorithms and evaluation

Incremental k -core decomposition: algorithms and evaluation
Sarıyüce, Ahmet; Gedik, Buğra; Jacques-Silva, Gabriela; Wu, Kun-Lung; Çatalyürek, Ümit
2016-06-01 00:00:00
A k -core of a graph is a maximal connected subgraph in which every vertex is connected to at least k vertices in the subgraph. k -core decomposition is often used in large-scale network analysis, such as community detection, protein function prediction, visualization, and solving NP-hard problems on real networks efficiently, like maximal clique finding. In many real-world applications, networks change over time. As a result, it is essential to develop efficient incremental algorithms for dynamic graph data. In this paper, we propose a suite of incremental k -core decomposition algorithms for dynamic graph data. These algorithms locate a small subgraph that is guaranteed to contain the list of vertices whose maximum k -core values have changed and efficiently process this subgraph to update the k -core decomposition. We present incremental algorithms for both insertion and deletion operations, and propose auxiliary vertex state maintenance techniques that can further accelerate these operations. Our results show a significant reduction in runtime compared to non-incremental alternatives. We illustrate the efficiency of our algorithms on different types of real and synthetic graphs, at varying scales. For a graph of 16 million vertices, we observe relative throughputs reaching a million times, relative to the non-incremental algorithms.
http://www.deepdyve.com/assets/images/DeepDyve-Logo-lg.pngThe VLDB JournalSpringer Journalshttp://www.deepdyve.com/lp/springer-journals/incremental-k-core-decomposition-algorithms-and-evaluation-JFM4UUbUvJ