Maximal Independent Sets using JGraphT

Compute all the maximal independent sets of a given graph using the JGraphT library.
677 Downloads
Aktualisiert 24. Mär 2010

Lizenz anzeigen

This file is essentially a wrapper around the JGraphT library, allowing it to be called from within Matlab on Matgraph graph objects. Since all the processing is done in Java, this is a very quick method for listing the maximal independent sets of a graph.

To use this file, first download the Matgraph library (http://www.ams.jhu.edu/~ers/matgraph/) which allows one to manipulate graph objects in Matlab. Then, you need to get the JGraphT Java library that contains Java algorithms that run on graphs (http://jgrapht.sourceforge.net/). In order to use these Java functions in Matlab, perform the following configuration steps:
Locate the classpath.txt file (its location can be found by typing 'which classpath.txt'.
Add the following line to the end of this file:
/path/jgrapht-0.7.3/lib
/path/jgrapht-0.7.3/build
where path is the location where you copied the JGraphT library.
Restart Matlab.
Type 'which org.matjgraph.MaximalCliques.getMaximalCliques' to make sure the class is loaded.

All you have to do now is put the Jmaximal.m file in a folder called '@graph' (since it will be called on Matgraph graph objects) that is in your path. Here's a sample use:

>> g = graph;
>> cycle(g,5);
>>Jmaximal(g)
ans =

1 1 0 0 0
0 0 1 1 0
1 0 0 0 1
0 1 1 0 0
0 0 0 1 1

As a speed comparison with my other file BKMaximal that does the same thing in Matlab, consider the following results obtained on a graph with 36 vertices and 252 edges:

Using BKMaximal:
Elapsed time is 47.721192 seconds.

Using JMaximal:
Elapsed time is 0.056165 seconds.

Zitieren als

Berk Birand (2024). Maximal Independent Sets using JGraphT (https://www.mathworks.com/matlabcentral/fileexchange/27074-maximal-independent-sets-using-jgrapht), MATLAB Central File Exchange. Abgerufen .

Kompatibilität der MATLAB-Version
Erstellt mit R2008b
Kompatibel mit allen Versionen
Plattform-Kompatibilität
Windows macOS Linux
Kategorien
Mehr zu Call Java from MATLAB finden Sie in Help Center und MATLAB Answers

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Veröffentlicht Versionshinweise
1.0.0.0