Note

This documents the development version of NetworkX. Documentation for the current release can be found here.

# networkx.algorithms.centrality.edge_current_flow_betweenness_centrality¶

edge_current_flow_betweenness_centrality(G, normalized=True, weight=None, dtype=<class 'float'>, solver='full')[source]

Compute current-flow betweenness centrality for edges.

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

• normalized (bool, optional (default=True)) – If True the betweenness values are normalized by 2/[(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 (default=float)) – Default data type for internal matrices. Set to np.float32 for lower memory consumption.

• solver (string (default=’full’)) – Type of linear solver to use for computing the flow matrix. Options are “full” (uses most memory), “lu” (recommended), and “cg” (uses least memory).

Returns

nodes – Dictionary of edge tuples with betweenness centrality as the value.

Return type

dictionary

Raises

NetworkXError – The algorithm does not support DiGraphs. If the input graph is an instance of DiGraph class, NetworkXError is raised.

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).