SIMULATED EVOLUTION BASED HYBRIDS FOR ... - Semantic Scholar

0 downloads 0 Views 118KB Size Report
7. REFERENCES. [1] Sadiq M. Sait and Habib Youssef, VLSI Physical De- ... tific, Singapore, 2001. [2] Junaid A. Khan, Sadiq M. Sait, and Mahmood R. Min-.
SIMULATED EVOLUTION BASED HYBRIDS FOR GENETIC ALGORITHM AND TABU SEARCH Sadiq M. Sait

Mohammed Faheemuddin

Mustafa I. Ali

Syed Sanaullah

King Fahd University of Petroleum & Minerals Computer Engineering Department Dhahran-31261, Saudi Arabia ABSTRACT In this paper, Simulated Evolution based goodness attributes are incorporated into Tabu Search and Genetic Algorithms to enhance performance as compared to canonical strategies. In TS, the goodness is used in generating the candidate list of neighboring solutions. In GA, allele fitness is used to define a new crossover which significantly improves over traditional recombination strategies. Both these hybrids are used in VLSI cell placement for large circuits for comparison purposes. 1. INTRODUCTION Genetic Algorithms (GA) and Tabu Search (TS) are two very different, albeit highly successful and popular optimization heuristics that have been applied to a wide number of areas. GAs are based on the theory of evolution, and work with a population of valid solutions that collectively navigate the search space through the kinetics of crossover, selection and mutation. Tabu Search is a more aggressive heuristic based on artificial intelligence principles that uses memory structures to control search space navigation. Both algorithms are generally applicable regardless of problem instance and capable of stochastic decisions to escape local minima. However, they do have very large runtimes, especially with large, practical problems such as VLSI circuit placement design. This is where hybridization provides excellent opportunities for performance acceleration. This paper reports on incorporating Simulated Evolution (SimE) inspired element goodness in TS neighborhood generation and in GA’s crossover mechanism, which significantly improves performance. Simulated Evolution (SimE) proposed by Kling and Banerjee in 1987, is an evolutionary algorithm based on the principles of natural selection, which dictate that organisms survive by adapting to environment peculiarities. The more an organism’s proclivity to adaptation, the higher its chances of survival. SimE works with a single solution which is referred to as a population, comprising of a number of movable elements. The location of each element is associated

with a certain goodness measure. This attribute which is strongly correlated to the overall solution fitness is used extensively in perturbing the solution from one iteration to the next. It is this goodness concept that is applied in the proposed Tabu Search and Genetic Algorithm hybrid schemes. The performances of these proposed strategies, as compared to their respective canonical algorithms are demonstrated for the multi-objective VLSI cell placement problem. The following section provides the background on this NP-complete optimization problem, the working of Simulated Evolution as well as the overall fitness and element goodness calculations. This is followed by Sections 3 and 4, which present the SimE-TS and SimE-GA hybrid algorithms respectively. Section 5 document the performance results of these hybrids against their conventional implementations. The paper finally concludes with a short summary and directions for future work in this area. 2. RELATED WORK The objectives considered in our cell placement problem include optimizing power consumption, improving timing performance (delay), and reducing overall wirelength, while considering layout width as a constraint. A formal description of the placement problem and the cost functions associated with the defined objectives can be found in literature and earlier work [1, 2]. The three possibly conflicting objectives are accumulated using fuzzy logic into a single scalar cost function. The fuzzy rule used to govern the role of these objectives in the final cost function is as follows: Rule R1: IF a solution has SMALL wirelength AND LOW power consumption AND SHORT delay THEN it is a GOOD solution. The above rule is translated to and-like OWA fuzzy operator [3] and the membership µ(x) of a solution x in fuzzy set

GOOD solution is obtained by: P  min {µj (x)} + (1 − β) · 13 µj (x);  β ·j=p,d,l j=p,d,l µ(x) = if W idth − wavg ≤ α · wavg ,  0; otherwise. (1) Here µj (x) for j = p, d, l are the membership values in the fuzzy sets LOW power consumption, SHORT delay, and SMALL wirelength respectively. β and α are constants in the range [0, 1]. Width is the layout width of the placement, while wavg is the average layout width. The solution that results in maximum value of µ(x) is reported as the best solution found by the search heuristic. The SimE algorithm is unique in the fact that it uses a goodness measure associated with every movable element in the solution, in addition to the overall fitness. For our case of VLSI cell placement, the goodness measure for every cell location is derived based on its net - the other cells connected to its output. A designated location of a cell is considered good if it results in short wire-length for its nets, reduced delay, and reduced power. Further details on how this goodness measure is derived and its inherent relation with the overall solution fitness can be found in [2]. They are conveniently expressed by the following fuzzy rule: Rule R2: IF cell i is near its optimal wire-length AND near its optimal power AND [near its optimal net delay OR Tmax (i) is much smaller than Tmax ] THEN it has a high goodness. where Tmax and Tmax (i) are the delay of the most critical path and the delay of the longest path traversing cell i in the current iteration respectively. With the AND and OR fuzzy operators implemented as OWA operators, rule R2 evaluates to the expression below: gi = µei (x) = β e × min(µeiw (x), µeip (x), µeid (x)) 1 X e µij (x) +(1 − β e ) × 3

