|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectnz.ac.waikato.mcennis.rat.graph.model.ModelShell
nz.ac.waikato.mcennis.rat.graph.algorithm.clustering.EnumerateMaximalCliques
public class EnumerateMaximalCliques
Maximal cliques are defined as a fully connected subgraph such that any additional node added to the subgraph is not fully connected. This problem is NP-Complete, but can be completed in O(nlog(n)) where n is the number of nodes in the graph and exponential over k where k is the maximum out degree of the graph. For many applications, including web page hyperlink structure and social network data, k is suffeciantly small that the algorithm's cost is manageable. This a rediscovery of the Bron-Berbosch Algorithm (1973) C. Bron, J. Kerboach, Algorithm 457. 1973. Finding all cliques of an uncirected graph. Communications of the ACM. 16(9):575-577.
| Field Summary |
|---|
| Fields inherited from class nz.ac.waikato.mcennis.rat.graph.model.ModelShell |
|---|
listener |
| Constructor Summary | |
|---|---|
EnumerateMaximalCliques()
Creates a new instance of EnumerateMaximalCliques |
|
| Method Summary | |
|---|---|
protected void |
assertMaximal(java.util.HashSet<Clique> maximal)
This functions identify those cliques that are subsets of maixmal cliques rather than maximal cliques themselves. |
void |
execute(Graph g)
execute the algorithm against the given graph |
protected void |
extend(Clique seed,
Actor[] intersection)
create a set of new cliques of size n+1 from a clique of size n. |
java.util.List<IODescriptor> |
getInputType()
The input type describes all the different kinds of graph objects that are utilized (and hence required) by this object. |
java.util.List<IODescriptor> |
getOutputType()
The output type describes all the different kinds of graph objects that are created during the execution of this algorithm. |
Properties |
getParameter()
List of all parameters this component accepts. |
Parameter |
getParameter(java.lang.String param)
Returns the specific parameter identified by its key-name. |
void |
init(Properties map)
Parameters for init: 'name' - name for this instance of the algorithm. |
EnumerateMaximalCliques |
prototype()
All Components implement the prototype pattern. |
| Methods inherited from class nz.ac.waikato.mcennis.rat.graph.model.ModelShell |
|---|
addListener, fireChange |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface nz.ac.waikato.mcennis.rat.graph.model.Model |
|---|
addListener |
| Constructor Detail |
|---|
public EnumerateMaximalCliques()
| Method Detail |
|---|
public void execute(Graph g)
Algorithm
execute in interface Algorithmg - graph to be modified
protected void extend(Clique seed,
Actor[] intersection)
protected void assertMaximal(java.util.HashSet<Clique> maximal)
public java.util.List<IODescriptor> getInputType()
Component
getInputType in interface ComponentIODescriptorpublic java.util.List<IODescriptor> getOutputType()
Component
getOutputType in interface ComponentIODescriptorpublic Properties getParameter()
Component
getParameter in interface Componentpublic Parameter getParameter(java.lang.String param)
Component
getParameter in interface Componentparam - key-name of the parameter
public void init(Properties map)
init in interface Componentmap - map of the given properties naming parameters and their values in a stringpublic EnumerateMaximalCliques prototype()
Component
prototype in interface Componentprototype in interface Algorithm
|
|
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||