optimal robot selection and workstation assignment for a ... · 210 ieee transactions on robotics...

10
210 IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 10, NO. 2, APRIL 1994 Optimal Robot Selection and Work Station Assignment for a CIM System Jack S. Cook and Bernard T. Han Abstruct-In this paper, a mathematical program and solution algorithm is developed for optimal robot selection and work station assignment for a CIM system. In specific, our model con- siders selection of a proper mix of multiple-type robots such that operational requirements from a given number of work stations are satisfied at minimal system cost. Each robot is characterized by its fixed charge, and subject to limits on machine time and work envelope. Each work station has known demands on both robot machine time and work space. The model is formulated as a pure 0-1 mathematical program and is shown harder than two-dimensional bin packing, a well-known NP-hard problem. A three-phase optimization algorithm is implemented and tested by solving 450 randomly generated problems. Computational results indicate the solution algorithm is effective in solving problems of a practical size (i.e., 50 work stations and a maximum of 20 robots) within acceptable computational times. I. INTRODUCTION ITH external pressures to deliver high quality low cost products on a timely basis, the formulation of any competitive strategy must have manufacturing at its core. Computer Integrated Manufacturing (CIM) systems are able to integrate increasingly complex production technology with constantly changing product designs in order to satisfy dy- namic market demands. Thus, obviously the management of CIM systems is nontrivial and one of the challenging planning issues associated with it is robot acquisition and work station assignment. The difficulty stems from both the increasing versatility of robots and the variable resource demands of work stations. The existence of comparable robots, each capable of serving a large work envelope and performing a wide range of tasks, creates a need for a methodical approach to robot selection. This paper concentrates on an integrated planning model to determine an optimal robot selection and work station assignment for a CIM system. Specifically, the problem addressed involves selecting a proper mix of robots of different types and the assignment of work stations to selected robots. Detailed CIM design issues such as facility layout, shop floor control, and machine loading and grouping are not addressed in this paper [17], [23]. Nevertheless, the solution to the macro planning model addressed herein is very important and has significant impact on decisions Manuscript received October 19, 1992; revised May 11, 1993. The research of the first author was supported in part by a grant from Washington State University. J. S. Cook is with the Jones School of Business. the State University of New York, Genesco, NY 14454. B. T. Han is with the Department of Management and Systems, College of Business and Economics, Washington State University, Pullman, WA 9916H726. IEEE Log Number 92 14709. made at the detailed design level. As observed in practice, robot selection is usually performed first according to the characteristics of the given CIM work stations. Subsequently, a simulation analysis is conducted. Using the simulation results, new insights are incorporated in the form of constraints and the detailed planning process iterates until a satisfactory CIM facility design is achieved. For modeling and analysis purposes, we assume that the initial strategic planning and feasibility study has specified a reasonable set of robot types that are appropriate for the given work stations requiring service in a CIM environment. In particular, our research problem explicitly addresses robots of different types with various service time and space capacities. The robot selection and work station assignment (RSWSA) seeks an optimal mix of robots to serve all given work stations such that each work station’s resource demands are satisfied, no robot capacity constraints are violated, and the total system cost is minimized. In this paper, we present a mathematical model and solution algorithm for RSWSA which is efficient and may serve as a CIM planning tool. The paper is organized as follows. Since robot technology is well established [2], [24], the next section presents a brief review of the major characteristics of robots that are of interest in RSWSA. Section I11 describes the RSWSA planning model that incorporates robot costs and capabilities, and work station time and space requirements. The model is formulated as a pure 0-1 mathematical program and is shown harder than the well known two-dimensional bin packing problem. Section IV presents an alternative formulation that facilitates the develop- ment of a solution algorithm. Section V provides an overview of the solution methodology. Section VI details a 3-phase global optimization algorithm and an example illustrating RSWSA. In phase one, a greedy heuristic is used to construct an initial feasible assignment of work stations to selected robots. The initial feasible solution is then passed to phase two, a column generation procedure to improve the incumbent and create a lower bound. Subsequently, phase three, a branch and bound algorithm is triggered for optimization. Computational results are provided in Section VII. Section VI11 concludes this paper with a summary and discussion of future research issues. 11. ROBOT AND WORK STATION PARAMETERIZATION When determining potential robot types, key parameters can be categorized as geometrical, kinematic, dynamic, power and noise, and thermal [24]. Among all parameters, the two most important factors when assigning work stations to robots are the geometrical work envelope and the kinematic machine 3042-296)3/94$04.00 0 1994 IEEE

Upload: phungthu

Post on 11-Apr-2018

218 views

Category:

Documents


2 download

TRANSCRIPT

210 IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 10, NO. 2, APRIL 1994

Optimal Robot Selection and Work Station Assignment for a CIM System

Jack S. Cook and Bernard T. Han

Abstruct-In this paper, a mathematical program and solution algorithm is developed for optimal robot selection and work station assignment for a CIM system. In specific, our model con- siders selection of a proper mix of multiple-type robots such that operational requirements from a given number of work stations are satisfied at minimal system cost. Each robot is characterized by its fixed charge, and subject to limits on machine time and work envelope. Each work station has known demands on both robot machine time and work space. The model is formulated as a pure 0-1 mathematical program and is shown harder than two-dimensional bin packing, a well-known NP-hard problem. A three-phase optimization algorithm is implemented and tested by solving 450 randomly generated problems. Computational results indicate the solution algorithm is effective in solving problems of a practical size (i.e., 50 work stations and a maximum of 20 robots) within acceptable computational times.

I. INTRODUCTION ITH external pressures to deliver high quality low cost products on a timely basis, the formulation of

any competitive strategy must have manufacturing at its core. Computer Integrated Manufacturing (CIM) systems are able to integrate increasingly complex production technology with constantly changing product designs in order to satisfy dy- namic market demands. Thus, obviously the management of CIM systems is nontrivial and one of the challenging planning issues associated with it is robot acquisition and work station assignment. The difficulty stems from both the increasing versatility of robots and the variable resource demands of work stations. The existence of comparable robots, each capable of serving a large work envelope and performing a wide range of tasks, creates a need for a methodical approach to robot selection. This paper concentrates on an integrated planning model to determine an optimal robot selection and work station assignment for a CIM system. Specifically, the problem addressed involves selecting a proper mix of robots of different types and the assignment of work stations to selected robots. Detailed CIM design issues such as facility layout, shop floor control, and machine loading and grouping are not addressed in this paper [17], [23]. Nevertheless, the solution to the macro planning model addressed herein is very important and has significant impact on decisions

Manuscript received October 19, 1992; revised May 11, 1993. The research of the first author was supported in part by a grant from Washington State University.

J. S. Cook is with the Jones School of Business. the State University of New York, Genesco, NY 14454.

