Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 

README.md

Convex-skeleton

This repository contains an implementation of algorithm for creating convex skeletons of a network (graph). A convex skeleton of a network is its connected subgraph, which is as convex as possible. Finding optimal skeleton for given number of links is hard, so the algorithm instead removes links from a network one at a time, maximizing network clustering coefficient.

Building

This implementation depends on Network convexity algorithm available here. To enable parallelism by OpenMP appropriate compiler switch should be set. Example compiling comand line application using g++:

g++ -std=c++11 -fopenmp -O3 algo.cpp convexSkeleton.cpp -o convex-skeleton

Command line usage

convex-skeleton input [n_skeletons [step]]

input: path to pajek (.net) file, containing the network. Do not include .net file extension in input - it will be added automaticvly. This is the only mandatory parameter.

n_skeletons: number of skeletons to create for each number of links. Skeletons will be very similar, but if two links increase clustering by the same amount random one will be removed. default is 100.

step fraction of links to remove in each step. Regardles of step parameter always removes at least 1 link. Default is 0.01.

Resulting skeletons will be saved in in a subfolder of where input file is. Subfolder will have same name as input file. Output files will be named according to scheme: [number of removed links]_[iteration].net.

About

No description, website, or topics provided.

Resources

Releases

No releases published

Packages

No packages published

Languages

You can’t perform that action at this time.