All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | List of all members
NetworKit::EstimateBetweenness Class Reference

Estimation of betweenness centrality according to algorithm described in Sanders, Geisberger, Schultes: Better Approximation of Betweenness Centrality. More...

#include <EstimateBetweenness.h>

Public Member Functions

 EstimateBetweenness (const Graph &G, count nSamples, bool normalized=false, bool parallel_flag=false)
 The algorithm estimates the betweenness of all nodes, using weighting of the contributions to avoid biased estimation. More...
 
void run () override
 Computes betweenness estimation on the graph passed in constructor. More...
 
- Public Member Functions inherited from NetworKit::Centrality
 Centrality (const Graph &G, bool normalized=false, bool computeEdgeCentrality=false)
 Constructs the Centrality class for the given Graph G. More...
 
virtual ~Centrality ()=default
 Default destructor. More...
 
virtual std::vector< double > scores (bool moveOut=false)
 Get a vector containing the centrality score for each node in the graph. More...
 
virtual std::vector< double > edgeScores ()
 Get a vector containing the edge centrality score for each edge in the graph (where applicable). More...
 
virtual std::vector< std::pair
< node, double > > 
ranking ()
 Get a vector of pairs sorted into descending order. More...
 
virtual double score (node v)
 Get the centrality score of node v calculated by run(). More...
 
virtual double maximum ()
 Get the theoretical maximum of centrality score in the given graph. More...
 
virtual double centralization ()
 Compute the centralization of a network with respect to some centrality measure. More...
 
- Public Member Functions inherited from NetworKit::Algorithm
 Algorithm ()
 Constructor to the algorithm base class. More...
 
virtual ~Algorithm ()=default
 Virtual default destructor. More...
 
bool hasFinished () const
 Indicates whether an algorithm has completed computation or not. More...
 
void assureFinished () const
 Assure that the algorithm has been run, throws a std::runtime_error otherwise. More...
 
virtual std::string toString () const
 Returns a string with the algorithm's name and its parameters, if there are any. More...
 
virtual bool isParallel () const
 

Additional Inherited Members

- Protected Attributes inherited from NetworKit::Centrality
const GraphG
 
std::vector< double > scoreData
 
std::vector< double > edgeScoreData
 
bool normalized
 
bool computeEdgeCentrality
 
- Protected Attributes inherited from NetworKit::Algorithm
bool hasRun
 A boolean variable indicating whether an algorithm has finished its computation or not. More...
 

Detailed Description

Estimation of betweenness centrality according to algorithm described in Sanders, Geisberger, Schultes: Better Approximation of Betweenness Centrality.

There is no proven theoretical guarantee on the quality of the approximation. However, the algorithm was shown to perform well in practice. If a guarantee is required, use ApproxBetweenness.

Constructor & Destructor Documentation

NetworKit::EstimateBetweenness::EstimateBetweenness ( const Graph G,
count  nSamples,
bool  normalized = false,
bool  parallel_flag = false 
)

The algorithm estimates the betweenness of all nodes, using weighting of the contributions to avoid biased estimation.

The run() method takes O(m) time per sample, where m is the number of edges of the graph.

Parameters
graphinput graph
nSamplesuser defined number of samples
normalizednormalize centrality values in interval [0,1] ?
parallel_flagif true, run in parallel with additional memory cost z + 3z * t

Member Function Documentation

void NetworKit::EstimateBetweenness::run ( )
overridevirtual

Computes betweenness estimation on the graph passed in constructor.

Implements NetworKit::Centrality.


The documentation for this class was generated from the following files: