A Hyper-Heuristic Approach to Evolving Algorithms for Bandwidth Reduction Based on Genetic Programming
Behrooz Koohestani, Riccardo Poli
Research and Development in Intelligent Systems XXVIII
The bandwidth reduction problem is a well-known NP-complete graphlayout problem that consists of labeling the vertices of a graph with integer labels in such a way as to minimize the maximum absolute difference between the labels of adjacent vertices. The problem is isomorphic to the important problem of reordering the rows and columns of a symmetric matrix so that its non-zero entries are maximally close to the main diagonal -a problem which presents itself in a large number of domains in
... ce and engineering. A considerable number of methods have been developed to reduce the bandwidth, among which graph-theoretic approaches are typically faster and more effective. In this paper, a hyper-heuristic approach based on genetic programming is presented for evolving graph-theoretic bandwidth reduction algorithms. The algorithms generated from our hyper-heuristic are extremely effective. We test the best of such evolved algorithms on a large set of standard benchmarks from the Harwell-Boeing sparse matrix collection against two state-of-the-art algorithms from the literature. Our algorithm outperforms both algorithms by a significant margin, clearly indicating the promise of the approach. The bandwidth minimisation problem (BMP) is a very well-known graph layout problem, which has connections with a wide range of other problems, such as finite element analysis of mechanical systems, large scale power transmission systems, circuit design, VLSI design, data storage, chemical kinetics, network survivability, numerical geophysics, industrial electromagnetics, saving large hypertext media and topology compression of road networks  . The BMP can be stated in the context of both graphs and matrices. The bandwidth problem for graphs consists of finding a special labeling of vertices of a graph which minimizes the maximum absolute difference between the (integer) labels of adjacent vertices. In terms of matrices, it consists of finding a permutation of rows and columns of a given matrix which ensures that the non-zero elements are located in a band as close as possible along the main diagonal. In fact, if the non-zero entries of a symmetric matrix and the permutations of rows and columns are identified with the edges of a graph and the flips of the vertex labels, respectively, then the bandwidth of the graph is equal to the bandwidth of the matrix . One of the most common applications of bandwidth minimisation algorithms arises from the need to efficiently solve large systems of equations  . In such a scenario, more efficient solutions are obtained if the rows and columns of the matrix representing the set of equations can be permuted in such a way that the bandwidth of the matrix is minimized  . Unfortunately, the BMP has been proved to be NP-complete  . Hence, it is highly unlikely that there exists an algorithm which finds the minimum bandwidth of a matrix in polynomial time. It has also been proved that the BMP is NP-complete even for trees with a maximum degree of three, and only in very special cases it is possible to find the optimal ordering in polynomial time  . Due to the existence of strong links between the BMP and a wide range of other problems in scientific and engineering fields, a variety of methods have been proposed for reducing the bandwidth. The first direct method for the BMP was proposed by Harary  . Cuthill and McKee  introduced the first heuristic approach to the problem. Their method is still one of the most important and widely used methods to (approximately) solve the problem. In this method, the nodes in the graph representation of a matrix are partitioned into equivalence classes based on their distance from a given root node. This partition is known as level structure for the given node. In Cuthill-McKee algorithm, the root node for the level structure is normally chosen from the nodes of minimum degree in the graph. The permutation selected to reduce the bandwidth of the matrix is then simply obtained by visiting the nodes in the level structure in increasing-distance order. George  in the study of envelope reduction algorithms observed that renumbering the Cuthill-McKee ordering in a reverse way often yielded a result superior to the original ordering. 1 This algorithm is known as the Reverse Cuthill-McKee (RCM) algorithm. Experimental evidence confirming the superior performance of 1 The envelope minimisation problem is a problem strongly related to the BMP which requires the reorganisation of the nodes in a graph or the rows and columns in a matrix, but with a slightly different objective (we will formally define the bandwidth and envelope in Sect. 3).