Division of Research School of Business Administration The University of Michigan March 1988 Revised, November 1988 Revised, February 1989 ALGORITHMS FOR EFFICIENT PLANNING AND OPERATION OF A PARTICOLAR EM Kathryn E. Stecke The University of Michigan Working Paper No. 566c International Journal of Flexible Manufacturing Systems, Vol. 1, No. 4, forthcoming.

ABSTRACT This paper is a detailed case study of a particular FMS that will be operational in 1989. It describes the daily planning and operating problems that will need to be addressed. The algorithms that will operate this system are presented. Given the daily changing production requirements, the algorithms begin with an aggregate planning feasibility check. Then, planning, scheduling, inventory management, and breakdowns are addressed. The key problems in operating this system are tool management problems. Detailed tooling data and its analysis are presented in an Appendix to address these problems.

1. INTRODUCTION A proposed COMAU-made FMS in Torino will consist of six identical 5-axis COMAU CNC machine tools, with three on both sides of a washing/inspection unit and refixturing spot. Each CNC has one input and one output buffer. See Figure 1 for the proposed layout. There will be two COMAU materials handling vehicles, one on each side of the central unit. The FMS will work three shifts and is expected to be in production sometime in 1989. The aims of this paper and its specific contributions include the following. First, it describes in all detail the actual FMS planning and operating problems of a particular FMS. The real need to use some OR modeling and analysis tools is shown. This paper provides several suggestions of how such a system might be operated. The complexity and levels of detail that need to be addressed in order to operate it effectively are provided. The detailed tooling data and its analysis that are presented here show how the loading problems can be simplified and sometimes solved manually. In the remainder of this section, the details of the FMS are provided. Next, the parameters and requirements from the system are outlined in ~2. Then some system particulars are noted that impose constraints on possible solutions to operate the FMS efficiently. In ~3, we identify and provide definitions of the various planning and operating problems that need to be addressed. In ~4, detailed algorithms are suggested that define how a given (and changing) daily mix of production requirements are to be manufactured efficiently. The algorithms are developed subject to the particular constraints of the Torino FMS that was designed to require a high system utilization in order to meet demand. Implementation of the algorithms is also discussed. Breakdown considerations are further discussed in ~5. Future system and algorithmic requirements are indicated in ~6. A summary is provided in ~7. The Appendix contains tooling data that is used for component clustering based on tooling requirements.

LAVATFUE STAZDE DMSU *.' 444.0 35000 Figure 1. Layout of the COMAU Torino FMS.

-3 - Each machine has two primary tool magazines of sixty slots each. Primary means that the machine has direct access to both magazines. Then each machine tool has a tool magazine capacity of 120 slots and each cell has a capacity of 360 slots. Components for six different aluminum gearboxes will be machined on the FMS. The requirements of each gearbox can vary by 5-10% daily. In order to meet these requirements, the FMS requires an 80% system utilization, on average. The FMS requirements for these six gearboxes consist of 2, 2, 2, 2, 3, and 4 components, respectively, to result in a total of 15 part types to be manufactured on the FMS. There is some overlap in component requirements, so there are 12 unique components. Data on the components of the six gearboxes is given in Table I. Table I. Gearbox Data. Operation Gearbox Part Type Fixture Cell (c) Number (Housing) Description Type/Setup (a) (b) A B 1[2]:. l l l 1 1-1 (1) Carter + Front 1/1 x _____ _______________Box (Cover)___ 2 1-2 (2) Half Box Rear 2/1 x (Case) ______ ___2[2]: _________ 3 2-1 (1) 1/1 x 4 2-2 (2) 2/1 x 3[2]:_____ 3 3-1 (1) 1/1 x _ 5 3-2 (2) 2/1 x

-4 - Table I. Gearbox Data (continued). 6 - 4-1 (1) 1/1 x 7 4-2 (2) 2/2 x _____ 5[3]: ______________________________ 3.5-1 (1) 1/1 x 8 5-2 Intermediate Box 2/3 x 9 5-3 Reduction 4/2 x Half Box Rear 6[4]: 10 6-1 Intermediate 2/3 x........B.........Box 11 6-2 Friction Housing 3/1 x 12 6-3 Half Box Clutch 4/1 x l l.._____..... Front |__ __ 9 6-4 Reduction Half 4/2 x _Box Rear_____ (a) (b) (c) Our numbering of the twelve unique components. The number of components required for each gearbox is in brackets. This is an initial allocation of components to cells that balances workload based on average daily requirements. To hold these 15 part types, four fixture types are required. Each fixture can hold only one part at a time. A closed queueing network (CQN) analysis (Menga et al. [1984]) determined that there should be 10, 13, 2, and 4 fixtures, respectively, of each fixture type. The CQN model is based on mean value analysis (see Reiser and Lavenberg [1980], Cavaille and Dubois [1982], and Suri and Hildebrant [1984], for example).

-5 - Fixture types 2 and 4 require some time to "setup" the fixture if it is to hold a new part type. There is one fixture setup station in the central unit, so that only one fixture can be set up at a time. Fixture setup takes about ten minutes and is done manually. Additional fixturing information is the following: - fixture type 1 can hold all five Carter and Front Box components with no fixture setups; - fixture type 2 can hold six components: four Half Box Rear components (three on one setting, one on another) and two Intermediate Box components that require a third fixture setup; - fixture type 3 holds one component, the Friction Housing; - fixture type 4 holds three components: one Half Box Clutch Front component on a first setting and two Reduction Half Box Rear components on the second setting. The processing of each of the 15 components occurs on one mount only. They are in effect single operation parts. No refixturing is required. However, for some components, a fixture has to be set up. The processing of each component consists of loading, machining, washing, measuring, and unloading. 2. SYSTEM REQUIREMENTS AND CONSTRAINTS The six gearboxes/15 components are required in varying production volumes daily for input to a gearbox assembly line (and subsequently, to a truck assembly line). The daily gearbox assembly schedule is firm for one week in advance, for the week. The gearbox assembly line will work two shifts. The FMS will work three shifts for five days per week. Components machined in a job shop as well as bought components will also feed the gearbox assembly line. The FMS can work on weekends, if there are production problems. Some additional constraints of this FMS are as follows: 1. For various reasons, the FMS can be effectively decomposed into two FMSs, called Cells A and B, each consisting of the three CNC machine

-6 - tools on either side of the central station. Some reasons for this include: tooling considerations; the fact that each component consists of only a single operation; workload considerations; transport issues; and fixture and setup considerations. Then components will need to be allocated among the cells and then to one or more machine tools within the selected cell. 2. Each of the two carts will be dedicated to one of the triplets of machine tools on either side of the central washing/inspection/fixture set-up operations. One reason for this is the speed of the carts. Another reason is to avoid cart congestion and traffic control. Because each component requires only a single machining operation using many cutters, movement between the two cells is unnecessary. The two carts on a rail can handle the traffic requirements. The remaining cart control functions will be detailed subsequently elsewhere. 3. A constraint is that only a few part types can be machined at either cell at any moment of time. This is because of floor space considerations. Raw castings will arrive in containers in small batches of size b. There is not enough space for many of these containers in front of the machine tools. On the other hand, a variety of part types will be produced simultaneously. Enough different part types have to be produced in order to achieve an adequate system and fixture utilization. 4. Although the FMS is flexible enough to machine in batches of size one, larger batches may have to be produced, for various reasons. First, the assembly line may produce in small batches of only one gearbox type at a time. Also, the raw castings storage containers hold a particular number of parts and will be returned to the warehouse empty

-7 - after delivering the raw materials. These storage containers need to be filled for both economic and space considerations. Finally, output storage containers will have a certain capacity and will also have to be filled. Then the FMS may produce some components in batches of some unknown size b. This batching constraint is not certain at the moment and might be relaxed after the final layout and parameters of the assembly line and FMS have been decided. 5. Because the FMS will fill requirements for components of gearboxes, perhaps in batches of size b, the six types may not all be produced every day. If they were, the machine tools may have to work at a very high utilization or there may not be enough system capacity on some days. The high utilization requirement is only cutting time and does not allow any idle time considerations for travel, load/unload, fixture setup, and most importantly, breakdowns of any type (such as machine, spindle, or cutter). 6. Several part types share fixtures, which sometimes require a setup between different components. Therefore, fixtures need to be allocated to part types over time and fixture usage and changeover scheduled. Some fixtures are a scarce resource in the system and care needs to be taken in controlling the part type mix in the system so as to use several particular fixture types simultaneously. 7. A main requirement is to deal with both daily mix changes and random breakdowns of varying duration. 8. A goal is to produce these gearbox batches JIT, if feasible. 9. The FMS will not carry any inventory for safety stock purposes. However, some inventory of some components or gearbox types has to be carried by the assembly line to smooth the customer orders with the

