Finding subgraphs with side constraints
Abstract
The subgraph isomorphism problem is to find a small “pattern” graph inside a larger “target” graph. There are excellent dedicated solvers for this problem, but they require substantial programming effort to handle the complex side constraints that often occur in practical applications of the problem; however, general purpose constraint solvers struggle on more difficult graph instances. We show how to combine the state of the art Glasgow Subgraph Solver with the Minion constraint programming solver to get a “subgraphs modulo theories” solver that is both performant and flexible. We also show how such an approach can be driven by the Essence high level modelling language, giving ease of modelling and prototyping to non-expert users. We give practical examples involving temporal graphs, typed graphs from software engineering, and costed subgraph isomorphism problems.
Citation
Akgün , Ö , Enright , J , Jefferson , C , McCreesh , C , Prosser , P & Zschaler , S 2021 , Finding subgraphs with side constraints . in P J Stuckey (ed.) , Integration of constraint programming, artificial intelligence, and operations research - 18 th international conference, CPAIOR 2021, proceedings . Lecture notes in computer science (including subseries Lecture notes in artificial intelligence and Lecture notes in bioinformatics) , vol. 12735 , Springer , Cham , pp. 348-364 , 18th International Conference on the Integration of Constraint Programming, Artificial Intelligence, and Operations Research, CPAIOR 2021 , Virtual, Online , 5/07/21 . https://doi.org/10.1007/978-3-030-78230-6_22 conference
Publication
Integration of constraint programming, artificial intelligence, and operations research - 18th international conference, CPAIOR 2021, proceedings
ISSN
0302-9743Type
Conference item
Description
Funding: This research was supported by the Engineering and Physical Sciences Research Council [grant number EP/P026842/1].Collections
Items in the St Andrews Research Repository are protected by copyright, with all rights reserved, unless otherwise indicated.