nosbod has asked for the wisdom of the Perl Monks concerning the following question:
I have an undirected graph containing interacting pairs. This graph is huge.
I want to break the graph into clusters.
All I have is a list of interacting pairs eg.
1,2
1,4
2,3
3,4
4,7
7,8
7,10
8,9
9,10
In this example everything is linked. It could be made into 2 clusters however if we broke the connection between pairs 4 and 7 as this is the single link between hubs containing 1,2,3,4 and 7,8,9,10.
Is there some standard method for performing such I task. It has to be a common problem I imagine?
TIA
UPDATE: thanks, lots of useful stuff here.
Graph::undirected works a treat. One slight issue though. Each time I run the script I have to create the graph. The graph has ~50,000 edges which means it takes over 10 minutes to build. Is there some way of writing the graph to disk so that it can be loaded back into memory quicker that recreating the graph from fresh?
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: breaking up undirected graphs
by blokhead (Monsignor) on Mar 15, 2007 at 18:50 UTC | |
|
Re: breaking up undirected graphs
by jettero (Monsignor) on Mar 15, 2007 at 17:12 UTC | |
|
Re: breaking up undirected graphs
by jdporter (Paladin) on Mar 15, 2007 at 17:38 UTC | |
|
Re: breaking up undirected graphs
by Anonymous Monk on Mar 16, 2007 at 00:04 UTC | |
|
Re: breaking up undirected graphs
by Moron (Curate) on Mar 19, 2007 at 15:14 UTC | |
|
Re: breaking up undirected graphs
by agianni (Hermit) on Mar 18, 2007 at 19:58 UTC | |
|
Re: breaking up undirected graphs
by hatter (Pilgrim) on Mar 20, 2007 at 13:03 UTC |