-8 - potentially required batch sizes and to help meet requirements in breakdown situations. Also, because of daily mix changes, FMS capacity (in terms of machine time in a day) may sometimes not be enough. An inventory management policy needs to be specified to meet requirements on days when the FMS has insufficient machining capacity. 3. THE PLANNING AND OPERATING PROBLEMS An initial solution to one of the planning problems, allocating components to cells, was determined by an outside consulting firm. The solution was based on an initial estimation of an average part mix derived from projected annual volumes. Tool magazine capacities, average component batch processing times, fixture sharing, changing, and scheduling were considered. The solution consisted of allocating each component to one of the two cells so as to balance the two average cell workloads as much as possible. This initial fixed allocation is provided in Table I. Of course such a fixed allocation cannot work in practice. First, because of the daily mix changes and the resultant variability in component total processing times, the total workload on each cell would change every day with such a fixed allocation. Bottleneck cells and machines will change. Indeed, on some days the fixed allocation would not be feasible. Second, machine breakdowns could not easily be handled and would cause severe production problems. Third, the solution ignored the potential b batch size constraint. What is needed is a more flexible approach to allocate the changing workloads of the daily changing mix of components. A flexible approach is needed in order to handle uncertainties such as unexpected breakdowns, yield problems, daily mix changes, tool changes, fixture setups, and the like. The problems that need to be solved every day, after receipt of the day's production

-9 - requirements, are largely production planning problems. These daily problems are identified as follows: 1. Part Type Selection: Based on both the daily requirements of the assembly line and the current inventory of components and gearboxes, the types of components and gearboxes that will be produced has to be selected. This will sometimes be some 4 or 5 of the six gearbox types. On some days, all six part types will be selected. 2. Batch Size Determination: The number of required parts of each of the selected gearbox types has to be determined. This number may or may not be a multiple of b, depending on the actual output container size, the on-hand inventory, capacity, and yield issues. 3. FMS Grouping: The machines within each cell can be partitioned into identically-tooled machine groups. Machines within a particular machine group are said to be pooled and can perform the same operations during real time. Alternatively, if two machines are not identically tooled, but can perform some of the same operations, these machines are said to be partially pooled. 4. FMS Loading: Every component of the selected gearbox types has to be allocated to both one of the cells and to one or more machine tools in a cell. Since the due date for all part types is that day, the objective that we use to help achieve that daily due date is to maximize machine utilization. This problem is approached here in two ways: by allocating components so as to balance machine workloads; and by allocating components subject to the machine capacities, both time and tool magazine. The loading problems can be decomposed as follows: 4a. Cell Loading: Allocate the required components and associated cutting tools to one of the two cells so as to either balance cell

-10 - workloads or to just remain feasible, subject to time and tool magazine capacity constraints; 4b. Machine Loading: Within each cell, allocate each of the required components to one or more of the three machine tools so as to either balance machine workloads or to just remain feasible, subject to time and tool magazine capacity constraints. These two loading problems can be solved sequentially, iteratively, and/or simultaneously. Important factors to consider include the similarities among some components, cutting tool duplication, and fixture requirements, capacities, and setup. Machines may be pooled and components' cutter assignments may be duplicated. 5. Fixture Allocation and Usage: The limited numbers of fixtures of the different fixture types need to be allocated among the part types for a period of time. Fixture setups need to be phased and sequenced, near the completion of some component's daily requirements. 6. FMS Scheduling: The batches of the selected part types have to be scheduled for input into the system throughout each day. 7. Inventory Policies: In addition to the daily requirements, some inventory should be kept, to cover uncertainties such as unexpected breakdowns and daily mix changes. Safety stock will not be carried, but spare time at the end of a day should be used to begin the next day' s requirements. 4. ALGORITHMS TO SOLVE THE FMS PLANNING AND OPERATING PROBLEMS When solving these seven problems, there are some important considerations. In general, those components that require a particular fixture/setup combination are of the same family and tend to use many of the same tools. They should be allocated to one or more machine tools of the same cell. This

-11 - would save tool magazine slots and would tend to maximize the amount of cutting tool duplication. The suggested approaches to solve these planning problems are now provided. 4.1 Part Type Selection (PTS) and Batch Size Determination (BSD) The FMS may not always have a large enough capacity every day to produce all part types. Therefore, some subset of the gearbox types may need to be selected to be produced each day. An inventory of gearboxes and components for the assembly lines should be carried in order to meet their daily requirements and to cover breakdowns and other uncertainties. The gearbox types should be selected to tend to decrease both the number of tool changes and the number of fixture setups. The daily production requirements for gearbox i consists of the planned gearbox production for the next day, which may also account for the potential backlog if any machines have been down for.a period of time. Also, if there is time remaining, there should be some production during the remainder of day n-1 of the assembly requirements for day n+1. The requirements for the gearboxes provide the requirements for the components. Finally, the requirements may have to be rounded up as an integer multiple of the potential required batch size. Notation for the following series of Algorithms is defined in Table II. Some additional notation will be required later. Table II. Notation. INPUT: r. = daily production requirements for component j, j =... J i. = current on-hand inventory of component j pj = processing time for one unit of component j m = number of working machines: m {1,...,6}

-12 - Table II. Notation (continued). AW = available workload (capacity) from the FMS = 1440 m = 3 shifts*60 min/hour.m e = efficiency factor,.9 here, to allow for typical idle time, such as transportation, tool changing,... t = capacity of each machine's two tool magazines = 60 + 60 = 120 tA(B) = capacity of each cell's six tool magazines = 3 (120) = 360 SA(B) = number of slots required for components allocated to cell A(B) Sk = number of slots required for components allocated to machine k, k = 1,...,6 F= number of slots required for those components that require fixture 1 s, = number of slots required for those components that require 2/1 fixture/set-ups 2/1 and 2/2 s. = number of slots required for component j, j = 8,...,12 WA(B) = workload allocated to cell A(B) W1 = daily workload requirements for fixture 1 W2/1 = daily workload requirements for fixture/set-ups 2/1 and 2/2 d. = number of slots required by component j, j =...12 PARAMETERS: Bk = index set of sets of operations (components) B = index subset of Bk such that |BI (the cardinality of B) = p, -p = 2,...,5 WBk = number of slots saved when the operations in Bk are assigned to the same machine OUTPUT: b. = batch size for component j tpj = total processing time for a batch of component j RW = required daily workload, the sum of the processing times for all requirements of all components S = {jlj are components produced today}

-13 -Table II. Notation (continued). XAI(B1) = underload (load under balanced) on cell A(B) XA2(B2) = overload (load over balanced) on cell A(B) 1, if component j is allocated to Cell A; X. = j 0, if component j is allocated to Cell B. The Algorithm to select part types and determine the day's batch sizes is as follows: Algorithm for PTS/BSD STEP 1: Calculate r. - i, j = 1,...12 Those components j such that rj - ij < 0 are not selected to be produced. Those j such that r1 - ij > 0 are selected to be produced, and are initially members of the set S. The batch size for component j, jeS is: max {0, bj = r. - i.}. STEP 2: Calculate tpj = b. * pj, for all jeS. RW = j tp. jeS J AW = e 1440 m. If RW > AW, go to STEP 3. If RW < AW, STOP. Components {jljeS} are produced. The rest are not. STEP 3: All required components cannot be produced due to insufficient machine capacity. Calculate RW. = RW - tpj, for every jeS.