(2)

j=w,p,d

Here gi is the goodness of cell i while β e and βde are constants between 0 and 1 to control OWA operators. µj (x) for j = p, w, d represents the memberships in the fuzzy sets of good power, good wire-length and good timing performance. 3. SIME-TS HYBRID Conceptually, Tabu Search (TS) is an elegant mathematical optimization method, based on the systematic exploration of memory functions. It uses a local or neighborhood search procedure to iteratively move from a solution x to a solution x0 in the neighborhood of x, until some stopping criterion

has been satisfied [4, 5, 6]. In order to explore regions of the search space that would be left uncovered by the local search procedure and - by doing this - escape local optimality, TS modifies the neighborhood structure of each solution as the search progresses. The solutions admitted to N*(x), i.e. the new neighborhood, are maintained in a special memory structure called a Candidate List (CL). This list is populated by moves selected randomly from the neighborhood N*(x). In every iteration, each of these moves in the CL is evaluated and the best is selected. In addition to the CL, TS also uses short-term memory structures called a tabu list. In its simplest form, a tabu list contains solutions that have been visited in the recent past (less than n moves ago, where n is the tabu tenure). Therefore, to prevent cycling between states, solutions in the tabu list are excluded from N*(x). However, this restriction can be over-ridden under what are are referred to as Aspiration Criteria. More detailed information on the working of Tabu Search can be found in literature [7]. The structure of the SimE-TS hybrid heuristic is shown in Figure1. An initial solution is randomly generated and the fuzzy goodness values (gi ) of each cell i is evaluated. Using these goodness values, a Candidate List (CL) of moves is generated. Lower the value of gi , higher is the probability of cell i being included in the CL. The process then searches the current solution’s local neighborhood by trying each move in the CL and computing the resulting fuzzy fitness. The Best Move (BM) from these is selected subject to tabu restrictions and aspiration criteria. The fuzzy goodness values for the cells are then re-computed and a new CL is constructed. The above process is repeated for a fixed number of iterations. 4. SIME-GA HYBRID Genetic Algorithms are an immensely popular approach of simulating the natural process of evolution to solve complex, multi-modal optimization problems. The three primary features of a GA are a population of solutions, fitnessbased selection and crossover. Of these, crossover is considered the primary driving engine behind genetic algorithms [7]. The working mechanisms of crossover are defined in literature as “respect”, “transmission” and “assortment” [8]. Respect refers to common components between the parents being preserved in the offspring. Transmission refers to all components in the child being derived from either of the two parents. Assortment, also known as recombination states that parents with two non-competing features should be able to produce an offspring with both features. The last of these - recombining parent characteristics, is often acclaimed as the primary purpose of crossover [9]. Traditional generic crossovers which are usually unaware of the search space and the specifics of the problem instance, may not be able

Algorithm SimE-TS Hybrid; Begin (* S0 is the initial solution. *) (* BestS is the best solution. *) (* CurS is the current solution. *) (* CL is the Candidate List. *) (* BM is the Best Move. *) (* gi is goodness of cell i. *) Generate S0 ; BestS = S0 ; while iteration-count < max-iterations EVALUATION: /* Evaluate fuzzy goodness for all cells*/ ForEach i ∈ S0 compute gi ; Generate CL subject to gi ’s; /* CL likely to contain cells with lower goodness */ Try each move in CL and compute cost; Find BM subject to tabu restrictions and aspiration criteria; Update BestS; /*by applying BM on BestS*/; endWhile Return(BestS) end. Fig. 1: Structure of a SimE-TS Hybrid Algorithm. to achieve these three fundamental characteristics. We propose a goodness-based hybrid crossover that can be tailored to a problem instance to aggressively pursue “assortment” or recombination in child offsprings. The objective is to improve the efficiency of Genetic Algorithms by using SimE goodness attributes to define allele fitness and implement recombination strategies for the problem at hand. In VLSI cell placement optimization, the fitness of a solution to the problem is defined not only by the position of individual cells, but rather by the proximity and location of connected cell clusters or nets. Regular crossovers such as PMX simply work on defining cutpoints in parent chromosomes (which are string representations of parent solutions) and concatenating the substrings to create the offspring. This does not ensure preservation of well-placed nets and the randomly selected cutpoint can disrupt inheritance of complementary good nets from both parents. In other words, neither the “respect” nor “transmission” mechanism required of crossover is present. This new crossover method works on identifying good cell clusters or nets from either parents, and absorbing them into the offspring. It uses the concept of cell goodness drawn from Simulated Evolution to identify well placed cells. The overall algorithm shown in Figure 2 is identical to canonical Genetic Algorithms [7] with the only distinguishing feature being the Goodness based crossover mechanism which is elaborated on in Figure 3. After the parents are selected, the goodness values of their cells are evaluated, and