B. T. Han is with the Department of Management and Systems, College of Business and Economics, Washington State University, Pullman, WA 9916H726.

IEEE Log Number 92 14709.

made at the detailed design level. As observed in practice, robot selection is usually performed first according to the characteristics of the given CIM work stations. Subsequently, a simulation analysis is conducted. Using the simulation results, new insights are incorporated in the form of constraints and the detailed planning process iterates until a satisfactory CIM facility design is achieved.

For modeling and analysis purposes, we assume that the initial strategic planning and feasibility study has specified a reasonable set of robot types that are appropriate for the given work stations requiring service in a CIM environment. In particular, our research problem explicitly addresses robots of different types with various service time and space capacities. The robot selection and work station assignment (RSWSA) seeks an optimal mix of robots to serve all given work stations such that each work station’s resource demands are satisfied, no robot capacity constraints are violated, and the total system cost is minimized. In this paper, we present a mathematical model and solution algorithm for RSWSA which is efficient and may serve as a CIM planning tool.

The paper is organized as follows. Since robot technology is well established [2], [24], the next section presents a brief review of the major characteristics of robots that are of interest in RSWSA. Section I11 describes the RSWSA planning model that incorporates robot costs and capabilities, and work station time and space requirements. The model is formulated as a pure 0-1 mathematical program and is shown harder than the well known two-dimensional bin packing problem. Section IV presents an alternative formulation that facilitates the develop- ment of a solution algorithm. Section V provides an overview of the solution methodology. Section VI details a 3-phase global optimization algorithm and an example illustrating RSWSA. In phase one, a greedy heuristic is used to construct an initial feasible assignment of work stations to selected robots. The initial feasible solution is then passed to phase two, a column generation procedure to improve the incumbent and create a lower bound. Subsequently, phase three, a branch and bound algorithm is triggered for optimization. Computational results are provided in Section VII. Section VI11 concludes this paper with a summary and discussion of future research issues.

11. ROBOT AND WORK STATION PARAMETERIZATION

When determining potential robot types, key parameters can be categorized as geometrical, kinematic, dynamic, power and noise, and thermal [24]. Among all parameters, the two most important factors when assigning work stations to robots are the geometrical work envelope and the kinematic machine

3042-296)3/94$04.00 0 1994 IEEE

COOK AND HAN: OPTIMAL ROBOT SELECTION AND WORK STATION ASSIGNMENT FOR A CIM SYSTEM 21 1

Fig. 1. The space requirement of a work station versus its location within the robot work envelope.

cycle time [2], [21]. The work envelope for a typical robot is represented by a circle [Fig. l(a)]. However, for our model, it is not required that the work envelope be a complete circle.

A work station may be located anywhere within the work envelope. The time requirement of any work station depends upon its relative distance from the robot. In addition, the space requirement of a work station also depends upon its relative location. For example, suppose the designer is considering

located. If the work station is assigned to location one, the space requirement (in degrees) is S1 [Fig. l(b)]. Obviously, if the work station is assigned to location two, its space requirement is S2, which is smaller than what is required if assigned at location one. In contrast, the time requirement of a work station assigned at location one is smaller than the time requirement associated with location two because the latter incurs, on average, a longer travel time [2]. Thus, there exists a trade-off between the space requirement and machine cycle time requirement of a work station. In fact, both requirements are a function of the work station's relative position from the robot. In this research, our primary objective is to minimize the total robot acquisition costs while satisfying work station resource demands. In order to make RSWSA computationally tractable, we assume that all work stations are

The RSWSA problem and its mathematical formulation follow.

111. RSWSA PLANNING MODEL

A , Literature ~ ~ ~ i ~ ~ ,

RSWSA is equivalent to a two-dimensional multi-type bin

