search strategy to a great number of habitats and prey distributions. We propose to synthesize a similar search strategy
IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, VOL. 3, NO. 2, JULY 1999
147
Letters Synthesizing a Predatory Search Strategy for VLSI Layouts Alexandre Linhares
Abstract—When searching for prey, many predator species exhibit a remarkable behavior: After prey capture, the predators promptly engage in “area-restricted search,” probing for consecutive captures nearby. Biologists have been surprised with the efficiency and adaptability of this search strategy to a great number of habitats and prey distributions. We propose to synthesize a similar search strategy for the massively multimodal problems of combinatorial optimization. The predatory search strategy restricts the search to a small area after each new improving solution is found. Subsequent improvements are often found during area-restricted search. Results of this approach to gate matrix layout, an important problem arising in very large scale integrated (VLSI) architectures, are presented. Compared to established methods over a set of benchmark circuits, predatory search is able to either match or outperform the best-known layouts. Additional remarks address the relation of predatory search to the “big-valley” hypothesis and to the field of artificial life. Index Terms—Adaptive behavior, “big-valley” hypothesis, combinatorial optimization, predatory search, very large scale integrated (VLSI) layout.
I. INTRODUCTION Convergent evolution is one of the most impressive concepts of Darwinian thought. As stated in the literature, “It is all the more striking a testimony to the power of natural selection . . . that numerous examples can be found in real nature, in which independent lines of evolution appear to have converged, from very different starting points, on what looks very like the same endpoint” [1, p. 94]. Eyesight is a good example of a remarkable biological tool that has appeared independently many times. For instance, the octopus’ eye has evolved from a line independent of our lineage, and there are records of some 40 such “parallel” lines of evolution leading to the development of eyes [2]. The reason for the emergence of remarkably similar phenotypes in distinct (and distant) genotypes is simple: a high cost/benefit ratio for owners that live on the same ecological niche. As has been argued [3], however, the process of survival of the fittest is not restricted to physiological and anatomical adaptations, such that behavioral adaptations also converge. Consider, for instance, the Griffiths Triangle [4] shown on Fig. 1. The triangle positions predatory species according to the costs associated with each of the three phases of predation: 1) search and locate, 2) pursuit and attack, and 3) handling and digestion. If we select the set of search-intensive predators, that is, the species that devote most of their time and energy locating prey, then we find some convergent search strategies, regardless of the lineage of the species in this ecological niche. A case in point is the focus of this study: the area-restricted search behavior, on which predators initially search for prey at a chosen Manuscript received May 14, 1998; revised February 5, 1999. This work was supported by FAPESP Foundation process #97/12785-8. The author is with the National Space Research Institute of the Brazilian Ministry of Science and Technology, LAC-INPE, S.J. Campos, SP 12201-970, Brazil. Publisher Item Identifier S 1089-778X(99)04554-3.
Fig. 1. The Griffiths Triangle. The ecological literature distinguishes three discrete steps of predation: 1) search for prey, 2) attack it, and 3) digest it. Predatory species are classified by Griffiths over their associated costs on each step. Lions, for instance, do not carry a great cost on searching, since their prey is big and easily spotted. On the other hand, snakes spend significant amounts of time searching, which, for species like Bitis caudalis, usually means a sit-and-wait search, on which the predator virtually waits for the environment to pass through its attack area.
pace and direction. When confronted with prey (or good evidence of it), however, they abruptly change their movement patterns, slowing down and making turns, intensifying the search to the vicinity of prey confrontation. After some time without success, predators display a “give-up” on area-restricted searching and go on to scan other areas. This particular behavioral sequence has appeared many times and is documented in birds [5], lizards [6], insect predators1 [7]–[9], and other search-intensive predators (see, for instance, the classic monograph [10]). This strategy is effective for so many species because (besides being simple and general) it is able to strike a good balance between the exploitation (intense search in a defined area) and the exploration (extensive search through many areas) of the search space. Ethological studies have ascribed intentions, in the sense of [11], to this behavior, concluding that the creatures probe for consecutive captures [5], [9], [10]. There is a high chance for such consecutive captures in densely populated areas, and also, since the give-up times on arearestricted search are usually short, not much is spent in terms of energy and of predation risk over less promising areas [7], [10]. The adaptability of this behavioral sequence has been demonstrated in a landmark study [5]; furthermore, ethologists have found this strategy particularly aggressive and demonstrated that there must be a great evolutionary pressure toward the spacing out of the prey [12]. A. Synthetic Predatory Search Since this strategy has played so well under many distinct search spaces (habitats), it naturally suggests the idea of a similar, synthetic predatory search strategy that could be of use to the massively multimodal search problems of computer science [13]. That is, how should a search strategy of intensification by area restriction perform, for instance, in the complex topology of combinatorial optimization problems? This is our main concern here. The results are promising for the traveling salesman problem (TSP). In a companion paper [14], this strategy is implemented by applying a classical move scheme under “regular” search, but 1 And also on host-seeking parasites, which are similar to insect predators in many ways [5].
1089–778X/99$10.00 1999 IEEE
148
IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, VOL. 3, NO. 2, JULY 1999
(a)
(c)
(b)
(d)
M
Fig. 2. Gate Matrix Layout. The problem consists of permuting the columns of and filling in with 1’s the consecutive positions between the leftmost 1 and rightmost 1 in each line (to account for the connection) such that the maximum column sum, which is equal to the number of required tracks, is minimized. For instance, given (a) an original net-gate Matrix, a random permutation of the gates (b) requires ten tracks, while an optimum gate (column) permutation (c) holds the maximum column sum equal to four, folding into (d) the four required tracks. In (b)–(d), the gate number is on top of each gate, and the number of connections through it is at bottom. The corresponding track number and cost of each layout are also shown.
considering only a small “valley” of the search space whenever an improving solution is found. This small valley, corresponding to a restricted area, is intensively probed for some iterations and then gradually augmented, until a give-up moment, when the algorithm changes back to regular search. This strategy compares favorably with some previous approaches and has been able to find optimum solutions for TSP’s of up to 400 cities [14]. The vast majority of improvements were found during area-restricted search. In this paper, the same model is used in a different setting: the Gate Matrix Layout problem [15], a NP-hard problem arising in the context of very large scale integrated (VLSI) physical layouts. In this context, predatory search also seems to be effective: optimal solutions are found to many benchmark circuits, and, for a small set of circuits, the resulting layouts are actually better than the best previously available in the literature. II. GATE MATRIX LAYOUT There are J gates and I nets on a gate matrix layout circuit. In a symbolic representation, gates are vertical wires holding transistors at specific positions. Nets interconnect all the distinct gates that share transistors at the same position. Fig. 2 illustrates the problem. Mathematically, we are given a binary I 2 J matrix M: The columns of M represent the J gates of the circuit, and the rows represent the I nets, such that the positions with mij = 1 represent transistors to implement interconnections to any other gate x with mix = 1 (see Fig. 2). Thus, on each net i; all gates with mij = 1 will be interconnected. This interconnection, on matrix terms, means that on each row there will be no positions of value 0 between two positions of value 1, a mathematical property known as the consecutive ones property for columns.
The objective of the problem is to minimize the layout area. Since there is a constant number of gates, the objective then becomes to minimize the area needed to implement the nets, given by the number of tracks, which is a variable of the gate ordering, as explained below. In gate matrix layout, it is possible to change the ordering of the gates with no alteration of the underlying circuit logic. Therefore, the nets are actually implemented by a permutation of the gates (columns) and by an interval that connects, on each row, the leftmost transistor to the rightmost one, leading us to a new filled matrix M = m0ij ; defined by 0 mij
=
1; 0;
if 9x9y j (x) j otherwise.
(y) ^
mix = miy
=1
The consecutive 1’s property connects, on each row, the leftmost–rightmost transistors of a gate ordering . If the intervals of two distinct nets do not overlap, then both nets can be assigned to the same track, in a process known as folding. The gate matrix layout problem consists of finding a permutation such that
TRACKS (M ) = j
I max 2f1;...;J g
i=1
0 mij
(1)
is minimized. That is, we want to minimize the maximum column sum of the permuted (and consecutive-ones filled) matrix, for this is the number of required tracks of the physical layout [15], [16]. By permuting the columns of the matrix, one can obtain a layout with fewer tracks and a smaller area. This is important for many assembly considerations, but mostly for the cost and performance of the circuit. A minor goal is to minimize the wiring length, given two layouts with an equal number of tracks. Thus for the purposes of this paper
IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, VOL. 3, NO. 2, JULY 1999
we use a slightly modified cost function I 0 COST (M ) = I J max mij j 2f1;...;J g i=1
+
J
I
j =1 i=1
0
ij :
m
(2)
This is done because (1) holds many solutions of equal cost, rendering a great number of null moves. It is easy to see that, for any distinct layouts X and Y; TRACKS (X ) < TRACKS (Y ) implies COST (X ) < COST (Y ); such that by minimizing COST (X ) one also minimizes TRACKS (X ). Also, the form in (2) is a heuristic in itself, such that it minimizes the track number with high priority and the total wiring with low priority. The minimization of the total wiring also affects the performance of the circuit, but is a minor goal compared to minimization of the circuit area. Also, circuits with smaller wiring tend to demand fewer tracks. Besides gate matrix layout, this combinatorial problem arises in other VLSI architectures, such as Weinberger arrays, and PLA folding [16], [17]. Also, the same combinatorial optimization problem appears in other industrial settings. For instance, it has been formulated in an independent study as a problem occurring in the sequencing of cutting patterns (on the wood-cutting industry) to minimize the number of open stacks and also of scheduling the production runs of a flexible machine to minimize the number of open client orders [18]. A. Complexity Results Gate matrix layout has long been known to be NP-hard, and, in terms of graph theory, it can be interpreted as an application of interval graph augmentation: given a graph G = (V ; E ), find an augmentation F , corresponding to a set of edges, such that the resulting graph G0 = (V ; E [ F ) is an interval graph of minimum clique size [15]–[16], [19]. Another complexity result discards the possibility of an absolute approximation algorithm (unless P = NP, obviously) [20]. This problem is especially important to the theory of NPcompleteness because of the surprising nonconstructive results obtained recently [21]–[23]. For instance, it has been proved that there exists a decision algorithm that verifies, in polynomial-time, the existence of a k-tracks layout, for any integer positive k. This existence proof is nonconstructive, however, such that, although it is known that the algorithm must in fact exist, the algorithm itself is not known, nor is it known if such algorithm would be of any help to construct a k-tracks layout [21]. These results are simply intriguing. Important advances in NP-completeness theory should be expected from this line of inquiry. III. A MODEL
FOR
AREA-RESTRICTED SEARCH
A. Model A combinatorial optimization problem is defined as the dual ;Z Z: ! < measures the cost of each solution. In the gate matrix layout problem, each solution s 2 is associated with a permutation of the gates and Z is defined by (2). By exchanging two distinct gates a new layout is obtained. This operation defines a move. The set N (s), called the neighborhood of s, is the set of all solutions obtained by a single move from s. Predatory search considers, at each step, a randomly chosen subset N 0 (s) N (s), called the sampled neighborhood of s, with constant cardinality jN 0 (s)j = NumProposals . If, for any two states s0 and sn and an R 2