Cluster boundary search algorithm for building-block layout optimization

Cluster boundary search algorithm for building-block layout optimization

Advances m Engineering Software Vol. 29, No. 2, pp. 165-173, 1998 0 1998 Elsevier Science Ltd Printed in Great Britain. All rights reserved 09659978/9...

855KB Sizes 0 Downloads 13 Views

Advances m Engineering Software Vol. 29, No. 2, pp. 165-173, 1998 0 1998 Elsevier Science Ltd Printed in Great Britain. All rights reserved 09659978/98/$19.00+0.00

PII:SO965-9978(98)00056-8

ELSEVIER

Cluster boundary search algorithm for building-block layout optimization M. Hasan Imam* & Mustahsan Mir’ Faculty

of Engineering,

Vmm Al-Qura

Vniversio,

PO Box 5450, Makkuh,

Saudi Arabia

An analytical technique is presented to optimize the layout of building-blocks of unequal areas in a continuous plane. A construction-cum-improvement type algorithm is introduced in which the optimum position of each block is determined by piecewise one-dimensional search on the boundary formed by the cluster of previously placed blocks. The search process is dynamic so that all boundary blocks are continually moved to their optimum positions until no more improvement is possible. The technique is implemented in a computer program which is fully automated and does not require any user interaction to obtain the optimal layout. Comparisons with some recent programs based on analytical and heuristic techniques demonstrate the high computational efficiency of the presented technique making it suitable for solving large-scale layout problems on a PC. 0 1998 Elsevier Science Ltd. All rights reserved Key words: facilities layout, plant layout, block placement, topology optimization, design automation.

tional requirementsare minimal. The analytical techniques, however, have yet to be developed to produce results comparable with the advancedheuristic techniques. This paper presentsan analytical technique in which at eachstageof optimization the placementof a single block is optimized with respectto a cluster of already placed blocks. The searchdomain includes the entire feasible design space and therefore at each optimization step a block is placed at its optimum position on the boundary formed by the cluster of previously placed blocks. This is achieved by mapping the cluster boundary onto a straight line and then performing a piecewise one-dimensional searchto obtain the optimum position of the block being placed. The search process is dynamic such that all boundary blocks are continually moved to their optimum positions until no more improvement is possible. The approachtherefore is a ‘constructioncum-improvement’ type which has not been presentedearlier. Comparisonswith somerecent analytical and heuristic techniquesshow high efficiency of the techniquein obtaining goodquality solutionsandindicatethat thetechniqueis suitable for solving large-sizeproblemson a personalcomputer.

1 INTRODUCTION The layout optimization of building blocks of unequal areas is a subject of considerable interest in various fields of engineering.’ -4 Telms such as ‘topology optimization’,576 ‘facilities layout’,7-‘9 ‘plant or machine layout’,iO*” ‘block placement’,123’3 ‘macrocell placement’,14,15 ‘placement optimization’,‘63’7 and ‘automated spatial synthesis’‘* refer basically to the same problem. Both heuristic and analytical techniquas have been published for the solution of this problem. The heuristic techniques solve the problem mostly by treating it as a quadratic assignmentproblem. In this approachthe continuous two-dimensional plane is discretized into a grid structure. There has been identified’* various categories of techniques that rely on different formalizations of the problem. Among the recent heuristic techniques which h.avebeen quite successfulare simulated annealing @A)‘* and genetic algorithms (GA). l8 These techniques have high computational costs arising from the discretization of the blocks and therefore massively parallel processing has also been considered.‘* In contrast, the analytical techniques526’9*‘43’6 dealing with continuous design spacedo not require the problem to be treated as a quadratic assignment problem and therefore the computa-

2 FORMULATION The optimization problem in its usual form is stated as follows:

*E-mail: [email protected] ‘E-mail: [email protected] 165

166

M. Hasan Imam. M. Mir

Minimize F(d) subject to gk
F1 =

N

z

x

i=l

j=i+l

N-l

Cg[IXi-XjI

z

i=l

j=i+l

N-l

cU[(X~- xi)* + hi - yj)*] ’

(3)

cii[(xi

(4)

N

F3= -‘~’ C

- xj)*

+ oli - yj)*]

-I

I--A

x

(+vc)

j=i+l