dimensional bin, and each work station a two-dimensional object to be packed. RSWSA can be viewed as assigning objects into an optimal set of bins such that both resource demands of each object are satisfied and neither of the capacity constraints of each selected bin is violated. Historical research in bin packing has focused on both the one-dimensional single- type bin packing problem (1DSBP) and its two dimensional extension-2DSBP [ 1 11, [ 161. Both lDSBP and 2DSBP have been proven NP-hard [l], [3]. A good review of bin packing can be found in [ l l ] .

Since Baker et al. [3] investigated the two-dimensional bin packing problem (2DSBP), numerous investigators have ex- amined the performance analysis of approximation algorithms designed for a number of 2DSBP variants [31,[41, [71, [SI, 191, [lo], [19]. Reported algorithms may be categorized as either on-l jne or ofS-line. On-line algorithms pack a collection of

two locations relative to a robot for a work station to be packing problem (2DMBP)' Consider each robot as two-

placed at the most remote location within the work This assumption decouples the interaction between 'pace and time by the resource requirements Of a given work

objects that must be loaded as they are presented; in contrast, off-line algorithms pack the complete, possibly preordered, set of objects. Both types of algorithms are practical in real

station to be constant. Without this assumption, the model complexity is significantly increased.

world applications [41. In addition, algorithms may also be categorized by the way that objects are packed. Specifically,

In Practice, this trade-off between the number Of robots required to Serve a given set Of work stations and the time

the two packing strategies are box-packjng and vector-packing. In box-packing, objects are treated as rectangles which are

required to serve a work station could be considered by iteratively solving RSWSA and the associated facility layout problem. This iterative process is referred to as the robot con- figuration process, which is currently under our investigation. The following statements collectively define the robot config- uration problem, of which RSWSA is a subproblem [21, 1211.

1) Determining an optimal set of work stations assigned to a single robot and layout of the work stations at that cell.

2) Prescribing the optimal number and type of robots required to serve a set of work stations and optimizing the assignment of work stations to selected robots.

3) Organizing a set of robot cells into an efficient CIM configuration.

packed into an open-ended bin of unit width and infinite height. me objective in box-packing is to minimize the height of the open-ended bin. B~ contrast, in vector-packing, each object and bin is treated as a two-dimensional vector. ne objective of vector-packing is to minimize the use of bins that all objects packed into a bin have a component-wise sum less than or equal to one [19].

To date, there exists no efficient 2DSBP optimization al- gorithm for solving problems of a practical size. To our knowledge, there also does not exist an exact optimization algorithm for 2DMBP, a generalization of 2DSBP. In this paper, the focus is on the development and implementation of an optimization algorithm for solving RSWSA. Specifically,

212 IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. IO, NO. 2, APRIL 1994

TABLE I NOTATION FOR RSWSA

Notation Definition

I< K

I 11

I J J n

J k

,5,n

f n

Number of robot types Robot type index set, K = { 1 .2 . . . . I < } Number of work stations Work station index set, I = { 1 . 2 . . . . . n } Maximum number of type k robots,V k- E K Robot index set for type k robots,

Normalized time requirement of work station when served by a type k robot, V i E I. k E K Normalized space requirement of work station i when served by a type k robot, V i E I, k E K Fixed charge incurred if a type I; robot is purchased, Vk. E K

Jn = { 1 . 2 :... m k } V k E K

the objective of this work is to develop a solution algorithm that can be used to solve problems of a practical size within ac- ceptable computational times. The characteristics of RSWSA warrant the development of an off-line algorithm involving vector-packing. Although the algorithm described here is in the context of robotics, it is general and applicable to any

each individual product insignificant as compared to the CIM machinery costs. In fact, they conclude that “most costs (in a CIM system) will be fixed costs, which will approach 100 percent of factory floor costs [ 14, p. 1001.” Thus, for this macro planning model, variable costs are not considered. However, the solution algorithm developed in this paper is general. No alteration of the algorithm is required if variable costs are considered. RSWSA can be written as ((1)-(6)):

real-world application that requires the assignment of a set of two-dimensional objects to bins with two capacity constraints. In the next section, RSWSA is formulated.

Condition ( 2 ) is assigned to exactly one robot. conditions (3) and (4) that work stations assigned to any robot will not violate the

that each work station

B . RSWSA Model Formulation

Consider a set of robot types indexed by K = ( 1 . 2 , . . . . K } , where each robot type is characterized by its time and space capacity. Specifically, space is measured in terms of the work envelope’s swept area. The swept area is the total number of degrees around the central vertical axis that is within reach of the robot arm. Assume all given work stations are indexed by I = { 1 . 2 , . . . . n}. Each work station i demands a known amount of time and space when served by robot type k , denoted by t Z k and sik respectively. In addition, for a given set of n work stations, let m k denote the maximum number of robots of type k necessary to serve all work stations assuming only robots of type k are available for purchase. Furthermore, let J k = { 1 ,2 , . . . . m k } denote the index set for type k robots. Finally, we assume that a fixed-charge, f k , will be incurred if the j th robot of type k is purchased. For easy reference, all

corresponding time and space constraints. Lastly, condition (5) ensures that the ith work station is assigned to the j th robot of type k only if the robot is purchased.

As seen, RSWSA is a pure 0-1 integer program (IP). As discussed in the previous section, RSWSA is a generalized two-dimensional bin packing problem that has been shown to be NP-hard [3]. Therefore, it is impractical to directly solve RSWSA by using any available IP code. However, as shown in the next section, RSWSA becomes computationally tractable if it is properly transformed into a set covering problem (SCP). In this paper, a three-phase optimization algorithm is developed for solving SCP via a column generation scheme [6]. Since SCP is key to our algorithm design, its mathematical formulation immediately follows.

IV. SET COVERING PROBLEM FORMULATION

useful notation for RSWSA is summarized in Table I. Define grouping j corresponding to a type k robot as an assignment of work stations to the robot such that both the time and space constraints of the robot are not exceeded. Assume that there exists V k unique groupings that have been enumer- ated corresponding to robot type k. Let N k denote the index set for all groupings corresponding to the type k robots; that is,

N k , be an n x 1 binary column vector denoting the j th grouping of work stations assigned to a type k robot, V i E I,

Furthermore, define the following decision variables:

if work station i is assigned to robot j 1 x i J k = of type k ;

0 otherwise T .

N k = { 1 - 2 > . . . > 7 ) k } . Letgjk = ( Y l j k 3 Y 2 j k : . . . , g n j k ) ,3 E 1 0 otherwise

if robot j of type k is purchased;

{ and

1 if work station z is served by a type k robot in grouping j:

i Y j k =

{ 0 otherwise.

With no loss of generality, the time and space requirements for each work station (i.e., t i l , and si,+ respectively) can be normalized by dividing the robot resource capacities into the corresponding work station resource demands. In addition, Goldhar and Jelinek maintain that the multi-product production capability of a CIM system makes the variable costs of

g z j k =

Furthermore, let G be a set containing all possible groupings over all robot types. By definition, for each grouping contained

COOK AND HAN: OPTIMAL ROBOT SELECTION AND WORK STATION ASSIGNMENT FOR A CIM SYSTEM 213

in G , the following two conditions hold:

x t r k g r j k 5 1 (7)

X S z k g z j k 5 1 (8)

2EI

2EI

These two conditions follow since the time and space capaci- ties associated with each type k robot must not be exceeded. Finally, define the 0- 1 decision variables, z j k . ‘d E K, j E N k , such that

1 if grouping j of robot type k is active; c 0 otherwise. z j k =

A grouping is active if it has been selected as part of a feasible robot configuration. Using the above notation, RSWSA can be transformed into the following SCP ((9)-( 1 1)):

(9)

Condition (10) ensures that final groupings selected must contain (cover) each of the given work stations at least once. Note that solving SCP for optimality is not easy due to the following two conditions: (1) the integrality constraint on each 0-1 decision variable; (2) the inclusion of all possible groupings, G . While the first condition makes SCP a hard- to-solve IP, the second creates a combinatorially explosive formulation. Algorithms presented by Salkin [20] are not appropriate since each requires enumeration of all possible groupings in SCP. This is computationally impractical. For instance, consider a case where there are thirty work stations to be assigned to robots of four different types. If every robot type has sufficient time and space capacity to serve at most six work stations, then there exist 3 072 844 possible groupings. Thus, a practical-sized problem cannot be solved by any known computer within acceptable computational times.

Fortunately, RSWSA can be solved by a three-phase opti- mization algorithm which employs a column generation (CG) technique. The CG technique overcomes the computational difficulty of enumerating all possible groupings by allowing the solution process to begin with only a small subset of group- ings. The technique is effective since it also allows necessary groupings to be generated by solving a relaxed SCP. Hence, the CG technique solves RSWSA while not compromising the solution quality. An overview of the solution methodology is given below.

V. SOLUTION METHODOLOGY OVERVIEW

The solution algorithm for RSWSA includes the following three phases: 1) Use a greedy heuristic-First Fit by Ordered Deviation (FFOD) to generate an initial feasible solution; 2 ) Use column generation (CG) procedure to improve the

incumbent and produce a lower bound; 3) Use a branch and bound to search for the optimum. The FFOD greedy heuristic provides an initial feasible solution which serves as an upper bound (Z+) . The initial feasible solution and its corresponding objective function value, Z+, are then passed to phase two to form a restricted master program (RMP). The RMP is iteratively expanded and solved by using the CG decomposition procedure. In specific, at each iteration, new groupings are generated by solving a number of multi- constraint knapsack problems [12]. The best or a few good groupings are appended to the RMP. This iterative solution process will continue to refine Zf until no more new group- ings with non-negative reduced costs can be generated. If the final solution to RMP is all integer, then an optimal solution to the original RSWSA problem has been found and the algorithm terminates. Otherwise, a lower bound has been obtained and the algorithm continues to phase three. In phase three, a branch and bound procedure is used to search for the optimal solution. Algorithm details are given in the next section.

VI. ALGORITHM DETAILS

A. A Work Station Assignment Heuristic (WSAH)

Before presenting the details of the three-phase global optimization algorithm, a work station assignment heuristic (WSAH) is presented. Given any work station, three possi- bilities exist. The work station can be time intensive, space intensive or neither. A heuristic is developed by examining these three cases, and the load balance on each candidate robot. WSAH is based on the concept of allocation cost, which is computed as a function of the resource demands of each work station and a robot’s load balance. As illustrated later, this heuristic provides incentive to assign as many work stations as possible to each robot while also maintaining its load balance.

Let A j k denote the load balance factor associated with the j th robot of type k. That is, A j k is defined as the difference between the total allocated (normalized) machine time and the total allocated (normalized) work space for robot j of type k .

is a 0-1 variable defined in Section 111-B. Hence, Ajk can be expressed as follows:

Let T j k = zzEI t i k X i j k and s j k = XiEI S i k X i j k where z i j k

A j k = T j k - s j k v k E K , j E J k When no work station has yet been assigned to a robot,

that robot is said to be inactive. Thus, if robot j of type k is inactive, Ajk = 0. Furthermore, if a robot is active and its resource load is nearly balanced, then the load balance factor will be approximately zero. However, if the robot’s load is time intensive, then 0 < Ajk < 1. Otherwise, if the robot’s load is space intensive, then -1 < A j k < 0. Hence, the further the resource load factor is away from zero, the greater the load imbalance is.

In addition, let S i j k denote the adjusted demand when the ith work station is served by the :jth robot of type k. That is,

(12) ifAjk > 0

z i k - { MAX{tik + A,,, s i k } ifA,k 5 0 MAX{t;k. s i k - Ajk} 6 . . -

214 IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 10, NO. 2, APRlL 1994

Since 0 < til, 5 1. 0 < s i k 5 1. and -1 < A j k < 1, we

To illustrate how the adjusted demand is employed by WSAH, consider a simple case where two robots of type k are active, say A and B. Assume that A,, = 0.4 and A,, = -3. Therefore, robot A is time intensive. In order to improve the load balance for robot A, we should prefer the assignment of a work station which is space intensive (i.e., t ; k < s+) to those which are time intensive. By contrast, for robot B, the assignment of work stations which are time intensive should be given preference over work stations which are space intensive. An example is given below for illustration.

Suppose the work station to be assigned next is time intensive; that is, t i l , = 0.3 and S i k = 0.2. Also, assume both robot A and B have enough remaining time and space capacities to serve this candidate work station. The goal of our work station assignment is to balance the resource load on each robot. Since the candidate work station is time intensive, it should be assigned to a robot which is space intensive. Plugging the given figures into equation (12), we have 6 i . ~ k = 0.3 and S z ~ k = 0.2. These adjusted demands (i.e., & j k ) contribute to the “allocation costs” (i.e., the proportional fixed charge that a work station incurs during the work station assignment).

In general, if the fixed cost of all robot types were equal, the work station should be assigned to the robot which produces the smallest adjusted demand. However, not all robots have equal fixed cost. Thus, the allocation cost, u i j k , incurred by the ith work station when served by the j th robot of type Ic is the product of its adjusted demand and the fixed cost of the j th robot of type k . That is,

know 0 < s,j, 5 1.

uijk zr f l s i j k (13)

Since 0 < Si;k 5 1, we know that 0 < ai3,+ 5 f k . Thus, u ; j k reflects the adjusted proportion of the fixed cost that work station ,C incurs when it is assigned to robot j of type k . To facilitate our algorithm analysis, all useful notation is summarized in Table 11.

The algorithm for calculating allocation costs for work station i has two components. The first component determines the type and index of the active robot (i.e., k a ~ and j .4) which can serve work station i with the minimum allocation cost. This can be easily accomplished by computing <.A as follows:

As seen, computing t.4 considers only those active robots that provide sufficient unused time and space resources to satisfy the resource demands of the work station under consideration. If there are two or more robots with the same minimum allocation cost, then the robot with the minimum load balance factor is chosen as the active incumbent candidate robot.

The second component determines the type of inactive robot (i.e., k ~ ) , which, if activated, can serve work station i with the minimum allocation cost. Similarly, this can be accomplished by computing <I as follows:

TABLE I1 NOTATION FOR WORK STATION ASSIGNMENT HEURISTIC (WSAH)

Notation Definition

Number of active robots of type k . V k E K Total number of active robots,.J = J I + j , + . . . + J I ~

Robot index set for all type k robots, J k = {l. 2 . . . . . m k }

Robot index set for type k active robots, J: ={I . 2 . . . . . J k }

Robot index set for type k inactive robots, J: = { j k + Allocation cost of work station i if served by robot j of type kV i E I. I. E K . J E J k .

Minimum of a t i k for all active robots, V i E I. k E K , j E J f Minimum of at,^ for all inactive robots, V i E I. k E K , j E Ji Adjusted resource demand of work station i if served by robot j o f t y p e k . V i E I , k E K . j E Jk Type of active robot with minimum allocation cost charged to work station I

Type of inactive robot with minimum allocation cost charged to work station i The index of the active robot of type k,! Objective function value for current assignment Assignment Threshold

1. $ 2 . . . . J I J k }

Note that in formula ( lS) , only K inactive robots are consid- ered, one for each robot type. As defined, there are j k active robots for each robot type k . Hence, the robot j k + 1 is the inactive robot of type k considered for activation.

Since J is the total number of active robots and K is the total number of robot types, the algorithm complexity for computing allocation costs is O(K + J ) . Note that the algorithm complexity increases linearly with the problem size. Thus, it is quite efficient.

Given allocation costs are computed for both active and inactive robots, the remaining task is to assign work station i to the proper robot. Clearly, this assignment process will either choose an existing active robot or activate an inactive robot. Work station i is assigned to the robot with the overall minimum allocation cost. If an inactive robot is activated, then the fixed cost of a robot of type k l is incurred. Otherwise, if an existing active robot is chosen to serve work station z, then the robot’s available resources are decreased by the work station’s resource demands. Obviously, the assignment of a work station is an d(1) algorithm.

An assignment threshold, <, is embedded in our algorithm. This assignment threshold, (, is an adjustable parameter that allows the designer to stop the activation of inactive robots. It is defined as:

where 7i is the average capacity of a robot center (i.e., the average number of work stations that can be served by a typical robot). In specific, f i is measured as a fraction of n. Consider what could happen if such a threshold was not used. It would be possible that when a certain percentage, say 90 percent, of the work stations have been assigned, the heuristic will continue to open new robots even though the existing active robots have adequate capacity to serve the remaining unassigned work stations. To prevent this, the threshold is

~

COOK AND HAN: OPTIMAL ROBOT SELECTION AND WORK STATION ASSIGNMENT FOR A CIM SYSTEM 215

set by the designer so that once < work stations have been assigned, only active robots will be considered for work station assignment. This continues until either all work stations have been assigned or there is not enough capacity associated with any robot for the work station, at which time an inactivated robot is activated. In summary, for each work station i, WSAH calculates the allocation costs and then assigns the work station to the robot which provides the minimum allocation cost. Results from WSAH are passed to a greedy heuristic, based on First Fit by Ordered Deviation (FFOD). Details follow.

B . Phase One: Use a Greedy Heuristic to Generate an Initial Feasible Solution

A FFOD greedy heuristic is used to produce a good feasible solution. Initially, no robots are active. For each robot type I C , the heuristic calculates the load deviation ratios and sorts them into a nondecreasing order. These load deviation ratios indicate the balance between the time and space requirements of each work station when served by each robot type I C . Then, the FFOD greedy heuristic employs WSAH to assign work stations to robots based on the sorted load deviation ratios.

Assume the sorting procedure has computational complexity of O(nP) where 1 < p 5 2. It is clear that the complexity of calculating load deviation ratios is O( n); the initialization of the decision variables is O(nm) where m = xi=, m k ; and the WSAH heuristic is O(n(K + J ) ) . Thus, the FFOD greedy heuristic has an algorithm complexity no worse than O(n2) .

Since FFOD is simple and efficient, it is rerun once more based on a nonincreasing order of load deviation ratios. Our computational results indicate that FFOD provides a very good feasible solution. This initial feasible solution is then passed to phase two to seek a near optimal or optimal solution. The details of phase two follow.

C. Phase Two: Use CG Procedure to lmprove the Incumbent and Produce a Lower Bound

As discussed in Section IV, RSWSA can be transformed into a set covering problem. Instead of enumerating all pos- sible groupings (i.e., assignments of work stations to selected robots), the feasible solution produced by FFOD heuristic is used to formulate the initial model ((9)-( 1 l)), which here- inafter is referred to as the restricted master program (RMP).

Certainly, the solution from FFOD forms a feasible basis to the initial RMP, but it is not optimal for RSWSA because many potential good groupings are not included in SCP yet. As to be shown later, the column generation decomposition procedure allows new groupings to be added to RMP, which is iteratively solved and revised until no more good groupings (i.e., groupings with non-negative reduced costs) can be pro- duced. This process will not only generate needed groupings, but also continue to improve the incumbent ( Z + ) to a near- optimum or optimum. This is borne out in our computational experiments (see Section VII). Figure 2 presents a flow chart of the column generation procedure. Detailed explanation of the two major steps is given below.

Step 1: Solving RMP as a Relaxed SCP: Solving RMP as an integer program is nontrivial. Fortunately, to support the

solve K two-constraint knapsack problems, one for each robot

type.

Select the best groupingls) and add them to the RMP. 0

(5 Phase Ill

Fig. 2. Flowchart of Phase 11, Column Generation.

column generation process, RMP can be solved as a relaxed linear program. That is, the integrality constraint (1 1) is replaced by:

Z3k 2 0 v k E K , j E N k (17)

Clearly, the relaxed RMP can be solved by any efficient LP code. The by-product of this LP solution is a set of multipliers associated with the constraint set (10). Let 7r = ( T I , 7rz. . . . , T ~ ) denote the multipliers. As it is well known, each multiplier 7rL represents the shadow price (i.e., potential savings) that the work station i might contribute if it is assigned to a candidate robot. Thus, the multipliers provide us important information in generating new groupings for each candidate robot type k , k E K. Step 2: Using Multipliers ( T ) to Solve K Two-Constraint Knapsack Problems: Define the following notation, V i E I:

1 if work station i is assigned to a robot of type k ; w z k = { 0 otherwise

Given the multipliers 7r = ( T I , ~ 2 . . . . , 7rn) from Step 1, the maximum reduced cost ($1;) associated with activating an inactive robot of type k can be determined by solving the following two-constraint knapsack problem.

(18) (KP) MAX $k = E T z w z k - fk 2EI

216 IEEE TR .ANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 10, NO. 2, APRIL 1994

TABLE 111 FIXED COSTS AND PARAMETER VALUES OF THREE ROBOT TYPES

Robot Type 1 2 3

Acquisition cost $75,000 $65,000 $50,000 Swept area 190" 175' 165'

Maximum reach 2.288 m 1.450 m 1.325 m Average speed 1.00 d s e c 1.00 m/sec 0.7 m/sec

TABLE IV NORMALIZED SPACE AND TIME REQUIREMENTS OF WORK STATIONS

Normalized space Normalized time

SZ1 s , 2 s,3 t , l t , 2 t,:]

Station Station requirement requirement (i) size (D)

1 1.67 0.225 0.402 0.474 0.265 0.230 0.217 2 0.83 0.110 0.191 0.222 0.230 0.210 0.198 3 1.67 0.225 0.402 0.474 0.208 0.175 0.135 4 1.17 0.155 0.272 0.318 0.192 0.170 0.143 5 2.10 0.288 0.530 0.635 0.118 0.104 0.069 6 1.73 0.234 0.419 0.494 0.178 0.157 0.141 7 1.25 0.167 0.292 0.341 0.257 0.234 0.199 8 2.00 0.273 0.498 0.594 0.164 0.143 0.095 9 1.85 0.251 0.453 0.537 0.280 0.259 0.226 10 1.00 0.133 0.231 0.269 0.214 0.190 0.173 11 1.73 0.234 0.419 0.494 0.224 0.212 0.190 12 1.35 0.181 0.317 0.371 0.267 0.241 0.216

For each iteration, KP is solved for each robot type k , k E K. In our model, an efficient algorithm developed by Gavish & Pirkul [12] is used for solving KP. Once all subproblems are solved, the optimal reduced costs (i.e., $ i , V k E K) are determined. Then, the candidate robot with the largest reduced cost, I/]*, is chosen where

$* = MAX$; k € K

If $* is nonnegative, then the associated solution to KP is introduced as a new grouping to the RMP. Step 1 and 2 will be repeated until no more candidate robots with nonnegative reduced cost can be generated.

As seen in Fig. 2, two possible results might be produced at the end of the column generation process. First, if the final incumbent is an all-integer solution, then an optimal solution is obtained and the algorithm is terminated. Otherwise, the incumbent and the solution's lower bound (i.e., Z i p ) are further passed to phase three to search for the optimum. However, early termination of the solution algorithm might be desired if the solution gap (i.e., (2' - 2zp)/Zip) is within an acceptable tolerance E .

D . Phase Three: Use a Branch and Bound to Search for the Optimum

Due to the tight lower bound produced by phase two, if the solution is not all-integer, a branch and bound (B&B) algorithm is considered as one of the possible ways to search for the optimum. One way of obtaining an optimal integer solution is to use a B&B technique starting with a fractional variable, say xJ'k'. Two linear programming subproblems of the form (9), (10) and (17) are created. The first has X j ' k '

fixed equal to one; the second has x j ' k ' fixed equal to zero. Instead of starting from scratch in solving the subproblems, it is more efficient to update the cost matrices appropriately and start with the optimal basis associated with the parent problem. The parent problem is primal feasible to its two subproblems. Hence, it provides a good starting point. Note that for any linear program of the form (9), ( lo ) , and (17) which has a high probability of terminating all-integer, the B&B tree necessary to solve RSWSA should not be large at all. As will be shown later, the CG procedure is reasonably efficient for practical problems since an optimal solution to the relaxed RMP is obtained before many groupings are generated and the subproblem is solved effectively.

E. RSWSA Example

Using realistic data from [2], [18], [22], [24], we provide the following example to highlight the solution process for a RSWSA problem. While Table I11 summarizes major param- eter values for three different robot types, Table IV presents the normalized space and time requirements of twelve work stations.

As seen, column one in Table I11 shows that the type one robot has a fixed charge of $75000, a swept area of 190", a maximum reach of 2.288 meters, and an average arm movement speed of one meterhecond. Moreover, each entry in column two of Table IV provides the diameter ( D ) of a circle encompassing the work station. We briefly describe how we derive the normalized space and time requirement for each work station.

As addressed in Section 11, this research assumes that each work station is placed at the most remote location within the work envelope. Therefore, the D associated with each work station is in fact a chord to the work envelope. Knowing the value of D and the maximum reach (R) of a robot, we can derive the arc length subtended by a work station, which is RB where B = 2sin-' (&). Note that B represents the work station's space requirement in degrees. Using 6' and the swept area (S), we can determine a work station's normalized space requirement. For example, consider work station one and robot type one. We have D = 1.67 meter, R = 2.288 meters, and S = 190". Using this data, we have 6' = 42.8071", and thus S I 1 = ~ '7&)7 = 0.225. In contrast, the time requirement of a work station can only be determined after a thorough motion study, which involves detailed analysis of robot motions and task characteristics. In this macro planning model, the time requirement for each work station is estimated based on two major components: 1) robot arm travel time; 2) robot service time. Both components are normalized by the total

COOK AND HAN: OPTIMAL ROBOT SELECTION AND WORK STATION ASSIGNMENT FOR A CIM SYSTEM 217

TABLE V ROBOT SELECTION AND WORK STATION ASSIGNMENT

TABLE VI1 COMPUTATIONAL RESULTS FOR ROBOT CAPACITY EQUAL TO T E N

Grouping Robot type work 'pace Time

I 1 2, 3, 4, 6, 8 0.997 0.972 2 1 1, 5, 9, 11 0.998 0.882 3 3 7, 10, 12 0.981 0.588

assignment utilization utilization Problem size FFOD heuristic CG procedure EuzihpE:e three phase one phase two

CPU Gap CPU Gap CPU Gap (sec) (%) (sec) (%) (sec) (%)

R Pb. set m

TABLE VI COMPUTATIONAL RESULTS FOR ROBOT CAPACKY EQUAL TO FIVE

Problem size FFOD heuristic CG procedure EuzihpE:e three phase one phase two

CPU Gap CPU Gap CPU Gap (sec) (%) (sec) (%) (sec) (%I)

n Pb. set nt

30 I 8.2 0.07 4.34 51.46 4.30 167.20 0.00 I1 9.9 0.07 6.57 41.21 5.60 106.92 0.00 I11 11.0 0.07 7.89 38.75 6.00 106.35 0.00 IV 11.0 0.07 8.67 38.36 4.60 124.53 0.00 V 11.6 0.07 10.23 40.80 5.70 117.47 0.00

Avg. 10.3 0.07 7.54 42.12 5.24 124.49 0.00

40 I 11.3 0.11 6.23 137.30 5.90 1644.450.00 I1 16.2 0.11 9.29 123.79 7.00 1866.45 0.00 I11 14.7 0.11 7.01 102.47 5.80 681.59 0.00 IV 14.6 0.11 8.13 103.57 5.50 819.95 0.00 V 13.3 0.11 5.99 91.85 4.40 1783.46 0.00

Avg. 14.0 0.11 7.33 111.80 5.72 1359.18 0.00

50 I 17.2 0.16 6.24 344.00 6.20 6717.10 0.00 I1 20.2 0.16 7.67 299.80 7.67 5575.40 0.00 111 19.0 0.16 6.40 381.00 6.00 4870.40 0.00 IV 19.8 0.16 9.03 542.10 6.60 3973.100.00 V 19.8 0.16 7.27 1258.89 4.60 2080.70 0.00

Avg. 19.2 0.16 7.32 565.16 6.21 4643.34 0.00 Overall 14.5 0.11 7.40 239.69 5.72 2042.34 0.00 average

available machine time, which in practice is defined by the time available during peak machine hours.

Using the above data and the aforementioned optimization algorithm, the RSWSA example is optimally solved with a solution as follows (Table V).

VII. COMPUTATIONAL RESULTS AND ANALYSIS

To further examine the robustness and effectiveness of our optimization algorithm, 450 problems are generated and tested based on our key design parameters. The three-phase optimization algorithm discussed in the previous section was coded in FORTRAN and interfaced with LINDO for solving the linear programs in phase 2. The computer hardware used in this study is an IBM 3090.

All test problems are created by a problem generator using four major design parameters: 1) the average robot service capacity (i.e., the average number of work stations that can be served by a robot based on one-dimensional resource demand of work stations); 2 ) the average space required by the given work stations; 3) the average machine time required by the given work stations; 4) the number of work stations to be assigned, n. For all test problems, four robot types with fixed charges 100, 80, 70, and 60 (in multiples of $1000) are

