Views provided by UsageCounts
ABSTRACT MultilayerGraphs.jl is a Julia package for the creation, manipulation and analysis of multilayer graphs, which have been adopted to model of a wide range of complex systems from bio-chemical to socio-technical networks. DESCRIPTION MultilayerGraphs.jl is a Julia package for the creation, manipulation and analysis of the structure, dynamics and functions of multilayer graphs. A multilayer graph consists of multiple subgraphs called layers which can be interconnected through bipartite graphs called interlayers. Several theoretical frameworks have been proposed to formally subsume all instances of multilayer graphs (De Domenico et al. (2013); Kivelä et al. (2014); Bianconi (2018); 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); Estrada and Gomez-Gardenes (2014); Baggio et al. (2016); DeDomenico et al. (2016); Amato et al. (2017); DeDomenico (2017); Timteo et al. (2018); Aleta et al. (2020); Aleta et al. (2022)). MultilayerGraphs.jl is integrated within the JuliaGraphs ecosystem extending Graphs.jlwith several multilayer-specific methods and metrics including the multilayer eigenvector centrality, the multilayer modularity and the Von Newman entropy. The package features an implementation that maps a standard integer-labelled vertex representation to a more user-friendly framework exporting all the objects a practitioner would expect such as nodes (Node), vertices (MultilayerVertex), layers (Layer), interlayers (Interlayer), etc. The two main data structures are MultilayerGraph and MultilayerDiGraph: collections of layers connected through interlayers. The vertices of a multilayer graph are representations of one set of distinct objects called Nodes. Each layer may represent all the node set or just a subset of it. The vertices of Multilayer(Di)Graph are implemented via the MultilayerVertex custom type. Each MultilayerVertex encodes information about the node it represents, the layer it belongs to and its metadata. Both the intra-layer and inter-layer edges are embedded in the MultilayerEdge struct, whose arguments are the two connected multilayer vertices, the edge weight and its metadata. It's important to highlight that Multilayer(Di)Graphs are weighted and able to store metadata by default. The layers are implemented via the Layer struct composed of an underlying graph and a mapping from its integer-labelled vertices to the collection of MultilayerVertexs the layer represents. Interlayers are similarly implemented via the Interlayer mutable struct, and they are generally constructed by providing the two connected layers, the (multilayer) edge list between them and a graph. This usage of underlying graphs allows for an easier debugging procedure during construction and a more intuitive analysis afterwards allowing the package to leverage all the features of the JuliaGraphs ecosystem so that it can be effectively considered as a real proving ground of its internal consistency. The Multilayer(Di)Graph structs are weighted and endowed with the functionality to store both vertex-level and edge-level metadata by default so that at any moment the user may add or remove a Layer or specify an Interlayer and since different layers and interlayers could be better represented by graphs that are weighted or unweighted and with or without metadata, it was crucial for us to provide the most general and adaptable structure. A Multilayer(Di)Graph is instantiated by providing the ordered list of layers and the list of interlayers to the constructor. The latter are automatically specified, so there is no need to instantiate all of them. Finally, MultilayerGraphs.jl has been integrated within the JuliaDynamics ecosystem so that any Multilayer(Di)Graph can be taken as an argument to the GraphSpaceconstructor in Agents.jl. For a more comprehensive exploration of the package features and functionalities we strongly recommend consulting the tutorial included in the package documentation.
{"references": ["De Domenico et al. (2013) Mathematical Formulation of Multilayer Networks. Physical Review X https://doi.org/10.1103/PhysRevX.3.041022", "Kivel\u00e4 et al. (2014) Multilayer networks. Journal of Complex Networks. https://doi.org/10.1093/comnet/cnu016", "Boccaletti et al. (2014) The structure and dynamics of multilayer networks. Physics Reports https://doi.org/10.1016/j.physrep.2014.07.001", "Lee et al. (2015) Towards real-world complexity: an introduction to multiplex networks. The European Physical Journal B https://doi.org/10.1140/epjb/e2015-50742-1", "Bianconi (2018) Multilayer Networks: Structure and Function. Oxford University Press. https://global.oup.com/academic/product/multilayer-networks-9780192865540", "Cozzo et al. (2018) Multiplex Networks: Basic Formalism and Structural Properties. SpringerBriefs in Complexity https://doi.org/10.1007/978-3-319-92255-3", "Aleta and Moreno (2019) Multilayer Networks in a Nutshell. Annual Review of Condensed Matter Physics https://doi.org/10.1146/annurev-conmatphys-031218-013259", "Artime et al. (2022) Multilayer Network Science: From Cells to Societies. Cambridge University Press https://doi.org/10.1017/9781009085809", "De Domenico (2022) Multilayer Networks: Analysis and Visualization. Springer Cham https://doi.org/10.1007/978-3-030-75718-2"]}
Network Science, Discrete Mathematics, Multilevel Networks, Complex Systems, Julia Package, Hierarchical Graphs, Multiplex Systems, Combinatorics, Hierarchical Networks, Graph Theory, Julia Language, Multilevel Graphs, Networks, Network Theory, Multilayer Graphs, Graphs, Software, Multilayer Networks
Network Science, Discrete Mathematics, Multilevel Networks, Complex Systems, Julia Package, Hierarchical Graphs, Multiplex Systems, Combinatorics, Hierarchical Networks, Graph Theory, Julia Language, Multilevel Graphs, Networks, Network Theory, Multilayer Graphs, Graphs, Software, Multilayer Networks
| selected citations These citations are derived from selected sources. This is an alternative to the "Influence" indicator, which also reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically). | 1 | |
| popularity This indicator reflects the "current" impact/attention (the "hype") of an article in the research community at large, based on the underlying citation network. | Average | |
| influence This indicator reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically). | Average | |
| impulse This indicator reflects the initial momentum of an article directly after its publication, based on the underlying citation network. | Average |
| views | 32 |

Views provided by UsageCounts