where (Xi, yi) are the coordinates of the centroid of block i and cij represents the connectivity or adjacency relationship between blocks i and j. The objective functions F,, F2, F3 correspond to the rectilinear, Euclidean, and squared Euclidean distance measures, respectively. Since the optimization scheme which will be presented in the next section is based on finding the optimum position of each block with respect to the placed blocks, the design variable vector at any stage of optimization is reduced to a vector of only two design variables, that is:

(5)

d = bp y,lT

where the subscript p refers to the block to be placed at its optimum position. Any constraints expressible in the form of eqn (1) may be imposed but for this study only the constraints on overlapping have been considered. Since the overlapping between all the blocks must be avoided there are as many constraint equations as there are combinations of the pairs of the blocks. Thus, the number of constraints is: N(N - 1) m= (6) 2 The constraints restricting overlapping depend upon the current topology of the blocks at any stage of optimization. Since the topology is continually changing, the constraints are dynamic in nature unlike the constraints in normal constrained non-linear optimization problems such as structural optimization problems. For this reason and because of other characteristics of this optimization problem,’ the standard methods for solving constrained non-linear optimization problems cannot be applied directly. The technique presented in this paper solves this problem by piecewise one-dimensional search with a penalty function applied to the objective function in case of any overlaps. For this purpose the objective functions of eqns (2)-(4) are rewritten as follows: FI =

(b)

(4

(2) 1

N

F2 = 1

i=l

+ Iyi-yjI]

N-l

N

C

C

i=l

j=i+l

Cij(l+PPy)[lXi-Xjl+lYi-Yjl]

(7)

(a) Fig. 1. Physical interpretation of overlap functions.

N-l

F2 =

1

i=l

1

N 1

cg(

1+

PPg)[(Xi

-

Xj)*

+

@i

-

Yj)*I



j=i+l

(8) N-l

F3 = x i=l

N

x

co(l + PPij)[(Xi -Xj)* + Cyi-Yj)*I

(9)

j=i+l

where P is an arbitrarily selected large number and flii is a binary variable defined in terms of the overlap functions XX, and Xy,, such that: pij = 1 for XXc> 0 and &, > 0

(10)

flti = 0 for XXij5 0 or Xy,, 5 0

(11)

in which:

Ax,,= $Li + Lj) - IXi- XjI

(12)

Ayii= i( Wi+ Wj)- lyi - Yj1

(13)

where L represents the length of a block (dimension along x-axis) and W represents its width (dimension along y-axis). The physical interpretation of the overlap functions h, and X, is shown in Fig. 1. These functions will be simultaneously positive only if blocks i and j actually overlap each other as shown in Fig. l(d), and for all other conditions such as shown in Fig. l(a-c), either X, or h, will be non-positive.

167

Cluster boundary search algorithm for building-block layout optimization

--I"

T---B

Fig. 2. Cluster boundary and path of block movement.

3 OPTIMIZATION

SCHEME

The key element of the proposed optimization scheme is the placement of a given block at its optimum position with respect to the ‘clu;jter’ formed by the previously placed blocks. If the search domain for finding the optimum position is formulated as the entire two-dimensional plane, the area inside the cluster as well as outside the cluster is included in the de:sign space. The overlap between the blocks must then be avoided by imposing constraints to force the optimization algorithm to find a solution outside the region covered by the cluster. It is obvious that the optimum position of the block is somewhere on the boundary of the cluster because a placement away from the boundary in the region external to the cluster will cause a gap between the block and the cluster boundary and therefore will result in a higher value of the objective function, whereas a placement inside the cluster causes overlap. Therefore, instead of formulating the search domain as the entire two-dimensional plane, only the region on the boundary of the cluster need be considered. This is illustrated by an example of a cluster of five blocks as shown in Fig. 2. The boundary for this cluster is composed of line segments a-b, b-c, c-d, etc , as shown by thick lines in the figure. The block to be placed is shown by dotted lines at its optimum position. Thi:s optimum position is obtained by performing piecewise one-dimensional search on the path of

