summaryrefslogtreecommitdiff
path: root/doc/betweenness.md
diff options
context:
space:
mode:
Diffstat (limited to 'doc/betweenness.md')
-rw-r--r--doc/betweenness.md99
1 files changed, 99 insertions, 0 deletions
diff --git a/doc/betweenness.md b/doc/betweenness.md
new file mode 100644
index 0000000..54d2805
--- /dev/null
+++ b/doc/betweenness.md
@@ -0,0 +1,99 @@
+betweenness(1) -- Compute the betweenness centrality of nodes and edges
+======
+
+## SYNOPSIS
+
+`betweenness` <graph_in> [ SEQ <node_start> [<node_end>]]
+
+`betweenness` <graph_in> [ RND <num>]
+
+## DESCRIPTION
+
+`betweenness` computes the betweenness centrality of all the nodes and
+edges of an undirected graph provided as input. The program implements
+the algorithm by U. Brandes, and computes the betweenness using all
+the shortest paths originating from a subset of the nodes of the
+graph, either in a sequence (if _SEQ_ is the second parameter) or
+sampled unirofmly at random (if _RND_ is the second parameter). If
+<graph_in> is the only parameter, `betweenness` takes into account all
+the shortest paths.
+
+## PARAMETERS
+
+* <graph_in>:
+ input graph (edge list) if equal to `-` (dash), read the edge list
+ from STDIN.
+
+* <node_start>:
+ The label of the first node in a sequence of nodes (when _SEQ_ is
+ the second parameter).
+
+* <node_end>:
+ The label of the last node in a sequence of nodes (when _SEQ_ is
+ the second parameter).
+
+* <num>:
+ The number of nodes to be considered (when _RND_ is the second
+ parameter)
+
+## OUTPUT
+
+`betweenness` prints on the standard output (STDOUT) the betweenness
+centrality of all the nodes, starting from the node with label 0, and
+on the standard error (STDERR) the betweenness centrality of all the
+edges, one edge per line, in the format:
+
+ node1 node2 bet_score
+
+
+## EXAMPLES
+
+The following command:
+
+ $ betweenness er_1000_5000.txt >node_bet 2>edge_bet
+
+computes the node and edge betweenness centrality of the graph
+`er_1000_5000.txt`, using all the shortest paths. Since we used the
+redirections `>node_bet` and `2>edge_bet`, the values of node and edge
+betweenness will be saved in the files `node_bet` and `edge_bet`,
+respectively.
+
+The command:
+
+ $ betweenness er_1000_5000.txt SEQ 100 200 2>edge_bet_100_200
+
+will compute the betweenness of nodes and edges in the graph
+`er_1000_5000.txt`, based only on the shortest paths originating from
+the nodes whose labels are in the range [100,200]. The node
+betweenness will be printed on STDOUT, while the edge betweenness will
+be saved in the file `edge_bet_100_200`.
+
+Finally, the command:
+
+ $ betweenness er_1000_5000.txt RND 250 >node_bet_RND
+
+will compute the betweenness centrality based on the shortest paths
+originating from 250 nodes in the graph, sampled uniformly at
+random. The node betweenness is saved in the file `node_bet_RND`,
+while the values of edge betweenness are printed on STDOUT.
+
+## SEE ALSO
+
+bet_dependency(1), shortest(1)
+
+## REFERENCES
+* U\. Brandes. "A Faster Algorithm for Betweenness Centrality".
+ J\. Math. Sociol. 25 (2001), 163-177.
+
+* V\. Latora, V. Nicosia, G. Russo, "Complex Networks: Principles,
+ Methods and Applications", Chapter 6, Cambridge University Press
+ (2017)
+
+* V\. Latora, V. Nicosia, G. Russo, "Complex Networks: Principles,
+ Methods and Applications", Appendix 7, Cambridge University Press
+ (2017)
+
+
+## AUTHORS
+
+(c) Vincenzo 'KatolaZ' Nicosia 2009-2017 `<v.nicosia@qmul.ac.uk>`.