Class WattsBetaSmallWorldGenerator<T>

java.lang.Object
repast.simphony.context.space.graph.AbstractGenerator<T>
repast.simphony.context.space.graph.WattsBetaSmallWorldGenerator<T>
All Implemented Interfaces:
NetworkGenerator<T>

public class WattsBetaSmallWorldGenerator<T> extends AbstractGenerator<T>
WattsBetaSmallWorldGenerator is a graph generator that produces a small world network using the beta-model as proposed by Duncan Watts. The basic ideas is to start with a one-dimensional ring lattice in which each vertex has k-neighbors and then randomly rewire the edges, with probability beta, in such a way that a small world networks can be created for certain values of beta and k that exhibit low charachteristic path lengths and high clustering coefficient.
Author:
Jung Project, Nick Collier
  • Constructor Details

    • WattsBetaSmallWorldGenerator

      public WattsBetaSmallWorldGenerator(double beta, int degree, boolean symmetrical)
      Constructs the small world graph generator.
      Parameters:
      beta - the probability of an edge being rewired randomly; the proportion of randomly rewired edges in a graph. Must be between 0 and 1.
      degree - the number of edges connected to each vertex around the local neighborhood. This is the local ngh size. Must be an even number.
      symmetrical - whether or not the generated edges will be symmetrical. This has no effect on a non-directed network.
  • Method Details

    • createNetwork

      public Network<T> createNetwork(Network<T> network)
      Generates a beta-network from a 1-lattice according to the parameters given.
      Parameters:
      network - a network containing nodes
      Returns:
      a beta-network model that is potentially a small-world