The edge-bandwidth minimization problem

by M.C.E. van der Ven BSc. (286463)

A thesis submitted in partial fulfillment of the requirements for the of Master of Science in Operations Research and Management Science

Supervised by Dr. R. Sotirov Department of Econometrics & Operations Research

Tilburg School of Economics and Management Tilburg University

January 10, 2012 Abstract

In this thesis, we investigate the edge-bandwidth of some well known classes of graphs. Two known lower bounds for the graph bandwidth problem are tested for lattice graphs and triangular graphs. One of these is based on semidefinite programming (SDP) re- laxations and one is based on a reformulation-linearization technique for the quadratic assignment problem. The results of these relaxations are compared to the upper bounds constructed by a new heuristic exploiting the structure of lattice graphs. Furthermore, the edge-bandwidths of the Q3 and the Petersen graph are determined. Contents

1 Introduction 3

2 The bandwidth problem 5 2.1 The bandwidth minimization problem ...... 5 2.2 Edge-bandwidth ...... 6 2.3 Cyclic bandwidth ...... 7 2.4 Antibandwidth ...... 8

3 Known bandwidths and edge-bandwidths 9 3.1 ...... 9 3.2 ...... 9 3.3 Complete ...... 10 3.4 Rectangular grid graph ...... 10 3.5 Hypercube graph ...... 10 3.6 Petersen graph ...... 13 3.7 Triangular grid graph ...... 13 3.8 Theta graph ...... 13 3.9 Hamming graph ...... 14

4 Known bounds 16 4.1 Relation bandwidth and edge-bandwidth ...... 16 4.2 Harper’s boundary bound ...... 17 4.3 Chung’s density bound ...... 18

5 Semidefinite programming 19 5.1 Linear algebra ...... 19 5.2 Semidefinite programs ...... 19

6 Relaxations 22 6.1 SDP for graph bandwidth ...... 22 6.2 Reformulation-linearization technique ...... 23

1 7 Heuristic 25 7.1 Assumptions ...... 25 7.2 Local search ...... 25 7.3 Improvements ...... 26

8 Numerical results 27 8.1 Theoretical lower bounds ...... 27 8.2 Computational lower bounds ...... 27 8.3 Heuristic results ...... 31

9 Conclusions and recommendations 33 9.1 Conclusions ...... 33 9.2 Recommendations for future research ...... 34

2 Chapter 1

Introduction

In this thesis the bandwidth problem is investigated as presented by Harper [20] in 1985. We provide a short survey on the bandwidth and the edge-bandwidth. After this, we test the quality of several lower bounds and a new heuristic. In Chapter 2, the bandwidth minimization problem and its variations, i.e. the edge- bandwidth, the cyclic bandwidth and the anti-bandwidth, are introduced. Further, the bandwidth minimization problem is formulated as the quadratic assignment problem (QAP). In Chapter 3, different classes of graphs and their line graphs are summarized to- gether with their bandwidth. The expressions for the value of the bandwidth and the edge-bandwidth or the best known bounds of the corresponding graphs are given. Chapter 4 elaborates on known bounds for the bandwidth problem and the rela- tionship between the bandwidth and the edge-bandwidth of a graph. Chung’s density bound and Harper’s boundary bound are discussed. Chapter 5 gives a brief introduction to semidefinite programming (SDP). The basics from linear algebra are explained, such as semidefinite matrices, to construct semidefi- nite programs. In Chapter 6, two relaxations are presented for the QAP that are used to compute lower bounds for the edge-bandwidth. First, the SDP relaxations that are introduced by Zhao et al. in [54] and by de Klerk et al. in [37] are presented. Second, the relaxation-linearization technique introduced by [1] is presented. In Chapter 7, a heuristic is designed to construct an upper bound on the bandwidth. This heuristic uses the properties from the adjacency matrix of the lattice graph, but shows to work for other types of graphs too. The numerical results of the relaxations from Chapter 6 and the heuristic from Chapter 7 are discussed in Chapter 8. Finally, Chapter 9 gives a concise overview of the results found in this thesis. The chapter will conclude with a section on recommendations for future research in this field. Our main focus lies on the lattice graph, the line graph of the . The bandwidth of the lattice graph is unknown. However, to verify our approach, we carry out computations on triangular graphs, for which the bandwidth is known. We

3 find new results on the exact values of the bandwidth for small lattice graphs (up to size 12), the line graph of the hypercube graph Q3 and the line graph of the Petersen graph, using the techniques from Chapter 6 and 7. The edge-bandwidths of graphs are computed by taking into consideration that the edge-bandwidth of a graph is equal to the bandwidth of its line graph.

4 Chapter 2

The bandwidth problem

2.1 The bandwidth minimization problem

Let G = (V,E) be a simple graph with |V | = n and |E| = m. A simple graph is an unweighed, undirected graph that has no loops. A layout or labeling f of the vertices of G is a bijection from V to {1, ..., n}. The bandwidth of a labeling f is

B(f, G) = max{|f(u) − f(v)| : uv ∈ E(G)}.

