The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Graph::Maker::SmallWorldHK - Creates a small world graph according to Holmea, Beom & Kim

VERSION

Version 0.01

SYNOPSIS

Creates a small world graph according to Holmea, Beom & Kim's model. A small world graph has an approximate power law degree distribution and a high clustering coefficient. Holmea, Beom & Kim's can be seen as a super-set of th BA model as it also allows a "triangle formation" phase to increase the clustering coefficient. If the graph is directed then edges are added in both directions to create an undirected graph.

        use strict;
        use warnings;
        use Graph;
        use Graph::Maker;
        use Graph::Maker::SmallWorldHK;

        my $g = new Graph::Maker('small_world_hk', N => 10, M => 2, M_0 => 1, PR => 0, undirected => 1); # BA's model
        my $g2 = new Graph::Maker('small_world_hk', N => 10, M => 2, M_0 => 1, PR => 0.25, undirected => 1);
        # work with the graph

FUNCTIONS

new %params

Creates a small world graph with N nodes, initially starting with M_0 nodes and adding M (the minimum number of edges per node) on each step probalistically doing a triangle formation with probability PR according to the Holmes, Beom & Kim model. The recognized parameters are N, M, M_0, PR, graph_maker, and callback any others are passed onto Graph's constructor. If N is not given it defaults to 0. If M is not given it defaults to 1. If M_0 is not given it defaults to M. If PR is not given it defaults to 0. callback allows one to simulate the growth of a preferential attachment network, callback will be called each time a node is added. If graph_maker is specified it will be called to create the Graph class as desired (for example if you have a subclass of Graph), this defaults to create a Graph with the parameters specified.

AUTHOR

Matt Spear, <batman900+cpan at gmail.com>

BUGS

Please report any bugs or feature requests to bug-graph-maker-smallworldhk at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Graph-Maker. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

COPYRIGHT & LICENSE

Copyright 2008 Matt Spear, all rights reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.