-14 - RW = max {RWj | RW < AW}, if this maximum exists. Otherwise, RW = max {RW } j J Component j is not produced. Remove j from S. STEP 4: If RW > AW, select the next component to not be produced. An attempt should be made to select one required for some gearbox for which another component could not be produced. Go to STEP 3. If RW < AW, STOP. The components j, jeS, are produced. Usually, there should be capacity to produce the requirements. When there is not, some components may be produced in a job shop or on the FIS over a weekend. If the final assembly schedule can accommodate changes, the component orders can be backlogged. The spare time at the end of each day should be used to begin the following day's or two requirements, to buffer against uncertainties. This is detailed in ~4.5. Planning for the potential production for inventory should be done midway through the day, for purposes of ordering the raw materials. Scheduling the production of the inventory should not begin until it is clear that the daily requirements will be met. 4.2 FMS Loading Each gearbox consists of 2, 3, or 4 components which need to be allocated first to one of the two cells and then to one or more machines within the appropriate cell subject to tool magazine capacity and workload balancing considerations. The main constraints of this system are due to tool magazine capacity. Therefore, the main problem is a loading problem. (See, for example, Berrada and Stecke [1986], Carrie and Perera [1986], and Stecke [1983, 1985].) The following suggested solution approaches resulted in part from the processing and analysis of the tooling data, which are provided in the Appendix. However, the data is not complete at present. Therefore, the following solution approaches had to be more general than those that the data in the Appendix

-15 - suggest. At the same time, the algorithms had to consider what was known about the tooling needs, such as the high overlap in tooling requirements for similar components. 4.2.1 FMS Cell Loading There are three suggested Algorithms to allocate components and tools to cells (and machines). Each could be used under different circumstances. The first of these Algorithms is the following: Algorithm I for FMS Cell Loading STEP 1: Calculate Z tp = W1 for those components that require fixture 1 j (e{1,3,6}) and allocate this workload to Cell A. The number of tool slots required for these operations, SF1, will range from 48-64 slots, depending on which gearbox types have been selected. (This allocation is because there is such a high overlap in cutters for these three components. Any one alone takes 48 slots, yet all together take only 64 slots.) The result is that < 5 of the 15 components or < 3 of the 12 unique components are arbitrarily allocated to Cell A. STEP 2: Calculate Z tpj = W2/ for those components that require the first or second setup of fixture 2, 2/1 and 2/2, (e{2,4,5,7,}) and allocate this workload to Cell B. The number of tool slots required for these operations, sF2/1, will range from 55-65 slots, depending on which gearbox types have been selected. The result is that < 3 of the 15 (and 12 unique) components are arbitrarily allocated to Cell B. This leaves some subset of components 8, 9, 10, 11, and 12 to allocate to one of the cells. The allocation of these will differ from day to day and will be a function of: the number of up machines, the gearbox types selected, and the production requirements which will determine the workload requirements of each component.

-16 - STEP 3: Calculate tp., for those j = 8,...,12 that have been selected to be produced. STEP 4: To allocate these remaining five operations to one of the cells, the nonlinear integer formulation (P1) optimally allocates components so as to balance workloads. Notation is in Table II. (P1) Minimize XA1 + XB1 + XA2 + XB2 subject to 12 12 W1 + tp.X -Al+ XA W2/1 + j tpj(1 - Xj) - X + X j=8 J j Al A2 /1 j=8 B B2 12 5 p+l E d.X. + s + (-I) Z WW I (X) < t j=8 J J F1 p=2 B - A VBCBk jCB U {1,3,6} 31B| I=p 12 5 p+l Z d.(l - X)+ s + (-1) + W- n (1-X.) < t j=8 J 3 y2.n p=2, B - j -B VBCBk jCB U {2,4,5,7} 3jBJ=p X. = 0 or 1. J Problem (P1) is a variation of the nonlinear integer formulation of the FMS loading problem of Stecke [1983]. There may be enough space in the tool magazines of each cell (60 x 2 x 3 = 360 slots) so that the two nonlinear tool magazine capacity constraints of Problem (P1) may not be required. (This is currently the case, as can be seen from the data in the Appendix.) If so, then the problem is a (0-1) mixed integer program and can be solved quickly using any linear programming package, such as LINDO. (See Schrage [1981].)

-17 - Other linear formulations are possible. One (see Hwang [1986]) is large and requires many constraints and variables. It needs a new variable to account for each cutting tool. Alternatively, we suggest a heuristic based on LPT (longest processing time) rules to allocate operations to cells. This is similar to a first fit decreasing rule, which performs well in some bin packing problems. See, for example, Johnson [1973] and Stecke and Talbot [1985]. Heuristic II for FMS Cell Loading (LPT) 12 STEP 1: Calculate TP = (W1 + W2/ + Z tp)/2 = target workload for each 1 2/1 j=8 J cell to balance = RW/2. Order the tpj according to LPT. For Cell A, initialize WA = W1, sA = SF1' CA = { {1,3,6}} and similarly for Cell B, as in Table III. STEP 2: Allocate each operation to a cell, in the LPT order, alternating each allocation. If tool magazine capacity is violated, reallocate components by swapping two adjacent in a pairwise interchange. Continue until tool magazine capacity is satisfied and all components have been allocated. Table III. Cell Allocation. CELL A CELL B W SA CA WB SB CB A C A B Wkld Slots Components Wkld Slots Components Allocated Allocated W1 sFl {13,62/1 2/1 {2,4,5,7} l__________________________________________ _SF2/1 l To be allocated: components 8,...,12; tpj; s. A'J

-18 - Balancing the workload on each cell is not always necessary. Sometimes it will be better to just find a feasible solution. A feasible allocation of components to cells can be better than balancing for the following reasons: it is more flexible and allows more potential allocation options; more pooling or partial pooling can be done. Balancing may be better because it may make it easier to handle a machine breakdown. Also, if the workloads on each cell are balanced, there may then be spare time at the end of the day to begin production of the next day's requirements for which the system is currently tooled. However, this benefit may not materialize. Balancing requires that less pooling or partial pooling is possible and the tool magazine capacity constraints of each machine or cell will be tighter. Hence, some of this spare time may be taken by changing tools (and perhaps fixture setup also). Another loading objective is to minimize the amount of tool changing from one day to the next. The formulation (Pl) can be adapted to find a feasible rather than balanced solution, as follows. First, the first constraint that balances workload can be replaced by the following two constraints: (P2) 12 WI + Z? tp X- X + X e (1440) m ij=8 J XA1 A2 < 12 W2/1 j8 +tpj( -Xj) 1 + 2 e (1440) mB. In these constraints, mA(mB) is the number of working machines in cell A(B). (P2) will still tend to balance workloads, since the objective function minimizes the overload and underload on each cell.

-19 - An objective function that does not aim to balance cell workloads and only finds a feasible solution can be developed by deleting the underload variables, XAl and XB1, in the objective function and constraints as follows: (P3) Minimize XA2 + XB2 Each formulation (P1, P2, or P3) is appropriate at different times. The advantages to each approach have been provided. 4.2.2 FMS Machine Loading Within each cell, the components need to be allocated to one or, more machine tools. A formulation similar to (P1), (P2), or (P3) is appropriate. The tool magazine capacities need to be reduced, from that for cells (360) to that for machines (120). Similar and analogous new variables need to be defined. The objective function is to maximize the number of component allocations to machines (up to three allocations per component). The constraints include tool magazine capacity and the maximum machine cutting time of 1440.e minutes/ day/machine. Also, each of the selected components has to be allocated to at least one machine and preferably to two or three machines. In addition to a suitable adaptation of Algorithm I and Heuristic II, the following Algorithm III is also useful for both cell and machine loading. It combines the previous algorithms since it uses both (P1) and LPT. Algorithm III for FMS Machine Loading STEP 1: Solve a variation of the (0-1) linear program (PI) by ignoring the tool magazine capacity constraints. The best possible balance is obtained. Order the components allocated to each machine (or cell) according to LPT.

-20 - STEP 2: Is tool magazine capacity satisfied? If yes, go to STEP 4. If no, go to STEP 3. STEP 3: Tool magazine capacity is not satisfied. Interchange the component allocations of two adjacent components in the LPT sequence in reverse order. Update the parameters. Go to STEP 2. STEP 4: Will tool magazine capacities allow pooling or partial pooling? If yes, pool and duplicate operation assignments as much as possible. Then STOP. If no, go to STEP 5. STEP 5: Examine pairwise interchanges of component allocations so as to maintain approximate cell workload balance (perfect balance is not necessary) and time constraints and to obtain a better tool magazine allocation with more pooling or partial pooling. Go to STEP 4. Three algorithms and their variations have been proposed for cell and machine loading. In general, the appropriateness of each depends on: the size of the problems solved, the amount of tool overlap, and the size and spare capacity of the computer used to solve these problems. The approach for the COMAU Torino FMS is discussed in the Appendix, after the detailed tooling data has been presented and analyzed. Another consideration when allocating components to machines and when pooling machines is tool search time. It takes time to "search" for the next required cutter in a tool magazine. Searching does not mean looking for the tool. It is known where each tool is. Search time is the amount of time it takes for the magazine to rotate into position for the next required tool

