28 research outputs found

    Flexible graph matching and graph edit distance using answer set programming

    Get PDF
    The graph isomorphism, subgraph isomorphism, and graph edit distance problems are combinatorial problems with many applications. Heuristic exact and approximate algorithms for each of these problems have been developed for different kinds of graphs: directed, undirected, labeled, etc. However, additional work is often needed to adapt such algorithms to different classes of graphs, for example to accommodate both labels and property annotations on nodes and edges. In this paper, we propose an approach based on answer set programming. We show how each of these problems can be defined for a general class of property graphs with directed edges, and labels and key-value properties annotating both nodes and edges. We evaluate this approach on a variety of synthetic and realistic graphs, demonstrating that it is feasible as a rapid prototyping approach.Comment: To appear, PADL 202

    A constraint programming approach to subgraph isomorphism

    No full text
    This thesis proposes an expressive yet efficient declarative framework for graph matching in constraint programming (CP), and focuses on efficient algorithms to solve the subgraph isomorphism problem. The framework is based on graph and map variables, and specific graph morphism constraints. This allows to model and solve various graph matching problems, avoiding the tedious development of dedicated and specific algorithms. A specialized filtering algorithm is proposed for the subgraph isomorphism problem, which uses the semantic of the problem as well as the global structure of the two input graphs. It is shown that it is the state-of-the-art filtering algorithm, compared to dedicated algorithms and other CP approaches. Various search techniques from CP are also extended to the subgraph isomorphism problem. An automatic detection and exploitation of symmetries for the subgraph isomorphism problem is proposed, together with a decomposition approach of the search. The significance of this thesis lies in the fact that, even though the framework is expressive, CP can be considered as the state-of-the-art for subgraph isomorphism, outperforming the dedicated known algorithms on current benchmarks.(FSA 3) -- UCL, 200

    Solving Subgraph Isomorphism Problems with Constraint Programming

    No full text
    The subgraph isomorphism problem consists in deciding if there exists a copy of a pattern graph in a target graph. We introduce in this paper a global constraint and an associated filtering algorithm to solve this problem within the context of constraint programming. The main idea of the filtering algorithm is to label every node with respect to its relationships with other nodes of the graph, and to define a partial order on these labels in order to express compatibility of labels for subgraph isomorphism. This partial order over labels is used to filter domains. Labelings can also be strengthened by adding information from the labels of neighbors. Such a strengthening can be applied iteratively until a fixpoint is reached. Practical experiments illustrate that our new filtering approach is more effective on difficult instances of scale free graphs than state-of-the-art algorithms and other constraint programming approaches

    Elimination des symétries pour l'appariement de graphes

    No full text
    L'appariement de graphes est une technique utilisĂ©e dans de nombreux domaines et peut ĂȘtre modĂ©lisĂ© comme un problĂšme de satisfaction de contraintes. Cette approche par contraintes est concurrentielle avec des algorithmes dĂ©diĂ©s. Dans cet article, nous dĂ©veloppons des techniques de dĂ©tection et d'Ă©limination de symĂ©tries spĂ©cifiques pour l'appariement de graphes. Nous montrons Ă©galement comment ces symĂ©tries peuvent ĂȘtre Ă©liminĂ©es. Nous montrons aussi comment les symĂ©tries de valeur conditionnelles peuvent ĂȘtre automatiquement dĂ©tectĂ©es et utilisĂ©es. Une nouveau type de symĂ©trie est prĂ©sentĂ©, appelĂ© symĂ©trie locale, et nous indiquons comment ce nouveau type de symĂ©trie peut ĂȘtre calculĂ© et exploitĂ©. Enfin, nous Ă©valuons les techniques classiques d'Ă©limination de symĂ©tries de variable et de valeurs sur des instances difficiles

    Finding Patterns in Biochemical Networks

    No full text
    Graph pattern matching is a central problem in many application fields, and may be associated with problems in bioinformatics, such as finding patterns in biochemical networks. This problem can be view as a particular case of labelled subgraph isomorphism (SGI). In this paper, we focus on a constraint programming approach. Two new constraints are introduced to solve this problem. We consider labelled graphs, especially suited for representing biochemical networks, and we propose a constraint exploiting this information. Another constraint considers neighbors within k steps, generalizing the simple neighbor constraint. Experimental results show the potential benefit of the constraints when integrated in a backtracking-based constraint system

    Symmetry Breaking in Subgraph Pattern Matching

    No full text
    Graph pattern matching, a central application in many fields, can be modelled as a CSP. This CSP approach can be competitive with dedicated algorithms. In this paper, we develop symmetry breaking techniques for subgraph matching in order to increase the number of tractable instances. Specific detection techniques are first developed for the classical variables symmetries and value symmetries. It is also shown how these symmetries can be broken when solving subgraph matching. We also show how conditional value symmetries can be automatically detected and handled in the search process. Then, the concept of local value symmetries is introduced; it is shown how these symmetries can be computed and exploited. Finally, experimental results show that symmetry breaking is an effective way to increase the number of tractable instances of the subgraph matching problem.

    Elimination des symĂ©tries pour l’appariement de graphes

    No full text
    L’appariement de graphes est une technique utilisĂ©e dans de nombreux domaines et peut ĂȘtre modĂ©lisĂ© comme un problĂšme de satisfaction de contraintes. Cette approche par contraintes est concurrentielle avec des algorithmes dĂ©diĂ©s. Dans cet article, nous dĂ©veloppons des techniques de dĂ©tection et d’élimination de symĂ©tries spĂ©cifiques pour l’appariement de graphes. Nous montrons Ă©galement comment ces symĂ©tries peuvent ĂȘtre Ă©liminĂ©es. Nous montrons aussi comment les symĂ©tries de valeur conditionnelles peuvent ĂȘtre automatiquement dĂ©tectĂ©es et utilisĂ©es. Une nouveau type de symĂ©trie est prĂ©sentĂ©, appelĂ© symĂ©trie locale, et nous indiquons comment ce nouveau type de symĂ©trie peut ĂȘtre calculĂ© et exploitĂ©. Enfin, nous Ă©valuons les techniques classiques d’élimination de symĂ©tries de variable et de valeurs sur des instances difficiles
    corecore