Simple Efficient Algorithm for MPQ -tree of an Interval Graph
180 likes | 403 Vues
Simple Efficient Algorithm for MPQ -tree of an Interval Graph. Toshiki SAITOH Masashi KIYOMI Ryuhei UEHARA Japan Advanced Institute of Science and Technology (JAIST) School of Information Science. Interval Graphs. Have interval representations
Simple Efficient Algorithm for MPQ -tree of an Interval Graph
E N D
Presentation Transcript
Simple Efficient Algorithm for MPQ-tree of an Interval Graph Toshiki SAITOH Masashi KIYOMI Ryuhei UEHARA Japan Advanced Institute of Science and Technology (JAIST) School of Information Science
Interval Graphs • Have interval representations • Each interval corresponds to a vertex on graphG=(V, E) (|V|=n, |E|=m) • Two intervals intersect ⇔ corresponding two vertices are adjacent 0 1 2 3 4 5 6 1 I3 3 4 I4 I1 I2 2
ATCGGGAACGGTTTACGTGGT x2 x1 x2 x1: ACGGTTTA x2: ATCGGAACG x3: AACGGTTTAC x4: TTTACGTGGT DNA sequence x1 x3 x4 x3 x4 interval representation interval graph Applications of Interval Graphs • bioinformatics • scheduling problems huge interval representation
1 2 2, 4 4 12 9 10 11 3 5 6 7 8 Our Problem • Input : An interval representation of an interval graph • Output : An MPQ-tree • canonical and compact • Isomorphism, (random generation, enumeration) 1 2 9 12 3 4 10 11 6 5 7 8 interval representation MPQ-tree
C7 C5 C6 C1 C2 C3 C4 PQ-tree (Booth and Lueker 1979) • Auxiliary data structure for interval graph • Ordered tree • Internal nodes are labeled ‘P’ or ‘Q’ • Leaf maximal clique • O(n) space • Interval graph recognition • O(n+m) time • Only partial information • No information for vertices
1 2 2, 4 4 12 9 10 11 3 5 6 7 8 MPQ-tree (Korte and MÖhring 1989) • Data structure for interval graph • Modified PQ-tree • node vertices • O(n) space • Interval graph recognition • O(n+m) time • Interval graph isomorphism • O(n+m) time
P-node • Are the two interval graphs corresponding to these interval representations isomorphic? P
Q-node • Are the two interval graphs corresponding to these interval representations isomorphic? P Q 1
Known Algorithms for constructing (M)PQ-trees • Korte and MÖhring(1989) • Input: a graph representation • Output: an MPQ-tree • O(n+m) time • Many conditional branches • McConnell and Montgolfier(2005) • Input: an interval representation • Output: a PQ-tree • O(n log n) time When inputs are sorted, O(n) time • Too generalized
1 4 1 6 2 9 12 7 22, 4 4 12 9 2 5 10 11 3 4 8 1 10 11 3 6 5 6 5 3 10 7 8 12 9 7 8 11 C7 C5 C6 C1 C2 C3 C4 MPQ-tree from interval representation graph representation interval representation O(n+m) space O(n) space 1 2 O(n+m) time O(n log n) time MPQ-tree PQ-tree O(n) space O(n) space
1 4 1 6 2 9 12 7 22, 4 4 12 9 2 5 10 11 3 4 8 1 10 11 3 6 5 6 5 3 10 7 8 12 9 7 8 11 C7 C5 C6 C1 C2 C3 C4 MPQ-tree from Interval Representation graph representation interval representation O(n+m) space O(n) space Our approach 1 2 O(n+m) time O(n log n) time O(n log n) time MPQ-tree PQ-tree O(n) space O(n) space
1 2, 4 12 9 10 11 3 5 6 1 7 8 2 2, 4 4 12 9 10 11 3 5 6 7 8 Outline of Our Algorithm An interval representation O(n)time A compact interval representation O(n)time P-nodes, Q-nodes and leaves O(n)time An MPQ-tree
Characterization of nodes Theorem • Leaves • Intervals of length 0 • Q-nodes • Overlapped intervals • P-nodes • Other intervals
Order of Sweep • Sweep intervals from left to right • Left endpoints precede right endpoints • When left endpoint, long interval precedes short intervals • When right endpoint, short interval precedes long intervals
1 2 7 9 8 4 3 5 6 Finding Q-nodes for each endpoint ido ifi is a left endpoint, PUSH(S,i) ifi is a right endpoint, compare the stack top with i if they don’t match, the intervals from the stack top to i on stack belongs to a Q-node 1 5R 5L 6L 6R 3L 4R 4L 8L 9L 8R 3R 9R 2R Q 2, 4 7 7L 2L 7R 3 5 6 1L 1R 8 9 stack S
1 2, 4 12 9 10 11 3 5 6 1 7 8 2 2, 4 4 12 9 10 11 3 5 6 7 8 Outline of Our Algorithm An interval representation O(n)time A compact interval representation O(n)time P-nodes, Q-nodes and leaves O(n)time An MPQ-tree
Conclusion • New algorithm for MPQ-trees from interval representations • simple • O(n log n) When inputs are sorted, O(n) time (theoretically optimal) Future Works • Applications of MPQ-trees • Enumeration and random generation of interval graphs