Git repository for understanding modularity and Louvain method.
| Version | Date | Commit | Notes |
|---|---|---|---|
| 0.0 | April 12, 2021 | 7659810 | first commit |
| 0.1 | April 12, 2021 | c59c3e7 | Define Graph class |
| 0.2 | April 12, 2021 | 3b1c2ba | Modularity Computation |
| 0.3 | April 13, 2021 | 4629e33 | community graph (weighted graph) class |
| 0.4 | April 13, 2021 | 812d3f1 | Louvain method Completed? |
| 0.5 | April 15, 2021 | cebe22d | Louvain method Completed? |
| 0.6 | April 16, 2021 | ee479cc | computation time drastically reduced |
| 0.7 | April 17, 2021 | 04879e3 | Great Speedup |
| 0.8 | April 17, 2021 | f4df9ff | Copying other's implementation |
| 0.9 | April 18, 2021 | b11f460 | Louvain Method Completed |
| 0.10 | April 18, 2021 | 1ceb79b | Louvain Rewrite to non-iterate version |
| 0.11 | April 19, 2021 | 7efa1f0 | Old files modified |
| 1.0 | April 20, 2021 | 83b19b7 | Completed |
The graph data files need to follow the rule below. <endpoint n> needs to be an int (node id)
<endpoint 1> <endpoint 2>
<endpoint 3> <endpoint 4>
.
.
.
Let's say there is a graph like this.
The following data (graph/simple_graph.gr) represents this simple graph with 9 nodes and 12 edges, which are <0, 1>, ..., <7, 8>.
0 1
0 2
1 2
1 3
2 3
2 7
3 4
3 5
4 6
5 6
5 8
7 8
Try the following command to get an instant result.
sh run.sh all graph/simple_graph.gr
- Blondel, Vincent D; Guillaume, Jean-Loup; Lambiotte, Renaud; Lefebvre, Etienne (9 October 2008). Fast unfolding of communities in large networks. Journal of Statistical Mechanics: Theory and Experiment. 2008 (10): P10008.