-21 - interchange. For FMSs that machine aluminum parts, the processing time per cutter may be very short for some cutters, i.e., one to three minutes. It can take longer for the magazine to rotate the next required cutter into position than for the current cutter to make its cut. Then the way cutters are placed in the magazines can be important. The more tools there are in a tool magazine, the longer the search time. For this reason, it may not always be desirable to fill each tool magazine. Those cutters that are used a lot or wear relatively quickly may require duplicates (sisters) in the corresponding tool magazines. Duplicating the same tool can help to reduce the number of times that tools are changed, but would also reduce the available tool magazine capacity. This is further addressed in the Appendix. 4.3 Fixture Allocation and Usage Fixture types 2 and 4 require three and two setups, periodically, to hold different components. Fixture setup takes ten minutes per fixture and only one fixture can be changed at a time. At present, fixture setup does not appear to be a problem. As the daily requirements for one component type are near completion, visits to the fixture setup station can be phased, as it is free. A new component type that uses the same fixture type can be introduced slowly into the system. Production of these two component types will overlap for a short period of time. The tool magazines will already be loaded with the correct cutters for both part types. Fixture setup should not warrant a tool setup. Occasionally, a few tools will need to be changed both because of breakage and wearing and because the initial allocation may not have had room for all of the tools that were required for the day. Fixture setup has to be phased so that as little machine idle time occurs as possible, and preferably none.

-22 - 4.4 FMS Scheduling The FMS has been designed so that part input scheduling should be quite simple. As a part (component) is unloaded, any part of any part type that can use the particular fixture/setup can be input until a component's day's requirements are (nearly) completed. (The "nearly" refers to those fixtures that require phased setups for new component types to be input into the system). Since there is usually no tool setup between components (usually all tools have been loaded already), it does not matter which components are input next. Cutter breakage and wear may affect this slightly. Components will be machined in small batches dictated by the size of the raw material containers. As one container is filled, either the same or a different component container (for components that use the same fixture) can be brought out to the shop floor area around the FMS. Not all of the component types can be on the shop floor for machining at the same time because of limited floor space and the sizes of the component containers. On the other hand, several component types do have to be available simultaneously so that both machines and fixtures of different fixture types are adequately utilized. Containers of raw materials are brought to replace the finished components until the day's requirements, as dictated by the PTS/BSD Algorithm, have been completed. Then, inventory to buffer the requirements of the following day or two can be produced. 4.5 Inventory Policy Under normal conditions (no breakdowns, work stoppages, or unforeseen idle time occurrences), there should be some spare time at the end of each day to build up some inventory to buffer the following day's requirements. For each

-23 - cell, only those components for which the cell is tooled can be machined, unless some tools are changed. Usually the gearbox assembly schedule is firm for a week in advance. However, if the next day's orders are unknown, a component should be selected so that its inventory can be built up to the required batch size. The main reason that some inventory should be carried is because there may not be enough capacity to meet production requirements. This could happen both in the case of a long enough breakdown as well as because of the daily mix changes. The required workload (RW) versus available capacity (AW) situation over time is graphically described in Figure 2. The required workload is rather stable with a 5-10% variation in the requirements of each gearbox type each day. The available workload is a step function of the number of up machines each day and the duration of the breakdowns. 4. — — 2* + - RW Workload t 1440 m - + - -- -- -,- - -AW I + _ __ __ 4 _I L _!_ Time Figure 2. Required Workload (RW) Versus Available Capacity (AW). We suggest several rules to guide this inventory buildup. For the spare time in each cell at the end of a day, the components of a gearbox that is required the next day should be machined. Each component should initially be selected such that its next day's requirements can be met, with a high probability.

-24 - At the end of the day's production, there is some spare time, SWA and SWB, A B the slack workload on cells A and B, respectively, in which to produce some inventory. Each cell is currently tooled to produce certain components. Let rli be the requirements for gearbox i for the next day and r2i for the day after. The components to produce for inventory are selected one at a time and initially, gearbox by gearbox. Select each gearbox i such that all of the next day's requirements, rli, can likely be produced. If there is a choice, select a gearbox so that there are no requirements for it the day after (r2i = 0). If there is no such gearbox, the gearbox i should be selected so that the total processing time requirements for all of its components are less than the slack time available on the cells and also use up the largest amount of the slack workload. In particular, the selected gearbox i has the max rli * PiA(B) rli * PiA(B) SWA(B)} i Continue to select gearboxes such that rli can be produced. If time remains on only one of cell A or B, then try to fill the requirements for some component. The remaining time at the end of the day can be used to begin to fill some other component's requirements. If all of the requirements for the next day are complete and there is still some remaining time, continue selecting gearboxes and components to produce the requirements for the day after, r2 i If the inventory includes all of the following two days requirements, the system should not produce further. More than the next two days of inventory should not be produced unless the FMS has a breakdown of unknown duration. In this case, it is likely that the inventory will decrease, rather than increase. This FMS will not carry any safety stock to cover yield problems, unknown demand, or sudden new requirements. The only inventory will be of the actual

-25 - requirements of the following day or two, in case of a random breakdown. Production is almost JIT, but a more accurate term is JIC, Just In Case (of breakdown). 4.6 Implementation The planning and scheduling of the daily production should be performed every day midway through the third shift. If this planning day is called day (n-l), it should be decided during the third shift of day (n-1) what the requirements are for the FMS to produce for day n that are needed for the gearbox assembly line on day (n+1). Midway to end of third shift should allow time to place an order for tomorrow's raw materials and to acquire and change any cutters that are needed. Midway through the second shift is when preliminary planning should be done for the day's inventory production. A little time will be necessary to place the internal order for the raw materials needed for the inventory production and also to order any cutters that might be required. At times, one or more machine tools will be down for a long enough period of time so that the FMS will not have enough capacity to meet the production requirements. Some of the production options include working the FMS for one or more shifts during the weekend or producing some components in a job shop. If the subsequent gearbox and truck assembly schedules can be changed, backlogs can be ordered. For short breakdowns, it may be possible to continue production by just shifting some workload (and further, maybe some tools) from one cell to another or from one machine to another. This is discussed in ~5. The data needed to perform such shifting is largely in Table A9 of the Appendix. A complete description of how to use this information is provided there.

-26 - 5. BREAKDOWN CONSIDERATIONS In planning and scheduling the FMS, breakdowns need to be considered. On average, about an 80% system (all machines) utilization will be required from the FMS in order to meet the average daily production requirements. If all six gearbox types were to be produced every day, there would likely be problems if a machine or two broke down. First, it might be impossible to produce the requirements for all six gearbox types. Second, tool magazine re-allocations and loadings might have to occur in order to continue to meet production as much as possible. By producing fewer (say four or five) gearbox types each day, more pooling and partial pooling would be possible. Then if a machine were to go down, it may still be possible to continue production of these four or five gearboxes, although at a lower production rate. The reality of randomly occuring breakdowns was one of the reasons for defining precise inventory buildup and control policies in ~4.5. If much pooling has been done, then FMS production would continue. However, there may not be enough capacity on one of the cells. Workload can often be shifted from one cell to another. This may or may not require a shifting of tools. Information on tool slots required, tool overlap, and tool occupation by all combinations of components is contained in some of the Tables of the Appendix. These can easily be used to make reallocation decisions as needed in real time to adapt to breakdowns. 6. FUTURE DEVELOPMENTS The FMS will work three shifts per day to meet the daily requirements for the components for the gearbox assembly line, which works two shifts per day. A future goal is to plan and schedule JIT, on a shift by shift basis, rather

