[Graph] Maximum common subgraph
Hi, Lately I have been looking for a good C/C++ implementation of an algorithm for finding the maximum common subgraph in Boost::Graph. The algorithms I have looked for is mainly Bron-Kerbosch and the MCS algorithm, but I am very open for alternatives. The implementation must be able to handle directed graphs containing self-loops (it is possible to have two edges at the same time between two nodes i->j, j->i). Do you know of any implementation? Thanks Andreas Saebjornsen
Andreas Sæbjørnsen a écrit :
Hi, Lately I have been looking for a good C/C++ implementation of an algorithm for finding the maximum common subgraph in Boost::Graph. The algorithms I have looked for is mainly Bron-Kerbosch and the MCS algorithm, but I am very open for alternatives.
An alternative is constraint programming. The following papers describe a constraint programming approach to multiple graph matching problems such as isomorphism, subgraph isomorphism, mcs and approximate subgraph matching. This paper describes the algorithms in details and show how it allows to solve more instances than the vflib implementation: http://www.info.ucl.ac.be/~sz/DeclarativeApproximateGraphMatchingUsingAConst... This one describes how MCS and the different graph matching problems are done using this technique: http://www.info.ucl.ac.be/~dooms/bfd05.pdf You can find an implementation which uses Boost::Graph and the Gecode constraint programming library ( http://www.gecode.org/ ) at: http://cpgraph.info.ucl.ac.be/ it is released under a BSD license. Don't hesitate to contact us would you need any further info. Best, -- Grégoire Dooms
Thank you very much. The project looks really good and I hope that we can
use this in our project. We will try to apply it in the context of complex
graphs of static data structures found in code of programs and dynamic data
structures found in the heap of a running program.
Best,
Andreas Saebjoernsen
On 1/5/06, Grégoire Dooms
Andreas Sæbjørnsen a écrit :
Hi, Lately I have been looking for a good C/C++ implementation of an algorithm for finding the maximum common subgraph in Boost::Graph. The algorithms I have looked for is mainly Bron-Kerbosch and the MCS algorithm, but I am very open for alternatives.
An alternative is constraint programming. The following papers describe a constraint programming approach to multiple graph matching problems such as isomorphism, subgraph isomorphism, mcs and approximate subgraph matching.
This paper describes the algorithms in details and show how it allows to solve more instances than the vflib implementation:
http://www.info.ucl.ac.be/~sz/DeclarativeApproximateGraphMatchingUsingAConst...
This one describes how MCS and the different graph matching problems are done using this technique: http://www.info.ucl.ac.be/~dooms/bfd05.pdf
You can find an implementation which uses Boost::Graph and the Gecode constraint programming library ( http://www.gecode.org/ ) at: http://cpgraph.info.ucl.ac.be/ it is released under a BSD license. Don't hesitate to contact us would you need any further info.
Best, -- Grégoire Dooms
_______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users
hi i am using VS 2005 and i can get bjam to build. does any one know what to do? :S it said that vc8 is not suported or somethink like this :S
Do you mean building bjam itself or using bjam to build something else? Either way, I think you need to download the latest CVS version of boost. Luka Pivk wrote:
hi
i am using VS 2005 and i can get bjam to build. does any one know what to do? :S
it said that vc8 is not suported or somethink like this :S
building bjamit self : Deane Yang wrote:
Do you mean building bjam itself or using bjam to build something else?
Either way, I think you need to download the latest CVS version of boost.
Luka Pivk wrote:
hi
i am using VS 2005 and i can get bjam to build. does any one know what to do? :S
it said that vc8 is not suported or somethink like this :S
_______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users
Luka Pivk wrote:
building bjamit self :
1. Unless you need the 3.1.12 development version you can just download a binary from SourceForge http://sourceforge.net/project/showfiles.php?group_id=7586&package_id=72941 2. Other wise you need to get the latest Boost code from CVS http://sourceforge.net/cvs/?group_id=7586 3. It always helps if you a) say which version of Boost and Boost.Jam you are attempting to use and b) post some of the errors if there are any. -- -- Grafik - Don't Assume Anything -- Redshift Software, Inc. - http://redshift-software.com -- rrivera/acm.org - grafik/redshift-software.com -- 102708583/icq - grafikrobot/aim - Grafik/jabber.org
Rene Rivera wrote: here is the screen of errors :S http://www.shrani.si/pics/boost231052.jpg LP
Luka Pivk wrote:
building bjamit self :
1. Unless you need the 3.1.12 development version you can just download a binary from SourceForge http://sourceforge.net/project/showfiles.php?group_id=7586&package_id=72941
2. Other wise you need to get the latest Boost code from CVS http://sourceforge.net/cvs/?group_id=7586
3. It always helps if you a) say which version of Boost and Boost.Jam you are attempting to use and b) post some of the errors if there are any.
-----BEGIN PGP SIGNED MESSAGE----- Hash: RIPEMD160 On Sun, Jan 08, 2006 at 01:58:43PM +0100, Luka Pivk wrote:
Rene Rivera wrote:
here is the screen of errors :S
It might help NOT to run the "normal" cmd.exe, but the shell provided with the VisualStudio. It is the same cmd.exe, but with environment variables, such as PATH, set up properly. Then the build process should find the cl.exe executable etc. This "vs-enabled" cmd.exe can be found somewhere in the installation menus AFAIR. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.1 (GNU/Linux) iD8DBQFDwRM1FtofFpCIfhMRA9CnAJsHeqtFpo0rEFbJDP3M8E9IvT1xfQCfTBJ/ fb7+7LoaDV2s1jq44b+UJuY= =09XZ -----END PGP SIGNATURE-----
zvrba@globalnet.hr wrote:
On Sun, Jan 08, 2006 at 01:58:43PM +0100, Luka Pivk wrote:
Rene Rivera wrote:
here is the screen of errors :S
It might help NOT to run the "normal" cmd.exe, but the shell provided with the VisualStudio. It is the same cmd.exe, but with environment variables, such as PATH, set up properly. Then the build process should find the cl.exe executable etc.
This "vs-enabled" cmd.exe can be found somewhere in the installation menus AFAIR.
Yes :-) That would help in the case of the second invocation "build.bat msvc". For the first invocation the only fix is to get the Boost sources from CVS. -- -- Grafik - Don't Assume Anything -- Redshift Software, Inc. - http://redshift-software.com -- rrivera/acm.org - grafik/redshift-software.com -- 102708583/icq - grafikrobot/aim - Grafik/jabber.org
participants (6)
-
Andreas Sæbjørnsen
-
Deane Yang
-
Grégoire Dooms
-
Luka Pivk
-
Rene Rivera
-
zvrba@globalnet.hr