Warning

This documents an unmaintained version of NetworkX. Please upgrade to a maintained version and see the current NetworkX documentation.

# networkx.algorithms.centrality.current_flow_betweenness_centrality_subset¶

current_flow_betweenness_centrality_subset(G, sources, targets, normalized=True, weight=None, dtype=<class 'float'>, solver='lu')[source]

Compute current-flow betweenness centrality for subsets of nodes.

Current-flow betweenness centrality uses an electrical current model for information spreading in contrast to betweenness centrality which uses shortest paths.

Current-flow betweenness centrality is also known as random-walk betweenness centrality [2].

Parameters: G (graph) – A NetworkX graph sources (list of nodes) – Nodes to use as sources for current targets (list of nodes) – Nodes to use as sinks for current normalized (bool, optional (default=True)) – If True the betweenness values are normalized by b=b/(n-1)(n-2) where n is the number of nodes in G. weight (string or None, optional (default=None)) – Key for edge data used as the edge weight. If None, then use 1 as each edge weight. dtype (data type (float)) – Default data type for internal matrices. Set to np.float32 for lower memory consumption. solver (string (default=’lu’)) – Type of linear solver to use for computing the flow matrix. Options are “full” (uses most memory), “lu” (recommended), and “cg” (uses least memory). nodes – Dictionary of nodes with betweenness centrality as the value. dictionary

Notes

Current-flow betweenness can be computed in $$O(I(n-1)+mn \log n)$$ time [1], where $$I(n-1)$$ is the time needed to compute the inverse Laplacian. For a full matrix this is $$O(n^3)$$ but using sparse methods you can achieve $$O(nm{\sqrt k})$$ where $$k$$ is the Laplacian matrix condition number.

The space required is $$O(nw)$$ where $$w$$ is the width of the sparse Laplacian matrix. Worse case is $$w=n$$ for $$O(n^2)$$.

If the edges have a ‘weight’ attribute they will be used as weights in this algorithm. Unspecified weights are set to 1.

References

 [1] Centrality Measures Based on Current Flow. Ulrik Brandes and Daniel Fleischer, Proc. 22nd Symp. Theoretical Aspects of Computer Science (STACS ‘05). LNCS 3404, pp. 533-544. Springer-Verlag, 2005. http://algo.uni-konstanz.de/publications/bf-cmbcf-05.pdf
 [2] A measure of betweenness centrality based on random walks, M. E. J. Newman, Social Networks 27, 39-54 (2005).