-27 - than daily. Requirements will be given to the FMS for the next shift instead of for the next day. This will result in a savings in inventory. However, we do not recommend that the FMS commence operation in this JIT fashion. Instead, it is suggested that the procedures provided in ~4 be used to plan and schedule production, JIC. It takes months to bring an FMS up to full production and there are many implementation problems, largely unforeseeable. The simpler methods, that carry more inventory to cover uncertainty, are recommended during plant startup. In addition, new part types are likely to be introduced to be machined by the FMS in the future. New part types will constrain tool magazine capacity more than at present. This is another reason for the more general than necessary at present loading procedures of ~4. 7. SUMMARY AND CONCLUSIONS This paper completely describes a detailed case study of a COMAU-built Torino FMS, expected to be operational sometime in 1989. The daily problems that need to be addressed to handle random breakdowns and daily mix changes are outlined. The main problem is a loading problem and the complete tooling data and its analysis are also provided in the Appendix. The solutions that are provided here suggest a more flexible approach to operate the FMS successfully than the fixed solution of Table I that the vendor and user initially considered. Both daily workload changes and breakdowns would have rendered such a fixed allocation of operations to machines infeasible at times. ACKNOWLEDGEMENTS I would like to thank Giovanni Maria Secco-Suardo of COMAU for helpful discussions during the development of the algorithms. Marzia Brunetto is

-28 -gratefully thanked for her help developing the programs for component clustering and tool overlap that provides some of the results in the Appendix. COMAU is acknowledged for their support during this work. Finally, Rajan Suri, Avi Seidmann, and anonymous referees are thanked for their careful reading and thoughtful suggestions to improve an earlier version of this manuscript.

-29 - BIBLIOGRAPHY BERRADA, MOHAMMED and STECKE, KATHRYN E., "A Branch and Bound Approach for Machine Load Balancing in Flexible Manufacturing Systems", Management Science, Vol. 32, No. 10, pp. 1316-1335 (October 1986). CARRIE, ALAN S. and PERERA, D. T. S., "Work Scheduling in FMS Under Tool Availability Constraints", International Journal of Production Research, Vol. 24, No. 6, pp. 1299-1308 (1986). CAVAILLE, JEAN-BERNARD and DUBOIS, DIDIER, "Heuristic Methods Based on MeanValue Analysis for Flexible Manufacturing Systems Performance Evaluation", Proceedings of the 21st IEEE Conference on Decision and Control, Orlando FL, pp. 1061-1065 (December 1982). HWANG, SYMING, "Part Selection Problems in Flexible Manufacturing Systems Planning Stage", Proceedings of the Second ORSA/TIMS Conference on Flexbile Manufacturing Systems: Operations Research Models and Applications, Ann Arbor MI, K. E. Stecke and R. Suri (Editors), Elsevier Science Publishers B.V., Amsterdam, pp. 297-309 (August 12-15, 1986). JOHNSON, D. S., "Near Optimal Bin Packing Algorithms", Ph.D. dissertation, M.I.T., Mathematics Department, Cambridge MA (1973). MENGA, GIUSEPPE, BRUNO, G., CONTERNO, RENATO, and ACTIS DATO, M., "Modeling FMS by Closed Queueing Network Analysis Methods", IEEE Transactions on Components, Hybrids, and Manufacturing, CHM-7, No. 3, pp. 3-12 (September 1984). REISER, M. and LAVENBERG, S. S., "Mean-Value Analysis of Closed Multichain Queueing Networks", Journal of the Association for Computing Machinery, Vol. 27, No. 2, pp. 313-322 (April 1980). SCHRAGE, LINUS E., Linear Programming Models with LINDO, The Scientific Press, Palo Alto CA (1981). STECKE, KATHRYN E., "Formulation and Solution of Nonlinear Integer Production Planning Problems for Flexible Manufacturing Systems", Management Science, Vol. 29, No. 3, pp. 273-288 (March 1983). STECKE, KATHRYN E., "A Hierarchical Approach to Solving Machine Grouping and Loading Problems of Flexible Manufacturing Systems", European Journal of Operational Research, Vol. 24, No. 3, pp. 369-378 (March 1985). STECKE, KATHRYN E. and TALBOT, BRIAN F., "Heuristics for Loading Flexible Manufacturing Systems", Flexible Manufacturing: Recent Developments in FMS, Robotics, CAD/CAM, CIM, A. Raouf and S. I. Ahmad (Editors), Elsevier Science Publishers B.V., Amsterdam, pp. 73-84 (1985). SURI, RAJAN and HILDEBRANDT, RICHARD R., "Modelling Flexible Manufacturing Systems Using Mean Value Analysis", Journal of Manufacturing Systems, Vol. 3, No. 1, pp. 27-38 (January 1984).

-30 - APPENDIX PRODUCTION AND TOOLING DATA FOR PURPOSES OF POOLING MACHINES, ALLOCATING COMPONENTS, AND LOADING CUTTERS. This Appendix contains some detailed supplementary information and data to support the Algorithms provided in ~4. In particular, the development and analysis of the detailed tooling data is presented here. Considering the data simplifies the loading problems. Sometimes the loading problems can be solved manually. There are six families of similar components for the six gearbox types. There are twelve unique components. Often, the components are distinguished by the particular fixture and setup required. Information about these families is provided in Table Al. Table Al. Families of parts. Initial Component Component Cell Fixture Gearbox Types Description Allocation Type Setup Numbers 1 Housing & Front A 1 1 1,2,3,4,5 Box (Cover) 2 Half Box Rear B 2 1 1,2,3 (Case) B 2 2 4 3 Intermediate Box A 2 3 5,6 4 Friction Housing B 3 1 6 5 Half Box Clutch Front B 4 1 6 6 Reduction Half ___._. Box Rear B 4 2 5,6

-31 - The remaining Tables provide tooling information, some of which is needed to use the Algorithms of ~4. In particular, Table A2 provides the basic tool data for each of the twelve unique components. Each tool is coded and a star appears in the matrix whenever a certain tool is required to machine a particular component. Some of the tools take one slot in a magazine. The cutters whose labels begin with T take three slots. Table A2. TOOL 1 2 ADDO1 ADD02 AMD01 * AMD02 BAF01 BAF02 BAF03 BAF04 BAF05 * BAS01 * BAS0 2 BAS03 BAS0 4 BAS05 BAS06 BAS 7 BAS08 BAS 9 BAS10 * BASI 1 BAS12 BMA01 BMA0 2 BMA0 3 BMA04 BMA 5 BMA06 * BMA0 7 BMA08 BMAO 9 BMA10 * BMA1 1 BMA12 BMA 3 Basic component/tool data. COMPONENT 3 4 5 6 7 8 9 10 1 1 12 * * * *k *k *l *ll *l *k * * * * * * * * * * * * * * * * * * * * * * * * * * * *f *l * * * * * * * * * ** *

-32 - Table A2. TOOL Basic component/tool data (continued). 1 2 3 4 5 6 7 8 9 10 11 12 BMA1 4 FC001 FC002 FC003 FFI01 FFI02 FFI03 FFI04 FFI05 FSG01 FSG02 FSG03 LISOI LIS02 LIS03 LIS04 LIS05 LIS06 LIS07 LIS08 LIS09 MASO 1 MASO 2 MAS03 MAS 4 MAS 5 MAS06 MASO 7 MAS08 MAS09 MAS10 MAS1 PDD01 PDD02 PDD03 PDD04 PDD05 PDD06 PDD07 PDD08 PDD09 PDD10 PDD11 PDD12 PDD13 PDD14 PDD15 PDD16 PDD17 * * * * *k *l *l *~~~~~~J *~~~~~~~t Jlr Jlr Jrr ~ k Jk dr * * * * * * * *l *C * * *C *k *l * * * * * *k * k * l * * * *t *k * * * * * * * * * * * * * * * *k *l *r * * * * * * * *l *C *r *l *l *k * *I *L *r *l * ~k~~~~ * * * * * * ~ *k * l * k * * * * * * * * * * * *~ ~ l * * * * * * * * * * * * * * *

-33 - Table A2. Basic component/tool data (continued). TOOL 1 2 3 4 5 6 7 8 9 10 11 12 PDD18 PDD19 PDD20 PDD21 PDD22 PDD23 PDD24 PDD25 PDD26 PDD27 PDD28 PDD29 PDD30 PDD31 PHSO 1 PMDO 1 REGO1 TAFO 1 TAF02 TAFO 3 TXX01 TXX02 TXX03 TXX04 TXX05 TXX06 TXX07 TXX08 TXX09 TXX10 TXX11 TXX12 TXX13 TXX14 TXX15 TXX16 TXX17 TXX18 TXX19 TXX20 TXX21 TXX22 TXX23 TXX24 TXX25 TXX26 TXX27 TXX28 TXX29 * * * * * * * * * * *k ** *t *k *l * * * * * * * * * * * * * * * * * *l *l *l *l * * * *l *C *k * *l *k *l *k *r *t * * *k * *C *k *k *k *l *: *l *k * * *k * *k *~ *t *l *k * *f *r *l *k * * * * *l *k *k *l *r *~t * * * * * * * * * * * * * * *

