The MatlabBGL library fills a hole in Matlab's suite of algorithms. Namely, it provides a rich set of algorithms to work with graphs, as in graph theory graphs. The MatlabBGL package uses Matlab's native sparse matrix type as a graph and provides algorithms that work
The algorithms included are
Searching: breadth first search,depth first search, and astar (A*) search
Shortest Path Algorithms: Dijkstra's algorithm, the BellmanFord algorithm, Johnson's algorithm, and the FloydWarshall algorithm.
Minimum Spanning Trees: Prim's algorithm and Kruskal's algorithm.
Components: strongly connected components and biconnected components (and articulation points).
Flow Algorithms: Goldberg's pushrelabel maximumflow minimumcut algorithm.
Statistics: Betweenness Centrality, Clustering Coefficients, and Edge Centrality
Graph Creation: Erdos Reyni (Gnp) Graph, Cycle Graph, Wheel Graph, Star Graph
Planar Graphs: BoyerMyrvold planarity testing, ChrobakPayne straight line drawing
Graph Layout: force directed layout, spring based layout, topology filling layout
Additional documentation and the MatlabBGL website are at the following URL:
http://www.stanford.edu/~dgleich/programs/matlab_bgl.
The package includes precompiled MEX files for Windows (32bit and 64bit), and Linux (32bit and 64bit for Matlab 2006b+), and MacOSX (32bit Intel and 32bit PPC).
The package includes source code to compile on other platforms as well. For issues, please use the matlabbgl launchpad page: https://answers.launchpad.net/matlabbgl/
Please contact me (see the website) if you have an issue with the software and I will help you try and resolve it. (If you need an old version, check my Stanford website for older codes.)
Precompiled for 64bit Linux (Matlab R2006b+), 32bit Linux (Matlab R14SP3+), 32bit Windows (Matlab R2007a+), 32bit Mac OS X PPC (Matlab 2007a+), 32bit Mac OS X Intel (Matlab 2007a+). Compiled and tested on 64bit Windows and Solaris and other versions of Matlab.
** For 64bit Mac's with R2009b or higher, please see http://dgleich.wordpress.com/2010/07/08/matlabbglosx64bit/ for a set of files compiled for you. I'm hoping to start working on version 5.0 soon and won't be updating this version.