30 I 4.6 0.06 5.00 131.65 0.70 208.71 0.00 I1 4.6 0.06 4.00 193.20 0.70 38.16 0.00 HI 4.8 0.06 6.10 155.04 4.10 73.71 0.00 IV 4.6 0.06 5.40 74.60 3.70 37.15 0.00 V 4.5 0.06 4.30 57.91 1.80 32.97 0.00

Avg. 4.6 0.06 4.96 122.48 2.20 78.14 0.00

40 I I1 I11 IV V

Avg.

50 I I1 I11 IV V

Avg. Overall average

5.8 0.10 2.40 6.4 0.10 3.90 6.6 0.10 6.30 6.8 0.10 6.70 6.8 0.10 7.20 6.5 0.10 5.30

6.4 0.14 6.30 8.0 0.15 8.40 7.8 0.15 7.40 7.9 0.15 8.00 7.4 0.15 6.20 7.5 0.15 7.26 6.2 0.10 5.84

273.55 333.53 295.81 267.47 299.27 293.93

1575.54 1169.60 2267.20 2156.80 92 1.90 1618.21 678.21

1 .00 2.50 4.60 3.20 3.20 2.90

3.90 4.90 3.50 2.30 2.40 3.40 2.83

1741.64 1094.18 1373.78 1772.20 1140.41 1424.44

