Skip to content

t4c1/Convex-Skeleton

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 

Repository files navigation

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

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages