Presentation on Chordal and Interval graphs - PowerPoint PPT Presentation

1 / 32
About This Presentation
Title:

Presentation on Chordal and Interval graphs

Description:

Minimum-Coloring Algorithm. Greedy Algorithm ... Gives Optimal coloring. Complexity = Polynomial (given that PEO is already known) ... – PowerPoint PPT presentation

Number of Views:282
Avg rating:3.0/5.0
Slides: 33
Provided by: shreyasb
Category:

less

Transcript and Presenter's Notes

Title: Presentation on Chordal and Interval graphs


1
Presentation on Chordal and Interval graphs
  • Presented by
  • Bansal Tarun
  • Bhatewara Shreyas
  • Vardhan Hars
  • Also available online at
  • http//www.utdallas.edu/shreyas.bhatewara/combin
    atorics.html
  • OR http//utdallas.edu/tarun/graph.html

2
Perfect Graphs
  • Clique
  • Chromatic number
  • Perfect graphs each subset has chromatic number
    equal to size of maximal clique

3
Chordal graphs
  • Chordal graph Any cycle of four or more nodes
    has a chord in it
  • Also called rigid circuit graphs

4
Chordal graphs contd.
  • Perfect Elimination order necessary and
    sufficient condition for Chordal graphs
  • Simplicial vertexes along with their neighbors
    form a clique

5
Interval Graphs
  • Intersection graph of set of intervals on a real
    line.
  • R ? I1, I2, I3....
  • V I1, I2, I3....In
  • (Ix, Iy) ? E ltgt Ix n Iy ? ?
  • Adjacent intervals are overlapping

6
Interval graphs contd.
  • Perfect ? Chordal ? Interval graphs
  • Interval model representation R-blocks and
    L-blocks
  • Complement of Interval graphs are called
    comparability graph
  • Comparability graph is also known as containment
    graph

7
Properties and conditions
  • Asteroidal triple free chordal graphs are
    interval graphs.
  • Comparability graphs do not have odd cycles
  • Elimination of simplicial vertices from chordal
    graph renders a chordal graph

8
Applications and motivation to study
  • Scheduling and storage problems
  • Bioinformatics finding if gene is mutant
  • Archaeology studying sequence dating (seriation)
  • Ecology Food chain of organisms
  • Maximum clique and Isomorphism are less complex
    in chordal graphs.

9
Perfect Elimination Order (PEO)
  • An ordered sequence of all vertices V1, V2,,
    Vn
  • Successor (Vi) Vj jgti and (i,j) e E
  • Predecessor (Vi) Vj igtj and (i,j) e E
  • Sequence of vertices such that for each vertex
    Vi, successors of Vi form a clique
  • A graph is chordal if and only if it has a
    Perfect Elimination Order (PEO) Fulkerson 1965

10
Simplicial Vertex
  • A vertex whose all neighbors form a clique
  • Every chordal graph has at least one simplical
    vertex
  • The first vertex in PEO is simplicial
  • If you remove the simplicial vertex, then the
    graph induced by remaining nodes is also a
    chordal graph (hence must have a simplicial
    vertex of its own)

11
Simple method to find PEO
  • Given G (V, E)
  • For (i1 to N)
  • Vi Simplicial vertex (G)
  • G Graph induced by vertex set (V-Vi)
  • What if no simplicial vertex exists at some
    point?
  • Complexity O(NN2) O(N3)

12
Finding a PEO (Maximum Cardinality Method)
  • Rose and Tarjan Rose 1975
  • Cardinality Number Number of neighbors picked
    up
  • Step1 Pick the node whose maximum number of
    neighbors have already been chosen
  • Reverse the order
  • Step 2 In the end, verify the ordering obtained
    is indeed PEO

13
Example
Seq 6
Seq 2
F (1)
F (0)
E (0)
E (1)
F (2)
Seq 8

G(2)
G(0)
G(1)
A(0)
D(0)
D(2)
H (1)
H (3)
D(1)
H (0)
H (2)
Seq 1
Seq 3
Seq 7
The PEO is G, H, F, B, C, D, E , A
B(0)
B (1)
B (2)
B (3)
C(0)
C(1)
C(2)
Seq 5
Seq 4
14
Observations
  • Except for the first node, any node being picked
    up has at least one neighbor which has already
    been picked
  • Set of picked nodes always form a connected graph

15
Proof of Correctness
  • If a PEO does not exist, then algorithm does not
    generate a PEO
  • If the PEO exists, then algorithm outputs some PEO

16
Proof of Correctness (Part 2)
  • Let V1, V2, V3,,Vi, , Vj,, Vk,,Vn be the
    ordering generated.
  • Let Vi is not in sequence. Then Vj and Vk be the
    two successors of Vi that are not connected.
  • Case 1
  • Then Vj and Vk are parts of two graphs which are
    connected only through Vi
  • The order in which the nodes were picked is
  • Vn, , Vk, ., Vj,, Vi,,V3, V2, V1
  • Then we claim that label sequence must have been
    different

17
Proof (Contd.)
  • Case 2
  • Consider the path from k to j on which the nodes
    were picked up.
  • All such nodes should be connected to i except
    those nodes, which are directly connected to j.
  • Let m be such a vertex on that path. m must have
    some vertices which are not connected to i.

18
Proof (contd.)
  • Let w be such a vertex. Therefore w must be
    connected to k. (through a path not involving i).
  • If i is not connected to w, then we have a non
    chordal cycle i-k-w-m-j-i.
  • i must be connected to w as well. Therefore there
    is no way that m can be picked before I since i
    is connected to one extra node than m (Vk)

19
Complexity Analysis (Step 2)
  • Check if the generated ordering is perfect
  • Trivial algorithm
  • Number of vertices whose successors have to be
    checked N
  • Time complexity to check if all the successors of
    a particular node are connected NC2 N2
  • Total complexity N3

