Graph matching is the problem of finding a similarity between
graph
Graph may refer to:
Mathematics
*Graph (discrete mathematics), a structure made of vertices and edges
**Graph theory, the study of such graphs and their properties
*Graph (topology), a topological space resembling a graph in the sense of discret ...
s.
[Endika Bengoetxea]
"Inexact Graph Matching Using Estimation of Distribution Algorithms"
, Ph.
D., 2002
Chapter 2:The graph matching problem
(retrieved June 28, 2017)
Graphs are commonly used to encode structural information in many fields, including
computer vision
Computer vision tasks include methods for image sensor, acquiring, Image processing, processing, Image analysis, analyzing, and understanding digital images, and extraction of high-dimensional data from the real world in order to produce numerical ...
and
pattern recognition
Pattern recognition is the task of assigning a class to an observation based on patterns extracted from data. While similar, pattern recognition (PR) is not to be confused with pattern machines (PM) which may possess PR capabilities but their p ...
, and graph matching is an important tool in these areas.
[Endika Bengoetxea, Ph.D.]
Abstract
In these areas it is commonly assumed that the comparison is between the ''data graph'' and the ''model graph''.
The case of exact graph matching is known as the
graph isomorphism problem
The graph isomorphism problem is the computational problem of determining whether two finite graphs are isomorphic.
The problem is not known to be solvable in polynomial time nor to be NP-complete, and therefore may be in the computational c ...
.
[ The problem of exact matching of a graph to a part of another graph is called ]subgraph isomorphism problem
In theoretical computer science, the subgraph isomorphism problem is a computational task in which two graphs G and H are given as input, and one must determine whether G contains a subgraph that is isomorphic to H.
Subgraph isomorphism is a gen ...
.
Inexact graph matching refers to matching problems when exact matching is impossible, e.g., when the number of vertices in the two graphs are different. In this case it is required to find the best possible match. For example, in image recognition
Computer vision tasks include methods for acquiring, processing, analyzing, and understanding digital images, and extraction of high-dimensional data from the real world in order to produce numerical or symbolic information, e.g. in the form o ...
applications, the results of image segmentation
In digital image processing and computer vision, image segmentation is the process of partitioning a digital image into multiple image segments, also known as image regions or image objects (Set (mathematics), sets of pixels). The goal of segmen ...
in image processing
An image or picture is a visual representation. An image can be two-dimensional, such as a drawing, painting, or photograph, or three-dimensional, such as a carving or sculpture. Images may be displayed through other media, including a pr ...
typically produces data graphs with the numbers of vertices much larger than in the model graphs data expected to match against. In the case of attributed graph In computer science, an attributed graph grammar is a class of graph grammar that associates vertices with a set of attributes and rewrites with functions on attributes. In the algebraic approach to graph grammars, they are usually formulated using ...
s, even if the numbers of vertices and edges are the same, the matching still may be only inexact.[
Two categories of search methods are the ones based on identification of possible and impossible pairings of vertices between the two graphs and methods that formulate graph matching as an ]optimization problem
In mathematics, engineering, computer science and economics
Economics () is a behavioral science that studies the Production (economics), production, distribution (economics), distribution, and Consumption (economics), consumption of goo ...
. Graph edit distance is one of similarity measure
In statistics and related fields, a similarity measure or similarity function or similarity metric is a real-valued function that quantifies the similarity between two objects. Although no single definition of a similarity exists, usually such mea ...
s suggested for graph matching.[Horst Bunke, Xiaoyi Jang, "Graph Matching and Similarity", in: ''Intelligent Systems and Interfaces'', pp. 281-304 (2000) ] The class of algorithms is called error-tolerant graph matching.[
]
See also
*String matching
A string-searching algorithm, sometimes called string-matching algorithm, is an algorithm that searches a body of text for portions that match by pattern.
A basic example of string searching is when the pattern and the searched text are arrays of ...
*Pattern matching
In computer science, pattern matching is the act of checking a given sequence of tokens for the presence of the constituents of some pattern. In contrast to pattern recognition, the match usually must be exact: "either it will or will not be a ...
References
Computational problems in graph theory
{{Comp-sci-stub