Graphs.jl
Graphs.jl copied to clipboard
Community detection algorithms
There seems to be a dearth of community detection algorithms in the current Graphs.jl. Hopefully this can be remedied in the future, and to that end I thought I'd list the ones that NetworkX currently has for comparison:
- [ ] Kernighan–Lin bipartition
- [x] K-Clique (already in Graphs.jl as clique percolation)
- [ ] Greedy modular communities
- [ ] Lukes exact optimal weighted tree partitioning
- [x] Label propagation (already in Graphs.jl)
- [ ] Leiden Community Detection
- [ ] Fluid Communities
- [ ] Girvan–Newman (@leerosenthalj still up for this?)
- [x] Spectral clustering (in https://github.com/JuliaGraphs/CommunityDetection.jl)
There are also some in iGraphs that I think would be worth having:
- [ ] Louvain Community Detection
- [ ] Walktrap (short random walks)
- [ ] Spin-glass model and simulated annealing
- [ ] Optimal modularity
- [ ] Edge betweenness
- [ ] Eigenvector of the modularity matrix
@olegfafurin let's start with greedy modularity optimization?
I am still interested in implementing Girvan-Newman! I need a week before I can make steady progress, but would be happy to take a crack at it.
Sounds good!