**699 commits**| Last commit

**≈ 13 months ago**

Ctrl K

A Julia package for the creation, manipulation and analysis of the structure, dynamics and functions of multilayer graphs.

7

mentions

2

contributors

Get started

**MultilayerGraphs.jl** is a Julia package for the creation, manipulation and analysis of the structure, dynamics and functions of multilayer graphs.

A multilayer graph is a graph consisting of multiple standard subgraphs called *layers* which can be interconnected through bipartite graphs called *interlayers* composed of the vertex sets of two different layers and the edges between them. The vertices in each layer represent a single set of nodes, although not all nodes have to be represented in every layer.

Formally, a multilayer graph can be defined as a triple $G=(V,E,L)$, where:

- $V$ is the set of vertices;
- $E$ is the set of edges, pairs of nodes $(u, v)$ representing a connection, relationship or interaction between the nodes $u$ and $v$;
- $L$ is a set of layers, which are subsets of $V$ and $E$ encoding the nodes and edges within each layer.

Each layer $\ell$ in $L$ is a tuple $(V_\ell, E_\ell)$, where $V_\ell$ is a subset of $V$ that represents the vertices within that layer, and $E_\ell$ is a subset of $E$ that represents the edges within that layer.

Multiple theoretical frameworks have been proposed to formally subsume all instances of multilayer graphs (De Domenico et al. (2013); Kivelä et al. (2014); Boccaletti et al. (2014); Lee et al. (2015); Aleta and Moreno (2019); Bianconi (2018); Cozzo et al. (2018); Artime et al. (2022); De Domenico (2022)).

Multilayer graphs have been adopted to model the structure and dynamics of a wide spectrum of high-dimensional, non-linear, multi-scale, time-dependent complex systems including physical, chemical, biological, neuronal, socio-technical, epidemiological, ecological and economic networks (Cozzo et al. (2013); Granell et al. (2013); Massaro and Bagnoli (2014); Estrada and Gomez-Gardenes (2014); Azimi-Tafreshi (2016); Baggio et al. (2016); DeDomenico et al. (2016); Amato et al. (2017); DeDomenico (2017); Pilosof et al. (2017); de Arruda et al. (2017); Gosak et al. (2018); Soriano-Panos et al. (2018); Timteo et al. (2018); Buldú et al. (2018); Lim et al. (2019); Mangioni et al. (2020); Aleta et al. (2020); Aleta et al. (2022)).

MultilayerGraphs.jl is an integral part of the JuliaGraphs ecosystem extending Graphs.jl so all the methods and metrics exported by Graphs.jl work for multilayer graphs, but due to the special nature of multilayer graphs the package features a peculiar implementation that maps a standard integer-labelled vertex representation to a more user-friendly framework exporting all the objects an experienced practitioner would expect such as nodes (`Node`

), vertices (`MultilayerVertex`

), layers (`Layer`

), interlayers (`Interlayer`

), etc.

MultilayerGraphs.jl features multilayer-specific methods and metrics including the global clustering coefficient, the overlay clustering coefficient, the multilayer eigenvector centrality, the multilayer modularity and the Von Neumann entropy.

Finally, MultilayerGraphs.jl has been integrated within the JuliaDynamics ecosystem so that any `Multilayer(Di)Graph`

can be utilised as an argument to the `GraphSpace`

constructor in Agents.jl.

To install MultilayerGraphs.jl it is sufficient to activate the `pkg`

mode by pressing `]`

in the Julia REPL and then run the following command:

```
pkg> add MultilayerGraphs
```

The ongoing development of this package would greatly benefit from the valuable feedback of the esteemed members of the JuliaGraph community, as well as from graph theorists, network scientists, and any users who may have general questions or suggestions.

We therefore encourage you to participate in discussions, raise issues, or submit pull requests. Your contributions are most welcome!

If you utilize this package in your project, please consider citing this repository using the citation information provided in `CITATION.bib`

.

This will help to give appropriate credit to the contributors and support the continued development of the package.

The package and its features were announced on the following platforms:

- De Domenico et al. (2013) Mathematical Formulation of Multilayer Networks.
*Physical Review X*; - Kivelä et al. (2014) Multilayer networks.
*Journal of Complex Networks*; - Boccaletti et al. (2014) The structure and dynamics of multilayer networks.
*Physics Reports*; - Lee et al. (2015) Towards real-world complexity: an introduction to multiplex networks.
*The European Physical Journal B*; - Bianconi (2018) Multilayer Networks: Structure and Function.
*Oxford University Press*; - Cozzo et al. (2018) Multiplex Networks: Basic Formalism and Structural Properties.
*SpringerBriefs in Complexity*; - Aleta and Moreno (2019) Multilayer Networks in a Nutshell.
*Annual Review of Condensed Matter Physics*; - Artime et al. (2022) Multilayer Network Science: From Cells to Societies.
*Cambridge University Press*; - De Domenico (2022) Multilayer Networks: Analysis and Visualization.
*Springer Cham*.

Keywords

Graphs

Graph Theory

Hierarchical Graphs

Hierarchical Networks

Julia Language

Julia Package

Multilayer Graphs

Multilayer Networks

Multilevel Graphs

Multilevel Networks

Networks

Network Science

Network Theory

Programming language

License

</>Source code

Journal articles

5- 1.Author(s): Emanuele Cozzo, Mikko Kivelä, Manlio De Domenico, Albert Solé-Ribalta, Alex Arenas, Sergio Gómez, Mason A Porter, Yamir MorenoPublished in New Journal of Physics by IOP Publishing in 2015, page: 07302910.1088/1367-2630/17/7/073029
- 2.Author(s): Manlio De Domenico, Albert Solé-Ribalta, Elisa Omodei, Sergio Gómez, Alex ArenasPublished in Nature Communications by Springer Science and Business Media LLC in 201510.1038/ncomms7868
- 3.Author(s): M. De Domenico, M. A. Porter, A. ArenasPublished in Journal of Complex Networks by Oxford University Press (OUP) in 2014, page: 159-17610.1093/comnet/cnu038
- 4.Author(s): M. Kivela, A. Arenas, M. Barthelemy, J. P. Gleeson, Y. Moreno, M. A. PorterPublished in Journal of Complex Networks by Oxford University Press (OUP) in 2014, page: 203-27110.1093/comnet/cnu016
- 5.Author(s): Manlio De Domenico, Albert Solé-Ribalta, Emanuele Cozzo, Mikko Kivelä, Yamir Moreno, Mason A. Porter, Sergio Gómez, Alex ArenasPublished in Physical Review X by American Physical Society (APS) in 201310.1103/physrevx.3.041022

Claudio Moroni

Pietro Monticone

Development of a Julia package for the creation, manipulation and analysis of the structure, dynamics and functions of multilayer graphs.

Updated 20 months ago

Finished