the centroid of the block along the segmentsA-B, B-C, C-D, etc., shown by phantom lines in Fig. 2. This path is determined on the basis of the dimensions of the block and the numerical data representing the cluster boundary. Once the path of movement of a block is determined, it is mapped onto a straight line called the ‘mapped boundary’. Fig. 3 shows the objective function values along the mapped boundary for the hypothetical five-block problem of Fig. 2. Fig. 3 shows that the optimum position of the block to be placed lies on segment C-D. This position can be found by determining the point of minimum value of the objective function for each segment and then selecting the point which corresponds to the minimum of all these minima. The block is placed at this position and the boundary is determined for this new cluster. Before finding the optimum position of the next block, the positions of all the blocks of the placed cluster are re-optimized by repeating the same procedure as was used for placing a new block until convergence is reached and no more improvement is possible. The next block in order is then moved and the process outlined above is repeated until all the blocks are placed.

4 DETERMINATION

OF CLUSTER

BOUNDARY

One of the major tasks needed to implement the above optimization strategy is the determination of the boundary of a given cluster and its representation as numerical data which must be passed to the optimization algorithm. The development of an algorithm for this purpose involves the following: (a) the determination of the contact relationship between all the blocks of the cluster; (b) a criterion to distinguish the ‘boundary blocks’ from the ‘inside blocks’; (c) identification of the segments of the boundary blocks which have no contacts with any other block; (d) a data structure to store and retrieve the above information for continually changing boundary shape as new blocks are added and the existing ones are relocated. The procedure for determining the cluster boundary is given below:

p!lfli‘\” I I I

II

II L

Optimum

II

I

III

III1

I

II II

I I

III III

III1 IIII

I I

position

C

Mapped Boundary

Fig. 3. Search for optimum position on cluster boundary.

Step 1: Among all the blocks present in the cluster, the blocks adjacent to each other are identified. Two blocks are adjacent if one of the overlap functions (h, or X,) is equal to zero and the other is positive as shown in Fig. l(c). Step 2: For every pair of adjacent blocks the internal segments as shown by thin lines in Fig. 2 are determined. An internal segment between two blocks is formed when one side of a block is in contact with an opposite side of the other block, either partially or completely. For two adjacent blocks if X, = 0, then the

168

M. Hasan ham, M. Mir value of X, gives the length of the internal segment and vice versa. Step 3: The boundary segments as shown by thick lines in Fig. 2 are determined for each block by subtracting the set of its internal segments from the set of segments constituting its perimeter. A boundary segment may completely or partially cover one side of a block. When a block is completely surrounded by other blocks such that all its sides, in conjunction with other blocks, form complete internal segments, it will have no boundary segments. The orientation of each boundary segment is also determined. For example, segment e-f has a vertical orientation, while segment f-g has a horizontal orientation. In addition, the coordinates of the end-points of every boundary segment are determined. Step 4: Starting from any one of the boundary segments and using the data obtained in step 3, a linked list is prepared which connects the ends of boundary segments to each other in a way that the entire boundary of the cluster is traversed in proper sequence. For example, segments a-b and b-c are linked together because the two segments have a common end-point b with the same values of x,y coordinates. At the completion of this step, the entire cluster boundary is numerically defined.

4

START

Data Input

IOrder the blocks 1 1 Place the first block

1

Determine the boundary of placed blocks I

Select the next block for

Fig. 4.

CBA flow chart.

5 ORDERING CRITERIA Ordering criteria which have been explored before include: (a) random ordering;” (b) gradient-based ordering;6,20 (c) connectivity-based ordering with respect to and (d) connectivity-based ordering the placed block? with respect to all the blocks.” The random ordering has no scientific basis and does not give consistent results as indicated by performance comparison graphs (PCGS).~ The gradient-based ordering has produced good results6 but is not applicable here because in the absence of an initial design a block has no pre-specified placement for determining the gradients. Ordering based on the connectivity relationship of all the blocks is also not logical because the optimum position is sought with respect to the placed blocks only. For these reasons the ordering criterion for the presented technique is based on the connectivity relationship with respect to the placed blocks. The first block to be placed is selected on the basis of the highest value of the connectivity with all the blocks. In case of a tie, the first block to be placed is selected randomly among the highest connectivity blocks. The ordering for the remaining blocks is determined on the basis of the values of the ordering function Ui calculated as defined below: Oi= icij, j=l

i=r+l

to N

(14)

where i and j refer to the unplaced and the placed blocks, respectively, and r is the number of placed blocks at any stage. After each placement, the next block in order is the one which has the maximum value of Oi. This ordering criterion will produce a single unique ordering for a given problem and therefore only a single trial run will be needed.

