Graphs.jl icon indicating copy to clipboard operation
Graphs.jl copied to clipboard

Community detection algorithms

Open tecosaur opened this issue 2 years ago • 3 comments

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

tecosaur avatar Feb 23 '23 03:02 tecosaur

@olegfafurin let's start with greedy modularity optimization?

gdalle avatar Nov 03 '23 09:11 gdalle

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.

leerosenthalj avatar Nov 10 '23 20:11 leerosenthalj

Sounds good!

gdalle avatar Nov 14 '23 07:11 gdalle