-
igraph enables fast and robust network analysis across programming languages
Authors:
Michael Antonov,
Gábor Csárdi,
Szabolcs Horvát,
Kirill Müller,
Tamás Nepusz,
Daniel Noom,
Maëlle Salmon,
Vincent Traag,
Brooke Foucault Welles,
Fabio Zanini
Abstract:
Networks or graphs are widely used across the sciences to represent relationships of many kinds. igraph (https://igraph.org) is a general-purpose software library for graph construction, analysis, and visualisation, combining fast and robust performance with a low entry barrier. igraph pairs a fast core written in C with beginner-friendly interfaces in Python, R, and Mathematica. Over the last two…
▽ More
Networks or graphs are widely used across the sciences to represent relationships of many kinds. igraph (https://igraph.org) is a general-purpose software library for graph construction, analysis, and visualisation, combining fast and robust performance with a low entry barrier. igraph pairs a fast core written in C with beginner-friendly interfaces in Python, R, and Mathematica. Over the last two decades, igraph has expanded substantially. It now scales to billions of edges, supports Mathematica and interactive plotting, integrates with Jupyter notebooks and other network libraries, includes new graph layouts and community detection algorithms, and has streamlined the documentation with examples and Spanish translations. Modern testing features such as continuous integration, address sanitizers, stricter typing, and memory-managed vectors have also increased robustness. Hundreds of bug reports have been fixed and a community forum has been opened to connect users and developers. Specific effort has been made to broaden use and community participation by women, non-binary people, and other demographic groups typically underrepresented in open source software.
△ Less
Submitted 16 November, 2023;
originally announced November 2023.
-
Community Detection in Directed Weighted Networks using Voronoi Partitioning
Authors:
Botond Molnár,
Ildikó-Beáta Márton,
Szabolcs Horvát,
Mária Ercsey-Ravasz
Abstract:
Community detection is a ubiquitous problem in applied network analysis, yet efficient techniques do not yet exist for all types of network data. Most techniques have been developed for undirected graphs, and very few exist that handle directed and weighted networks effectively. Here we present such an algorithm based on Voronoi partitionings. As an added benefit, this method can directly employ e…
▽ More
Community detection is a ubiquitous problem in applied network analysis, yet efficient techniques do not yet exist for all types of network data. Most techniques have been developed for undirected graphs, and very few exist that handle directed and weighted networks effectively. Here we present such an algorithm based on Voronoi partitionings. As an added benefit, this method can directly employ edge weights that represent lengths, in contrast to algorithms that operate with connection strengths, requiring ad-hoc transformations of length data. We demonstrate the method on inter-areal brain connectivity, air transportation networks, as well as on randomly generated benchmark networks. The algorithm can handle dense graphs where weights are the main factor determining communities. The hierarchical structure of networks can also be detected, as shown for the brain. Its time efficiency is comparable with other state-of-the-art algorithms, the most costly part being Dijkstra's shortest paths algorithm.
△ Less
Submitted 24 April, 2023;
originally announced April 2023.
-
IGraph/M: graph theory and network analysis for Mathematica
Authors:
Szabolcs Horvát,
Jakub Podkalicki,
Gábor Csárdi,
Tamás Nepusz,
Vincent Traag,
Fabio Zanini,
Daniel Noom
Abstract:
IGraph/M is an efficient general purpose graph theory and network analysis package for Mathematica. IGraph/M serves as the Wolfram Language interfaces to the igraph C library, and also provides several unique pieces of functionality not yet present in igraph, but made possible by combining its capabilities with Mathematica's. The package is designed to support both graph theoretical research as we…
▽ More
IGraph/M is an efficient general purpose graph theory and network analysis package for Mathematica. IGraph/M serves as the Wolfram Language interfaces to the igraph C library, and also provides several unique pieces of functionality not yet present in igraph, but made possible by combining its capabilities with Mathematica's. The package is designed to support both graph theoretical research as well as the analysis of large-scale empirical networks.
△ Less
Submitted 19 September, 2022;
originally announced September 2022.
-
Connectedness matters: Construction and exact random sampling of connected graphs
Authors:
Szabolcs Horvát,
Carl D. Modes
Abstract:
We describe a new method for the random sampling of connected networks with a specified degree sequence. We consider both the case of simple graphs and that of loopless multigraphs. The constraints of fixed degrees and of connectedness are two of the most commonly needed ones when constructing null models for the practical analysis of physical or biological networks. Yet handling these constraints…
▽ More
We describe a new method for the random sampling of connected networks with a specified degree sequence. We consider both the case of simple graphs and that of loopless multigraphs. The constraints of fixed degrees and of connectedness are two of the most commonly needed ones when constructing null models for the practical analysis of physical or biological networks. Yet handling these constraints, let alone combining them, is non-trivial. Our method builds on a recently introduced novel sampling approach that constructs graphs with given degrees independently (unlike edge-switching Markov Chain Monte Carlo methods) and efficiently (unlike the configuration model), and extends it to incorporate the constraint of connectedness. Additionally, we present a simple and elegant algorithm for directly constructing a single connected realization of a degree sequence, either as a simple graph or a multigraph. Finally, we demonstrate our sampling method on a realistic scale-free example, as well as on degree sequences of connected real-world networks, and show that enforcing connectedness can significantly alter the properties of sampled networks.
△ Less
Submitted 30 November, 2020; v1 submitted 8 September, 2020;
originally announced September 2020.
-
Tight Localizations of Feedback Sets
Authors:
Michael Hecht,
Krzysztof Gonciarz,
Szabolcs Horvát
Abstract:
The classical NP-hard feedback arc set problem (FASP) and feedback vertex set problem (FVSP) ask for a minimum set of arcs $\varepsilon \subseteq E$ or vertices $ν\subseteq V$ whose removal $G\setminus \varepsilon$, $G\setminus ν$ makes a given multi-digraph $G=(V,E)$ acyclic, respectively. Though both problems are known to be APX-hard, approximation algorithms or proofs of inapproximability are u…
▽ More
The classical NP-hard feedback arc set problem (FASP) and feedback vertex set problem (FVSP) ask for a minimum set of arcs $\varepsilon \subseteq E$ or vertices $ν\subseteq V$ whose removal $G\setminus \varepsilon$, $G\setminus ν$ makes a given multi-digraph $G=(V,E)$ acyclic, respectively. Though both problems are known to be APX-hard, approximation algorithms or proofs of inapproximability are unknown. We propose a new $\mathcal{O}(|V||E|^4)$-heuristic for the directed FASP. While a ratio of $r \approx 1.3606$ is known to be a lower bound for the APX-hardness, at least by empirical validation we achieve an approximation of $r \leq 2$. The most relevant applications, such as circuit testing, ask for solving the FASP on large sparse graphs, which can be done efficiently within tight error bounds due to our approach.
△ Less
Submitted 16 June, 2020; v1 submitted 6 January, 2020;
originally announced January 2020.