6 COMPARISONS AND EVALUATION Three test problems were chosen for comparing the performance of the presented technique with recently published heuristic as well as analytical techniques. The first two test problems have been used earlier” to demonstrate the success of well-known heuristic techniques. These are problems of artificial nature specially devised for prespecified optimum solutions. The third test problem is a previously published realistic problem of 28 blocks with no known optimum solution. The computational efficiency of the technique is established on the basis of the results obtained from a set of randomly generated test problems. Finally, a 50-block problem is presented to serve as a new benchmark problem for future comparisons. The name cluster boundary algorithm

Cluster boundary search algorithm for building-block

Table 2. Comparison of results for test problem 2

Table 1. Comparison of results for test problem 1 Optimal values of the objective function F4 Max. value Average value Min. value

Computer program GA SA BM CBA

87.6 103.9 65.2 -

97 112 76 -.

12 94 cm4 614

(CBA) used in the discussion of the test problems refers to the computer program based on the presented technique. A flow chart for this program is shown in Fig. 4. 6.1 Test problem 1 The data for this problem of 16 blocks, each of which is a square of unit area, are taken from previous work” which also gives the results obtained for this problem by two heuristic techniques, namely simulated annealing (SA) and genetic algorithm l(GA). Recently the same problem has been solved using the Boltzmann machine (BM).‘* The objective function in previous work’*,” is a composite function comprising the bounding rectangle covering all the blocks. The corresponding objective function is given below: N

F4=

N

X WR

E ~C,,[lx~-XjI+Iyi-YjI]+LR i=lj=l

(15)

where La and WR are the length and width, respectively, of the bounding rectangle. The optimum value of the objective function F4 for this problem is known and is equal to 64. The same data were input to CBA and the optimum design was obtained. Table I. compares the results of CBA with the three above-mentioned techniques. The minimum and the maximum values of the objective function shown in Table 1 for GA, SA, and BM are based on 10 trials. The average values of the objective function over the 10 trials are also given in the table. The performance of CBA is much better than GA and SA both of which were unable to obtain the optimum

16 8

11

2

1

7

6

5

18

13

12 10

9

15

14 r

19 3

lil

17

20

Fig. 5. Optimum design for test problem 2.

169

layout optimization

Computer program

Optimal values of the objective function Fe Min. value

GA SA BM

166 154 12.5

CBA

131

Max. value

Average value

202

183.3

198

183.5

148 -

137.8 -

design in 10 trials. In fact, as indicated by the average values, most of the designs produced by these two techniques have objective function values significantly higher than the optimum value. The average and maximum values for CBA are not shown in the table because the ordering criterion as discussed above generates only a single ordering for a given problem leading to only a single possible trial run. Like CBA the BM technique was also successful in obtaining the optimum design, but the performance of CBA should still be considered better because of the following reasons: 1. The solutions obtained by BM are based on a number of trial runs and therefore have a spread of values ranging from the worst of 76 to the best of 64 with an average of 65.2. The CBA obtains the best solution in a single run. 2. The BM technique requires a massively parallel computer architecture, while CBA does not require more than a personal computer.

6.2 Test problem 2 The data for this problem of 20 blocks of unequal sizes are taken from previous work.‘7*22 The optimum value of the objective function F4 for this problem is 125. The optimum design produced by CBA, as shown in Fig. 5, has the value of objective function F4 = 131. This value is compared in Table 2 with the minimum, maximum, and the average values of the objective functions for the 10 trials for GA, SA, and BM. The known optimum was not obtained by CBA but the design produced by CBA has much lower value of the objective function than those obtained by GA and SA. One probable reason for not obtaining the known optimum design by CBA is that its formulation does not allow variation in the orientation of the blocks. Thus, any possible reduction in the area of the bounding rectangle by varying the orientation could not be achieved. In test problem 1 the blocks were square and so the orientation of the blocks had no effect on the objective function value and therefore CBA achieved the optimum design. The BM was successful in obtaining the known optimum design in 10 trials and this is because of the use of massively parallel processing which gives an advantage in applications

170

M. Hasan ham,

M. Mir

