# Graph bandwidth

In graph theory, the graph bandwidth problem is to label the n vertices vi of a graph G with distinct integers f(vi) so that the quantity ${\displaystyle \max\{\,|f(v_{i})-f(v_{j})|:v_{i}v_{j}\in E\,\}}$ is minimized (E is the edge set of G).[1] The problem may be visualized as placing the vertices of a graph at distinct integer points along the x-axis so that the length of the longest edge is minimized. Such placement is called linear graph arrangement, linear graph layout or linear graph placement.[2]

The weighted graph bandwidth problem is a generalization wherein the edges are assigned weights wij and the cost function to be minimized is ${\displaystyle \max\{\,w_{ij}|f(v_{i})-f(v_{j})|:v_{i}v_{j}\in E\,\}}$.

In terms of matrices, the (unweighted) graph bandwidth is the bandwidth of the symmetric matrix which is the adjacency matrix of the graph. The bandwidth may also be defined as one less than the maximum clique size in a proper interval supergraph of the given graph, chosen to minimize its clique size (Kaplan & Shamir 1996).

## Bandwidth formulas for some graphs

For several families of graphs, the bandwidth ${\displaystyle \varphi (G)}$ is given by an explicit formula.

The bandwidth of a path graph Pn on n vertices is 1, and for a complete graph Km we have ${\displaystyle \varphi (K_{n})=n-1}$. For the complete bipartite graph Km,n,

${\displaystyle \varphi (K_{m,n})=\lfloor (m-1)/2\rfloor +n}$, assuming ${\displaystyle m\geq n\geq 1,}$

which was proved by Chvátal.[3] As a special case of this formula, the star graph ${\displaystyle S_{k}=K_{k,1}}$ on k + 1 vertices has bandwidth ${\displaystyle \varphi (S_{k})=\lfloor (k-1)/2\rfloor +1}$.

For the hypercube graph ${\displaystyle Q_{n}}$ on ${\displaystyle 2^{n}}$ vertices the bandwidth was determined by Harper (1966) to be

${\displaystyle \varphi (Q_{n})=\sum _{m=0}^{n-1}{\binom {m}{\lfloor m/2\rfloor }}.}$

Chvatálová showed[4] that the bandwidth of the m × n square grid graph ${\displaystyle P_{m}\times P_{n}}$, that is, the Cartesian product of two path graphs on ${\displaystyle m}$ and ${\displaystyle n}$ vertices, is equal to min{m,n}.

## Bounds

The bandwidth of a graph can be bounded in terms of various other graph parameters. For instance, letting χ(G) denote the chromatic number of G,

${\displaystyle \varphi (G)\geq \chi (G)-1;}$

letting diam(G) denote the diameter of G, the following inequalities hold:[5]

${\displaystyle \lceil (n-1)/\operatorname {diam} (G)\rceil \leq \varphi (G)\leq n-\operatorname {diam} (G),}$

where ${\displaystyle n}$ is the number of vertices in ${\displaystyle G}$.

If a graph G has bandwidth k, then its pathwidth is at most k (Kaplan & Shamir 1996), and its tree-depth is at most k log(n/k) (Gruber 2012). In contrast, as noted in the previous section, the star graph Sk, a structurally very simple example of a tree, has comparatively large bandwidth. Observe that the pathwidth of Sk is 1, and its tree-depth is 2.

Some graph families of bounded degree have sublinear bandwidth: Chung (1988) proved that if T is a tree of maximum degree at most ∆, then

${\displaystyle \varphi (T)\leq {\frac {5n}{\log _{\Delta }n}}.}$

More generally, for planar graphs of bounded maximum degree at most , a similar bound holds (cf. Böttcher et al. 2010):

${\displaystyle \varphi (G)\leq {\frac {20n}{\log _{\Delta }n}}.}$

## Computing the bandwidth

Both the unweighted and weighted versions are special cases of the quadratic bottleneck assignment problem. The bandwidth problem is NP-hard, even for some special cases.[6] Regarding the existence of efficient approximation algorithms, it is known that the bandwidth is NP-hard to approximate within any constant, and this even holds when the input graphs are restricted to caterpillar trees (Dubey, Feige & Unger 2010). For the case of dense graphs, a 3-approximation algorithm was designed by Karpinski, Wirtgen & Zelikovsky (1997). On the other hand, a number of polynomially-solvable special cases are known.[2] A heuristic algorithm for obtaining linear graph layouts of low bandwidth is the Cuthill–McKee algorithm. Fast multilevel algorithm for graph bandwidth computation was proposed in.[7]

## Applications

The interest in this problem comes from some application areas.

One area is sparse matrix/band matrix handling, and general algorithms from this area, such as Cuthill–McKee algorithm, may be applied to find approximate solutions for the graph bandwidth problem.

Another application domain is in electronic design automation. In standard cell design methodology, typically standard cells have the same height, and their placement is arranged in a number of rows. In this context, graph bandwidth problem models the problem of placement of a set of standard cells in a singe row with the goal of minimizing the maximal propagation delay (which is assumed to be proportional to wire length).