20
Step 2 Efficient Implementation
  • Efficient Way
  • Given ordering V1, V2, V3, , Vi, , Vj,,
    Vk,,Vn
  • 1. for i 1 to n do
  • 2. if Vi has successors
  • 3. Let u be the first successor of
    Vi
  • 4. For all w ? Successor (Vi), w ?u
  • 5. Add (u, w) to TEST
  • 6. Test whether all vertex-pairs in TEST are
    adjacent.

21
Why?
  • If the algorithm detects ordering as non-perfect,
    then ordering must be non-perfect
  • If the algorithm detects ordering as PEO, then
    ordering cannot be imperfect (By contradiction)
  • complexity if implemented carefully O ( N E)
  • Maximum size of set TEST can be O(E)
  • Instead of O (N3)

22
Implementation of step 1 (generating perfect
ordering)
  • Trivial Method
  • Maintain a heap of cardinality numbers
  • Complexity of each for loop
  • Find the maximum cardinality node and removing
    it O(lg N)
  • Number of updates for each node picked N
  • modifying the cardinality number and
    rearranging the heap N lg N
  • Total Complexity N (lg N N lg N) N2 lg N
  • Can also be shown as E lg N

23
Efficient Implementation (Step 1)
  • With complexity O( N E)
  • For each node, maintain list of neighbors.
    (Already given in this format)
  • Maintain linked list of vertices (in order of
    cardinality number)
  • For each node, maintain its location in the
    linked list
  • Picking the vertex with max. cardinality number
    O(1)
  • Finding all the neighbors and updating their
    cardinality number and their location in linked
    list O(E)

24
Polynomial Algorithms for chordal graphs Gavril
1972
  • Minimum-Coloring Algorithm
  • Greedy Algorithm
  • Scan the vertices in the reverse order of PEO and
    color each vertex with the smallest color not
    used among its successors
  • Gives Optimal coloring
  • Complexity Polynomial (given that PEO is
    already known)

25
Polynomial Algorithms for chordal graphs
  • Maximum Independent Set
  • Greedy algorithm
  • Scan the vertices in the order of PEO, and for
    each Vi, add Vi to I if none of its predecessor
    has been added to I
  • Complexity Polynomial

26
Another definition for chordal graphs
  • Intersection Graph A graph that represents the
    intersection of sets
  • Subtree Graph
  • Break a tree into multiple subtrees (overlapping)
  • Now make a graph whose each vertex represents one
    subtree. An edge between two vertices if they
    have a common vertex (between the subtrees they
    represent)
  • The graph thus obtained is known as Subtree Graph
  • As Gavril 1974 showed, the subtree graphs are
    exactly the chordal graphs. So a chordal graph
    can be represented as an intersection graph of
    subtrees.

27
Bibliography
  • Gavril 1974 Gavril, Fanica, "The intersection
    graphs of subtrees in trees are exactly the
    chordal graphs, Journal of Combinatorial Theory,
    Series B 16, 1974
  • Gavril 1972 Gavril, Algorithms for Minimum
    Coloring, Maximum Clique, Minimum Independent Set
    of a Chordal Graph, SIAM J. Comp., Vol 1, 1972 
  • Rose 1975 Rose, Tarjan, Algorithmic Aspects
    of Vertex Elimination, Proc. 7th annual ACM
    Symposium on Theory of Computing (STOC), 1975

28
Bibliography
  • Therese Biedl, Lecture notes of a graduate
    course, University of Waterloo (Sept 2005),
    http//www.student.cs.uwaterloo.ca/cs762/Notes/bo
    ok.pdf
  • Arnborg 1989 Arnborg et. al., Linear time
    algorithms for NP-hard problems restricted to
    partial k-trees, Discrete Applied Mathematics,
    Vol. 23, Issue 1, 1989
  • Wiki-Tree-Decomposition http//en.wikipedia.org
    /wiki/Treewidth
  • Fulkerson 1965 Fulkerson, D. R. Gross, O. A.
    (1965). "Incidence matrices and interval graphs,
    Pacific J. Math 15 835855.

29
Tree Decomposition
  • Each subtree associates a graph vertex with a set
    of tree nodes. To define this formally, we
    represent each tree node as the set of vertices
    associated with it. Thus, given a graph G (V,
    E), a tree decomposition is a pair (X, T), where
    X X1, ..., Xn is a family of subsets of V,
    and T is a tree whose nodes are the subsets Xi,
    satisfying the following properties
  • The union of all sets Xi equals V. That is, each
    graph vertex is associated with at least one tree
    node.
  • For every edge (v, w) in the graph, there is a
    subset Xi that contains both v and w. That is,
    vertices are adjacent in the graph only when the
    corresponding subtrees have a node in common.
  • If Xi and Xj both contain a vertex v, then all
    nodes Xz of the tree in the (unique) path between
    Xi and Xj contain v as well. That is, the nodes
    associated with vertex v form a connected subset
    of T.

30
Example taken from Wiki-Tree-Decomposition
Graph and the corresponding tree decomposition
Tree width 3-1 2
31
Tree decomposition (properties)
  • A graph can have multiple tree decompositions
  • Width of tree decomposition Size of largest Xi
    minus 1
  • The minimum width among all tree decompositions
    is known as tree width
  • The graphs with treewidth at most k are also
    called partial k-trees
  • For chordal graphs, the treewidth is size of
    biggest clique minus 1

32
Uses
  • Algorithms work much faster on trees than graphs
  • Use dynamic programming on decomposed tree to
    solve problems of the original graph (must have
    bounded treewidth) Arnborg 1989
Write a Comment
User Comments (0)
About PowerShow.com