unequal size blocks given previously6 as a benchmark problem. The objective function minimized is based on the sum of the squared Euclidean metric (F3). There is no known optimum solution for this problem. The optimum design obtained by CBA is shown in Fig. 6. For the purpose of comparison with recently published analytical techniques, the same problem was solved by using programs BITOPT and FLOAT9 for 10 different randomly generated initial designs. Results are shown in Table 3. It is obvious that CBA achieved a significantly better design in a single trial run. This improvement is attributable to the fact that CBA finds the optimum position for each block with respect to the already placed cluster by searching the entire feasible design space. Fig. 6. Optimum design for test problem 3.

6.4 Computational efficiency Table 3. Comparison with analytical techniques Computer program BITOPT FLOAT CBA

One major criterion in the evaluation of a technique is its capability to obtain results closer to the global optimum if it is known. Alternatively, if the global optimum is not known, the technique may be judged by its capability to obtain results better than previously published results for the benchmark problems. Another important criterion is the computational efficiency. For this purpose a set of test problems for varying number of blocks of unequal sizes were generated randomly and optimum designs were obtained to determine the computer time taken on a 486-based PC. The time curve based on these runs is given in Fig. 7. This curve shows that a 50 block problem takes less than 50 minutes whereas a 100 block problem would require less than 6 hours of runtime on a 486-based PC. In contrast, BM would take 100 days to solve a 100 block problem in a 20 X 20 grid

Optimal values of the objective function F3 Min. value

Max. value

Average value

9470 9428 8256

10732 10396

9865 9747

-

-

where it is desired to get closest to the global optimum at all costs.

6.3 Test problem 3 Test problem 3 is a randomly generated problem of 28

Boltzmann Machine

10

20

Number

30

40

of blocks

50

60

-

Fig. 7. Computer run-time curve.

70

80

90

100

Cluster boundary search algorithm for building-block Table 4. Comparison LAYOE’TlOO

of results for benchmark

problem

Program

Minimum value of objective function (F,)

Run-time (min)

CBA LAYOPT

593761.71

29 I

Table 5. Comparison LAYOPTlZSB

of results for benchmark

Program CBA LAYOPT

546 577.40

problem

Minimum value of objective function (F,)

Run-time (min)

1183515.68

58

1097891.00

17

(discretization step of 5%) using a single processor with a cycle time of 20 ns.12 This shows the suitability of the presented technique for solving large scale problems on a personal computer. Heowever, it must be understood that the presented techniqua provides for only one trial run which produces a good quality solution but it does not allow as exhaustive a search or the global optimum as do BM and many other heuristic techniques.

6.5 Benchmark problem A survey paperlY correctly pointed out that there is a dearth of benchmark problems for layout of unequal size blocks. For any future research it would be very useful if benchmark problems of relatively large number of blocks are available with optimal solutions to provide a basis of comparison for a new technique. A benchmark problem of 50 blocks is therefore provided with the solution obtained by the CBA program. The dimensions of each block and its connectivity to other blocks were randomly generated. Complete data are given in Appendix A. The values of the connectivity coefficient cij are integers between 0 and 5, as is usual practice in some applications. The dimensions of the blocks are between 1.00 and 5.00 to two decimal places. This restriction of two decimal places is not for CBA but is imposed to allow comparisons with other techniques which discretize the design space and cannot easily handle larger number of decimal places in the dimensions of the blocks. This benchmark problem was solved by CBA. The objective function minimized was F2 (Euclidean metric). The optimum solution obtained has a value of F2 = 25 913. The coordinates of the centroids of the blocks for the optimum solution are given in Appendix A.

layout optimization

171

layout design optimization. This program, which has been recently released, utilizes a pseudo-exhaustive search technique for optimizing the layout of unequal-area blocks. A set of nine benchmark problems ranging from 3 to 125 blocks of unequal areas is also provided on the program diskette. A comparison of CBA with LAYOPT is presented in Table 4, Table 5 for two large-sized benchmark problems involving 100 and 125 blocks, respectively. Since the runtimes for the LAYOPT program are given for Pentium 120 MHz PC, both programs were run on this PC for comparing their computational efficiencies. As shown in Tables 4 and 5, the optimal solutions obtained by the CBA program are not very far away from those obtained by the LAYOPT program, although the latter is computationally much more efficient. Comparison with the 75-block benchmark problem LAYOPT is not presented here, because it involves variable aspect-ratio blocks which cannot be handled by the current version of the CBA program.

7

CONCLUSIONS