The bandwidth of a graph is the minimum bandwidth over all labelings, so B(G) is given by B(G) = min{B(f, G)}. f This notion was first introduced by Harper in 1985 [20]. The bandwidth problem can be described in the following way. Let A be the adja- cency matrix of G. The problem is finding a permutation of the rows and columns of A that brings all the non-zero elements of A in a band as close as possible to the diagonal. In other words, minimize the bandwidth of XAX−1 where X ∈ Rn×n is a permutation matrix. Define the matrix B = (bij) as follows: { 1 for |i − j| > k b := (1) ij 0 otherwise. We can now formulate the bandwidth minimization problem. Define µ∗ as

µ∗ := min tr(AXBXT ) (2) s.t. X ∈ Πn, where tr(X) is the trace of matrix X and Πn is the set of permutation matrices

n×n T Πn := {X ∈ R : X · en = en,X · en = en, xij ∈ {0, 1}}

∗ where en is the all ones vector of length n. Then B(G) > max{k : µ > 0}.

5 Alternatively, the bandwidth minimization problem can be formulated as a maxi- mization problem, where B = (bij): { 0 for |i − j| > k b = ij 1 otherwise. This is the opposite of the matrix B in the minimization problem, where the zeros are replaced by ones and the ones by zeros. The maximization problem is as follows:

γ∗ := max tr(AXBXT ) (3) s.t. X ∈ Πn. Then B(G) = max{k : γ∗ < 2|E|}, see [37]. Optimization problems of the form (1) and (2) are known as the quadratic assign- ment problem (QAP). The QAP was introduced by Koopmans and Beckmann in 1957 in the context of analysis of the location of economic activity. It is a model for various real life problems, such as hospital lay-out or the assignment of letters to a typewriter. The Dutch scientist Koopmans was awarded the Nobel Prize in economic science in 1975 for his contributions to the theory of optimum allocation of resources. The formulation of the QAP is as follows. Assign n facilities to n locations such that the cost of transportation between facilities is minimized. Take the n × n symmetric matrix A = (aij) where aij is the cost of transporting one unit from location i to location j. Take the n × n symmetric matrix B = (bpq) where (bpq) is the number of units to be transported between facility p and facility q. Finally, the matrix n × n matrix C = (cip) is the matrix that gives the construction costs of building facility p on location i. The assignment of the facilities to locations is given by a permutation matrix Πn. The Koopmans-Beckmann problem minimizes the total costs. This can be written as: µ∗ = min tr(AXBXT + CXT ) (2) s.t. X ∈ Πn. The bandwidth problem is proven to be NP-hard [39]. The bandwidth problem was originally used for modeling the problem of re-ordering the rows and columns of a sparse matrix so that the non-zero entries of the matrix form a band along the diagonal with a minimum width. Computations on such a sparse matrix can be carried out more efficiently. Studies on this problem date back to the 1950s. Sparse matrix computations are used in solving linear equations and differential equations. The bandwidth problem has more applications, for example VLSI (very-large-scale integration) layout, intercon- nection networks and the constraint satisfaction problem. Besides this, the bandwidth problem has applications in the field of physics and biology. For an extensive survey on the applications of the bandwidth, see [30]. There are a few variations on the bandwidth problem which will be discussed in the rest of this chapter.

2.2 Edge-bandwidth

The edge-bandwidth problem, introduced by Hwang and Lagarias, labels the edges instead of the vertices [27]. A labeling h of the edges is a bijection from E to {1, ..., m}.

6 The edge-bandwidth of a labeling is the maximum difference between the labels of a pair of incident edges. The bandwidth of an edge-labeling h of E is given by:

B′(h, G) = max{|h(uv) − h(vw)| : uv, vw ∈ E(G)}. The edge-bandwidth of a graph G is

B′(G) = min{B′(h, G)}. h The edge-bandwidth of a graph is related to the bandwidth of its line graph. The line graph L(G) of G is defined as follows. The vertices of L(G) represent the edges (by the set of their two endpoints) of G and two vertices of L(G) are adjacent whenever the corresponding edges of G are adjacent [19]. Thus, a graph is a line graph if and only if its edges can be partitioned into complete subgraphs, such that a is not in more than two of the subgraphs [6]. The adjacency matrix of L(G) is related to the incidence matrix C of G by L = CT C − 2I, where I is the identity matrix [44]. It is clear that B′(G) = B(L(G)). Because of this relation, well-known elementary bounds on the bandwidth can be applied to line graphs to obtain bounds on the edge- bandwidth. The edge-bandwidth problem is a restriction of the bandwidth problem, making it easier to compute. It remains open whether computing the edge-bandwidth is NP-hard [29]. Applications of the edge-bandwidth can be found in network circuit on- line routing and the admission control problem. For the relations between the bandwidth and the edge-bandwidth, see Section 4.1.

2.3 Cyclic bandwidth

Besides the mentioned two extensively studied forms of the bandwidth minimization problem, there is a number of modifications of the problem. One of these modifications is the cyclic bandwidth, introduced by Leung et al. in 1984 [33]. The cyclic bandwidth minimizes the maximum difference between two adjacent vertices over a circular layout of the graph. Let G = (V,E) be a simple graph with |V | = n. Define labeling f of the vertices of G as a bijection from V to {1, ..., n}. Let

Bc(f, G) = max{|f(u) − f(v)|c : uv ∈ E(G)}, where |x|c = min{|x|, n − |x|} for 0 < |x| < n. Then the cyclic bandwidth of a graph G is defined as, see [11]:

Bc(G) = min{Bc(f, G)}. f The cyclic bandwidth has applications in cyclic network design and data structures [53]. For any graph holds that, see [31]: B(G) ≤ B (G) ≤ B(G). 2 c

7 In 1997 Lam et al. showed that the bandwidth is equal to the cyclic bandwidth for all trees [11]. This result implied that the cyclic bandwidth problem is as hard as the bandwidth problem. Lam et al. showed in [32] that the bandwidth and the cyclic bandwidth are the same for rectangular grid graphs, planar graphs, triangulated graphs and triangulation meshes.

2.4 Antibandwidth

The antibandwidth problem seemed almost unexplored until a few years ago [49]. Re- cently, there have been studies on the antibandwidth, sometimes called the dual band- width, of different kinds of graphs. In contradiction to the bandwidth problem, the antibandwidth problem finds a labeling such that the minimal difference between the labels of adjacent vertices is maximized. The antibandwidth problem is proven to be NP-complete [49]. Let G = (V,E) be a simple graph with |V | = n. Define a labeling f of the vertices of G again as a bijection from V to {1, ..., n}. Then the antibandwidth of labeling f is:

ab(f, G) = min{|f(u) − f(v)| : uv ∈ E(G)}. The antibandwidth of a graph G is given by:

ab(G) = max{B(f, G)}. f

The cyclic bandwidth problem and the antibandwidth problem can be combined into the cyclic antibandwidth problem. The cyclic antibandwidth problem finds a cir- cular labeling such that the minimal distance between every pair of adjacent vertices is maximized. Let G = (V,E) be a simple graph with |V | = n, as above. Define a labeling f of the vertices of G as a bijection from V to {1, ..., n}. Then the cyclic antibandwidth of labeling f is: cab(f, G) = min{(|f(u) − f(v)|c : uv ∈ E(G)}, where |x|c is defined as in Section 2.3. The cyclic antibandwidth of a graph G is defined as: cab(G) = max{BCAB(f, G)}. f This problem is NP-hard [47]. In a similar way, we can also define the problem of the edge-antibandwidth. The problem is inspired by problems in computer science, tournament scheduling problems, coding theory and enemy facility location problems. A famous example of the latter is King Arthur’s round table problem, where his knights have to be placed around a round table such that no two enemies are each others neighbors [49]. The original application was described by Hale in 1980 as the radio frequency assignment problem, where n different frequencies have to be assigned to n transmitters in such a way that adjacent transmitters should have as different frequencies as possible [18].

8 Chapter 3

Known bandwidths and edge-bandwidths

In the previous years there has been an increase in interest in the study of bandwidth. For some types of graphs the bandwidth is known, e.g. path graphs, rectangular grid graphs, complete graphs, complete bipartite graphs, hypercube graphs and complete k-level t-ary trees. We discuss a number of graphs and their bandwidths and edge- bandwidths (if known). There also has been extended research on computing bounds. The most important bounds are discussed in Chapter 4.

3.1 Path graph

The path graph is a non-empty graph P = (V,E) of the form V = {x0, x1, ..., xn} and E = {x0x1, x1x2, ..., xn−1xn}, where the xi are all distinct. The vertices x0 and xn are linked by P and are called ends or end vertices. The vertices x1, ..., xn−1 are inner vertices of P . The number of edges of a path is its length. A path of length n is denoted by Pn. The line graph of the path graph Pn is the path graph Pn−1, since Pn has n − 1 consecutive edges. The bandwidth of the path Pn is one [16]. The edge-bandwidth of the path graph is also equal to one [5].

3.2 Complete graph

A complete graph is a simple and undirected graph in which all distinct vertices( are) n connected by an edge. A complete graph with n vertices is denoted by Kn and has 2 1 − − = 2 n(n 1) edges. Every labeling of the vertices of Kn has the same bandwidth, n 1, so the bandwidth of the complete graph is n − 1. The triangular graph Tn is the line graph of Kn. The triangular graph Tn has a vertex set that is the set of all 2-subsets of of {1, 2, ..., n}. Any two vertices u and v are adjacent if and only if |u ∩ v| = 1, which means that they are adjacent if and only if the 2-subsets have a nonempty intersection. The name for the triangular graph comes

9 from the fact that there is a triangle joining any three adjacent vertices in the graph ′ 2 [38]. The edge-bandwidth of the complete graph is B (Kn) = ⌊n /4⌋ + ⌈n/2⌉ − 2, see [29].

3.3 Complete bipartite graph

A graph G = (V,E) is called 2-partite or bipartite if V can be partitioned in two classes such that every edge is between two vertices from different classes. The different vertices in a class must not be adjacent. A bipartite graph in which every two vertices from the two classes are adjacent is called a complete bipartite graph, see [16]. If the number of vertices in class one and two is given by n and m respectively, we denote the⌊ bipartite⌋ (m−1) graph as Kn,m. The bandwidth of the complete bipartite graph is given by 2 + n assuming m ≥ n ≥ 1, see [13]. The line graph of the complete bipartite graph Kn,m is the lattice graph Ln,m. For equipartite complete( ) bipartite graphs, where m = n, Jiang et al. proved in [29] that ′ m+1 − ̸ B (Km,m) = 2 1. For Kn,m with n = m, the edge-bandwidth is unknown.

3.4 Rectangular grid graph

The rectangular grid graph Pm × Pn is the Cartesian product of two path graphs Pm and Pn, and will denote a graph whose vertices are elements of {1, 2, ..., m}×{1, 2, ..., n} in which (i, j), (r, s) are adjacent whenever either i = r and |j − s| = 1 (j is adjacent to s) or j = s and |i − r| = 1. Such a graph is called a two-dimensional or rectangular grid graph. The bandwidth of the rectangular grid graph is B(Pm × Pn) = min{m, n}, see [14]. In 2006, Pikhurko and Wojciechowski [42] proved the conjecture of Calamoneri [10] ′ on the edge-bandwidth of rectangular grid graphs: B (Pm × Pn) = 2n − 1 for m ≥ n and max{m, n} ≥ 3.

3.5 Hypercube graph

n The hypercube graph Qn is a with 2 vertices, one for each binary n- vector. Two vertices are adjacent if their binary vectors differ in exactly one coordinate ∑(a Hamming( ) distance of one) [15]. The bandwidth of the hypercube graph is given by n−1 i i=0 ⌊i/2⌋ , see [20]. Balogh et al., prove in [5] that the edge-bandwidth of the n-dimensional hypercube satisfies: ( ) ( ) ′ n ⌈n⌉ B (Qn) = + o(n) n . 2 2 3 As an example, we have taken∑ the Q3( graph,) see Figure 3.1. This graph has 2 = 8 2 i binary vertices. The bandwidth is i=0 ⌊i/2⌋ = 4. In Figure 3.2a, an optimal labeling of the vertices is shown which gives B(G) = 4, since the maximum difference between

10 a pair of incident vertices is determined by the pairs {1, 5}, {3, 7} and {4, 8}. The edge-labeling in Figure 3.2b gives us a bandwidth of 5.

0 1 0 0 0 0 0 1 0 0 1 1

0 1 1 1 0 0 0 1 1 1 1 1

Figure 3.1: The hypercube Q3.

3 7 3 2 4

1 5 1 7 8

5 6 2 6 12 9 11

4 8 10 (a) Vertex labeling (b) Edge labeling

Figure 3.2: A vertex and an edge labeling of Q3.

For n = 3, the line graph of the hypercube graph is the cuboctahedral graph. The cuboctahedral graph has 12 vertices and 24 edges. It is the quartic vertex-transitive graph Qt20. A quartic graph is a graph in which all vertices have degree 4. An auto- morphism of a graph is a permutation of the graph that preserves the edges. A graph is vertex-transitive if the full automorphism group acts transitively on vertices [28]. The cuboctahedral graph is a symmetric graph, which is a graph that is both vertex- transitive and edge-transitive. The cuboctahedral graph is also the line graph of the cubical graph. Proposition 1. The edge-bandwidth of the hypercube graph is equal to 5. Proof. Any pair of adjacent edges a and b has one adjacent edge c in common (these three edges together form a corner). Now consider the (arbitrarily chosen) edge with label 1. We distinguish two cases:

11 Figure 3.3: The cuboctahedral graph.

1. The adjacent edges of the edge with label 1 have labels equal to 2, 3, 4 and 5. In that case, the edge with label 2 already has two adjacent edges with label 1 and label 3, 4 or 5. The minimum values of the labels for the two remaining edges are 6 and 7, which leads to a bandwidth larger than or equal to 5. 2. The adjacent edges of the edge with label 1 have labels unequal to 2, 3, 4 and 5. In that case, the minimum label that an adjacent edge can have is 6 and the bandwidth is larger than or equal to 5. Now look at the hypercube graph as two vertex sets of four vertices (containing four edges). Both vertex groups are connected to each other by four edges. If we label the edges in vertex group 1 with labels 1, 2, 3 and 4 and the edges in vertex group 2 in the same order with labels 9, 10, 11 and 12, we have to connect the vertex sets by labeling the remaining four edges 5, 6, 7 and 8. We can obtain a labeling of the edges with an edge-bandwidth equal to five, see Figure 3.4. Hence, the edge-bandwidth of the hypercube graph is equal to five.

3 4 2

1 8 7

5 6 11 12 10

9 Figure 3.4: Edge-labeling of the hypercube with edge-bandwidth 5.

12 3.6 Petersen graph

The Petersen graph P got its name because of the appearance in a paper by J. Petersen in 1898 [41]. The Petersen graph has 10 vertices and 15 edges, where all vertices have degree 3. It has many common graphical representations, for one representation see Figure 3.5. The Petersen graph is symmetric. The bandwidth of the Petersen graph is equal to 5, see [24]. The line graph of the Petersen graph is the quartic vertex-transitive graph Qt39 [41]. The edge-bandwidth of the Petersen graph was not known. In this thesis, we prove that the edge-bandwidth of the Petersen graph is equal to 7.

Figure 3.5: One representation of the Petersen graph.

3.7 Triangular grid graph

The triangular grid Tl is the graph with side length l whose vertices are ordered triples of nonnegative integers summing to l. We typically refer to the first coordinate of the triple as the i-coordinate, the second as the j-coordinate and the third as k-coordinate. With this notation, i + j + k = l. An edge is connecting two triples if they agree in one coordinate and differ by 1 in the other two coordinates [3]. The bandwidth of the triangular grid graph is l + 1, see [25]. For the edge-bandwidth of the triangular grid graph a lower and upper bound are known, proven by Akhtar et al., in [3]:

′ 3l − o(l) ≤ B (Tl) ≤ 3l − 1.

3.8 Theta graph

Theta graphs are graphs with two vertices, v and w, connected by several vertex-disjoint paths with lengths l1, l2, ..., lm, m ≥ 1 and common endpoints in the both vertices, denoted by Θ(l1, ..., l3). The left end-edges, also left ends, are the edges incident to v.

13 The right ends are incident to w. This implies a path length of one when a right end is a left end [17]. When all path lengths are equal, the bandwidth and edge-bandwidth are both equal to m [29]. When every li equals 2, then the bandwidth of the Theta graph is given by, see [40]: ⌈ ⌉ 3m + 2 B(Θ(m, 2)) = . 4

More general expressions for the bandwidth for all Theta graphs are given in [40]. For m = 1 and m = 2, the edge-bandwidths are respectively 1 and 2. We therefore assume m ≥ 3. Since m pairwise incident ends receive m distinct labels, it always holds that, ′ see [17], B (Θ(l1, ..., lm)) ≥ m − 1. Suppose m ≥ 3 and G = Θ(l1, ..., lm) where lm > 2 and l1 ≠ lm−1. Let s = l1 and c = max{i : li = s}. Define U(Θ(l1, ..., l3)) to be the largest integer u such that [ ] (s − 1)(3m − 2 − u) ∑u ≥ (l − 2) + (s − 1)(m − u + c). 2 i i=c+1

If U(Θ(l1, ..., l3)) is defined as above, the edge-bandwidth is given by, see [17]: ⌈ ⌉ 3m − 2 − U(Θ(l , ..., l )) B′(Θ(l , ..., l )) = 1 3 . 1 3 2

3.9 Hamming graph × × × The graph Cartesian product of d complete graphs, Kn1 Kn2 ... Knd is called a Hamming graph, since a pair of vertices is connected by an edge if and only if they are at a Hamming distance of one of each other (and thus differ in exactly one coordinate) [21]. d The Hamming graph is denoted by H(d, n) and has n vertices. Note that H(1, n) = Kn and H(d, 2) = Qd. In [21], Harper gave a lower bound for the bandwidth of the Hamming graph: ( ) d nd B(H(d, n)) ≥ . d/2 2d √ ( ) → ∞ ≃ m m For d this lower bound may be estimated by Stirling’s formula, m! 2πm e to obtain that: √ 2 B(H(d, n)) & nd πd In [21], Harper also presents the upper bound for the bandwidth of the Hamming graph: ( ) d nd B(H(d, n)) . as d → ∞. d/2 2d This matches the lower bound.

14 For the edge-bandwidth, both a lower and upper bound are given in [2]. The upper bound is given by: √ d B′(H(d, n)) ≤ (1 + o(1)) nd(n − 1) as d → ∞. 2π Let n be a fixed positive integer. We have the lower bound: √ d B′(H(d, n)) ≥ (1 − o(1)) nd(n − 1) as d → ∞. 2π This lower bound asymptotically matches the upper bound when n is even.

15 Chapter 4

Known bounds

4.1 Relation bandwidth and edge-bandwidth

The relationship between the bandwidth and edge-bandwidth itself gives interesting bounds. It holds that B(G) ≤ B′(G) for a finite graph G that has minimum degree ≥ 2 (so not for caterpillars of diameter more than k in which every vertex has degree k or k + 1), see [29]. Recall that the minimum (or maximum) degree of G is the minimum (maximum) over all vertex degrees. The degree of a vertex is the number of edges incident to the vertex.

Proposition 1. For the edge-bandwidth, the following holds (see [29] and [10]):

a. For H ⊂ G, B′(H) ≤ B′(G).

b. The subgraphs of G in which each pair of vertices is connected by a path and not to any other vertices of the graph, are called components {Gi} of G, see [22]. It ′ ′ holds that B (G) = max{B (Gi)}. c. Let ∆(G) denote the maximum degree of G. This is the maximum over all vertex degrees of G. Then B′(G) ≥ ∆(G) − 1.

d. For the edge-bandwidth of any graph, B′(G) ≤ ∆(G)B(G) + ∆(G) − 1.

Proof. We give a short proof of the proposition above (see [29] and [10]):

a. A labeling of G contains a labeling of H.

b. The components Gi of G are not connected by an edge (by definition), so the components of L(G) are not connected. We obtain the lower bound from (a.) for ′ ′ all components which leads to B (G) = max{B (Gi)}. c. The edges incident to a vertex form a clique in the line graph. The lowest and the highest label in the clique are at most ∆(G) − 1 apart, so the edge-bandwidth of the graph is at least ∆(G) − 1.

16 d. Consider the optimal labeling the vertices of G. Vertices are identified by their labels. Let di be the degree of vertex i. Label all edges incident to vertex 1 by 1, 2, ..., d1. Label unlabeled edges incident to vertex 2 by d1 + 1, d1 + 2, ..., d1 + x2, where x2 is the number of vertices incident to vertex 2 and not to vertex 1, so x2 ≤ d2. Label unlabeled edges incident to vertex i ≤ n − 1 by d1 + x2 + x3 + ... + xi−1 + 1, ..., d1 + x2 + x3 + ... + xi−1 + xi with xi ≤ di. Let (i, j) and (j, k) be a pair of incident edges of G where i < j < k. The label of (i, j) is at least equal to d1 + x2 + x3 + ... + xi−1 + 1, since you begin labeling the vertices of i with the number d1 + x2 + x3 + ... + xi−1 + 1. The label of (j, k) is at most d1 + x2 + x3 + ... + xi−1 + xi + ... + xj since you end the labeling of the vertices of j with xj, while you started the labeling with d1 + x2 + x3 + ... + xj−1 + 1. The difference of the labels of (i, j) and (j, k) is at most xi + ... + xj − 1. Since xi ≤ di, xi + ... + xj ≤ (j − i + 1)∆(G). Since the difference between j and i is at most B(G), we obtain that

xi + ... + xj − 1 ≤ (j − i + 1)∆(G) − 1 ≤ (B(G) + 1)∆(G) − 1. Assume now that i, k < j and the proof is similar.

4.2 Harper’s boundary bound

There is a powerful lower bound for estimating the bandwidth. The standard techniques for obtaining lower bounds on the bandwidth use isoperimetric inequalities [2]. Given a graph G and a set S ⊆ V , let

∂(S) = {v ∈ V − S : ∃u ∈ S such that uv ∈ E} where ∂(S) is the (vertex) boundary of S. |∂(S)| is the number of vertices that is not in S and has a neighbor in S. Given an optimal numbering f of the vertices, let S be the set of vertices with labels {1, 2, ..., k}, where 1 ≤ k ≤ n. So |S| = k. Then the highest label assigned to a vertex in the set ∂(S) is at least k + |∂(S)|, because the labeling is optimal. We take v the vertex with the highest label in ∂(S). This vertex has, by definition, a neighbor u in S, of which the label is at most k. So |f(u)−f(v)| ≥ (k+|∂(S)|)−k = |∂(S)|. By definition, we can say that B(f, G) ≥ |∂(S)|, so B(G) ≥ |∂(S)|. Similarly, consider a vertex in ∂(V − S) with the smallest label. Its label is at most k − |∂(V − S)| + 1. This is explained by the following. If we consider the set S, the smallest label is 1. Since the vertices in S with low labels do not have to satisfy the constraint that they have to be connected by an edge to a vertex in V − S, we have to subtract the number of vertices S that does satisfy this constraint to obtain that the vertex has a label of at most k − |∂(V − S)| + 1. This vertex is connected to a neighbor y in V − S, whose label is at least k + 1. This gives us that |f(u) − f(v)| ≥ |∂(V − S)|, so by definition B(G) ≥ |∂(V − S)|.

17 Combining this, we have B(G) ≥ max{|∂(S)|, |∂(V − S)|}. We can say that

B(G) ≥ min max{|∂(S)|, |∂(V − S)|}. S⊆V,|S|=k

For each k, define Lk(G) = minS⊆V,|S|=k |∂(S)|. Then B(G) ≥ Lk(G). Since this holds for each k for 0 ≤ k ≤ |V |, we have that B(G) ≥ maxk Lk(G). The lower bound maxk Lk(G) is referred to as the Harper bound, see [20]. In general, it is hard to calculate the Harper bound. For the edge-bandwidth, we use the edge set to express the lower bound. For F ⊆ E, let ∂(F ) be the set of edges that are not in F but that are incident to at least one edge in F . Then the edge-bandwidth satisfies, see [29]:

B′(G) ≥ max min |∂(F )|. k |F |=k

4.3 Chung’s density bound

The length of a path Pn is n − 1. The distance between two vertices of a graph G is the length of the shortest path between them. The diameter of a graph, diam(G), is the maximum distance between any pair of vertices [12]. Let G be a graph, then Chung’s density bound is, see [12]: |V | − 1 B(G) ≥ . diam(G) To find a bound for the edge-bandwidth, we consider the subgraph H ⊆ G. In H, the highest and lowest labels are at least |E(H)|−1 apart (they are exactly |E(H)|−1 apart when the edges are labeled {1, ..., |E(H)|}). The edges with these labels are connected by a path with a length that is at most equal to diam(L(H)). By the pigeonhole principle, there is a pair of consecutive edges along the path that has labels that differ |E(H)|−1 by at least diam(L(H)) . Chung’s density bound for the edge bandwidth equals, see [29]: ⌈ ⌉ |E(H)| − 1 B′(G) ≥ max . H⊆G diam(L(H))

18 Chapter 5

Semidefinite programming

In this chapter we first describe some basic linear algebra notations. This notation is used for constructing semidefinite programs in Section 5.2.

5.1 Linear algebra

We denote the set of m × n real matrices by Mm,n. The natural inner product between two matrices A, B ∈ Mm,n is: ∑m ∑n T ⟨A, B⟩ = tr(B A) = aijbij. i=1 j=1

The Kronecker product is a mapping ⊗ : Mm,n × Mk,l → Mmk,nl. This is defined by:   a11B . . . a1nB  . .  A ⊗ B =  . .  . am1B . . . amnB In addition to the Kronecker product, there is also an operator that transforms matrix mn A ∈ Mm,n into a vector in R . The vector operator vec(·) is defined as:   A.,1  .  vec(A) =  .  . A.,n

Let Sn denote the set of symmetric matrices of size n × n. The matrix A ∈ Sn is ∈ + ≽ T ≥ ∀ ∈ Rn positive semidefinite (A Sn ,A 0) if x Ax 0, x .

5.2 Semidefinite programs

Semidefinite programming is linear programming over the cone of positive semidefinite matrices. The difference between the two is the vector x ∈ Rn of variables in linear pro-

19 ∈ + gramming that is replaced by the matrix variable X Sn for semidefinite programming. Thus, the cone of the nonnegative orthant, x ≥ 0, is replaced by the cone of positive semidefinite matrices X ≽ 0. To explain the similarity, the problem is formulated with respect to the vector representation of X, see [23]:

min cT vec(X) s.t. A vec(X) = b X ≽ 0 n2 m for vectors c ∈ R , b ∈ R and constraint matrix A ∈ Mm,n2 . We can interpret the vector c and the rows of the matrix A as matrices. Define T C ∈ Mn as the matrix so that c = vec(C). The inner product c vec(X) can be written as the inner product ⟨C,X⟩. We can also interpret row Ai,· as a symmetric matrix Ai ∈ Sn and rewrite the i-th constraint Ai,·vec(X) as ⟨Ai,X⟩. Writing the constraints in m such a way makes it possible to collect the constraints in a linear operator A : Sn → R ,   ⟨A1,X⟩  .  AX =  .  . ⟨Am,X⟩ With these notations, we obtain the standard formulation of a semidefinite program, see [48]:

min ⟨C,X⟩ s.t. AX = b X ≽ 0. The formulation with multiple semidefinite variables looks as follows: ∑ k ⟨ ⟩ min ∑i=k Ci,Xi k A s.t. i=k iXi = b X ∈ S+ ,...,X ∈ S+ . 1 n1 k nk We construct the dual of the problem by use of the Lagrangian. The equality constraint is added to the objective with Lagrange multiplier λ ∈ R. The primal problem is the first part of the following equation. The dual is obtained by interchanging the infimum and the supremum, see [48]:

inf sup ⟨C,X⟩ + ⟨b − AX, λ⟩ ≥ sup inf ⟨b, λ⟩ + ⟨X,C − AT λ⟩. X≽0 λ∈Rm λ∈Rm X≽0 The right hand side cannot exceed the value of the primal. For the supremum on the right hand side to be finite, the inner minimization over X ≽ 0 must remain finite for some λ˜. This requires C − AT λ˜ to be positive semidefinite. This condition is satisfied by introducing slack matrix Z. The standard form of the dual is, see [48]: max ⟨b, λ⟩ s.t. AT λ + Z = C λ ∈ Rm,Z ≽ 0.

20 For multiple semidefinite variables we obtain:

max ⟨b, λ⟩ AT s.t. i λ + Zi = Ci i = 1...k λ ∈ Rm,Z ∈ S+ ,...,Z ∈ S+ . 1 n1 k nk Semidefinite programs are much more general than linear programs. Many convex opti- mization problems, such as linear programming and quadratically constrained quadratic programming, can be cast as semidefinite programs. For small problems, the semidef- inite program can be solved very efficiently, using interior-point methods [52]. Appli- cations of semidefinite programming can be found in combinatorial optimization (es- pecially in ), engineering and system and control theory. For a survey on applications, see [51] and [36].

21 Chapter 6

Relaxations

In this chapter, different relaxations of the QAP are presented. We give one relaxation based on semidefinite programming and one relaxation based on a linearization tech- nique that reformulates the quadratic problem as a linear problem, which is easier to solve.

6.1 SDP for graph bandwidth

Since the bandwidth problem can be formulated as the QAP, we can use QAP relax- ations to obtain bounds for the bandwidth. Zhao, Karisch, Rendl and Wolkowicz give in [54] a semidefinite programming relaxation for the QAP problem:

∗ ⟨ ⊗ ⟩ µZKRW = min B A, Y s.t. ⟨In ⊗ Eii,Y ⟩ = 1, ⟨Eii ⊗ In,Y ⟩ = 1, i = 1, ..., n, ⟨In ⊗ (Jn − In) + (Jn − In) ⊗ In,Y ⟩ = 0, 2 ⟨In ⊗ Jn,Y ⟩ = n , Y ≥ 0,Y ≽ 0 ∈ + where for the bandwidth problem B = (bij) is defined as in (1), Y Sn2 , In is the identity matrix, Jn is the matrix of all ones, and Eii is the matrix with Eii = 1 on (i, i) and zero otherwise. The constraints involving Eii define the assignment constraints for the permutation matrix. The sparsity constraints ⟨In ⊗ (Jn − In) + (Jn − In) ⊗ In,Y ⟩ = 0 generalize the orthogonality conditions XXT = XT X = I. A lower bound on B(G), based on semidefinite programming, is: B(G) ≥ BZKRW = { ∗ } max k : µZKRW > 0 , see also [37]. In [37] it is shown that if the graph under consideration has a large automorphism group, then the previous relaxation reduces to:

22 ∑d ⟨ −1⟨ ⟩ ⟩ min B, mi A, Ai Xi ∑ i=1 s.t. Xi = In, i∈IA ∑d Xi = Jn, i=1 ∑d −1 ⊗ ≽ mi Ai Xi 0, i=1 ⟨ ⟩ ∗ T ≥ J, Xi = mi,Xi = Xi ,Xi 0, i = 1, ..., d where the Ai matrices are orbitals that are derived from the automorphism group of the graph.

6.2 Reformulation-linearization technique

In the standard formulation of the QAP, we have a quadratic term in the objective. The reformulation-linearization technique (RLT) recasts the QAP as a mixed 0-1 linear program by constructing redundant nonlinear restrictions, obtained by multiplying the equality constraints of X by product factors of binary variables. Secondly, it linearizes the objective and constraints by substituting a continuous variable for each nonlinear term, see [1]: Reformulation: All 2n equations (n row constraints and n column constraints) and each of the n2 nonnegativity restrictions (of the n × n matrix X) defining the 2 permutation matrix are multiplied by each of the n binary variables xkl. These new constraints must be added to the constraints defining a permutation matrix in the original problem. When a variable xij is multiplied with xkl, the product xijxkl must 2 be expressed in that order. Substitute xkl = xkl in all constraints and set xijxkl = 0 if i = k and j ≠ l or if j = l and i ≠ k. Linearization: The resulting problem can be linearized by substituting the variable yijkl for every occurrence of the product xijxkl with i ≠ k and j ≠ l. Note that yijkl = yklij must hold for all (i, j, k, l), i < k, j ≠ l. This leads to a new formulation, called RLT: ∑ ∑ ∑ ∑ min Cijklyijkl ∑i≠ k j≠ l k l s.t. yijkl = xkl for all (j, k, l), j ≠ l, (1) ∑i≠ k yijkl = xkl for all (i, k, l), i ≠ k, (2) j≠ l yijkl = yklij for all (i, j, k, l), i < k, j ≠ l (3) yijkl ≥ 0 for all (i, j, k, l), i ≠ k, j ≠ l (4) x ∈ X, x binary.

23 We can decrease the number of constraints by the following operations. The set of constraints to define the permutation matrix X can be reduced by one. The sum of all columns and the sum of all rows must equal one. If we leave out one of these constraints, the sum over all (remaining) columns and all (remaining) rows still has to equal one. This leaves only one possibility to place a one in the row or column that does not have the constraint that its sum must equal 1. Therefore, we obtain the same feasible set with just 2n − 1 constraints. This reduces the number of constraints in either (1) or (2) of RLT (depending on the removal of a row or column constraint from X) by n(n − 1). This is because of the multiplication of each equation in X by n(n−1) different variables xkl.

24 Chapter 7

Heuristic

In this chapter, a heuristic is designed to minimize the bandwidth of the lattice graph. The special structure of the lattice graph is exploited to obtain a heuristic with a good ratio between computation time and quality of the solution.

7.1 Assumptions

The form of the lattice graphs Ln,m with 1 ≤ n ≤ m, shows that there are m edges in the adjacency matrix that are at a maximum distance from the diagonal. If an edge is at a maximum distance from the diagonal, we call this edge a critical edge e = (p, q). The corresponding critical vertex is the vertex with the maximum label v = max{p, q}. See for example the adjacency matrix of the (2,3)-lattice graph:   0 1 1 1 0 0   1 0 1 0 1 0   1 1 0 0 0 1   1 0 0 0 1 1 0 1 0 1 0 1 0 0 1 1 1 0 where the edges (1,4), (2,5) and (3,6) are the critical edges and the vertices 4, 5 and 6 are the critical vertices. These edges are critical for determining the bandwidth, since they are at distance 3 from the diagonal while all other edges in the adjacency matrix have a distance smaller than 3 to the diagonal. Shifting these critical edges towards the diagonal can lead to a lower bandwidth. Therefore, we construct a special heuristic for this kind of adjacency matrices that will focus on the critical edges and vertices.

7.2 Local search

To determine the bandwidth, we start from an upper bound on the bandwidth for the lattice graph, k = n · m − m and lower k by one whilst the objective value equals zero. For any k, we start by finding the critical m edges and vertices of the graph with

25 adjacency matrix A. We find these by using the cliques in the lattice graph. The lattice graph has n cliques of size m and m cliques of size n. The critical vertices are found in the last clique of the n cliques of size m. For the (2,3)-lattice graph, the two cliques of size 3 are {1,2,3} and {4,5,6}. As we can see, our critical vertices together form the last largest clique. The second step is to generate a random permutation matrix as an initial labeling of the vertices. If this labeling does not give an objective of zero, we try to improve it by finding better solutions in its neighborhood. For each of the m critical vertices, the labels of the m(n−1) non-critical vertices are swapped one by one with the label of the critical vertex by interchanging their rows in the permutation matrix. When a better objective is obtained for a permutation of the labels, the new permutation matrix is saved and used for the next swap. If not, we use the previous obtained permutation matrix for the next swap. This is one neighborhood search process, in which m · m(n − 1) = m2(n − 1) swaps are done. For our example of the (2,3)-lattice graph, we start with swapping the labels of critical vertex 4 and the first non-critical vertex 1. This is done by swapping row 4 and row 1 in the permutation matrix. If a better objective is found for the new permutation matrix, this permutation matrix is saved. If the objective has not improved, we continue the next swap with the previous found permutation matrix. Next, we swap the labels of vertex 4 and vertex 2 and check if the objective has improved. Consecutively, the labels of vertex 4 and vertex 3 are swapped and again the objective is checked for improvement. Then, we continue this swapping method for critical vertices 5 and 6. To check the quality of this heuristic, we have tested it for triangular graphs, the cuboctahedral graph and the Qt39, for which exact values of the bandwidth are known. For all graphs we use the same principle although the adjacency matrices have a different form. The neighborhood search method gives slightly different (better) results for the triangular graph than for the lattice graph and gives the exact value of the bandwidth for the cuboctahedral graph and the Qt39. See Section 8.3.

7.3 Improvements

To improve the heuristic, we have used several known improvement techniques for neigh- borhood search heuristics. • Diversification: we use a large number of randomly generated starting points (permutation matrices). • Intensification: the neighborhood of the best solution found for any k is searched for better solutions. • Quality of starting point: the optimal permutation matrix X from k + 1 is used as a starting point for the neighborhood search heuristic to determine the optimal matrix for k. To reduce computation time, a stopping criterium can be added. A second possibility is to start the heuristic from a lower value of k.

26 Chapter 8

Numerical results

In this section we present numerical results for the relaxations and the heuristic. We compute lower and upper bounds for the edge-bandwidth of complete graphs, complete bipartite graphs, the hypercube Q3 and the Petersen graph. A pc with a 2.60 GHz processor and 4 GB memory is used for the heuristic and a pc with 3.33 GHz processor and 32 GB memory is used for computing the SDP bounds.

8.1 Theoretical lower bounds

We have discussed several theoretical lower bounds in Chapter 4. We shortly enumerate them and give the values of these bounds in Table 8.1. From Table 8.1, it can be seen that Chung’s density bound (bound 3) gives the strongest lower bounds. 1. B′(G) ≥ B(G) (bound 1). 2. B′(G) ≥ ∆(G) − 1 (bound 2). ′ ≥ |V (L(G))|−1 3. B (G) diam(L(G)) (bound 3).

8.2 Computational lower bounds

We have implemented the QAP as a quadratic integer program in AIMMS to obtain exact numerical results on the bandwidth for small graphs (with |V | ≤ 10). Besides this, we have summarized the known bandwidths, see Table 8.2. These results are used to compare lower bounds obtained from different relaxations. One relaxation of the QAP is obtained by relaxing the binary constraint for X in the relaxation-linearization formulation of the QAP from Section 6.2 and solving the problem as an LP. This gives a lower bound for the bandwidth problem. The relaxation is implemented in AIMMS. The results for the obtained lower bounds are summarized in Table 8.3. If no value was found, a dash is placed. As we can see, the LP relaxation gives tight bounds for small problems (|V | ≤ 6), but does not give a very good bound for somewhat larger values of |V |.

27 Graph |n| Bound 1 Bound 2 Bound 3 3-triangular graph 3 2 1 2 4-triangular graph 6 3 2 3 5-triangular graph 10 4 3 5 6-triangular graph 15 5 4 7 7-triangular graph 21 6 5 10 8-triangular graph 28 7 6 14 9-triangular graph 36 8 7 18 10-triangular graph 45 9 8 22 11-triangular graph 55 10 9 27 12-triangular graph 66 11 10 33 13-triangular graph 78 12 11 39 14-triangular graph 91 13 12 45 15-triangular graph 105 14 13 52 16-triangular graph 120 15 14 60 17-triangular graph 136 16 15 68 18-triangular graph 153 17 16 76 19-triangular graph 171 18 17 85 20-triangular graph 190 19 18 95 25-triangular graph 300 24 23 150 30-triangular graph 435 29 28 217 2,3-lattice graph 6 3 2 3 3,3-lattice graph 9 4 2 4 3,4-lattice graph 12 4 3 6 4,4-lattice graph 16 5 3 8 4,5-lattice graph 20 6 4 10 5,5-lattice graph 25 7 4 12 5,6-lattice graph 30 7 5 15 6,6-lattice graph 36 8 5 18 6,7-lattice graph 42 9 6 21 7,7-lattice graph 49 10 6 24 7,8-lattice graph 56 10 7 28 8,8-lattice graph 64 11 8 32 Qt39 15 5 2 5 Cuboctahedral graph 12 4 2 4

Table 8.1: Theoretical lower bounds for the bandwidth minimization problem.

28 Graph Bandwidth 3-triangular graph 2 4-triangular graph 4 5-triangular graph 7 6-triangular graph 10 7-triangular graph 14 8-triangular graph 18 9-triangular graph 23 10-triangular graph 28 11-triangular graph 34 12-triangular graph 40 13-triangular graph 47 14-triangular graph 54 15-triangular graph 62 20-triangular graph 108 25-triangular graph 167 30-triangular graph 238 2,3-lattice graph 3 2,4-lattice graph 4 2,5-lattice graph 5 3,3-lattice graph 5 3,4-lattice graph 7 4,4-lattice graph 9 5,5-lattice graph 14 6,6-lattice graph 20 7,7-lattice graph 27 8,8-lattice graph 35 9,9-lattice graph 44 10,10-lattice graph 54 Qt39 7 Cuboctahedral graph 5

Table 8.2: Exact value of the bandwidth.

29 Graph Exact RLT value LP 3-triangular graph 2 2 4-triangular graph 4 4 5-triangular graph 7 6 6-triangular graph - - 2,3-lattice graph 3 3 3,3-lattice graph 5 4 3,4-lattice graph - 5 4,4-lattice graph - - Qt39 - - Cuboctahedral graph 5 4

Table 8.3: RLT lower bounds.

Graph SDP bound Symmetry SDP bound 3-triangular graph 2 2 4-triangular graph 4 4 5-triangular graph 7 7 6-triangular graph - 10 7-triangular graph - 12 8-triangular graph - 17 2,3-lattice graph 3 3 2,4-lattice graph 4 4 2,5-lattice graph 5 5 3,3-lattice graph 5 5 3,4-lattice graph - 7 3,5-lattice graph - 8 3,6-lattice graph - 10 4,4-lattice graph - 9 4,5-lattice graph - 11 4,6-lattice graph - 13 5,6-lattice graph - 16 Qt39 - 6 Cuboctahedral graph - 5

Table 8.4: SDP lower bounds.

30 The SDP relaxations by Zhao, Karisch, Rendl and Wolkowicz (see [54]) and the SDP relaxation exploiting algebraic symmetry from Section 6.1 are implemented in Matlab. To solve the relaxations we use the Yalmip Toolbox (see [35]) for advanced modeling of convex and nonconvex optimization problems and the SDPT3 solver [50]. For the symmetry relaxation, the SeDuMi solver [46] for optimization over symmetric cones is used. The orbitals for the triangular graph Tn are given by the following relations:

A1 = In

A2 = A

A3 = Jn − In − A.

For the lattice graph Ln,m, with n ≤ m, the orbitals are as follows:

A1 = In×m

A2 = (Jn − In) ⊗ Im

A3 = In ⊗ (Jm − Im)

A4 = Jn×m − In×m − (Jn − In) ⊗ Im − In ⊗ (Jm − Im).

For all other matrices in this thesis, the orbitals A1, ..., Ad are generated using GAP, a system for computational discrete algebra. This relaxation gives us results as sum- marized in Table 8.4. By exploiting the symmetry of a graph, larger problems can be solved in considerably shorter time.

8.3 Heuristic results

The heuristic from Chapter 7 is implemented in Matlab. The results for the lattice graphs and the triangular graphs can be found in Table 8.5. The total computation time for running the heuristic for all starting points is included in this table. For the triangular graph, the SDP bound starts to deviate from the exact bandwidth for |V | > 20. The heuristic results finds the value of the bandwidth for graphs up to size 28 and deviates by 4% for |V | = 36. For the equipartite lattice graphs, the exact value of the bandwidth is known and is obtained for graphs with a size of up to 16 vertices. For the (5,5)-lattice graph with |V | = 25, there is a gap of 7%. As it can be seen, the bandwidths for the smaller lattice graphs (up to size 12) correspond to the known bandwidths from Table 8.2. For the lattice graphs with |V | > 12, the lower bound from the SDP relaxation does not coincide with the upper bound found by the heuristic. There is a gap between the lower and upper bound. This can be caused by a deviation from the actual value by the lower or the upper bound, or both. For the Qt39 and the cuboctahedral graph, the exact bandwidths are found. The same heuristic is used, based on the form of the lattice graph, as described in Chapter 7.

31 Graph |n| 100 Time (s) 200 Time (s) 500 Time (s) 2,3-lattice graph 6 3 1.66 3 2.89 3 6.51 2,4-lattice graph 8 4 2.02 4 4.16 4 10.25 2,5-lattice graph 10 5 3.11 5 6.26 5 15.05 3,3-lattice graph 9 5 3.90 5 7.69 5 18.37 3,4-lattice graph 12 7 6.16 7 13.51 7 30.95 3,5-lattice graph 15 9 9.43 9 20.12 9 50.63 3,6-lattice graph 18 11 14.01 11 28.21 11 69.55 3,7-lattice graph 21 13 19.26 13 37.24 13 96.53 4,4-lattice graph 16 10 12.11 9 25.11 9 61.38 4,5-lattice graph 20 12 18.89 12 38.32 12 94.37 4,6-lattice graph 24 15 27.29 14 52.71 14 141.4 4,7-lattice graph 28 17 36.8 17 77.28 16 195.96 5,5-lattice graph 25 15 30.92 15 60.46 15 154.59 5,6-lattice graph 30 19 48.31 19 96.20 18 240.61 6,7-lattice graph 42 29 102.79 28 203.26 28 501.62 3-triangular graph 3 2 0.43 2 0.71 2 1.73 4-triangular graph 6 4 1.55 4 3.16 4 7.84 5-triangular graph 10 7 5.45 7 11.15 7 27.33 6-triangular graph 15 10 13.68 10 28.2 10 68.28 7-triangular graph 21 14 27.93 14 57.4 14 143.95 8-triangular graph 28 20 54.58 18 113.99 18 284.91 9-triangular graph 36 25 94.54 25 193.98 24 488.59 Qt39 15 8 9.34 7 18.44 7 47.49 Cuboctahedral graph 12 6 6.41 6 13.48 5 33.63

Table 8.5: Heuristic upper bounds for 100, 200 and 500 starting points.

32 Chapter 9

Conclusions and recommendations

9.1 Conclusions

In this thesis we have computed lower and upper bounds for the edge-bandwidth of complete graphs, complete bipartite graphs, the hypercube graph Q3 and the Petersen graph. We have also computed exact values for some smaller graphs by solving the original QAP in AIMMS, see Table 9.1. To compute these lower bounds we have used an SDP approach and a relaxation- linearization technique. To compute upper bounds we have derived our own heuristic, based on the form of the adjacency matrix of the lattice graph. This heuristic also delivers good results for graphs with a different structure, such as triangular graphs. Furthermore, we have proven that the edge-bandwidth for Q3 is equal to 5, and we found the exact value of the edge-bandwidth for the Petersen graph. In Table 9.2, the results of all used relaxations and the heuristic are summarized. If the exact bandwidth is found by a relaxation or the heuristic, a check mark is placed. If a value is found that is not equal to the exact bandwidth an x mark is placed, while if a value is found when the exact bandwidth is not known, a question mark is placed. Finally, if no value is found, a dash is placed.

Graph Edge-bandwidth 2,3-complete bipartite graph 3 2,4-complete bipartite graph 4 2,5-complete bipartite graph 5 3,4-complete bipartite graph 7 Qt39 7 Cuboctahedral graph 5

Table 9.1: Newly found bandwidths.

33 Our heuristic can handle the biggest matrices and is most successful in finding the exact value of the bandwidth for the selected graphs. As seen in Table 8.5, the heuristic computes the upper bounds within reasonable time. For the lower bound, the SDP relaxation exploiting symmetry of the graph finds the best results and can cope with the biggest matrices.

9.2 Recommendations for future research

There is still a great number of graphs for which the edge-bandwidth is not known. Fu- ture research may focus on the edge-bandwidth of the triangular grid graph for which a lower and upper bound are known, or the bandwidth or edge-bandwidth of the Hamming graph, for which only asymptotic bounds are known. Besides the graphs described in this thesis, there are many more graphs with unknown bandwidth and edge-bandwidth. For future research on the lattice graph, it is recommended to improve the tightness of the lower bounds by looking for stronger relaxations, that may be focussed mainly on the properties of the lattice graph. For the heuristic, computation time may be decreased in several ways such that upper bounds for larger matrices can be found more easily. An example to decrease computation time can be by adding a tabu list or by starting from a smaller value for k, possibly from a theoretical upper bound on the bandwidth. Also, a stopping criterium can be added. Different neighborhood search improvements can be implemented, such as adaptive perturbations or acceptance criteria to improve the quality of the solution. Finally, extensive research on the lattice graph may lead to an exact expression for the edge-bandwidth of the lattice graph.

34 Graph SDP rel. SDP sym. RLT Heuristic 2,3-lattice graph X X X X 2,4-lattice graph X X - X 2,5-lattice graph X X - X 3,3-lattice graph X X × X 3,4-lattice graph - X - X 3,5-lattice graph - ? - ? 3,6-lattice graph - ? - ? 3,7-lattice graph - - - ? 4,4-lattice graph - X - X 4,5-lattice graph - ? - ? 4,6-lattice graph - ? - ? 4,7-lattice graph - - - ? 5,5-lattice graph - - - × 5,6-lattice graph - ? - ? 6,7-lattice graph - - - ? 3-triangular graph X X X X 4-triangular graph X X X X 5-triangular graph X X × X 6-triangular graph - X - X 7-triangular graph - × - X 8-triangular graph - × - X 9-triangular graph - - - × Qt39 - × - X Cuboctahedral graph - X × X

Table 9.2: Summarized results of relaxations and heuristic.

35 Bibliography

[1] Adams, W.P., Guignard, M., Hahn, P.M. and Hightower, W.L. (2007). A level-2 reformulation-linearization technique bound for the quadratic assignment problem. European Journal of Operational Research, 180:983-996.

[2] Akhtar, R., Jiang, T. and Miller, Z. (2008). Asymptotic determination of edge- bandwidth of multidimensional grids and Hamming graphs. Journal of Discrete Mathematics, 22:425-449.

[3] Akhtar, R., Jiang, T. and Pritikin, D. (2007). Edge-bandwidth of the triangular grid. In proceedings of Electronic Journal of Combinatorics, 11 pp.

[4] Anand, P., Escuadro, H., Gera, R., Hartke, S. and Stolee, D. (2010). On the hardness of recognizing triangular line graphs. Accepted to Discrete mathematics.

[5] Balogh, J., Mubayi, D. and Pluhar, A. (2006). On the edge-bandwidth of graph products. Theoretical Computer Science, 359:43-57.

[6] Beineke, L. and Wilson, R. (2005). Topics in Algebraic Graph Theory. Cambrigde: Cambridge University Press.

[7] Bezrukov, S., Grunwald, N. and Weber, K. (1993). On edge-numberings of the n-cube. Discrete Applied Mathematics, 46:96-116.

[8] Brouwer, A., Cohen, A. and Neumaier, A. (1989). Distance-Regular graphs. New York: Springer-Verlag.

[9] Brualdi, R. and Ryser, H. (1991). Combinatorial Matrix Theory. Cambridge: Cam- bridge University Press.

[10] Calamoneri, T., Massini, A. and Vrt’o, I. (2003). New results on edge-bandwidth. Theoretical Computer Science, 307:503-513.

[11] Chan, W., Lam, P. and Shiu, W. (2008). Cyclic bandwidth with an edge added. Discrete Applied Mathematics, 156:131-137.

[12] Chung, F. (1988). Labelings of graphs. In Beineke, L. and Wilson, R. (eds). Se- lected Topics in Graph Theory. pp. 151-168. San Diego: Academic Press.

36 [13] Chvatal, V. (1970). A remark on a problem of Harary. Czechoslovak Mathematical Journal, 20(1):109-111.

[14] Chvatalova, J. (1975). Optimal labelling of a product of two paths. Discrete Math- ematics, 11:249-253.

[15] Cook, M. and Wolfe, W. (2007). The hypercube graph and the inhibitory hypercube network. Submitted to the Journal of Graph Theory, 16 pp.

[16] Diestel, R. (2005). Graph Theory (3rd ed.). Graduate Texts in Mathematics, vol. 173. Heidelberg: Springer-Verlag.

[17] Eichhorn, D., Mubayi, D., O’Bryant, K. and West, D. (2000). The edge-bandwidth of theta graphs. Journal of Graph Theory, 35:89-98.

[18] Hale, W.K. (1980). Frequency assignment: theory and applications. Proceedings of IEEE, 68:1497-1514.

[19] Harary, F. and Norman, R.Z. (1960). Some properties of line digraphs. Rendiconti del Circolo Matematico di Palermo, 9:161-169.

[20] Harper, L.H. (1985). Optimal numberings and isoperimetric problems on graphs. Journal of Combinatorial Theory, 1:385-393.

[21] Harper, L.H. (2003). On the bandwidth of a Hamming graph. Theoretical Computer Science, 301:491-498.

[22] Hawick, K., Leist, A. and Playne, D. (2010). Parallel graph component labelling with GPUs and CUDA. Parallel Computing, 36:655-678.

[23] Helmberg, C. (2000). Semidefinite Programming for Combinatorial Optimization, Habilitationsschrift, TU Berlin 162 pp.

[24] Helmberg, C., Mohar, B., Poljak, S. and Rendl, F. (1993). A spectral approach to bandwidth and separator problems in graphs. Paper presented to the third IPCO Conference, pp. 183-194.

[25] Hochberg, R., McDiarmid, C. and Saks, M. (1995). On the bandwidth of triangu- lated triangles. Discrete Mathematics, 138:261-265.

[26] Holton, D. and Sheehan, J. (1993). The Petersen Graph, Cambrigde: Cambridge University Press.

[27] Hwang, F.K. and Lagarias, J.C. (1977). Minimum range sequences of all k−subsets of a set. Discrete Mathematics, 19:257-264.

[28] Jajcay, R., Malnic, A. and Marusic, D. (2007). On the number of closed walks in vertex-transitive graphs. Discrete Mathematics, 307:484-493.

37 [29] Jiang, T., Mubayi, D., Shastri, A. and West, D. (1999). Edge-bandwidth of graphs. SIAM Journal of Discrete Mathematics, 12:307-316.

[30] Lai, Y.L. and Williams, K. (1999). A survey of solved problems and applications on bandwidth, edge-sum, and profile of graphs. Journal of Graph Theory, 31:75-94.

[31] Lam, P., Shiu, W. and Chan, W. (1997). On bandwidth and cyclic bandwidth of graphs. Ars Combinatoria, 47:147-152.

[32] Lam, P., Shiu, W. and Chan, W. (2002). Characterization of graphs with equal bandwidth and cyclic bandwidth. Discrete Mathematics, 242:283-289.

[33] Leung, J., Vornberger, O. and Witthoff, J.D. (1984). On Some Variants of the Bandwidth Minimization Problem. SIAM Journal of Computing, 13:650-667.

[34] Lin, M., Lin, Z. and Xu, J. (2006). Graph bandwidth of weighted caterpillars. Theoretical Computer Science, 363:266-277.

[35] L¨ofberg, J. (2004). YALMIP: A Toolbox for Modeling and Optimization in MAT- LAB. In Proceedings of the CACSD Conference, Taipei, Taiwan.

[36] De Klerk, E. (2010). Exploiting special structure in semidefinite programming: A survey of theory and applications. European Journal of Operations Research, 201(10):1-10.

[37] De Klerk, E., E.-Nagy, M. and Sotirov, R. (2011). On semidefinite programming bounds for graph bandwidth. On Optimization Online.

[38] Kumwenda, K. (2008). Codes and complementation in triangular graphs. Master’s thesis, University of the Western Cape, South Africa.

[39] Papadimitriou, C.H. (1976). The NP-completeness of the bandwidth minimization problem. Computing, 16:263-270.

[40] Peck, G. and Shastri, A. (1992). Bandwidth of theta graphs with short paths. Discrete Mathematics, 103:177-187.

[41] Petersen, J. (1898). Sur le th´eor`emede Tait. L’Interm´ediare des Math´ematiciens, 5:225-227.

[42] Pikhurko, O. and Wojciechowski, J. (2006). Edge-bandwidth of grids and tori. Theoretical Computer Science, 369:35-43.

[43] Rodriguez-Tello, E., Hao, J. and Torres-Jimenez, J. (2008). An improved simulated annealing for bandwidth minimization. European Journal of Operational Research, 185:1319-1335.

[44] Skiena, S. (1990). In Implementing Discrete Mathematics: Combinatorics and Graph Theory with Mathematica, Redwood City: Addison-Wesley.

38 [45] Sotirov, R. (2010). SDP relaxations for some combinatorial optimization problems. CentER Discussion Paper, Tilburg University, The Netherlands.

[46] Sturm, J.F. (1999). Using SeDuMi 1.02, a MATLAB toolbox for optimization over symmetric cones. Optimization Methods and Software, 11-12:625-653.

[47] Sykora, O., Torok, L. and Vrt’o, I. (2005). The cyclic antibandwidth problem. Electronic Notes in Discrete Mathematics, 22:223-227.

[48] Todd, M.J. (2001). Semidefinite Optimization. Acta Numerica, 10:515-560.

[49] Torok, L. (2007). Two problems in graph layouts. PhD dissertation, Slovak Academy of Sciences, Bratislava.

[50] Tutuncu, R.H., Toh, K.C. and Todd, M.J. (2001). SDPT3 - a MATLAB software package for semidefinite-quadratic-linear programming. Technical Report, National University of Singapore, Singapore.

[51] Vandenberghe, L. and Boyd, S. (1999). Applications of Semidefinite programming. Applied Numerical Mathematics, 29:283-299.

[52] Vandenberghe, L. and Boyd, S. (1996). Semidefinite programming. SIAM Review, 38(1):49-95.

[53] Yixun, L. (1994). The cyclic bandwidth problem. Journal of Systems Science and Complexity, 3:282-288.

[54] Zhao, Q., Karisch, E., Rendl, F. and Wolkowicz, H. (1998). Semidefinite program- ming relaxations for the quadratic assignment problem. Journal of Combinatorial Optimization, 2(1):71-109.

39