the parent string is sorted based on these. The crossover system retrieves highest goodness cells from these sorted parents, determines their position in the respective parent, and copies them into the same location in the child. For each such cell, its fan-out connectivity is determined, i.e., which cells are connected to its output, as they are directly responsible for its goodness. These are also copied into their position as defined in the parent. This is done to preserve the goodness traits of the cell which are dependent on the location and proximity of its fan-out net. Continuing with this scheme, position conflicts definitely arise - separate cells in the two parents might have the same location. This is arbitrated by using a simple adjust mechanism, wherein the aggrieved cell is placed in a vacant location nearest to its original optimal position in the parent. This continues till all cells have been placed, after which the algorithm continues with the standard selection and mutation operators. 5. RESULTS & DISCUSSION ISCAS-85/89 circuits were used as performance benchmarks for evaluating both proposed hybrid techniques. These circuits are of various sizes in terms of number of cells and paths, and thus offer an adequate variety of test cases. Table 1 compares the aggregate fuzzy fitness of solutions reached within the same number of iterations by the proposed SimE/TS hybrid and a traditional TS implementation. The consistently higher quality solutions lend strong

Procedure (Genetic Algorithm) M= Population size. Ng = Number of generations. No = Number of offsprings. Pµ = Mutation probability. P ← Ξ(M) For j = 1 to M Evaluate f (P[j]) EndFor For i = 1 to Ng For j = 1 to No (x, y) ← φ(P) offspring[j] ← G χ(x, y) Evaluate f (offspring[j]) EndFor

