girvan-newman-benchmark
v1.0.4
Published
Generates a benchmark network upon input of a mix and average degree for each node in the graph.
Downloads
16
Maintainers
Readme
Girvan-Newman Benchmark Network
Description
This algorithm generates a Girvan-Newman synthetic network based on the input of 2 value: mix parameter and average degree. This way, 4 different ground-truth communities are generated with 32 nodes each. Each node will present a number of connections equal to the average degree. Moreover, the fraction of links between itself and nodes outside of the community it belongs will be equal to the mix parameter.
Usage
Install package using NPM.
npm i --save girvan-newman-benchmark
Require it using Node.js.
const gn = require('girvan-newman-benchmark');
Run it!
let node2com = gn.jGirvan_Newman(mix, cyto, deg);
// "mix" is the fraction of links connected to any node going outwards the group it belongs to.
// "cyto" is a boolean value that should be set depending on the format we want the algorithm to return.
// "deg" is the degree of every node.
More
Community Finding with Applications on Phylogenetic Networks (Master Thesis)
Louvain, Infomap, Layered Label Propagation, Label Propagation, Hamming Distance, Girvan-Newman Benchmark and Normalized Mutual Information algorithms were developed in JavaScript. To visualize the results, an interface using D3.js (SVG and Canvas) and Cytoscape was implemented. Every community finding algorithm was tested in terms of accuracy, speed and memory against 2 synthetic networks (Girvan-Newman and Lacichinetti-Fortunato-Radicchi networks with varying parameters). Final goal was to cluster microbiological data.
Check out more in the thesis website. You may also download an image of the application in Docker Hub. A description video is below.
Supervision Team
Alexandre Francisco (INESC-ID & IST) | João Carriço (iMM) | Vítor Borges (INSA)