Вывод решений с наилучшими значениями фитнесса.
Рисунки I - 9 иллюстрируют работу алгоритма.
ЛИТЕРАТУРА
1 ■ Dao J., Matsumoto N.. Hamai Т.. Ogawa E.. Mori S. A Compaction method for full chip VLSI layouts, Proc. 30th Design Automation Couf., p 407-412 , ACM/IEEE , 1993.
2. Cohoon J.P and Paris W.D. Genetic placement, IEEE Trans. Comput. Aided Des. Integrated Cirenits & Syst., p. 956-964, 1987.
3. Gotdberd David E. Genetic Algorithms in Search, Optimization and Machine Learning. Addison-Wesley Publishing Company, inc. 1989.
658.512
V. M. Kureichik, A. Y. Tetelbaum,V. V. Mlgklkh, A. P. Topchy Hybrid genetic and local search heuristic for the quadratic assignment problem
1. troduction
The Quadratic Assignment Problem (QAP) is one of the most difficult combinatorial optimization problems [6]. This problem is of significant importance because it is often employed as a model for facility layout [4]. Formally, the QAP is stated as following [7]: Given a set N - ( 1,2,.. ,n} and real numbers Ajj, By, Cÿ for
find a permutation <p of the set JV which minimizes:
z = + £ £ A>i' /) ^
/«1 7 = 1
where (assuming the facility layout problem) n number of facilities/locations,
Cÿ : fixed cost of locating facility / at location j,
Ajj : cost of transferring a material unit from location i to location j,
Bjj : flow of material from facility / to facility j.
As a generalization of the Traveling Salesman Problem (TSP) [3], the QAP is NP-hard, and only moderately sized QAPs (approximately, n» 18) can by solved to optimality with exact algorithms within reasonable time limits [6]. Hence, the problem to be solved is finding the heuristic algorithms for the QAP. There were some proposed methods for the QAP solution based on: Evolutionary Programming (EP) [7], Threshold Accepting (TA) [6], Tçbu search [8], Evolution Strategy [6], and Migration Model Genetic Algorithm (MMGA) [1]. In this paper, the authors would like to outline their
findings obtained after applying all methods mentioned above, and follow with a
description of their own genetic heuristic in comparison with other known algorithms.
The QAP is characterized by a high degree of epistasis (non-linear interaction between solution elements). For example, swapping the assignment of two facilities might affect the quality of ^virtually all other assignments [6]. This fact strongly influences the performance of different approaches being applied to the QAP. The local search algorithms based on modification of a single solution (like TA) are able to rind rather good solutions quickly, provided that starting solution is not far from deep pit °f the evaluation function landscape. However, the search usually stagnates on such solutions. The global search algorithms, i.e. simple Genetic Algorithms (GAs), are also unsuccessful in the QAP, because t,hey are based on linear combinations of solution
representations, but the evaluation function has a highly non-linear character. Hence, even if an offspring is located in the vicinity (some swaps in the chromosome) of an excellent solution, it may have such a Fitness value that this instance will not be placed in the population at all or will be ousted within a Tew generations;.
In light of this, it is possible that parallel search in many ureus will include an area containing an optimal or close to optimal solution. For instance, this methodology is used in EP and MMGA approaches (migrations or instances in MMGA in most cases can not help populations converged In local optima to escape due to a genetic recombination disadvantage caused by the QAP epistasis). The other approach, supported by the authors, concentrates on the development of a heuristic based on both local and global search advantages. When GAs are employed to provide global search, local search may be used for improvements of solutions obtained after applying the recombination operator. This can work efficiently in conditions of the QAP epistasis. Indeed, offspring close to new prospective areas can reach them before being excluded from the population despite a frequent bad initial fitness value.
The crossover with local improvements is not the only possibility in which to combine advantages of both local and global search techniques. The authors practiced other such strategies, such as GAs, where the vicinity of each solution in the population is searched by its own TA with the search insensitivity proportional to the fitness of the instance in the population. Comparing the performance of such strategies, we concluded that the crossover with local improvements is the best way to combine local and global search in the QAP. Moreover, this approach may be used along with the MMGA paradigm to bring further improvements. This, however, needs additional investigation.
There are many non-standard features present in the developed GA: the crossover, implementation of the mutations, the structure of a local optimization procedure, and additional measures to prevent premature convergence [5]. This paper provides a brief outline of these features.
2. Proposed Method for the-QAP Solution
In our application, the solution was encoded as a string of length n, where n is the number of facilities/locations. A number of positions in the string denotes a location, and a value in the position identifies the facility assigned to the location. It is the most commonly applied representation in the QAP,/as well as some other optimization problems, i.e. the TSP [5].
The Crossover used in our application is similar to the Partially-Mapped Crossover (PMX), introduced in [3]. The PMX was applied in MMGA for the QAP [1,7]. The major difference between a standard PMX and a proposed crossover is that the PMX works with a part of a chromosome (mapping section) located between two crossover points. It works well for TSP (for which it was originally designed). In the TSP, each chromosome denotes a sequence of towns forming a tour. A part of the tour is modified during the crossover.
In the case of the QAP, the neighboring positions do not have a sequential relation. In this case, the standard PMX reduces (compared to the proposed crossover) the number of offspring combinations that may appear from two given parents, and is dependent on an initial enumeration of the locations.
These facts have a negative influence on the preliminary convergence avoidance. The proposed modification in PMX is to use a number of random mapping points instead of a mapping section. In this respect, the crossover is similar to the uniform crossover and may be referred to as the Uniform PMX (UPMX).
The UPMX is defined by the following rules:
1. Clone the offspring from the first parent.
2. Chose a number of the position posl at random.
S. Find a number of the position pos2 in the offspring where the content is
equal to the content ofpost in the second parent.
4. Swap the content of the positions posl and pos2 in the Offspring.
5. Repeat steps 2-5 k times.
In our implementation, k was equal to the number of locations / facilities divided by three. The expression lor calculation of the coefficient k was determined experimentally with the goal of inheriting genes from both parents with equal probability. The comparison of results from using standard PMX and UPMX shows that UPMX is more advantageous for the QAP.
As stated above* the crossover is. followed by the l ocal Improvement Procedure (LIP). The authors have practiced different types of LIPs including the usage of the TA. The choice of LIP significantly influences the -algorithm's performance. Finally, the authors came to the conclusion that the following simple routine is the most suitable:
1. Generate two masks (prml, prm2), which are the random permutations of the set
I...n. '
2. For all i=l....c andj=l.......cfollow steps 3-5, if prmlfij is not equal prm2[j].
3. Swap the two genes in positions prml[i ] and prm2[J] of the solution being improved.
4. Evaluate the modified solution.
5. Accept the swap if the solution was improved; discard the modijication otherwise.
A local improvement procedure such as this, combines good features of systematic search with an absence of local preferences. The quality of local searchAomputational complexity can be adjusted by choosing the coefficient c. Experimental results given in the end were obtained using c equal to the number of facilities.
Some modifications concerned mutations. It was found experimentally that the mutation operator, which modifies not two (swap mutation, typical for such an encoding), but three genes in a chromosome, results in significant improvements. In such an implementation of mutation, three random unequal positions in the chromosome are selected, followed by a cyclical exchange of the genes in these positions. The improvement is explained by the presence of a local optimization, which easily discards the majority of changes introduced by simple swap mutations. Moreover, the severe mutation on a copy of a chromosome with a subsequent local optimization was applied. The "severe" mutation was implemented as n/5 random swaps in the chromosome. It can be noted that such'a feature greatly improves the ability of the algorithm to escape local optima.
The authors also used additional measures which were successfully applied to TSP [5] to avoid premature convergence. They may be described briefly as massive random ehinjjes In tiic converged population with exception for the best instance.
3. Experimental Results
The proposed algorithm was tested on six benchmark problems taken from [2] (NUG15, NUG20, NUG30, STE36a, ELS 19, SK064) with the number of facilities varying between 15 and 64. NUG15, NUG20, NUG30 and SK064 are randomly generated problems with low flow-dominance [6]. The other two appear to be practical applications with high (STE36a) and very high (ELS 19) flow-dominance values. Hence, the six problems are very different in size and structure and make up a good test set. The same set of test problems was used in [7], which is devoted to the comparison of MMGA, and the combinatorial version of evolutionary programming and evolutionary strategies. The TA approach is compared with the Tabu Search against nearly the same set of benchmarks in [6].
In the papers mentioned, the Average number of Function Evaluations (AFE) (calculations) to achieve the given value of the evaluation function was used as a measure of performance. In the comparison (Table I, 2) with our algorithm, we give
average (of 10 runs for all benchmarks, with the exception of SK064, where 5 runs were used) best solution values after the number of function evaluations equal to AFEs in the mentioned papers. In these table, GA+OPT columns show average values after AFE of calculation of the fltriess function; Bmark/b.s.kn. - Benchmark name / The Best Solution Known. The.GA settings for the both tables:Population_Size=30, Crossover_Rate=0.3, Mutation_Iiatee=0.05, Severe_Mutation_Rate= 0.05.
Tabte 1 ootnpartit TA I [6] and MMGA [7] with our proposed algorithm. Table 2 compares the Combinatorial Version of Evolutionary Programming (CEP) and Combinatorial Evolutionary Strategy (CES) (both taken from [7]) with the described algorithm; Btosed on the results of performance of techniques under comparison, the proposed GA' wfflV local optimization outperforms1 other algorithms on almost all test problems.
Unfortunately, it was not possible to tabulate statistics for the "uniquely long runs" due to tKe lack of powerful hardware. As a whole, the algorithm proved to be very efficient with high premattire convergence avoidance. The "best known solutions" were obtained1 irt vft*aaHy every ran. '
4. Conclusion
According to the experimental results, the proposed GA with local optimization performs well. It shows better results in comparison to its closest relative, the MMGA, as welt as other approaches. We believe that the major reason for the algorithm's success is the confMned usage erf local and global search techniques. This statement is based on experiments with different local optimization routines and approaches mentioned. It would be very interesting to utilize similar combined local/global search methods in other problems with high epistasis to arrive at more general conclusions.
Appendix
Table 1. The comparison of TA and MMGA with proposed method (GA+OPT columns, wMeh show average values after AFE number of calculation of the fitness function) Bmark/b.s.kn. - Benchmark name / The Best Solution Known. The GA setting! for the whole table: Population_Size=30, Crossover_Rate=0.3,
Mut«tion_R»te=0.05, Severe_Mutation_Rate= 0.05.
I
Bmark/ ТА AFE GA+Opt MMGA AFE GA+Opt
b.s.kn. Av.Res Av.Res. Av.Res. Av.Res.
NUG15/ 1156 29863 1150 1181 65933 1150
1150 1155 29971 1150 1154 110300 1150
1154 182117 1150
NUG20/ 2584 72001 2579 2713 67754 2580
2570 2583 72224 2579 2635 113419 2577
2698 195976 2570
NUG30/ 6148 225157 6144 6784 68192 6284
6124 6147 225657 6144. 6596 112037 6170
6297 243544 6144
ELS 19 18684375 269592 17212548 17353902 68992 17454040
17212548 18684139 269770 17212548 17215921 121786 17212548
17212548 251729 17212548
STE36a/ 9614 516420 9526 12907 72280 12990
9526 9650 517115 9526 11940 114427 11800
10158 286285 9530
SK064/ 48747 764803 48612 54033 74437 49430
48498 48745 767236 48610 53411 115277 48130
50768 307058 48874
50562 555534 4«)80
Table 2. The Comparison of CEP and CES with proposed algorthii (GA+OPT olumns)
Bmark/ b.s.kn. CEP Av.Res. AFE GA+Opt Av.Res. CES Av.Res. AFE GA+Opt Av.Res.
NUG15/ 1150 1155 1151 62505 375005 1150 1150 1162 1153 1150 10811 54446 108976 1153 1151 1150
NUG20/ 2570 2590 2582 62505 125005 2580 2576 2626 2591 2586 10641 53276 106626 2616 2591 2577
NUG30/ 6124 6221 6178 62505 125005 6144 6166 6310 6202 6165 10291 52281 104701 6342 6290 6178
ELS 19 1 17212548 22587649 21142317 62505 125005 17454040 17212548 19218336 18128394 18128394 10486 52916 105851 17728920 17454040 17212548
STE36a/ 9526 10183 9845 62505 375005 13804 9528 10650 10103 9979 10171 51461 102981 13100 13850 9540
SK064/ 48498 49681 49374 62505 125005 49584 49110 50196 49565 49379 49044 10001 50271 100781 302591 51218 49450 49132 48612
REFERENCES
„ ad \ I'nillel Genetic Heuristic for the
I. Brown D.E.. Hunt,yC L0Sp^* rt the Third InternationalConference on uadratic Assignment Problem, Proceedings or
enetic Algorithms, San Mateo/CA: Morgan Kaufmann . PP-
2. Burkard R.E., Karisch S., Rendel F. QAPLIB A Quadratic Assignment Problem Library, ÈJOR 55, 1991, pp. 115-119. Goldberg D.E., Lingl J.R. "Alleles, Loci and the Traveling Salesman
3. Problem, Proceedings of the International Conference on Genetic Algorithms and their Applications, Hillsdale NJ, 1985, pp. 154-159. Heragu S.S.. Facility Layout (Special Issue), EJOR 57 (2), 1991, pp.
4. Kureichik V.M., Melikhov A.N., Miagkikh V V. Some New Featijtes in Genetic Solution of the Traveling Salesman Problem, to appear in Proc. of the IC on Adaptive Computing in Eng. Design and Control'96, Plymouth UK, March 1996.
5. Nissen V., Paul H. A Modification of Threshold Accepting and its Application to the Quadratic Assignment Problem. OR Spektrum (1995) 17, 205-210.
6. Nissen V. Evolutionary Facility Layout ; A Comparison, submitted to Studies in Locational Analysis. Heuristics in Location (Special Issue).
7. Skorin-Kapov J. Tabu Search Applied to the Quadratic Assignment Problem, ORSA Jomal on Computing, v.2, 1990, pp. 33-45.
УДК 681.356
Давиденко В.Н. АЛГОРИТМ ЗАДАЧИ КАНАЛЬНОЙ ТРАССИРОВКИ, ОСНОВАННЫЙ НА МЕТОДЕ ГЕНЕТИЧЕСКОГО ПОИСКА
ВВЕДЕНИЕ
Трассировка — это заключительный этап конструкторского проектирования интегральных схем (ИС). Осйовная задача трассировки состоит в определении линий, соединяющих эквипотенциальные контакты элементов и компонентов ИС. В данной работе мы предлагаем генетический алгоритм для задачи канальной трассировки в классической постановке.
ЗАДАЧА КАНАЛЬНОЙ ТРАССИРОВКИ В КЛАССИЧЕСКОЙ ПОСТАНОВКЕ
I
Задача канальной трассировки в классической постановке — это простой метод трассировки двухстороннего канала, по верхней и нижней сторонам которого проходят линейки контактов. Изломы, т.е. переход горизонтального участка с одной магистрали на другую, не допускаются. Трассировка ведется в двух слоях: в одном проводятся горизонтальные сегменты, в другом — вертикальные. Соединение горизонтальных и вертикальных отрезков осуществляются через переходные отверстия.
Канал описывается двумя последовательностями Тор и Bottom, в которых размещены верхняя и нижняя линейки канала [6]. Размер обоих последовательностей равен С, — числу колонок в канале. Множество цепей определяется как Net= { Nj, .... Nn}, где n — число цепей.
При канальной трассировке не допускаются наложения вертикальных и горизонтальных сегментов цепей. Для решения этой задачи вводятся графы вертикальных и горизонтальных ограничений. Вертикальные ограничения