A new analytical technique is presented to solve the problem of topology optimization of unequal size blocks. The main feature of this technique is that each block is placed at its optimum position with respect to a previously optimized cluster of blocks. This gives the technique a sound basis for convergence to solutions closer to the optimum as demonstrated by the presented results. The computational efficiency of the presented technique, as compared to the best of the heuristic techniques, is superior by orders of magnitude. From the user’s point of view, the technique has the following advantages: (a) No variable parameters are required to be adjusted for tuning the optimization. (b) The technique can be implemented on an ordinary PC for solving large-scale problems of this class. The following improvements are suggested for future work on this technique: (a) The mathematical formulation is modified to allow variation in the orientations of the blocks during the optimization process. (b) The aspect ratios of the variable-shaped blocks may also be optimized.

APPENDIX A 6.6 Comparison with LAYOPT program LAYOPT’”

is a general-purpose program for building-block

(A) Upper triangle of connectivity matrix: cil; i = 1 to 49, j = i + 1 t0 50; Cij = 0

172

M. Hasan Imam, M. Mir 1303145210020413540321012012211541020054005003254 102344455402134144102100200402052540333204145030 0542350340125420444i125433043035331500020001304 0151405405135044331335503000011103333230010423 150100054153040340035221053022523120503311103 34105255032115100430520024503443010253252224 1220105545442440500101050155421052503500451 050351004403151104054144410540051013500005 14243043434001300015502430552434015001513 3253544422534303135202054135240125204025 501230025415040011344221014200410201300 42403235113021004034323214220031452541 1345505402111425040441335400115544433 210100402052235035003521003105232035 45540020530425013514113053535441353 5520545445145000352115000044211402 040255350135121015020244042250500 00341031001333353202010503251041 1440440430030050544032041004133 232100001451432344021440415355 41310525045540002044202242431 4340134052001234130300005511 431252332101021030500033540 12010525234154430553350054 2201240320355332531143450 305021441420442123453501 25003024024312330115015 0042302412000240041330 301110200010303430313 31414120104421524415 0155402241002341200 504401032043052211 43015103034031553 2005142030002203 330402033553503 30240414014455 5433231340004 304533431243 53005503325 2300331234 520335330 50002305 2520453 124215 24051 3253 010 02 0

(B) Dimensions of blocks (L, W): (2.18, (2.71, (4.15, (1.69, (l-24, (2.75, (3.83, (3.31, (2.28, (4.17, (2.12, (4.40, (1.90,

1.68) (2.80, 2.34) (1.79, 4.98) 2.09) (l-54, 4.20) (3.94, l-32) 4.50) (3.67, 1.31) (3.66, 4.49) 2.57) (3.40, 2.24) (2.48, l-24) 4.19) (3.24, 4.17) (l-86, 3.07) 3.63) (2.96, 4.81) (2.52, 3.33) 3.31) (4.68, 4.88) (4.09, 4.80) 1.76) (4.62, 1.17) (4.91, 3-26) 2.76) (1.41, 2.94) (4.72, 4.05) 1.53) (1.76, 1.92) (1.68, 1.37) 2.17) (1.88, 2.93) (4.05, 1.63) 4.95) (2.70, 3.02) (2.05, 2.78) 4.38) (2.17, 2.83) (1.52, 3.21)

(3.52, l-27) (1.12, 1.62) (l-39,

2.29)

(2.46, 1.85) (4.78, 4.13) (4.80, 3.32) (1.58, l-90)

(1.38, 1.35) (3.03, 3.00) (2.76, 4.20) (2.52, 1.35) (C) x, y coordinates of the centroids of the blocks for optimum layout design: (102.860, 98.720) (112-010, 103.592) (106.755, 100.412) (103.280, 88.215) (100.945, 102.165) (110.677, 95.822) (102*500, 100.460) (109.725, 100.172) (103.605, 97.225) (104.130, 106.195) (106.520, 106.282) (106.805, 104.187) (98.830, 100WO) (103.800, 89.470) (101.150, 97.705) (100.680, 105.295) (98.060, 102.655) (105.165, 100.945) (98.275, 92.165)