9994.00 7531.00 7484.00 8661.00 7206.90 8175.38 3225.99

0.00 0.00 0.00 0.00 0.00 0.00

0.00 0.00 0.00 0.00 0.00 0.00 0.00

considered. The number of each robot type and the assignment of work stations to selected robots are determined by our optimization algorithm. In specific, we consider three different average robot capacities-5, 10, and 20. For each capacity, the space and time requirements of work stations are genqated as follows. For example, when the average robot capacity-is 5, the space requirement of a work station is randomly generated from a uniform distribution over (0, 0.41. The machine time is a weighted sum of two randomly generated values from an exponential distribution with a mean equal to 0.2. The first random variable represents the service time and the second, robot arm travel time. As seen in Tables VI, VII, and VIII, five problem sets (10 problems in each set) are generated for each problem size, n. The five problem sets differ by the weight value pair used to calculate the total machine time required by each work station. The weight value pairs corresponding to problem sets I, 11, 111, IV and V are (0.9, 0. l), (0.8, 0.2), (0.7, 0.3), (0.6, 0.4), and (0.5, 0.5) respectively.

Overall, the computational results indicate the initial feasible solution generated by the FFOD heuristic takes no more than one fifth of a second. The quality of the initial feasible solution is reasonably good. In the worst case, the average solution gap is no worse than 7.54 percent away from the optimal (i.e., (Z+ - Z*)/Z*). However, the performance of column generation (CG), in terms of solution quality improvement, vanes with the average robot capacity. In general, the CG effectiveness (i.e., gap reduction) decreases as the average robot capacity decreases (see Table VI), whereas its efficiency (i.e., solution time) deteriorates as the ratio increases (see Table VIII). It is worth noting that CG performs very well for average robot capacities in-between the two extremes (see Table VII).

218 IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. IO, NO. 2 , APRIL 1994

P

PDCG Procedure FFOD Hcunstic

'ercent

anch and Bound

Stations 60 WO* Stations

Phase solution quality as a function of number of work stations Fig 3

TABLE VI11 COMPUTATIONAL RESULTS FOR ROBOT CAPACITY EQUAL TO TWENTY

FFOD heuristic CG procedure phase one phase two three

Problem size

CPU Gap CPU Gap CPU Gap (sec) ('r) (sec) (r0 (sec) (%)

n Pb. set 112

30 I 4.9 0.06 3.94 42.90 1.10 37.91 0.00 I1 4.4 0.06 3.02 67.36 1.50 78.64 0.00 I11 4.4 0.06 0.77 63.70 0.77 66.40 0.00 IV 4.3 0.06 5.71 48.17 0.70 61.22 0.00 V 4.6 0.06 8.52 45.48 0.70 63.01 0.00

AVE. 4.5 0.06 4.39 53.52 0.95 61.44 0.00

40 I 4.1 0.10 0.71 938.90 0.71 10230.10.00 I1 4.1 0.10 2.86 3411.50 2.86 12596.3 0.00 111 4.5 0.10 4.95 2124.70 4.25 13285.0 0.00 1V 4.9 0.10 7.58 2955.15 5.31 15468.1 0.00 V 4.9 0.10 4.58 225.63 4.40 8976.5 0.00

AVE. 4.5 0.10 4.14 1931.18 3.51 12111.2 0.00

50 I 4.6 0.14 4.46 9238.4 4.46 18000 4.46 I1 5.4 0.14 8.25 10537.1 5.98 18000 5.34 111 6.0 0.14 6.83 8796.6 4.92 18000 4.58 IV 5.8 0.14 5.98 13100.2 3.92 18000 3.92 V 5.6 0.14 8.15 12436.7 4.75 18000 4.75

Avg. 5.5 0.14 6.73 10821.8 4.81 18000 4.61 Overall 4.83 0.10 5.09 4268.83 3.09 10058 1.54 average

The solution times for finding a near-optimum or an opti- mum are also recorded. As noticed, the computing efficiency is very sensitive to the problem size. However, since macro planning for a CIM system is quite important to a designer, then the one time computing cost for optimization should not be a major concern. Thus, the algorithms developed in this paper provide significant and useful results.

VIII. SUMMARY AND CONCLUDING REMARKS

CIM facility design and equipment acquisition planning have become increasingly important in modem production over the past decade. In this paper, a mathematical model and solution algorithm is developed to support robot selection and work station assignment in a CIM system employing multiple robot types. Specifically, our model considers selection of a proper mix of multiple-type robots such that operational requirements for a given number of work stations are satisfied. Each robot is characterized by its unique fixed charge and subject to its machine time and space capacity constraints. Each work station has known time and space demands for each type of robot The model is formulated as a pure 0- 1 mathematical program, which is shown harder than the two-dimensional bin packing problem, a well-known NP-hard problem. A three-phase optimization algorithm is developed using a greedy heuristic, column generation, and branch and bound. The algorithm is implemented in FORTRAN and tested by solving 450 problems based on major design parameters. Computational results indicate that the algorithm is effective and efficient in solving problems of a practical size (i.e., assigning fifty work stations to a maximum of twenty robots of four different types). Overall, feasible solutions within 5% of the lower bound are often found before initiating a branch and bound search. The algorithm serves as a practical tool for planning CIM facilities with multiple types of robots.

It is worth noting that the algorithm developed in this paper has applicability to many other problems such as file placement for a storaee svstem using different types of storage devices

Figure 3 highlights the final solution gaps after FFOD heuristic, column generation, and branch and bound are per- formed for the case when the average robot capacity ratio is ten. As seen CG has reduced the gap by approximately one half as compared to that produced by FFOD heuristic. The overall solution gap is less than 3%, a 52% reduction from its initial gap. This significant improvement may justify CG procedure as an effective solution tool especially for cases when the average robot service capacity is less than or equal to ten (work stations). U , _ _

COOK AND HAN: OPTIMAL ROBOT SELECTION AND WORK STATION ASSIGNMENT FOR A CIM SYSTEM 219

[ 151, and job scheduling for a multi-processing computer system [ 5 ] .

Future research will involve both improvements in solution methods and extensions to the current model. In specific, two variants of an AI-based heuristic approach will be explored. The first variant is adaptive tabu thresholding. In contrast to slow descent procedures like simulated annealing, this method is devised to provide good solutions quickly. The second variant is just referred to as tabu search [13]. It incorporates short-term, intermediate-term and long-term memory as well as a tabu list to restrict certain classes of moves. In addition to exploring various algorithms, model extensions will be made so that the procedure becomes a two-stage methodology. The first stage handles robot selection and work station assignment based on the work contained within this paper. The second stage, which is currently under investigation, provides detailed facility layout.

ACKNOWLEDGMENT

The authors thank the Associate Editor, Technical Editor, and four anonymous referees for their careful and compre- hensive reviews, which led to substantial improvements in the paper presentation.

REFERENCES

A. V. Aho, J. E. Hopcroft, and J. D. Ullman, The Design and Analysis of Computer Algorithms. Reading, MA: Addison-Wesley, ch. 10, 1974. E. Appleton and D. J. Williams, Industrial Robot Applications, New York: John Wiley & Sons, Inc. , ch. 3, 1987. B. S. Baker, E. G. Coffman, and R. L. Rivest, “Orthogonal packings in two dimensions,” SIAM Journal of Computing. vol. 9, no. 4, pp. 846855, 1980. B. S. Baker and J. S. Schwarz, “Shelf algorithms for two-dimensional packing problems,’’ SIAM Journal of Computing, vol. 12, pp. 508-525, 1983. J. Blazewicz, M. Drabowski, and J. Welgarz, “Scheduling multiproces- sor tasks to minimize schedule length,” IEEE Transactions on Comput- ers, 35, pp. 389-393, 1986. S. P. Bradley, A. C. Hax, and T. L. Magnanti, Applied Mathematical Programming. Reading, MA: Addison-Wesley, Inc., ch. 12, 1977. D. J. Brown, B. S. Baker, and H. P. Katseff, “Lower bounds for on- line two-dimensional packing algorithms,” Acta Informatica, vol. 18, pp. 207-225, 1982. F. R. K. Chung, M. R. Garey, and D. S. Johnson, “On packing two- dimensional bins,” SIAM Journal on Algebraic and Discrere Methods, vol. 3, pp. 66-76, 1982. B. Chazelle, “The bottom-left bin-packing heuristic: An efficient im- plementation,” IEEE Transactions on Computers, vol. 32, no. 8, pp. 697-707, August 1983. E. G. Coffman, M. R. Garey, and D. S. Johnson, “Approximation algorithms for bin-packing-An updated survey,’’ in Algorithm Design for Computer System Design, G. Ausiello, M. Luccertini, P. Serafini, Eds. Vienna: Springer Verlag, pp. 49-106, 1984. K. A. Dowsland and W. B. Dowsland, “Packing problems,” European Journal of Operational Research, vol. 56, pp. 2-14, 1992. B. Gavish and H. Pirkul, “Efficient algorithms for solving multi- constraint zero-one knapsack problems to optimality,” Mathematical Programming, vol. 31, pp. 78-105, 1985. F. Glover, “Tabu search: A tutorial,” Working P a p e x e n t e r for Applied Artificial Intelligence, University of Colorado, Boulder, CO 803094419, 1990.

J. D. Goldhar and M. Jelinek, “Computer integrated flexible manufac- turing: Organizational, economic, and strategic implications,” Interfaces, vol. 15, no. 3, pp. 94-105, 1985. B. T. Han, “Optimal file management for a storage system using magnetic and optical disks,” Journal of Informatin and Decision Tech- nologies, to appear. D. S. Johnson, “Fast algorithms for bin packing,” Journal of Computers and System Sciences, vol. 8, pp. 272-314, 1914. S. S. Heragu, “Recent models and techniques for the facility layout problem,” European Journal of Operational Research, vol. 57, no. 2, pp. 136-144, 1992. C. Morgan, Robots: Planning and Implementation. England: IFS Pub- lications Ltd, 1984. W. T. Rhee and M. Talagrand, “Multidimensional optimal bin packing with items of random size,” Mathematics of Operations Research, vol. 16, pp. 49C503, 1991. H. M. Salkin, Integer Programming. Reading, MA: Addison-Wesley, 1975. S. C. Sarin and W. E. Wilhelm, “Prototype models for two-dimensional layout design of robot systems,” IIE Transactions, vol. 16, pp. 206-215, 1984. M. Shoham, A Textbook of Robotics (I): Basic Concepts. England: Anchor Brendon Ltd, 1986. K. E. Stecke, “Formulation and solution of nonlinear integer production planning problems for flexible manufacturing systems,” Management Science. vol. 29, no. 3, pp. 273-288, 1983. H. J. Wamecke and R. D. Schraft, Industrial Robots: Application Experience. Englan:, IFS Publications Ltd., 1982.

Jack S. Cook received the B.S. degree in Com- puter Science, and the M.B.A. and M.A. degree in Mathematics from the University of South Dakota. He received the M.S. degree in Computer Science and the Ph.D. in Business Administration from Washington State University. He is currently an Assistant Professor in the Jones School of Business at the State University of New York at Geneseo. Dr. Cook is a member of TIMS, POMS, MAA, and ASQC.

Dr. Cook’s areas of research include planning and design of automated manufacturing systems, combinatorial optimization using AI/OR techniques, and manufacturing strategy formulation. His cur- rent research work includes integrated manufacturing strategy formulation, equipment acquisition planning for automated manufacturing systems, and telecommunications network management.

Bernard T. Han received the B.S. degree from the National Chiao-Tung University in Taiwan, R.o.C., the M.B.A. degree from Arizona State University, and the Ph.D. degree in information systems from the University of Washington, Seattle, WA. He is currently an Assistant Professor in Information Systems at Washington State University, Pullman, WA. He is a member of the IEEE Computer Society and ORSA/TIMS. His papers appear in European Journal of Operational Research and Annals of Op- erations Research.

Dr. Han’s areas of research include database management using magnetic and optical disks, physical/logical database design, intelligent manufacturing systems, and combinatorial optimization using AI/OR techniques. His current research work includes optimal data placement for a DASD environment, telecommunications network management, and equipment acquisition plan- ning for a CIM system.