Presentation on theme: "A Better Algorithm for Finding Planar Subgraph Gruia Călinescu Cristina G. Fernandes Ulrich Finkler Howard Karloff."— Presentation transcript:
A Better Algorithm for Finding Planar Subgraph Gruia Călinescu Cristina G. Fernandes Ulrich Finkler Howard Karloff
Introduction 4/9-approxi. algorithm for maximum planar subgraph problem 2/3-approxi. algorithm for Outer-planar subgraphs( all vertices on the boundary) Maximum planar subgraph problem and its complement ( removing as few edges as possible to leave a planar subgraph) are Max SNP-hard
Maximum planar subgraph problem given a graph G, find a planar subgraph of G with the maximum number of edges. NP-complete The simplest algorithm : Spanning tree (assume G is connected.) Maximal planar subgraph : output any planar subgraph to which the addition of any new edges would violate planarty.
Motivation Spanning tree of G achieves a performance ratio of 1/3. A connected spanning subgraph of G whose cycles are triangles, besides being planar, has one more edge per triangle than a spanning tree of G has.
Definition A triangular cactus is a graph whose cycles if any are triangles and such that all edges appear in some cycle. A triangular structure is a graph whose cycles are triangles.
A greedy algorithm A for G with bounded degree. Performance ratio is 7/18. Linear time First, A greedily constructs a maximal triangular cactus in G Second, A extends triangular cactus to triangular structure.
Algorithm A Starting with E 1 =Ø, repeatedly (as long as possible) find a triangle T whose vertices are in different components of G[E 1 ], and add the edges of T to E 1. Let S 1 = G[E 1 ]. Starting with E 2 =E 1, repeatedly (as long as possible) find an edge e in G whose endpoints are in different components of G[E 2 ]., and add e to E 2. Let S 2 =G[E 2 ]. Output S 2.
Q1 : P-times? Yes! Linear time for bounded-degree graphs.
Q2 : Feasible? Yes. S 2 is indeed a triangular structure in G.
Q3 : ratio=7/18 ? OBS : ( # of edges of algorithm A ) = ( # of edges of spanning tree) + ( # of triangles in S 1 )
Q3 : (def1) H : maximum planar subgraph of G ( # of edges of H )=3n-6- t Where t : missing edges If t=0 then H is a triangulated graph ( # of faces of H ) ≥ 2n-4-2t each missing edges can destroy at most 2 triangles.
Q3 : (def2) k components in S 1. p i : ( # of triangles in i th component) p = sum of p i.
Q3 : ( 小結論 ) 在 S1 產生後， G 內所有的 triangle ，必有兩點在 S1 裡的同一個 component 內 →H 內所有的 triangle ，必有兩點在 S1 裡的同一個 component 內 (H is a subgraph of G) → H 內任一個 triangle ，存在一個 edge e ， such that e 的兩端點在 S1 裡的某一個 component 內 小結論： ( # triangles in H) ≤ 2*( # of e in H ) 每個 e 可能由 2 個 triangle 共用
Q3 : (def3) H’ : subgraph of H induced by edges of H whose endpoints in the same component of S 1. ( # of vertices of i th component of S 1 )=2p i +1 H’ 最多有 edges 2(6p-3k) ≥ 2E(H’) ≥ ( # of triangles in H) ≥ 2n-4- 2t ≥ by 小結論 ≥ by Q3 (def1)
Q4 : tight ? S : any connected triangular cactus with p triangles. (# 0f v=2p+1) S’ : supergraph of S (f=2n- 4=2(2p+1)-4)=4p-2 G : 在每一個 face 加一個點再補 上邊 (# of v=2p+1+4p-2=6p-1) (# of edges = 3(6p-1)-6)=18p-9
Q4 : (tight?) Input : G S1=S S2=S + 每個 face 中的一個紅色邊 E(S2)=E(S)+(4p-2) =3p+4p-2 =7p-2 Ratio=(7p-2)/(18P-9)
A better algorithm B Algorithm B (ratio=4/9) Let S 1 = maximum triangular cactus in G. Starting with E 2 =E 1, repeatedly (as long as possible) find an edge e in G whose endpoints are in different components of G[E 2 ]., and add e to E 2. Let S 2 =G[E 2 ]. Output S 2.
Q1 : P-time? By [CN85] and [GS85], algorithm for graphic matroid parity runs in time O(m 3/2 nlog 6 n). Maximum triangular cactus can be obtained from graphic matroid parity in time O(n)
Q2 : feasible? Yes ! Output of algorithm A is feasible.
Q3 : ratio=4/9 (p.1) According to Matching Theory, Lovász and Plummer[LP86], we know The number of triangles in a maximum triangular cactus in G = the mininmum of Ф(P,Q) taken over all valid pairs (P,Q) for G where
Q4 : tight ? (p.1) G’ : triangular plane graph with n’ vertices ( and 2n’-4 triangles). G : for all faces, add a new vertices in the face and adjacent to all three vertices on the boundary of that face. G has n’+2n’-4 vertices and 3(3n’-4)- 6=9n’-18 edges.
Q4 : tight ? (p.2) The following lemma is observed in [LP86,p.440] If S is triangular structure with t triangles in G then there is a matching in G of size t. Any edge in G has at least one endpoint in V’. Therefore a maximum matching in G has at most n’ edges. We conclude that S has at most n’ triangles
Q4 : tight ? (p.3) Input : G Output : S 2 has at most n’ triangles.
Outerplanar subgraph An outerplanar graph G is a maximal outerplanar graph if no edge can be added without losing outerplanarity. Note: algorithm B produces outerplanar graphs, so it is a approximation algorithm for maximum outerplanar subgraph.
Outerplanar graph has at most 2n-3 edges 用國中的觀念 n 多邊形可以割成 (n-2) 個三角 形 ( 內角和 =(n-2)*180) Face=(n-2)+1 By Euler’s formula : n – m + f =2 n-m+ (n-1)=2 2n-3 =m
Tight ? There are outerplanar graph H i with 2i vertices and 3i-2 edges which do not have any triangles.
The complexity of the problem MAXIMUM PLANAR SUBGRAPH is Max SNP-hard. NPD is Max SNP-hard.
Open problems How large a performance ratio one can achieve is an obvious one. Is there a linear-time approximation algorithm for MAXIMUM PLANAR SUBGRAPH with performance ratio 1/3+ε? Is there any approximation algorithm with a constant performance ratio for NPD?