bcds.phison.gm
Class NodeConnectivity<V,E>

java.lang.Object
  extended by bcds.phison.gm.GraphMetricBase<V,E>
      extended by bcds.phison.gm.NodeConnectivity<V,E>
All Implemented Interfaces:
GraphMetric<V,E>, WithEnvParams

public class NodeConnectivity<V,E>
extends GraphMetricBase<V,E>
implements GraphMetric<V,E>

Computes the node connectivity of a topology as a GraphMetric. This metric represents the smallest number of nodes whose removal results in a disconnected or single-node graph. Moreover, connectivity can also be defined as the smallest number of node-distinct paths between any two nodes.

Reference: A. H. Dekker and B. D. Colbert, "Network robustness and graph topology," in Proceedings of the 27th Australasian conference on Computer science - Volume 26, ser. ACSC ’04. Darlinghurst, Australia, Australia: Australian Computer Society, Inc., 2004, pp. 359–368.

Author:
mmanzano

Constructor Summary
NodeConnectivity()
          Default constructor.
NodeConnectivity(SimGraph<V,E> g, Environ env)
          Creates a new instance and calls setup to complete the initialization.
 
Method Summary
 java.lang.String getDescription()
          Returns a string describing the metric, for example, article where it has been published, URL where to find reference implementation, etc.
 double getGraphMetric()
          Returns the node connectivity of the topology.
 java.lang.String getLabel()
          Returns "Node connectivity".
 boolean isApplicableTo(MetricTarget m)
          Returns true if m is MetricTarget.GRAPH.
 void run()
          Computes the node connectivity of a topology using the MaxFlowEK algorithm.
 
Methods inherited from class bcds.phison.gm.GraphMetricBase
dump, getEdgeMetric, getEnviron, getEnvParams, getGraph, getGraphMetricStdev, getName, getNodeMetric, setup
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface bcds.phison.gm.GraphMetric
dump, getEdgeMetric, getGraphMetricStdev, getNodeMetric, setup
 
Methods inherited from interface bcds.phison.WithEnvParams
getEnviron, getEnvParams, getName
 

Constructor Detail

NodeConnectivity

public NodeConnectivity()
Default constructor.


NodeConnectivity

public NodeConnectivity(SimGraph<V,E> g,
                        Environ env)
Creates a new instance and calls setup to complete the initialization.

Method Detail

isApplicableTo

public boolean isApplicableTo(MetricTarget m)
Returns true if m is MetricTarget.GRAPH.

Specified by:
isApplicableTo in interface GraphMetric<V,E>
Overrides:
isApplicableTo in class GraphMetricBase<V,E>

run

public void run()
Computes the node connectivity of a topology using the MaxFlowEK algorithm.

Specified by:
run in interface GraphMetric<V,E>
Overrides:
run in class GraphMetricBase<V,E>

getGraphMetric

public double getGraphMetric()
Returns the node connectivity of the topology.

Specified by:
getGraphMetric in interface GraphMetric<V,E>
Overrides:
getGraphMetric in class GraphMetricBase<V,E>

getLabel

public java.lang.String getLabel()
Returns "Node connectivity".

Specified by:
getLabel in interface GraphMetric<V,E>

getDescription

public java.lang.String getDescription()
Description copied from interface: GraphMetric
Returns a string describing the metric, for example, article where it has been published, URL where to find reference implementation, etc.

Specified by:
getDescription in interface GraphMetric<V,E>