Английская Википедия:Graph bandwidth
In graph theory, the graph bandwidth problem is to label the Шаблон:Mvar vertices Шаблон:Mvar of a graph Шаблон:Mvar with distinct integers Шаблон:Tmath so that the quantity <math>\max\{\,| f(v_i) - f(v_j)| : v_iv_j \in E \,\}</math> is minimized (Шаблон:Mvar is the edge set of Шаблон:Mvar).[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 Шаблон:Mvar and the cost function to be minimized is <math>\max\{\, w_{ij} |f(v_i) - f(v_j)| : v_iv_j \in E \,\}</math>.
In terms of matrices, the (unweighted) graph bandwidth is the minimal bandwidth of a symmetric matrix which is an 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 Шаблон:Harv.
Bandwidth formulas for some graphs
For several families of graphs, the bandwidth <math>\varphi(G)</math> 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 <math>\varphi(K_n)=n-1</math>. For the complete bipartite graph Km,n,
- <math>\varphi(K_{m,n}) = \lfloor (m-1)/2\rfloor+n</math>, assuming <math>m \ge n\ge 1,</math>
which was proved by Chvátal.[3] As a special case of this formula, the star graph <math>S_k = K_{k,1}</math> on k + 1 vertices has bandwidth <math>\varphi(S_{k}) = \lfloor (k-1)/2\rfloor+1</math>.
For the hypercube graph <math>Q_n</math> on <math>2^n</math> vertices the bandwidth was determined by Шаблон:Harvtxt to be
- <math>\varphi(Q_n)=\sum_{m=0}^{n-1} \binom{m}{\lfloor m/2\rfloor}.</math>
Chvatálová showed[4] that the bandwidth of the m × n square grid graph <math>P_m \times P_n</math>, that is, the Cartesian product of two path graphs on <math>m</math> and <math>n</math> 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,
- <math> \varphi(G) \ge \chi(G) - 1; </math>
letting diam(G) denote the diameter of G, the following inequalities hold:[5]
- <math>\lceil (n-1)/\operatorname{diam}(G) \rceil \le \varphi(G) \le n - \operatorname{diam}(G),</math>
where <math>n</math> is the number of vertices in <math>G</math>.
If a graph G has bandwidth k, then its pathwidth is at most k Шаблон:Harv, and its tree-depth is at most k log(n/k) Шаблон:Harv. 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: Шаблон:Harvtxt proved that if T is a tree of maximum degree at most ∆, then
- <math>\varphi(T) \le \frac{5n}{\log_\Delta n}. </math>
More generally, for planar graphs of bounded maximum degree at most ∆, a similar bound holds (cf. Шаблон:Harvnb):
- <math>\varphi(G) \le \frac{20n}{\log_\Delta n}.</math>
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 with maximum hair length 2 Шаблон:Harv. For the case of dense graphs, a 3-approximation algorithm was designed by Шаблон:Harvtxt. 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 single row with the goal of minimizing the maximal propagation delay (which is assumed to be proportional to wire length).
See also
- Cutwidth and pathwidth, different NP-complete optimization problems involving linear layouts of graphs.
References
- Шаблон:Cite journal
- Шаблон:Cite journal
- Шаблон:Citation
- Шаблон:Cite journal
- Шаблон:Cite book
- Шаблон:Citation
- Шаблон:Cite journal
- Шаблон:Citation
- Шаблон:Cite journal
External links
- Minimum bandwidth problem, in: Pierluigi Crescenzi and Viggo Kann (eds.), A compendium of NP optimization problems. Accessed May 26, 2010.
- ↑ Шаблон:Harv
- ↑ 2,0 2,1 "Coping with the NP-Hardness of the Graph Bandwidth Problem", Uriel Feige, Lecture Notes in Computer Science, Volume 1851, 2000, pp. 129-145, Шаблон:Doi
- ↑ A remark on a problem of Harary. V. Chvátal, Czechoslovak Mathematical Journal 20(1):109–111, 1970. http://dml.cz/dmlcz/100949
- ↑ Optimal Labelling of a product of two paths. J. Chvatálová, Discrete Mathematics 11, 249–253, 1975.
- ↑ Шаблон:Harvnb
- ↑ Garey–Johnson: GT40
- ↑ Шаблон:Cite journal