A Continuous Refinement Strategy for the Multilevel Computation of Vertex Separators
aa r X i v : . [ c s . D S ] N ov A Continuous Refinement Strategy for theMultilevel Computation of Vertex Separators
William W. Hager , James T. Hungerford , and Ilya Safro Department of Mathematics, University of Florida, Gainesville, FL School of Computing, Clemson University, Clemson, SC
Abstract.
The Vertex Separator Problem (VSP) on a graph is the prob-lem of finding the smallest collection of vertices whose removal separatesthe graph into two disjoint subsets of roughly equal size. Recently, Hagerand Hungerford [1] developed a continuous bilinear programming formu-lation of the VSP. In this paper, we reinforce the bilinear programmingapproach with a multilevel scheme for learning the structure of the graph.
Let G = ( V , E ) be an undirected graph with vertex set V and edge set E . Verticesare labeled 1, 2, . . . , n . We assign to each vertex a non-negative weight c i ∈ R ≥ .If Z ⊂ V , then we let W ( Z ) = P i ∈Z c i be the total weight of vertices in Z .Throughout the paper, we assume that G is simple; that is, there are no loopsor multiple edges between vertices.The Vertex Separator Problem (VSP) on G is to find the smallest weightsubset S ⊂ V whose removal separates the graph into two roughly equal sizedsubsets A , B ⊂ V such that there are no edges between A and B ; that is,( A × B ) ∩ E = ∅ . We may formulate the VSP asmin A , B , S⊂V W ( S )subject to A ∩ B = ∅ , ( A × B ) ∩ E = ∅ , (1) ℓ a ≤ |A| ≤ u a , and ℓ b ≤ |B| ≤ u b . Here, the size constraints on A and B take the form of upper and lower bounds.Since the weight of an optimal separator S is typically small, in practice the lowerbounds on A and B are almost never attained at an optimal solution, and may betaken to be quite small. In [2], the authors consider the case where ℓ a = ℓ b = 1and u a = u b = n for the development of efficient divide and conquer algo-rithms. The VSP has several applications, including parallel computations [3],VLSI design [4,5], and network security. Like most graph partitioning problems,the VSP is NP-hard [6]. Heuristic methods proposed include vertex swappingalgorithms [5,7], spectral methods [3], continuous bilinear programming [1], andsemidefinite programming [8].For large-scale graphs, heuristics are more effective when reinforced by a mul-tilevel framework: first coarsen the graph to a suitably small size; then, solve theroblem for the coarse graph; and finally, uncoarsen the solution and refine itto obtain a solution for the original graph [9]. Many different multilevel frame-works have been proposed in the past two decades [10]. One of the most crucialparameters in a multilevel algorithm is the choice of the refinement scheme.Most multilevel graph partitioners and VSP solvers refine solutions using vari-ants of the Kernighan-Lin [5] or Fidducia-Matheyses [7,11] algorithms. In thesealgorithms, a low weight edge cut is found by making a series of vertex swapsstarting from an initial partition, and a vertex separator is obtained by selectingvertices incident to the edges in the cut. One disadvantage of using these schemesis that they assume that an optimal vertex separator lies near an optimal edgecut. As pointed out in [8], this assumption need not hold in general.In this article, we present a new refinement strategy for multilevel separatoralgorithms which computes vertex separators directly. Refinements are based onsolving the following continuous bilinear program (CBP):max x , y ∈ R n c T ( x + y ) − γ x T ( A + I ) y (2)subject to ≤ x ≤ , ≤ y ≤ , ℓ a ≤ T x ≤ u a , and ℓ b ≤ T y ≤ u b . Here, A denotes the adjacency matrix for G (defined by a ij = 1 if ( i, j ) ∈ E and a ij = 0 otherwise), I is the n × n identity matrix, c ∈ R n stores the vertexweights, and γ := max { c i : i ∈ V} . In [1], the authors show that (2) is equivalentto (1) in the following sense: Given any feasible point (ˆ x , ˆ y ) of (2) one can finda piecewise linear path to another feasible point ( x , y ) such that f ( x , y ) ≥ f (ˆ x , ˆ y ) , x , y ∈ { , } n , and x T ( A + I ) y = 0 . (3)(see the proof of Theorem 2.1, [1]). In particular, there exists a global solution to(2) satisfying (3), and for any such solution, an optimal solution to (1) is givenby A = { i : x i = 1 } , B = { i : y i = 1 } , S = { i : x i = y i = 0 } . (4)(Note that the fact that (4) is a partition of V with ( A × B ) ∩ E = ∅ follows fromthe last property of (3).)In the next section, we outline a multilevel algorithm which incorporates (2)in the refinement phase. Section 3 concludes the paper with some computationalresults comparing the effectiveness of this refinement strategy with traditionalKernighan-Lin refinements. The graph G is coarsened by visiting each vertex and matching [10] it withan unmatched neighbor to which it is most strongly coupled. The strength ofthe coupling between vertices is measured using a heavy edge distance: For thefinest graph, all edges are assigned a weight equal to 1; as the graph is coarsened,multiple edges arising between any two vertex aggregates are combined into asingle edge which is assigned a weight equal to the sum of the weights of theonstituent edges. This process is applied recursively: first the finest graph iscoarsened, then the coarse graph is coarsened again, and so on. When the graphhas a suitably small size, the coarsening stops and the VSP is solved for thecoarse graph using any available method (the bilinear program (2), Kernighan-Lin, etc.) The solution is stored as a pair of incidence vectors ( x coarse , y coarse )for A and B (see (4)).When the graph is uncoarsened, ( x coarse , y coarse ) yields a vertex separator forthe next finer level by assigning components of x fine and y fine to be equal to 1whenever their counterparts in the coarse graph were equal to 1, and similarlyfor the components equal to 0. This initial solution is refined by alternatelyholding x or y fixed, while solving (2) over the free variable and taking a stepin the direction of the solution. (Note that when x or y is fixed, (2) is a linearprogram in the free variable, and thus can be solved efficiently.) When no furtherimprovement is possible in either variable, the refinement phase terminates anda separator is retrieved by moving to a point ( x , y ) which satisfies (3).Many multilevel algorithms employ techniques for escaping false local optimaencountered during the refinement phase. For example, in [12] simulated anneal-ing is used. In the current algorithm, local maxima are escaped by reducing thepenalty parameter γ from its initial value of max { c i : i ∈ V} . The reducedproblem is solved using the current solution as a starting guess. If the currentsolution is escaped, then γ is returned to its initial value and the refinementphase is repeated. Otherwise, γ is reduced in small increments until it reaches 0and the escape phase terminates. The algorithm was implemented in C++. Graph structures such as the adjacencymatrix and the vertex weights were stored using the LEMON Graph Library [13].For our preliminary experiments, we used several symmetric matrices from theUniversity of Florida Sparse Matrix Library having dimensions between 1000 and5000. For all problems, we used the parameters ℓ a = ℓ b = 1, u a = u b = ⌊ . n ⌋ ,and c i = 1 for each i = 1 , , . . . , n . We compared the sizes of the separatorsobtained by our algorithm with the routine METIS ComputeVertexSeparatoravailable from METIS 5.1.0. Comparsions are given in Table 1. Problem |V|
Sparsity CBP METIS Problem |V|
Sparsity CBP METIS bcspwr09
G42 netz4504 lshp3466 sstmodel minnesota jagmesh7 yeast crystm01 sherman1
Table 1.
Illustrative comparison between separators obtained using either METIS orCBP (2) oth our algorithm and the METIS routine compute vertex separators usinga multilevel scheme. Moreover, both algorithms coarsen the graph using a heavyedge distance. Therefore, since initial solutions obtained at the coarsest level aretypically exact, the algorithms differ primarily in how the the solution is refinedduring the uncoarsening process. While our algorithm refines using the CBP(2), METIS employs Kernighan-Lin style refinements. In half of the problemstested, the size of the separator obtained by our algorithm was smaller thanthat of METIS. No correlation was observed between problem dimension andthe quality of the solutions obtained by either algorithm. Current preliminaryimplementation of our algorithm is not optimized, so the running time is notcompared. (However, we note that both algorithms are of the same linear com-plexity.) Nevertheless, the results in Table 1 indicate that the bilinear program(2) can serve as an effective refinement tool in multilevel separator algorithms.We compared our solvers on graphs with heavy-tailed degree distributions andthe results were very similar. We found that in contrast to the balanced graphpartitioning [10], the practical VSP solvers are still very far from being optimal.We hypothesize that the breakthrough in the results for VSP lies in the com-bination of KL/FM and CBP refinements reinforced by a stronger coarseningscheme that introduce correct reduction in the problem dimensionality (see someideas related to graph partitioning in [10]).
References
1. Hager, W.W., Hungerford, J.T.: A continuous quadratic programming formulationof the vertex separator problem. European J. Oper. Res. (2013, submitted)2. Balas, E., de Souza, C.C.: The vertex separator problem: a polyhedral investiga-tion. Math. Program. (2005) 583–6083. Pothen, A., Simon, H.D., Liou, K.: Partitioning sparse matrices with eigenvectorsof graphs. SIAM J. Matrix Anal. Appl. (3) (1990) 430–4524. Ullman, J.: Computational Aspects of VLSI. Computer Science Press (1984)5. Kernighan, B.W., Lin, S.: An efficient heuristic procedure for partitioning graphs.Bell System Tech. J. (1970) 291–3076. Bui, T., Jones, C.: Finding good approximate vertex and edge partitions is NP-hard. Information Processing Letters (1992) 153–1597. Fiduccia, C.M., Mattheyses, R.M.: A linear-time heuristic for improving networkpartitions. In: Proc. 19th Design Automation Conf., Las Vegas, NV (1982) 175–1818. Feige, U., Hajiaghayi, M., Lee, J.: Improved approximation algorithms for vertexseparators. SIAM J. Comput. (2008) 629–6579. Ron, D., Safro, I., Brandt, A.: Relaxation-based coarsening and multiscale graphorganization. Multiscale Modeling & Simulation (1) (2011) 407–42310. Buluc, A., Meyerhenke, H., Safro, I., Sanders, P., Schulz, C.: Recent advances ingraph partitioning. (2013) arXiv:1311.314411. Leiserson, C., Lewis, J.: Orderings for parallel sparse symmetric factorization. In:Third SIAM Conference on Parallel Processing for Scientific Computing. (1987)12. Safro, I., Ron, D., Brandt, A.: A multilevel algorithm for the minimum 2-sumproblem. J. Graph Algorithms Appl. (2006) 237–25813. Dezs˝o, B., J¨uttner, A., Kov´acs, P.: Lemon - an open source C++ graph templatelibrary. Electronic Notes in Theoretical Computer Science264