
Multi-Step Comunity v0.1



Multi-Step Comunity is community detection program written in C++ by Thomas Aynaud. It aims at finding communities that have a high average modularity. It is published under the GNU General Public License.



COMPILING

To compile the program type the command "make". It builds two executables, com_dyn and hierarch. com_dyn finds multi-step communities and hierarch buil time decomposition


USAGE

Command line usage:

    com_dyn [input_file]
    hierarch [input_file]


INPUT FORMAT:

the input file is the list of snapshots. It starts with one line containing the number of snapshot, then one line for each node the it starts enumerating snapshot. Snapshots are separated by a marker and then contain one line for each edge with src and destination. The marker is -1 or -2 weight. For example :

3                    -> number of snapshots
0                    -> list of nodes
1
2
3
4
-2 1               -> marker of the first snapshot, its weight is 1
0 1                -> there is an edge between 0 and 1
0 2
0 3
1 2
1 3
-2 4               -> marker of the second snapshot, its weight is 4
0 1
0 2
1 2
1 3
1 4
2 3
3 4
-2 1               -> marker of the third snapshot, its weight is 1
0 4
0 1               -> end of the file.


OUTPUT FORMAT:
com_dyn:
the standard output contains one line per node containing node name and its community.
the standard error contains some information like modularity or progress


hierarch:
The standard output contains one line per node containing node name and its community.
The standard error contains progress information.

OPTIONS:

    com_dyn :
        none
    hierarch:
        --connex force to group consecutive time windows.


MORE INFORMATION

More information about the algorithm is available in the paper: Multi-Step Community Detection and Hierarchical Time Segmentation in Evolving Networks (with Jean-Loup Guillaume).


COMMENTS & BUG REPORT

If you find a bug, please send a bug report to thomas.aynaud@lip6.fr including the input file and the parameters that caused the bug.

You can also send me any comment or suggestion about the program.