-34 - Table A2. Basic component/tool data (continued). TOOL 1 2 3 4 5 6 7 8 9 10 11 12 TXX30 * TXX31 * TXX32 * TXX33 * TXX34 * TXX35 * TXX36 * TXX37 * TXX38 * *...* * At this point in time, there is no tool data available for components 2 and 8. Space for these is indicated in the last two starred entries of Table A2. When this data becomes available, the entries in the matrix of Table A2 can be updated. The new tools required for these components can be added to the list. In addition, the current tooling data of Table A2 may be revised. As new data is received, some of the insights, information, and recommendations in the remainder of this Appendix may change. This is why the suggested solution approaches of ~4 are general. Future changes and updates can then be accommodated. The purpose of compiling the information in the format of Table A2 was to identify components that seem to share many of the same tools. This insight is difficult to get by scanning lists of tools. From Table A2, it can be seen that components 1, 3, and 6 seem to share many common tools. Likewise, components 4, 5, and 7 are similar. In addition, component 2 is known to be similar to components 4, 5, and 7. Component 8 is similar to component 10. Although the similarities with respect to tool sharing can be observed in Table A2 about some of the components, information about the other components

-35 - cannot yet be observed. For this reason, several of the columns of Table A2 are interchanged in order to cluster the similar components together. The results are those in Table A3, where components 1, 3 and 6 are clustered together. Also, components 2, 4, 5, and 7 are adjacent. Finally, components 8 and 10 are clustered, although there is no data as yet for component 8. Table A3. Columns (components) interchanged to see tool commonality. COMPONENTS )OL 1 3 6 2 4 5 7 8 10 9 11 1: TC 2 ADDO 1 ADD02 AMDO1 AMD02 BAFO1 BAF02 BAF03 BAF04 BAFO 5 BASO 1 BASO 2 BASO 3 BASO 4 BAS05 BASO 6 BASO 7 BAS08 BASO9 BAS10 BAS 1 BAS12 BMAO 1 BMAO 2 BMA0 3 BMA0 4 BMA 5 BMA06 BMAO 7 BMA0 8 BMA09 BMA1 BMA11 BMA12 BMA13 BMA14 * *I * *e *k * * *k *1 *I * * * * * *l *l *k *l *k *l * * * * * * * * * * * * * * * * *l *r *l *t *k *r *1 * * * * * * * * * * * * *

-36 - Table A3. Columns (components) interchanged to see tool commonality (continued). ~~~~~~~~~~TO~OL 1 3 6 2 4 5 7 8 10 9 11 12~~I TOOL- 1 3 6 2 4 5 7 8 10 9 11 12 FC001 FC002 FC003 FFI01 FFI02 FFI03 FFI04 FFI05 FSG01 FSG02 FSG03 LISO1 LIS02 LIS03 LIS04 LIS05 LIS06 LIS07 LIS08 LIS09 MAS01 MAS02 MAS 3 MAS04 MAS05 MAS06 MAS 7 MAS08 MAS09 MAS1 0 MAS 1 PDD01 PDD02 PDD03 PDD04 PDD05 PDD06 PDD07 PDD08 PDD09 PDD10 PDD11 PDD12 PDD13 PDD14 PDD15 PDD16 PDD17 * * * * * * * * * * * * * *I * k *k * l * t * * * * * JS: lr Jr ~ * *t *l *k *c *l *I * * * * *l *l *t *e *t *l *l *k * * * * * * * * * * *.* * * * *e *l *r *C *l *l * * * * *I * * * * *f *c * * *l k * * * * * * * * * * * * * I * ~ * *k ~ti Jlr * * * * * * * * * * * * * * * * * *1 * * * *

-37 - Table A3. Columns (components) interchanged to see tool commonality (continued). TOOL 1 3 6 2 4 5 7 8 10 9 11 12 PDD18 PDD19 PDD20 PDD21 PDD22 PDD23 PDD24 PDD25 PDD26 PDD27 PDD28 PDD29 PDD30 PDD31 PHS01 PMD01 REG 1 TAF01 TAF02 TAF 3 TXX01 TXX02 TXX03 TXX04 TXX05 TXX06 TXX07 TXX08 TXX09 TXX10 TXX1 L TXX12 TXX13 TXX14 TXX15 TXX16 TXX17 TXX18 TXX19 TXX20 TXX21 TXX22 TXX23 TXX24 TXX25 TXX26 TXX27 TXX28 *k *k *k * * * * * * *k *l *l *: *l * * * * *k *l *l *l *I *k *~ * * * * * * * *k *~ * *k *k * * * * *l *l *~ * *t *k *l *k *k *l *k *l *k *k *k *k *k *l * * *k * * *3 *k * *k *t *k * *k *k * *l *r * *k *k * *t I: d *k ** *l *k * * * * * * * * * * * * * *

-38 - Table A3. Columns (components) interchanged to see tool commonality (continued). TOOL 1 3 6 2 4 5 7 8 10 9 11 12 TXX29 * TXX30 * TXX31 * TXX32 * TXX33 * TXX34 * TXX35 * TXX36 * TXX37 * TXX38 * * ) i ) o * Next, the rows of Table A3 are interchanged in order to complete the clustering. First, all tools required by components 1, 3, and 6 are moved together. Also, all tools of components 2, 4, 5, and 7 are adjacent. This allows both the common and unique tools of the remaining five components, 8, 9, 10, 11, and 12, to be identified and clustered. The results of interchanging the rows (tools) are provided in Tables A4 and A5. Since the clustering is not unique, two different views of this clustering are presented. Table A4. Rows (tools) interchanged to cluster components having common tools. COMPONENTS TOOL 1 3 6 2 4 5 7 8 10 9 11 12 AMD01 * * * BAF05 * * * BAS01 * * * BMA06 * * * FC002 * * * FFI01 * * * FFI04 * * * FSGO1 * * * LISO1 * * * LIS06 * * * LIS08 * * * MASO1 * * * PDD08 * * * PDD11 * * *

-39 - Table A4. Rows (tools) interchanged to cluster components having common tools (continued). TOOL TAF01 TAF02 TXX03 TXX04 TXX07 LIS03 PDD03 FSG03 MAS 2 PDD01 TXX01 TXX02 TXX05 TXX06 BAS10 BMA10 BAS1 BMA1 2 BAS1 2 BMA14 TXX08 TXX09 TXX10 TXX11 ADD 2 BMA0 4 MAS10 PDD06 PDD09 PDD14 PDD15 PDD25 PDD28 PHS01 AMD0 2 BMA07 PDD19 PDD30 TXX12 TXX13 TXX14 TXX17 TXX18 TXX19 TXX16 LIS09 MAS 5 MAS08 1 3 6 2 4 5 7 8 10 9 11 12 *k *l *k *i *l *l *~ *i *l *k *k *k *l *k *e *k *I *k *k *k *R *t *k *k *k * *I *O *~ *C * * *1 *l *t *k * *k *r *k * * *l *l *l *l *l *l *1 *k ** *k *k * *k *l * *k ** *k *l *i *I *k *t *l *l *k *k * * *k *k * *k *k * *l * * * ~ *k * *I * * *k *s * *l * * *k *k * *k *r * *l *l *e *l *l *I *k *l *l *l * * *k *l *l *l *k * *t *l *I *l * * * * * *

-40 - Table A4. Rows (tools) interchanged to cluster components having common tools (continued). TOOL 1 3 6 2 4 5 7 8 10 9 11 12 PDD26 LIS04 TXX21 FFI05 BASO 6 BMA 1 TXX22 TXX23 BASO 4 BAS07 BMA1 3 FCO01 TXX15 TXX20 BAFO 1 BAF02 BAF03 BAS08 BMA0 5 FFI03 FSG02 LIS02 LIS05 LIS07 MAS06 MAS09 PDD04 PDD05 PDD17 PDD18 PDD21 PDD22 PDD23 PDD27 PDD29 TXX26 TXX27 TXX28 TXX29 TXX30 TXX31 PDD13 BAF04 BASO 2 BASO 5 BASO 9 BMAO 1 BMAO 2 *k * * * *I *l *l *l *k * * * *t *k * * * * *l *k * * * * * * *I *k *k * * * *k *k *e *k *k *r *f *L *r *I *k *k *k *l *k *k *l *l *k *k ~ *f *k *l *l *k *l

