Presentation is loading. Please wait.

Presentation is loading. Please wait.

A Continuous Optimization Approach to the Minimum Bisection Problem

Similar presentations


Presentation on theme: "A Continuous Optimization Approach to the Minimum Bisection Problem"— Presentation transcript:

1 A Continuous Optimization Approach to the Minimum Bisection Problem
Edward F. Gonzalez Dr. Yin Zhang October 2003

2 The Min-Bisection Problem
G = (V,E) is an undirected, simple graph, where every vertex has at least one neighbor V = Set of vertices = {1,2,...,n} E = Set of edges  { (i,k) : 1 i  k  n}

3 Small Example 1 2 3 V = {1,2,3} E ={(1,2), (2,3), (3,1)}

4 Larger Example 1024 Vertices Edges

5 Minimum Bisection Problem
Objective: Divide the vertices of a graph into two equal groups while minimizing the total weights of the edges between the groups V V/2 V/2

6 Applications of the Min-Bisection Problem
Parallel Scientific Computing Domain Decomposition Mesh Partitioning Sparse Matrix Ordering VLSI Design Task Scheduling

7 Many Possible Bisections
If G has n vertices, there are [n choose (n/2)] possible bisections

8 Easy Problem? The Min-Bisection Problem is an NP-hard problem
Efficient Algorithms for finding exact solutions unlikely, unless P = NP Heuristics used to solve this problem Spectral Bisection Multilevel Approach Rank-Two Relaxation

9 Spectral Bisection Uses the Laplacian Matrix L, where Lij:
= deg(vi) if i=j = if (i,j)E = otherwise L is Symmetric Pos. Semi Definite Let x  where xi = {-1,1} if x = 1, xFirst Partition if x = -1, xSecond Partition

10 Spectral Bisection xTLx =  (xi- xj)2 = 4*(Cut between Partitions)
Relax: x  Null(e)  {y: ||y||=sqrt(n)} Solved by second smallest eigenvector Components of the eigenvector determine Partition (i,j)  E Min xTLx s.t eTx =0 , |xi| = 1 n

11 Rank-2 Relaxation Relaxation: Let x 2 Min (1/2)   wik(1 - xixk)
s.t |xi| =  xi = 0 Max   wik xixk s.t |xi| =  xi = 0 Relaxation: Let x 2

12 vi = [cos i, sin i]T  viTvk = cos(i - k)
Max   wikviTvk s.t. ||vi||2 = || vi|| = 0 vi = [cos i, sin i]T  viTvk = cos(i - k) ||vi||2 = 1 automatically satisfied Max (1/2)W • cos(T())  n Where Tik() = i - k

13 Find a local Minimum of the problem
Develop a cut (which is also a saddle point) Perturb, repeat, and try to improve cut Rank-2 Feasible Region Max-Cut Feasible Points = Notice: vi= 0 Satisfied

14 Multilevel Approach: G G G1 Coarsen Gn-2 Un-Coarsen & Refine Cut Gn-1

15 Multilevel Techniques
Coarsen: Use a matching criterion Initial Cut: Various Methods Breath First Search Refinement: Kernighan-Lin type approach 2 1 2 1,2 (2) 1 4 4 3 3,4 3

16 Where we stand Currently, the most popular software for graph partitioning problems is METIS, which uses a multi-level approach Rank-2 approach has shown to give either better or competitive results than spectral or multilevel algorithms Rank-2 approach is slow (relative to METIS) and does not handle large graphs well

17 A Rank-2/Multilevel Idea
In a multilevel approach graph is coarsened down to a manageable size and then partitioning takes places…this coarse graph may be a good candidate for the Rank-2 approach Initial cut will need refinement, use the Rank-2 approach on a small subgraph (Frontier) around the cut at each level Proposed solution: Use multi-level approach in combination with Rank-2 algorithm (initial cut and refinement)

18 Multilevel Approach: G G1 G Coarsen Un-Coarsen & Refine Gn-1 Cut Gn-2
= Area where Rank 2 used Gn-1

19 Manipulating the Frontier to Produce a Bisection
-10

20 Examples and Comparisons

21 Tapir vertices 2846 Edges Metis Spectral 58 24

22 Unified 23 {22(1), 23(2), 24(5), 32, 33} Spectral: 58 Metis: 24

23 Treexpath A graph consisting of two complete binary trees of k levels, connected by an edge of their respective root K=2 Depth=2 K=4 Depth=3

24 Graph Metis Our Approach
 {4(14), 8(7)}  {4(14), 8(4), 12(6)} (16) 474 (14) (8)  800 (12) (29) (7) 1500

25 Grid3dt A 3-D graph in which cells are divided into tetrahedral

26 Graph Metis Our Approach
 1239 (28) (Lowest 1183)  1925 (all) (  1900 in 20 runs)  2789 (all) [2711, 2789]

27

28 Time Comparisons Graph Metis Circuit Our Algorithm Tapir TXP 14-2
Grid3dt_25 Grid3dt_30

29 Observations thus far Results are promising
At this point, our algorithm can be used as a verification tool

30 Future Work Improve Run Time Get Theoretical Results
Investigate multilevel coarsening to improve cut Run more test on different types of graphs Try to be more consistent


Download ppt "A Continuous Optimization Approach to the Minimum Bisection Problem"

Similar presentations


Ads by Google