Chapter 1 Graph Matching: An Introduction - ?· Chapter 1 Graph Matching: An Introduction Graph theory…

  • View
    216

  • Download
    0

Embed Size (px)

Transcript

  • 1

    Chapter 1

    Graph Matching: An Introduction

    Graph theory is a branch of mathematics that deals with graphs which are sets of vertices

    (or nodes) represented as V(={v1,v2,,vn}) and the associated set of edges represented by

    E(={e1,e2,,ek}), where ei=. Graphs are flexible structures that can be used to model

    real world entities as well as processes in different domains. The problems in various

    domains can be modeled as analogous problems on graphs and solutions to these graph

    problems give the solutions to the original problems. This has resulted in widespread use of

    graphs in obtaining solutions to problems in various domains. Hence, graph theory has

    grown into a significant area of research in mathematics with applications in chemistry,

    physics, operations research, social science, biology, computer science etc.

    The advances in computer technology and increased applications of graphs have spawned a

    renewed interest amongst mathematicians and computer scientists in graph theory. Graphs

    have, of late gained significance in solving problems in diverse areas because of the ease of

    their representation and manipulation, in computers [Narasingh Deo, 2004]. The problem

    of graph matching / similarity of graphs/ graph isomorphism have attracted researchers in

    mathematics and computer science from the day Graph theory as discipline has started to

    gain importance. The importance of Graph theory and Graph Matching in the current

    context is brought out in the ensuing section which also emphasizes the need for

    addressing the problem.

    1.1 Introduction to Graph Theory and Graph Matching

    The paper written by Leonhard Euler on the Seven Bridges of Konigsberg and published in

    1736 is regarded as the first paper in the history of graph theory [Narasingh Deo, 2004]. In

    1878, Sylvester introduced the term Graph in a paper published in the famous scientific

    journal Nature, where he draws an analogy between "quantic invariants" and "co-

  • 2

    variants" of algebra and molecular diagrams and this lead to different applications of Graph

    Theory [Sylvester John Joseph, 1878.] The first textbook on graph theory was written

    by Dnes Knig, and published in 1936 [Tute W T, 2001]. A later textbook by Frank Harary,

    published in 1969, was popular, and enabled mathematicians, chemists, electrical engineers

    and social scientists to talk to each other [Harary Frank, 1969]. Today there are innumerable

    number of books on Graph Theory that describe the fundamentals and applications.

    The subject of graph theory had its beginning in recreational math problems but it has now

    grown in to a significant area of mathematical research. Basically graph theory is a study of

    graphs which mathematically model pair wise relations between objects. In all the domains

    where graphs are employed for modeling, the vertices or nodes; model the objects whereas

    the edges model the relationship. Graphs by their inherent characteristics have been found

    to be versatile tools for applications in science and engineering [Narasingh Deo, 2004]. Their

    flexibility and robustness in modeling various scenarios and concepts has led to their

    popularity. The edges in the graphs may be undirected, representing bidirectional

    relationship or they may be directional representing unidirectional relationship. Graphs

    which have only undirected edges are referred to as Undirected Graphs, whereas the

    graphs which consist of directed edges only are Directed Graphs or Digraphs. Further

    graphs which consist of both the types of edges are Mixed Graphs. Graphs are also

    categorized as Simple Graphs and Multi Graphs. Graphs which do not have self loops

    and parallel edges are simple graphs [Chartrand, 2012]. The graphs having self loops and /

    or parallel edges are multi graphs. The various definitions and concepts about graphs are

    brought out in section 1.1.1.

    1.1.1 Definitions and Concepts

    This section provides the necessary definitions and introduces the conventions followed in

    the thesis.

  • 3

    Graph : A graph is an ordered pair G = (V, E) comprising of a set V of vertices or

    nodes together with a set E of edges or lines/arcs. The edges may be

    directed (asymmetric) or undirected (symmetric).

    Vertex set : The set of vertices in a graph is denoted by V (G) or V

    Edge set : The set of edges in a graph is denoted by E (G) or E

    Degree : The degree of a vertex is the number of edges that are incident to it.

    Size : A graph's size is |E|, the number of edges

    Order : The order of a graph is |V|, the number of vertices

    Distance : The distance d (x, y) in G between two vertices x, y is the length of a

    shortest x y path in G

    Eccentricity : The eccentricity, e(x), of the vertex x is the maximum value of d(x, y),

    where y is allowed to range over all of the vertices of the graph

    OR

    The eccentricity, e(x), of the vertex x in a graph G is the distance from x

    to the vertex farthest from x i.e. e (x) = max d (x, xi), i

    Diameter : The greatest distance between any two vertices in G is the diameter of

    G, denoted by diam(G)

    Center : A vertex with minimum eccentricity in a graph G is referred to as the

    center of graph, such a vertex is also called Central Vertex

    Radius : The greatest distance between the central vertex and any other vertex

    is the radius of the graph and is denoted rad G. It should be obvious that

    rad G diam G 2*radG

  • 4

    Complete

    Graph / clique

    If all vertices of G are pair wise adjacent, then G is a complete graph or

    clique

    Walk : A walk is an alternating sequence of vertices and edges, with each edge

    being incident to the vertices immediately preceding and succeeding it

    in the sequence. A walk of length k is a non-empty alternating sequence

    of k+1 vertices and k edges in G

    Trail : A trail is a walk with no repeated edges

    Path : A path is a walk with no repeated vertices

    Closed Walk : A walk is closed if the initial vertex is also the terminal vertex

    Cycle : A cycle is a closed trail with at least one edge and with no repeated

    vertices except that the initial vertex is also the terminal vertex

    Length of a walk: The length of a walk is the number of edges in the sequence defining

    the walk

    Connected

    Graph

    A non-empty graph G is called connected if any two of its vertices are

    linked by a path in G. A connected graph is a graph with exactly one

    connected component

    Undirected

    Graph

    An undirected graph is one in which all edges have no orientation.

    Directed graph : A directed graph or digraph is an ordered pair D = (V, A) where each

    edge has a direction

    :

    :

    :

    :

  • 5

    Adjacent : Two vertices x, y of G are adjacent if is an edge in G in other

    words two vertices are adjacent if they are incident to a common edge.

    Similarly two edges are adjacent if they are incident to a common vertex

    Incident : A vertex v is incident with an edge e if v e that is e is an edge at v

    Independent : A set of vertices or edges are independent if no two of its elements are

    adjacent

    Isomorphic : G1 and G2 are isomorphic, if there exist a bijection : V1 V2 such

    that E1 E2 x, y in V1

    Invariant : A mapping taking graphs/ graph parameters as arguments is called a

    graph invariant if it assigns equal values to isomorphic graphs

    A simple graph : A simple graph is a triple G= (V,E,I), where V and E are disjoint finite sets

    and I is an incidence relation such that every element of E is incident

    with exactly two distinct elements of V and no two elements of E are

    incident to the same pair of elements of V

    Connectivity : A graph G has connectivity k if G is k-connected but not (k+1)-

    connected. A complete graph on k+1 vertices is defined to have

    connectivity k.

    Neighbours : The set of neighbours, N(v), of a vertex v is the set of vertices which are

    adjacent to v. The degree of a vertex is also the Cardinality of its

    neighbour set.

    Induced Sub-

    Graph :

    For a set of vertices X, we use G to denote the induced sub

    graph of G whose vertex set is X and whose edge set is the subset

    of E(G) consisting of those edges with both ends in X

    :

  • 6

    These are some of the definitions in graph theory that will be used in this dissertation.

    Many efficient representation techniques are available for representing graphs in

    computers and are briefly described in the next section.

    1.1.2 Computer Representation and Graph Spectra

    The availability of robust computer representation scheme for graphs and flexibility of

    processing them has furthered the use and applications of graphs. The graphs are

    represented by various matrices such as adjacency matrix; incidence matrix,