-41 - Table A4. Rows (tools) interchanged to cluster components having common tools (continued). TOOL 1 3 6 2 4 5 7 8 10 9 11 12 BMA09 FC003 MAS03 MAS 1 PAD02 PDD12 REGO1 TXX35 TXX36 TXX37 TXX38 BMA08 MAS04 PDD16 PDD24 PDD31 TAF03 TXX24 TXX25 ADDO 1 BASO 3 BMAO 3 FFI02 MASO 7 PDD07 PDD10 PDD20 PMDO 1 TXX32 TXX33 TXX34 *k *l *l *l *l *l *k *k *l *: *l *l *~ *k *k *k *k *I *l *l *r *t *l *k * * Table A5. Another component/tool clustering. COMPONENTS TOOL AMDO1 BAF05 BASO 1 BMAO 6 FC002 FFI01 FFI04 1 3 6 2 4 5 7 8 10 9 11 12 * * * * * * * * * * * * * * * * * * * * *

-42 - Table A5. Another component/tool clustering (continued). TOOL FSGO1 LIS01 LIS06 LIS08 MASO 1 PDD08 PDD11 TAFO1 TAF02 TXX03 TXX04 TXX07 TXXO 1 TXX02 TXX05 TXX06 BAS10 BMA10 BAS1 1 BMA12 BAS12 BMA14 TXX08 TXX09 TXX10 TXX11 LIS03 PDD03 FSG03 ADD02 BMA04 MAS10 PDD06 PDD09 PDD14 PDD15 PDD25 PDD28 PHSO 1 AMD02 BMA07 PDD19 PDD30 TXX12 TXX13 TXX14 TXX17 TXX18 TXX19 1 3 6 2 4 5 7 8 10 9 11 12 *t *l *l *l *l *k *l *I *k *l *t *k *l *l *l *C *l *k *l *11 *l *r *t *I *f *l *C *k *l *l * * *k *k *l *l *r *k *l *l *k *t * *l * * *t *l *t *k *l *r *l * * *l * *k *l *t *k *l *k * *I *I *k *k * *l * * *k *k * *k *k * *k *k * *k *e * *k *C *l *k *~ * *l *t * *I *I *k *t * * *l *a *l *l * * *k *l * *l *l *l *r * *l *l *k *l *l *k *r

-43 - Table A5. Another component/tool clustering (continued). TOOL MAS05 MAS08 PDD26 LIS04 TXX21 FFI05 BAS06 BMA11 TXX22 TXX23 FCO01 TXX15 TXX20 BAS0 4 BAS07 BMA 3 MAS02 PDD01 BAFO 1 BAF02 BAF 3 BAS0 8 BMA0 5 FFI03 FSG02 LIS02 LIS05 LIS07 MAS0 6 MAS 9 PDD04 PDD 5 PDD17 PDD18 PDD21 PDD22 PDD23 PDD27 PDD29 TXX26 TXX27 TXX28 TXX29 TXX30 TXX31 PDD13 TXX16 BAF04 BAS 2 1 3 6 2 4 5 7 8 10 9 11 12 *~ *C *k *I *l *k *l *l *k * *l *l *l *t * * *l *~ *I *k * * * * * * * * *l *l *l *r * * * * * * * * *t *k * *I * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * I lr ~ *~ * * *l *k ~ *l * * *

-44 - Table A5. TOOL BAS05 BAS09 BMA01 BMA02 BMA 9 FC003 MAS 3 MAS1 PAD02 PDD12 REG 1 TXX35 TXX36 TXX3 7 TXX38 BMA08 MAS0 4 PDD16 PDD24 PDD31 TAF 3 TXX24 TXX25 LIS09 ADDO 1 BAS03 BMA0 3 FFI02 MAS 7 PDD07 PDD10 PDD20 PMD01 TXX32 TXX33 TXX34 * ~ ~. ~ Another component/tool clustering 13 6 2 4 5 7 8 10 9 * * * * * * * * * * * * * * * (continued). 11 12 *k *l *l *l *k *l *k * * * *t *l *1 *l *k *k *l *l *l * * Tables A4 and A5 provide two different views of the clusters and shared tools. This clustering information is used in ~4 to help determine the appropriate Algorithms to load the cells and machines. For example, the clusters show that components 1, 3, and 6 are similar. All require fixture 1. These should be allocated to the same cell and machines.

-45 - The remaining Tables provide the actual tooling data that needs to be input into the models and Algorithms of ~4. For example, Table A6 gives the number of tools and the tool slots required by each component. The number of tool slots is the necessary information for component allocation purposes. The additional information on the number of tools will only be useful for estimating the time to change cutters and will not be used again until either simulation or system operation. Table A6. Numbers of tool magazine slots and tools required by each component. COMPONENT SLOTS TOOLS 1 48 30 2 * + 3 48 30 4 55 35 5 55 35 6 48 30 7 57 37 8 * + 9 38 26 10 74 50 11 16 10 12 25 17 Table A6 provides the tooling data for the individual components. However, there is a large amount of tool sharing among several components. The clustering Tables demonstrate this. Not included in this paper is a large computer output that provides, for each of all possible combinations of components that may be allocated together to the same cell or machine, the following information: * the number of tools required and tool slots occupied by the particular combination; * the number of unique tools and tool slots required only by each component of the particular combination; * the number of tools in common required by all of the components of the particular combination.

-46 - We will call this large program "All Combinations" when we need to refer to some of the detailed information in it. Shortly, Table A9 will demonstrate a small and useful subset of the entire information contained in "All Combinations" From the clustering and "All Combinations" information, it can be seen that it is reasonable for components 1, 3, and 6 (now renamed as combination number 1) to always be allocated to the same cell (A) or machine because there is such a high duplication of cutters in common. Similarly, components 2, 4, 5, and 7 are renamed combination number 2 and will always be assigned to the other cell (B). This clustering of similar components greatly reduces the amount of information required by a manager trying to operate the FMS effectively. The original twelve components can now be reduced to the following six: Old Components New Numbering {1,3,6} 1 {2,4,5,7} 2 9 3 {8,10} 4 11 5 12 6 Table A7 is analogous to Table A6 for the six new sets of clustered components. Table A7. Number of tools and slots taken by each component cluster. COMPONENT SLOTS TOOLS 1 64 38 2 65 41 3 38 26 4 74 50 5 16 10 _ 6 1 25 17

-47 - Finally, Tables A8 and A9 contain the tooling information for all possible combinations of the renumbered clusters. This is a significant reduction in the total number of combinations. The first columns of Tables A8 and A9 list the components in a particular combination. There are 2-6 components in each combination. The next column (labeled TOOLS/SLOTS) provides both the number of tools and the number of slots taken by the particular combination. The next columns give the numbers of slots taken by unique tools specific to each component cluster in the particular combination. The final column provides the number of tools and the number of slots taken by tools that are common to all of the component clusters in the particular combination. Table A8. Number of tools and slots taken by various combinations of components: Together, unique tools, and overlap. SPEC.1 SPEC.2 SPEC.3 SPEC.4 SPEC.5 SPEC.6 COMMON TOOLS/ TOOLS TOOLS TOOLS TOOLS TOOLS TOOLS TOOLS COMBINATION SLOTS OCCUP. OCCUP. OCCUP. OCCUP. OCCUP. OCCUP. OCCUP. 1 2 76/ 35 38 3 126 61 62 3 1 3 62/ 36 24 2 100 62 36 2 1 4 84/ 34 46 4 134 60 70 4 1 5 47/ 37 9 1 79 63 15 1 1 6 54/ 37 16 1 88 63 24 1 2 3 60/ 34 19 7 92 54 27 11 2 4 71/ 21 30 20 107 33 42 ' 32 2 5 49/ 39 8 2 79 63 14 2 2 6 53/ 36 12 5 83 58 18 7 3 4 69/ 19 43 7 105 31 67 7 3 5 34/ 24 8 2 52 36 14 2 3 6 40/ 23 14 3 58 33 20 5

