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 Bellman-Ford algorithm, Johnson's algorithm, and the Floyd-Warshall 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 push-relabel maximum-flow minimum-cut algorithm.
Statistics: Betweenness Centrality, Clustering Coefficients, and Edge Centrality
Graph Creation: Erdos Reyni (Gnp) Graph, Cycle Graph, Wheel Graph, Star Graph
Planar Graphs: Boyer-Myrvold planarity testing, Chrobak-Payne 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:
The package includes precompiled MEX files for Windows (32-bit and 64-bit), and Linux (32-bit and 64-bit for Matlab 2006b+), and MacOSX (32-bit Intel and 32-bit PPC).
The package includes source code to compile on other platforms as well. For issues, please use the matlab-bgl launchpad page: https://answers.launchpad.net/matlab-bgl/
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 64-bit Linux (Matlab R2006b+), 32-bit Linux (Matlab R14SP3+), 32-bit Windows (Matlab R2007a+), 32-bit Mac OS X PPC (Matlab 2007a+), 32-bit Mac OS X Intel (Matlab 2007a+). Compiled and tested on 64-bit Windows and Solaris and other versions of Matlab.
** For 64-bit Mac's with R2009b or higher, please see http://dgleich.wordpress.com/2010/07/08/matlabbgl-osx-64-bit/ 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.