
Community detection algorithm based on interacting fluids
Source:R/community.R
cluster_fluid_communities.RdThe algorithm detects communities based on the simple idea of several fluids interacting in a non-homogeneous environment (the graph topology), expanding and contracting based on their interaction and density.
Arguments
- graph
The input graph. The graph must be simple and connected. Empty graphs are not supported as well as single vertex graphs. Edge directions are ignored. Weights are not considered.
- no.of.communities
The number of communities to be found. Must be greater than 0 and fewer than number of vertices in the graph.
Value
cluster_fluid_communities() returns a communities()
object, please see the communities() manual page for details.
References
Parés F, Gasulla DG, et. al. (2018) Fluid Communities: A Competitive, Scalable and Diverse Community Detection Algorithm. In: Complex Networks & Their Applications VI: Proceedings of Complex Networks 2017 (The Sixth International Conference on Complex Networks and Their Applications), Springer, vol 689, p 229, doi: 10.1007/978-3-319-72150-7_19
See also
See communities() for extracting the membership,
modularity scores, etc. from the results.
Other community detection algorithms: cluster_walktrap(),
cluster_spinglass(),
cluster_leading_eigen(),
cluster_edge_betweenness(),
cluster_fast_greedy(),
cluster_label_prop()
cluster_louvain(),
cluster_leiden()
Community detection
as_membership(),
cluster_edge_betweenness(),
cluster_fast_greedy(),
cluster_infomap(),
cluster_label_prop(),
cluster_leading_eigen(),
cluster_leiden(),
cluster_louvain(),
cluster_optimal(),
cluster_spinglass(),
cluster_walktrap(),
compare(),
groups(),
make_clusters(),
membership(),
modularity.igraph(),
plot_dendrogram(),
split_join_distance(),
voronoi_cells()
Examples
g <- make_graph("Zachary")
comms <- cluster_fluid_communities(g, 2)