-48 - Table A8. Number of tools and slots taken by various combinations of components: Together, unique tools, and overlap (continued). 4 5 4 6 5 6 1 2 3 1 2 4 1 2 5 1 2 6 1 3 4 1 3 5 1 3 6 1 4 5 1 4 6 1 5 6 2 3 4 2 3 5 2 3 6 2 4 5 2 4 6 2 5 6 3 4 5 3 4 6 3 5 6 4 5 6 1 2 3 4 58/ 88 64/ 96 25/ 39 94/ 152 104/ 166 84/ 140 88/ 144 103/ 165 70/ 114 76/ 120 92/ 148 98/ 156 62/ 102 88/ 132 68/ 106 72/ 110 79/ 121 83/ 125 61/ 97 77/ 119 82/ 124 48/ 72 72/ 110 121/ 192 48 8 72 14 47 14 71 22 8 15 14 23 34 32 60 52 33 20 59 32 35 37 61 61 35 34 61 56 34 19 60 31 36 23 62 35 36 22 62 32 34 45 60 69 34 44 60 68 37 8 63 14 19 17 27 25 34 19 54 27 32 19 52 27 21 30 33 42 19 30 29 42 36 8 58 14 19 43 31 67 18 42 28 66 23 8 33 14 47 8 71 14 33 18 59 26 18 26 28 40 8 14 12 18 41 65 8 14 14 20 8 14 14 22 15 23 28 40 8 14 12 18 8 14 12 18 12 18 8 14 13 19 14 20 14 22 17 25 2 2 3 3 2 2 1 1 2 2 1 1 1 1 2 2 I 1 1 1 1 1 1 1 1 1 5 5 2 2 3 5 2 2 3 2 2 2 3 3 2 2 2 2 2 2 27 1 39 1

-49 - Table A8. Number of tools and slots taken by various combinations of components: Together, unique tools, and overlap (continued). SPEC.1 - TOOLS/ TOOLS SLOTS OCCUP. SPEC.2 TOOLS OCCUP. SPEC.3 TOOLS OCCUP. SPEC.4 TOOLS OCCUP. SPEC.5 SPEC.6 TOOLS TOOLS OCCUP. OCCUP. COMMON TOOLS OCCUP. COMBINATION 1 2 3 5 1 2 3 6 1 2 4 5 1 2 4 6 1 2 5 6 1 3 4 5 1 3 4 6 1 3 5 6 1 4 5 6 2 3 4 5 2 3 4 6 2 3 5 6 2 4 5 6 3 4 5 6 1 2 3 4 1 2 3 4 1 2 3 5 1 2 4 5 1 3 4 5 2 3 4 5 1 2 3 4 102/ 166 106/ 170 112/ 180 116/ 184 96/ 158 111/ 179 116/ 184 84/ 134 106/ 170 96/ 146 100/ 150 80/ 124 91/ 139 90/ 138 5 129/ 205 6 133/ 209 6 114/ 184 6 124/ 198 6 124/ 198 6 108/ 164 5 6 141/ 223 34 32 18 8 60 52 26 14 34 30 18 12 60 50 26 18 33 20 28 8 59 32 40 14 33 18 28 12 59 28 40 18 35 34 8 12 61 56 14 18 34 19 41 8 60 31 65 14 34 18 40 13 60 28 64 19 36 22 8 14 62 32 14 20 34 44 8 14 60 68 14 22 19 17 28 8 27 25 40 14 18 17 28 12 26 25 40 18 32 19 8 12 52 27 14 18 19 30 8 12 29 42 14 18 18 42 8 13 28 66 14 19 33 18 17 27 59 26 25 39 33 17 17 27 59 25 25 39 34 30 18 8 60 50 26 14 33 18 28 8 59 28 40 14 34 18 40 8 60 28 64 14 18 17 28 8 26 25 40 14 33 17 17 27 59 25 25 39 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 2 2 12 1 18 1 8 14 12 18 12 18 12 18 13 19 12 18 8 14

-50 - In Table A9, all combinations that contain component clusters 1 ({1,3,6}) and 2 ({2,4,5,7}) together have been deleted, as it is unlikely that these will be assigned to the same cell or machine. In the case of a long breakdown, some combinations of clusters 1 and 2 may overlap and be assigned to the same cell or machine. The overlap information for this rare occurrence is in Table A8. For easy reading, Table A9 contains only the information concerning the numbers of slots required, but none on the numbers of tools required. Table A9 provides a complete and concise set of tool duplication information that is required for the Algorithms of ~4. The information on common and unique tooling and tool slot requirements is necessary for determining the maximum amount of potential pooling and partial pooling. This information also demonstrates the consequences, in terms of tool magazine capacity, of allocating various combinations of components to cells and then to machines. For the six component clusters, Table A9 contains the information for all combinations of two, three, four, and five component clusters. For all of these combinations, all tools can fit in the four primary magazines of two machines (which have a capacity of 240 slots). For all combinations of two component clusters and most combinations of three component clusters, all tools fit in the two primary magazines of only one machine. This means that for these latter combinations, all three machines in a cell can be pooled and identically tooled. Since so much pooling can be done, it appears that formulations (P1) and (P2) of ~4 are essentially linear, in practice. Each day, components can be allocated to cells and to the machines to balance workloads, without the need to consider tool magazine capacity constraints. However, recall that the data is not complete. There is no information to date on the tools required to machine components 2 and 8. Additional tools may

-51 - Table A9. Number of slots taken by combinations of components: together, unique tools, and common tools. SPEC.1 SPEC.2 SPEC.3 SPEC.4 SPEC.5 COMMON SLOTS SLOTS SLOTS SLOTS SLOTS SLOTS SLOTS COMBINATION 1 3 1 4 1 5 1 6 2 3 2 4 2 5 2 6 3 4 3 5 3 6 4 5 4 6 5 6 13 4 1 35 136 1 45 1 46 1 56 23 4 23 5 23 6 24 5 24 6 25S6 34 5 34 6 35 6 45 6 1 34 13 4 1 35 1 45 2 34 23 4 23 5 2 45 34 5 13 4 23 4 100 134 79 88 92 107 79 83 105 59 58 88 96 39 165 114 120 148 156 102 132 106 110 121 125 97 119 124 72 110 179 184 134 170 146 150 124 139 138 6 198 6 164 62 60 63 63 54 33 63 58 31 36 33 72 71 14 60 62 62 60 60 63 27 54 52 33 29 58 31 28 33 71 60 60 62 60 27 26 52 29 28 60 26 36 70 15 24 27 42 14 18 67 14 20 14 22 23 31 35 32 69 68 14 25 27 27 42 42 14 67 66 14 14 31 28 32 68 25 25 27 42 66 28 25 65 14 20 14 22 23 40 14 18 14 18 18 14 19 20 22 65 64 14 14 40 40 14 14 14 64 40 2 4 1 1 11 32 2 7 7 2 5 2 3 2 2 1 1 1 1 1 5 2 5 2 3 2 2 2 2 2 1 1 1 1 2 2 2 2 2 1 2 5 6 6 6 5 6 6 6 6 5 5 14 19 20 22 14 18 18 18 19 14 14 19 18

-52 - also be required to process the other components. Additional gearbox components may be machined on the FMS in the future. As further information is obtained or new part types introduced into the FMS, these Tables can be updated. If more tools are required, the tool magazine capacity will be tighter, and less pooling will be possible. This is the reason why the formulations of ~4 needed to be provided in a very general form. In addition, some tools may be used often enough that several copies of each may need to be loaded in the tool magazines. Cutting time for tools such as these may be high. There is no information to date on the amount of sister tooling required. This information could potentially reduce the amount of pooling that could be done, since more space in the magazines would be required for the sisters. Since cutting time/cutter is small for aluminum parts, placement in the tool magazine may also be important. In the case of breakdowns, there may be either capacity problems or workload balance problems. If machines are pooled, shifting workload is easy and is a linear program. If this is not enough to solve the problem, some components (and hence some tools) may have to be shifted from cell to cell or from machine to machine. The information of Table A9 and the total processing time requirements of each component are all that is needed to help make such reallocation decisions. These decisions can then be made manually. If some workload has to be shifted, for various potential reallocations to machines or cells, Table A9 contains: the total number of tool slots required; the number of new tool slots required; and for formulation (P1), the tool overlap as the new component(s) are included in the same magazine with the old.