(*# Of possible solutions at any instance.*) (*# Of iterations.*) (*To be generated by crossover.*) (*Also called mutation rate Mr .*) (*Construct initial population P. Ξ is population constructor.*) (*Evaluate finesses of all individuals.*) (*Evaluate fitness of P.*)

(*Select two parents x and y from current population.*) (*Generate offsprings by Goodness-based-crossover of parents x and y.*) (*Evaluate fitness of each offsprings.*)

For j = 1 to No (*With probability Pµ apply mutation.*) mutated[j] ← µ(y) Evaluate f (mutated[j]) EndFor P ← Select(P, offsprings) (*Select best M solutions from parents & offsprings.*) EndFor Return highest scoring configuration in P. End Fig. 2: Structure of the SimE-GA Hybrid Algorithm.

Table 1: A comparison of TS with the proposed SimE/TS hybrid in terms of solution fitness and run time. Circuit Number TS SimE/TS Name of Cells Fitness µ(x) Time Fitness µ(x) Time s298 136 0.777 33 0.807 35 s386 172 0.688 52 0.712 57 s641 433 0.785 934 0.799 971 s832 310 0.644 74 0.685 95 s953 440 0.661 195 0.701 225 s1196 561 0.653 374 0.682 416 s1238 540 0.633 357 0.668 401 s1488 667 0.603 259 0.629 310 s1494 661 0.601 268 0.630 316 s3330 1961 0.699 1186 0.726 1360 s5378 2993 0.669 1850 0.691 2104 s9234 5844 0.631 5571 0.667 6166

GOODNESS-BASED CROSSOVER /* M : Set of movable elements; */ GOODN ESS EV ALU AT ION OF BOT H P AREN T S: For P1 AND P2 m ForEach m ∈ M Do gm = O Cm EndForEach; EndFor GOODN ESS BASED SORT IN G /* Sort Parent Cells Based on Goodness */ SortedP1 ← Sort(P1 ) SortedP2 ← Sort(P2 ) GOODN ESS BASED CROSSOV ER /* Best Cells are selected from both parents */ /* Adjust Position() places selected cell in its original position from the Parent*/ /* If this position is already occupied, Adjust Position() places cell in closest possible location*/ ForEach bestcell from (SortedP1 & SortedP2 ) current cell = bestcell (ChildChromosome, P osition(current cell)) ← Adjust P osition(current cell) /* Cells on the F AN OU T of the selected cell are also copied into respective position*/ ForEach current cell ∈ f an out(bestcell) (ChildChromosome, P osition(current cell)) ← Adjust P osition(current cell) EndForEach EndForEach EndOf GOODNESS-BASED CROSSOVER Fig. 3: Goodness Based CrossOver for SimE-GA Hybrid

credibility to this hybridization approach. It should be noted even a very small increase in the fitness value could be due to a fairly large increase in one of the objectives. This is due to the nature of the OWA operator which employs the min function in the fuzzy fitness calculation (Equation 1) and a fairly large value of β (equal to 0.7). With regards to run times, the SimE/TS hybrid took a little longer in reaching better solutions due to the overhead introduced by the ‘goodness’ evaluation routine. This increase in run time is quite fairly compensated by the solution quality improvement, which undoubtedly is more important than the former. Table 2 documents the performance comparison between Genetic Algorithms using the popular PMX crossover and the proposed goodness-based crossover schemes. The focus is on large circuits, for which the fitness-growth curves with PMX tend to flatten out at close to 15000-18000 generations. The parent choice and selection are roulette-based for both strategies. The third column in the table gives the fitness values reached by PMX crossover after 20000 generations, while the amount of time taken to do so is listed in column four. As seen, PMX fails to perform satisfactorily for these large circuits, reaching aggregate fitness values of less than 0.5 on average. The corresponding fitness values achieved with the proposed hybrid scheme are shown in the last column. The results show that this strategy is far more efficient at navigating large search spaces and reaches high quality solutions consistently. Figure 4 gives a clearer view of the performance comparison between PMX and the goodness-based crossover. The latter exhibits a rapidly climbing trend within the first approximately thousand generations. The graphs, plotted for the larger s9234 and s15850 circuits demonstrate how an allele-fitness based crossover design can significantly improve GA performance.

6. CONCLUSION In this work, two hybridization schemes for Tabu Search and Genetic Algorithm, both involving the use of SimE goodness measure were presented. Though the overall structure of TS and GA remains largely unaltered, this element goodness measure (referred to for GA as allele-fitness), significantly enhances the performance of both algorithms. Though the problem instance chosen was VLSI cell placement, SimE and its associated goodness and fitness measures are, like many other heuristics problem independent. Future directions in this work would extend the concept of goodness to be applied to other heuristics such as annealing, ant colony and particle swarm.

7. REFERENCES [1] Sadiq M. Sait and Habib Youssef, VLSI Physical Design Automation: Theory and Practice, World Scientific, Singapore, 2001. [2] Junaid A. Khan, Sadiq M. Sait, and Mahmood R. Minhas, “Fuzzy biasless simulated evolution for multiobjective VLSI placement ,” In Proceedings of the IEEE Congress on Evolutionary Computation, CEC’2002., vol. 2, pp. 1642–1647, 2002. [3] Ronald R. Yager, “On Ordered Weighted Averaging Aggregation Operators in Multicriteria Decision Making,” IEEE Transaction on Systems, MAN, and Cybernetics, vol. 18, no. 1, January 1988. [4] F. Glover, E. Taillard, and D. de Werra, “A User’s Guide to Tabu Search,” ”Annals of Operations Research”, vol. 41, pp. 3–28, 1993. [5] R. H¨ubscher and F. Glover, “Applying tabu search with influential diversification to multiprocessor scheduling,” Computers & Operations Research, vol. 21, no. 8, pp. 877–884, 1994. [6] F. Glover, “Tabu Search: A Tutorial,” Technical Report, University of Colorado, Boulder, February 1990. [7] Sadiq M. Sait and Habib Youssef, Iterative Computer Algorithms and their Application to Engineering, IEEE Computer Society Press, December 1999. [8] N. J. Radcliffe, “Forma analysis and random respectful recombination,” in In Proceedings of the Fourth International Conference on Genetic Algorithms, 1991. [9] G. Syswerda, “Uniform crossover in genetic algorithms,” Proceedings of 3rd International Conference on GAs, pp. 2–9, 1989.

Table 2: The fitness achieved by the PMX crossover and time Circuit Number Name of Cells s641 433 s3330 1961 s5378 2993 s9234 5844 s15850 10470

the Goodness-based hybrid strategy (GoodX) in same amount of µ PMX 0.69 0.47 0.39 0.37 0.36

Time PMX 523 1967 8448 13219 37218

Circuit s9234

Circuit s15850 0.8 Fitness Value Reached

Fitness Value Reached

0.8 0.7 0.6 0.5 0.4 0.3 pmx goodx

0.2 0.1

µ GA-SimE 0.70 0.62 0.59 0.65 0.68

0

5000 10000 15000 Number of Generations

20000

0.7 0.6 0.5 0.4 0.3 pmx goodx

0.2 0.1

0

5000 10000 15000 Number of Generations

Fig. 4: PMX Versus Hybrid Crossover for different circuits

20000