Cluster boundary (109.130, (97.730, (108.215, (95.670, (90.845, (95.990, (112,650, (103.855, (100.710, (100.830, (103.970, (107.408, (103.385, (112.207, (99.015, (113.180,

search algorithm

104.827) 105.85'5) (92.215, 99.775) (92.510, 103.870) 90.880) 93.094.) (107.825, 94.160) (103.45 1, 86.995) 99.750) 102.810) (115.265, 99.392) (94.868, 96.096) 91.215) 95.805) (104.830,98.840) (106.780, 95.885) 92.895) 90.345) (99.745, 94.795) (97.350, 88.690) 92.565) 869'10) (93.415, 92.629) (113.918, 95.732) 102.535) 96.317) (109.118, 96.972) (112.137, 94.037) 97.380) 100.022) (107.06’7, 97.247)

REFERENCES 1. Welgama, P. S.. Palitha, S. and Gibson, P. R., Computeraided facility layout--A status report. ht. J. Adv. Man&act. Technol. , 1995, 10(l), 66-77. 2. Souilah, A., Simulated annealing for manufacturing systems layout design. Eur. J. Operational Res., 1995, 82(3), 592614. 3. Yeh, I. C., Construction-site layout using annealed neural network. J. Comput. Civil Eng., 1995, 9(3), 201-208. 4. Irohara, T., Yamamoto, H., Saitoh, A. and Yoshimoto, K., Development of a layout technique of unequal department shapes and area. Trans. JSME, 1994, 60(578), 3566-3571. 5. Imam, M. H. and Mir, M., Nonlinear programming approach to automated topology optimization. J. Computer-Aided Design, 1989, 21(2), 107-115. 6. Mir, M. and l.mam, M. H., Topology optimization of arbitrary-size Iblocks using a bivariate formulation. J. Computer-Aic!ed Design, 1992, 24( lo), 556-564. 7. Tam, K. Y. and Li, S. G., A hierarchical approach to facility layout problem. Znt. J. Prod. Res., 1991, 29(l), 165-l 84.

for building-block

layout optimization

173

8. Chan, K. C. and Tansri, H., A study of genetic crossover operations on the facilities layout problem. Computer Ind. Eng., 1994, 26(3), 537-550. 9. Imam, M. H. and Mir, M., Automated layout of facilities of unequal areas. J. Computers Ind. Eng., 1993, 24(3), 355366. IO. Hasan, M. M. D., Machine layout problem in modem manufacturing facilities. Int. J. Prod. Rex, 1994, 32(1 l), 25592584. Il. Welgama, P. S. and Gibson, P. R., A construction algorithm for the machine layout problem with fixed pick-up and dropoff points. Znt. J. Prod. Res., 1993, 31(11), 2575-2590. 12. De Gloria, A., Faraboschi, P. and Olovieri, M., Block placement with a Boltzmann machine. IEEE Trans. CAD, 1994, 13(6), 694-701. 13. Siarry, P., Bergonzi, L. and Dreyfus, G., Thermodynamic optimization of block placement. IEEE Trans. CAD. 1987, 6(2), 21 l-221. 14. Mir, M. and Imam, M. H., Analytic annealing for macrocell placement problem. Znt. J. Comp. Elect. Eng., 1996, 22(2). 15. Esbensen, H. and Mazumder, P., SAGA: a unification of the genetic algorithm with simulated annealing and its application to macrocell placement. Proc. IEEE Znt. Con& on VLSI Design, 1994. 16. Mir, M. and Imam, M. H., Optimal placement for hierarchical VLSI layout design. J. Microprocessing and Microprogramming, 1989, 25, 177- 182. 17. Cohoon, J. P., Hegde, S. U., Martin, W. N. and Richards, D. S., Distributed genetic algorithms for the floorplan design problem. IEEE Trans. CAD, 1991, 10(4), 483492. 18. Mitchell, W. J., Computer-Aided Architectural Design. Von Nostrand Reinhold, New York, 1977. 19. Kusiak, A. and Heragu, S. S., The facility layout problem. Eur. J. Operational Res. , 1987, 29, 229-25 1. 20. Mir, M. and Imam, M. H., A gradient-based method for module placement. Comput. Elect. Eng. , 1990, 6(2), 109113. 21. Soukup, J., Circuit layout. Proc. IEEE, 1981. 69(10), 12811304. 22. Martin, W. N., Personal communication, 1992. 23. Engineering Optimization Software, LAYOPT User’s Manual (Version 3.00). Deltona, Florida, USA. 1997.