`efficiency`

takes one or more graphs (`dat`

) and returns the Krackhardt efficiency scores for the graphs selected by `g`

.

`efficiency(dat, g=NULL, diag=FALSE)`

dat

one or more graphs.

g

index values for the graphs to be utilized; by default, all graphs are selected.

diag

`TRUE`

if the diagonal contains valid data; by default, `diag==FALSE`

.

A vector of efficiency scores

Let \(G=\cup_{i=1}^n G_i\) be a digraph with weak components \(G_1,G_2,\dots,G_n\). For convenience, we denote the cardinalities of these components' vertex sets by \(|V(G)|=N\) and \(|V(G_i)|=N_i\), \(\forall i \in 1,\dots,n\). Then the Krackhardt efficiency of \(G\) is given by

$$ 1-\frac{|E(G)| - \sum_{i=1}^n \left(N_i-1\right)}{\sum_{i=1}^n \left(N_i \left(N_i-1\right)-\left(N_i-1\right)\right)}$$

which can be interpreted as 1 minus the proportion of possible ``extra'' edges (above those needed to weakly connect the existing components) actually present in the graph. A graph which an efficiency of 1 has precisely as many edges as are needed to connect its components; as additional edges are added, efficiency gradually falls towards 0.

Efficiency is one of four measures (`connectedness`

, `efficiency`

, `hierarchy`

, and `lubness`

) suggested by Krackhardt for summarizing hierarchical structures. Each corresponds to one of four axioms which are necessary and sufficient for the structure in question to be an outtree; thus, the measures will be equal to 1 for a given graph iff that graph is an outtree. Deviations from unity can be interpreted in terms of failure to satisfy one or more of the outtree conditions, information which may be useful in classifying its structural properties.

Krackhardt, David. (1994). ``Graph Theoretical Dimensions of Informal Organizations.'' In K. M. Carley and M. J. Prietula (Eds.), *Computational Organization Theory*, 89-111. Hillsdale, NJ: Lawrence Erlbaum and Associates.

```
# NOT RUN {
#Get efficiency scores for graphs of varying densities
efficiency(rgraph(10,5,tprob=c(0.1,0.25,0.5,0.75,0.9)))
# }
```

Run the code above in your browser using DataLab