Practical algorithms for triangle computations in very large ( sparse ( power-law ) ) graphs

Finding, counting and/or listing triangles in large graphs are natural problems, which received recently much attention because of their importance in complex network analysis. However, the time and/or space requirements of known algorithms limit our ability to solve these problems in practice. We give here a quick overview of previous results, with a special emphasis on space requirements, which were not considered before. We then detail the analysis a recently proposed algorithm which surpasses all previous ones. We propose an improvement of this algorithm that significantly reduces its space requirements, as well as a new algorithm with similar performances. These two algorithms have the additional advantage of performing better on power-law graphs, which we also study. This explains their high efficiency observed in practice. They both make it possible to practically solve triangle problems in cases that were previously out of reach, which we illustrate with a typical example.

[1]  Frank Harary,et al.  Toward a General Calculus of Phonemic Distribution , 1957 .

[2]  Alon Itai,et al.  Finding a minimum circuit in a graph , 1977, STOC '77.

[3]  Frank Harary,et al.  Matrix measures for transitivity and balance , 1979 .

[4]  Norishige Chiba,et al.  Arboricity and Subgraph Listing Algorithms , 1985, SIAM J. Comput..

[5]  B. Monien How to Find Long Paths Efficiently , 1985 .

[6]  Don Coppersmith,et al.  Matrix multiplication via arithmetic progressions , 1987, STOC.

[7]  Prabhakar Raghavan,et al.  Computing on data streams , 1999, External Memory Algorithms.

[8]  Duncan J. Watts,et al.  Collective dynamics of ‘small-world’ networks , 1998, Nature.

[9]  S N Dorogovtsev,et al.  Comment on "breakdown of the Internet under intentional attack". , 2001, Physical review letters.

[10]  Albert-László Barabási,et al.  Statistical mechanics of complex networks , 2001, ArXiv.

[11]  Ziv Bar-Yossef,et al.  Reductions in streaming algorithms, with an application to counting triangles in graphs , 2002, SODA '02.

[12]  S. Shen-Orr,et al.  Networks Network Motifs : Simple Building Blocks of Complex , 2002 .

[13]  S. Shen-Orr,et al.  Network motifs: simple building blocks of complex networks. , 2002, Science.

[14]  Aravind Srinivasan,et al.  Structural and algorithmic aspects of massive social networks , 2004, SODA '04.

[15]  R. Milo,et al.  Network motifs in integrated cellular networks of transcription-regulation and protein-protein interaction. , 2004, Proceedings of the National Academy of Sciences of the United States of America.

[16]  Sebastiano Vigna,et al.  The Webgraph framework II: codes for the World-Wide Web , 2004, Data Compression Conference, 2004. Proceedings. DCC 2004.

[17]  Sebastiano Vigna,et al.  UbiCrawler: a scalable fully distributed Web crawler , 2004, Softw. Pract. Exp..

[18]  Sebastiano Vigna,et al.  The webgraph framework I: compression techniques , 2004, WWW '04.

[19]  Dorothea Wagner,et al.  Approximating Clustering Coefficient and Transitivity , 2005, J. Graph Algorithms Appl..

[20]  Mohammad Ghodsi,et al.  New Streaming Algorithms for Counting Triangles in Graphs , 2005, COCOON.

[21]  Noga Alon,et al.  Homomorphisms in Graph Property Testing - A Survey , 2005, Electron. Colloquium Comput. Complex..

[22]  Dorothea Wagner,et al.  Finding, Counting and Listing All Triangles in Large Graphs, an Experimental Study , 2005, WEA.

[23]  Matthieu Latapy,et al.  Theory and Practice of Triangle Problems in Very Large (Sparse (Power-Law)) Graphs , 2006, ArXiv.

[24]  Noga Alon,et al.  Finding and counting given length cycles , 1997, Algorithmica.