Performance Evaluation of Contract Net-Based Heterarchical Scheduling for Flexible Manufacturing Systems A. Saad1, K. Kawamura1 y, and G. Biswas2 1
Department of Electrical and Computer Engineering 2 Department of Computer Science
Center for Intelligent Systems P.O. Box 1804, Station B Vanderbilt University, Nashville, TN 37235 email: fashraf,kawamura,
[email protected] Abstract This paper presents a heterarchical scheduling approach for exible manufacturing systems. The approach adopts a multiagent cooperative problem solving paradigm by using a bidding mechanism based on the contract net protocol to generate the production plan and schedule. Overall, scheduling is implemented using a Production Reservation approach. A typical job shop testbed demonstrates the eectiveness of this approach by comparing its performance to heuristic dispatching rules. Production Reservation augmented with the heuristic dispatching rules has also been shown to be even more eective, and should prove especially valuable in large variety discrete part and assembly manufacturing processes.
Keywords: Heterarchical Scheduling, Multiagent Systems, Contract Net Protocol, Production Reservation, FMS, Job Shop, Distributed Arti cial Intelligence.
Currently, Assistant Professor in the College of Applied Science at the University of Cincinnati, Cincinnati, OH 45206 y Partially supported by AFOSR Grant F49620-94-1-0456 to the U.S.-Japan Center for Technology Management at Vanderbilt University.
1
1 Introduction The new generation of advanced manufacturing systems is forcing a shift from mass production to mass customization, i.e., the ability to manufacture in small batches, even in lot sizes of one. To achieve this, it is becoming increasingly important to develop manufacturing control architectures that are modi able, extensible, recon gurable, adaptable, and fault tolerant [1, 2]. Centralized control architectures have given way to hierarchical schemes, where higher levels of the hierarchy control the lower level via a master-slave relationship [3]. However, to achieve even greater levels of recon gurability and adaptability, the newer manufacturing systems are adopting heterarchical control structures that are made up of multiple, distributed, locally autonomous entities, thus allowing a cooperative approach to global decision-making [4, 5]. Figure 1 illustrates the organization of the modules in each of these architectures. Flexible manufacturing focuses on batch production environments using multi-purpose programmable workcells, automated transport, improved material handling, operation and resource scheduling, and computerized control to enhance throughput. Mass customization adds other dimensions to exible manufacturing: multiple product types manufactured simultaneously in small batches, product mixes that change dynamically to accommodate
uctuating customer demands, and throughput that is minimally aected by transient disruptions in the manufacturing process, such as breakdown of individual workstations. In order to accommodate these, factory control has to be modi ed from the more rigid centralized and hierarchical manufacturing computer control architectures (MCCA) to more decentralized, heterarchical architectures that can recon gure dynamically depending on production requirements and the state of the manufacturing processes [4, 5, 6]. Heterarchical architectures present a number of inherent advantages: modularity, recon gurability and adaptability, reliability and fault tolerance, and extensibility, all of which are necessary to achieve eective and ecient mass customization. Heterarchical architectures (Figure 1) incorporate a number of distributed and autonomous production workcells that communicate with each other freely to cooperatively manufacture parts and products. A popular scheme for achieving cooperation among autonomous entities is via a negotiation-based protocol, called the contract net protocol [7, 8], using which individual workstations or cells negotiate with each other to devise the scheduling and routing of parts in a manufacturing process [7, 9]. Such a mechanism has the advantage of responding dynamically to changing product mixes and uctuating customer demands on a multipleproduct line. On the other hand, the controllers in this computational architecture being
distributed, usually have no access to global information, and, therefore, are likely to generate production schedules and routing sequences that are locally optimal [4, 5]. The advent of intelligent manufacturing cells, robots, and material handling systems, interconnected via computer networks, has made the implementation of heterarchical control architectures a feasible task [6]. Our focus, in this paper, is on ecient and eective scheduling and routing methodologies that can be applied to heterarchically controlled manufacturing processes. To this end, we develop a job shop test bed with the following characteristics:
Several part (product) types can be manufactured.
A sequence of operations, each performed on a dierent machine, is needed to produce a part. Each operation requires additional resources, such as raw materials and human operators.
A machine requires a nite amount of time to perform an operation.
A machine may perform multiple operations, but changeover from one operation type to another incurs a setup time.
Transportation of materials to machines and of partially completed products between machines requires time and resources (e.g., the use of AGV's or a material transport conveyor belt).
A sequence of machining and transportation operations to generate a required part is called a process plan. Multiple machines and transportation systems may be employed and several alternate process plans can be used to generate a product. Each plan speci es an alternate routing sequence through the shop oor.
Products may be produced in batches to reduce setup and transportation overheads.
We use the generic job shop model described above as a testbed to empirically compare a new heterarchical scheduling algorithm that utilizes the contract net protocol [7, 8] with heuristic dispatching rules that have traditionally been used in such manufacturing environments. The task of scheduling consists of allocating resources, such as machines, transporters, and personnel, to individual production activities in a time sequence so as to manufacture products or parts. The overall system objectives are to maximize resource utilization and minimize production time while respecting a variety of system constraints, such as the due dates and priorities of each product. Generating optimal schedules for such job shop operations is
b) Hierarchical
a) Centralized
c) Heterarchical Cell Controller
Machine Controller
Figure 1: Types of Manufacturing Computer Control Architectures. known to be NP-hard [10]; therefore, most practical schedulers resort to the use of heuristics to generate feasible schedules within given time constraints. The classical scheduling problem in a manufacturing setting is formulated as trying to t n jobs for processing on m machines, subject to various constraints and ordering priorities. Theoretically speaking, there are n! possible permutations for scheduling n jobs on a single machine. Consequently, the number of possible schedules for n jobs on m parallel machines, i.e., the Scheduler Search Space equals n !m n possible schedules. Consider a simple numerical example: scheduling 10 jobs on 7 machines. Theoretically there exists over 1014 possible schedules. An optimal scheduler may need to enumerate all possible schedules giving a score to each. The optimal schedule will then be the one with the lowest, or highest score, depending on the metric used for ranking them. Optimization metrics for assessing the relative merit of schedules in a discrete-type of manufacturing environment include cost, pro t, throughput rate, work-in-progress inventories, average tardiness, average
ow time, and average machine utilization. However, for limited classes of scheduling problems an optimal schedule, relative to a certain metric, can be obtained without enumerating all possible schedules. Nonetheless, since most practical problems involve multiple machines in parallel and in series, nding the optimal solution of a scheduling problem of practical
dimensions is usually computationally intractable. Scheduling for exible manufacturing has been cast in various forms: linear, integer, nonlinear, and dynamic programming problems, where the goal is to minimize certain parameters (e.g., lead time) and maximize others (e.g., throughput), given a set of constraints expressed as equations. In some cases, other mathematical formalisms, such as Lagrangian multipliers, have been used [11]. In situations where mathematical models are hard to formulate and the problem space is too large to perform an exhaustive search, AI-based heuristic methods have been employed. Typical examples are OPIS (OPortunistic Intelligent Scheduler) [12] and ISIS [13], both hierarchical constraint-directed schedulers. Heuristic methods, when coupled with appropriate abstractions, generate fairly good solutions. However, they tend to be less exible, and fail when con gurations and job mixes vary. As an attempt to overcome such de ciencies, random search methods, such as genetic algorithms, have been proposed for job shop scheduling [14]. In practice, computational intractability is handled by developing systems that use local dispatching rules at individual workcells. Blackstone et al. [10] provide an excellent state-ofthe-art survey of various dispatching and compare their performance under various criteria. Commercially available packages, such as Material Requirements Planning (MRP) and MRPII, in conjunction with a Manufacturing Execution System (MES), implement dispatching rules using forward/backward algorithms and a centralized computer architecture. However, due to limitations, such as scheduling under the assumption of in nite manufacturing capacity, MRP-based systems are currently used more as monitoring and data handling systems [9]. To achieve more exibility in manufacturing, we advocate replacing the traditional scheduling model with a Production Reservation (PR) approach. When PR is used the problem is rede ned: instead of scheduling all jobs at once, each job is scheduled only when its work order arrives to the manufacturing system. Thus the scheduling mechanism becomes more dynamic and reactive, it is able to take into account various factors, such as the product mix and state of the manufacturing processes, in making more optimal decisions. This is indeed a close match to reality since orders for products are usually one at a time or in small batches. It also results in a substantial reduction in the problem complexity. However, current implementations of PR scheduling [9, 6] do not allow new jobs arriving in the manufacturing system to alter previously scheduled jobs thus producing inecient schedules. We get rid of this limitation in the PR scheme presented in this paper. From an
Arti cial Intelligence point of view, this framework is interesting for a number of reasons:
It allows for the development of methodologies, where dierent local heuristic dispatching techniques may be employed under dierent conditions of the manufacturing process; the problem is to match techniques and situations.
Distributed AI-type computational architectures can be employed to eciently solve a computationally complex (intractable in general), problem, and
We can study the role of local heuristics in determining schedules that are eective from a global point of view.
This paper empirically studies some of these issues in a decentralized exible manufacturing framework.
2 PR Scheduling: The role of DAI Researchers and practitioners in the eld of Distributed Arti cial Intelligence (DAI) have been studying problems where a group of agents interact to solve a problem [15] in the absence of a central coordination mechanism. For instance, distributed, constrained, heuristic search has been applied to the domain of job shop scheduling [16]. An important contribution of this work is the characterization of the scheduling problem as a distributed multiagent search of the solution space. The contract net protocol has been used to de ne a bidding approach that enables task allocation among multiple agents [7, 8]. To realize heterarchical control in a manufacturing environment, the machines comprising the manufacturing system and the parts to be manufactured need to be modeled as autonomous agents [17]. These agents use the contract net protocol to implement a bidding scheme that allows the parts to dynamically and cooperatively determine, given the set of machines, each part's production schedule [9]. The contract net protocol has been used for task distribution among a hierarchically organized set of manufacturing entities in the YAMS (Yet Another Manufacturing System) architecture [7], and heterarchical control architectures [17]. An industrial case study [9] demonstrated the viability of heterarchical control architectures in real job shop environments. This architecture was also employed to test rescheduling eectiveness in a decentralized job shop environment [18] after the original schedule was generated by a centralized scheduler.
3 The Heterarchical Scheduling Framework Our heterarchical scheduling framework is built on a generic jobshop model described next.The workcells (or machining stations) comprising the manufacturing process are modeled as autonomous agents that interact dynamically to generate a production schedule for each product unit. The contract net approach is used as the protocol for interaction among agents. All agents are assumed to be benevolent, i.e., they cooperate with each other for the good of the overall system [5, 6, 9, 18]. A simpli ed bidding scheme that implements this approach is presented in Section 3.2. The simulation system for heterarchical PR scheduling is presented in Sections 3.3 and 3.4.
3.1 Job Shop Model A generic job shop model that comprises a set of workcells is used for the study reported herein. Each workcell comprises a machine, an input buer and an output buer, interconnected via a material handling system. A conveyor or an AGV system picks up partially or completely processed parts from the output buer of a workcell and transfers them to the input buer of the next workcell. The speci c testbed we have constructed to run our empirical studies is discussed below. 1. It has nine identical workcells, 2. A single part type is produced, and all parts have the same priority level. The set of operations required to produce a part necessitates that it visit ve dierent machines. These ve operations could also be assembly operations, and the assumption made is that other components and raw materials required for the assembly are present at the workcell when the assembly operation commences. 3. Manufacturing parameters are probabilistic; i.e., part (order) arrivals are exponentially distributed and processing times are normally distributed [10, 11, 19]. 4. As a simpli cation, the processing time for each operation is assumed to be the same on all ve machines. 5. In this version of the system, additional simpli cations are employed by making setup times negligible compared to the processing times. Similarly, transportation times are assumed to be negligible compared to the processing times and, therefore, ignored in the simulations.
Similar assumptions have also been made by other researchers studying similar problems [6, 10, 11, 19]. Therefore, the comparative results will still re ect the eectiveness of the scheduling policy we have designed and implemented.
3.2 Bidding as means for Scheduling The cooperative negotiation mechanism for generating and maintaining production schedules is developed as a bidding process within a heterarchical control framework. Like previous work [17], cooperative negotiation is achieved with the following bidding perspectives: 1. Part-Centered Negotiation: this is machine-initiated bidding; machines make bids and compete with each other to obtain a part for processing (Figure 2). In making its bid, a machine attempts to optimize its own performance measures such as keeping its utilization within a desired interval and keeping its buer levels (commonly referred to as work-in-progress, or simply WIP) low. The part awards itself to the machine oering the highest bid. In other words, machines use this scheme to bid for parts and pull them through the manufacturing system. Even though WIP is essential to avoid machine starving or blocking during production, most industries strive to reduce WIP levels and achieve just-in-time (JIT) production. High values of WIP re ect ineciencies in the system's operations. A machine utilization lower than the minimum threshold re ects too much idle time, which is a waste of resources. If the machine utilization exceeds the maximum threshold for sustained periods of time, the likelihood of that machine breaking down increases. High utilization levels also make it dicult to schedule down time for preventive maintenance. Furthermore, queuing studies show that part waiting times in buers experience exponential increases as machine utilization approaches unity [20]. 2. Machine-Centered Negotiation: This is part-initiated bidding, i.e., part agents make bids to the machines comprising the manufacturing system (Figure 3). The target of the bidding are the services or operations oered by the machines, and a part's bid should re ect its own criteria for being processed, such as its due date and priority. The higher a part's bid, the more attractive it should be for the machine to select the part for processing. In this scheme, parts negotiate with the machines to push themselves through the manufacturing system. In order to take into account part delivery date and machine performance, both bidding perspectives need to be merged. This corresponds to a pull-push approach to production
M1
M1
M2
M2
Bids
P
M3 M4
P Award
M5
M3
M4
M5
Bidding Phase
Awarding Phase
P = Part
M = Machine
Figure 2: Part-Centered Bidding perspective. scheduling (pull by machines, push by parts), to achieve ecient and eective scheduling of the manufacturing processes. Our bidding scheme emulates the integration of both perspectives.
3.3 Simulation Framework SIMAN [21], a popular package for modeling and simulation of discrete-event manufacturing systems in both industry and academia, is used to construct the cellular generic job shop model described in Section 3.1. It has the ability to model and simulate cellular discrete part manufacturing systems, has built-in capabilities to incorporate manufacturing parameters into the simulation, and has mechanisms for gathering statistical information on performance parameters of the modeled system. The heterarchical control model could not be implemented in SIMAN, therefore, it was designed and implemented as a separate module using an object-oriented software development methodology. The link between this heterarchical scheduling mechanism and SIMAN was established using C-language data structures (Figure 4).
P1
P1
Bids P2
P3
P2
M
P3
P4
P4
P5
P5
Award M
Bidding Phase
Awarding Phase
P = Part
M = Machine
Figure 3: Machine-Centered Bidding perspective.
3.4 Production Reservation The interaction between the workcells, parts, and the heterarchical scheduling mechanism is handled by the production reservation scheme, which associates a part processing operation with a particular machining cell. Each workcell has an associated reservation list, and each item in the reservation list contains three component elds: part number, start time for processing at the workcell, and the expected processing time. The scheduling mechanism is designed to push work orders through the manufacturing process as quickly as possible, based on the state of the manufacturing system at the time of the orders arrival, so that individual parts can achieve their earliest nish time. Note that the bidding scheme incorporates both part- and machine-centered bidding into an integrated scheme (see Figure 5). Details of the bidding scheme and scheduling algorithm follow: 1. When a work order to produce a new part is created by the SIMAN simulator, its attributes: arrival and processing times, are communicated to the scheduler by the simulator. 2. For a part, the bidding process is executed for each of the operations required to generate that part.
Heterarchical Scheduler (C++)
Simulator (Siman)
Part Attributes
Machines + Reservation Lists
Communication Media
Part Attributes
Job Shop-Type Manufacturing System
Data Structure Schedule
Schedule
Machines + Input Buffers + Output Buffers
Figure 4: Implementation Overview.
M1
M1
M1
M2
M2
M2
. .. . .
. .. . .
RFB
P
Bids
P
M8
M8
M9
M9
Request for Bid (RFB) Phase M = Machine p = part
Bidding Phase
Op Finish Time Bid α and sizeof(Resv List)
P Award
. .. . . M8
M9
Awarding Phase Award for Earliest Finish Time and Smaller Resv List
Figure 5: Part-Centered Bidding taking Machine Perspective into Account.
Start of End of Processing Processing
O1 P4
M1
O1
O2
O1
P1
P2
P3
Processing Time
Time
Earliest Finish Time
Idle Time
O1 P4
M2
O1
O2
O2
P2
P1
P3 Earliest Finish Time
M = Machine P = Part O = Operation
Time Existing Reservation
New Reservation
Figure 6: Production Reservation. (a) The part requests all machines to submit bids for the next operation. The bid has two components: i. the earliest the machine could nish processing the required operation. The machine searches forward through its reservation list to determine the earliest time interval that the machine can accommodate the machining of this part. For example, as depicted in Figure 6, M2 nds it can accommodate operation O1 for P4 before it performs O2 on P3, while M1 can only accommodate O1 for P4 after all existing reservations in its list. In the current implementation, reservations for parts are made on a rst-come- rst-serve basis. No changes are made to the order in the reservation list to accommodate for parts priorities. ii. the size of the reservation list for the machine; i.e., the number of parts holding reservations on the machine. (b) The part compares all the nish times returned to it by the machines and makes its decision as follows: The part awards itself to the machine that can start processing it earliest, thus achieving the earliest nish time for that operation.
In the case of a tie, i.e., when two or more machines oer the same nish time, the part favors the machine that has the smaller reservation list. Reservation list size is directly proportional to machine utilization and current and future work-in-progress, therefore, selecting the machine with lower utilization results in more balanced machine utilization and more uniform WIP buer levels. (c) The selected machine adds the part to its reservation list; the information added includes the part number and its expected arrival and processing times. (d) The part repeats steps (a)-(c) to make reservations on machines for its remaining operations, each time, selecting the earliest nish time. Since all machine stations are considered equivalent, this results in the earliest delivery time for the part. If the status of the manufacturing system does not change, and input buers cannot be rearranged, the earliest delivery time does not change as more work orders are introduced into the system. An alternate PR scheme we have experimented with is the Single Step Production Reservation (SSPR) scheduling policy. To achieve SSPR, the part does not complete allocation of all operations to machines upon arrival, but does its reservations one operation at a time, i.e., operation i + 1 is not allocated till operation i is completed. Performance of PR versus SSPR scheduling are described in section 4.
The overall process is illustrated in Figure 7. Exchange of information between the scheduler and simulator occurs each time a new part order arrives. The actual behavior of the job shop process, the routing and processing sequences, etc., are depicted by the animation feature (CINEMA) available with SIMAN [21]. Statistical data on performance parameters are also collected in this environment.
4 Simulation Results A set of simulation runs were performed to compare the performance of PR scheduling versus a number of traditional heuristic dispatching rule schemes used in job shop environments. Figure 8 illustrates the parameters of interest, lead time, ow time, production time (sum of lead and ow times), tardiness, and earliness, in evaluating the eectiveness and eciency of most discrete manufacturing systems [6, 10, 19]. Three more measures of performance are monitored in our environment:
Job Shop Model Part Creation
Heterarchical Scheduler Receive Part Attributes
Part Attributes: Arr Time + Proc Time
Send Part Attributes
Create an Object representing the part
Start with first operation
Part communicates with all machines to find the machine offering the fastest finish time for the operation In case of a tie between two machines: Select the machine that has the smaller Reservation List Reserve the best machine not previously used
N
Last Op ? Y Routing Sequence:
Send Routing Sequence
Receive Routing Sequence All Machines Part circulates through the shop floor according to the routing sequence
Part Exits
Figure 7: Interaction between the Heterarchical Scheduler and the Simulator Job shop model.
Due End of Date Production Earliness Event
Job Order
Start of Processing
Due Date
End of Production
Tardiness Time Lead Time
Flow Time
Lead Time + Flow Time = Total Production Time
Time W1
T1 W2
P1
T2
P2
T3
W3
P3
T4
T1, T2, T3 = Transportation Times between Machines P1, P2, P3 = Processing Times at Machines W1 = Waiting Time in Raw Material Buffer W2, W3 = Waiting Times in Machines Buffers
Figure 8: Attributes for studying performance of Job Shop Process. 1. Percentage of Tardy Parts: the ratio of the parts delivered beyond their due date to the total amount of parts produced by the system expressed as a percentage. 2. Machine utilization: percentage of time a machine is in use during a given time period. 3. Three buer levels [19]: (a) Raw Material Buer: the number of job orders that have arrived but are yet to be manufactured. The raw materials required to manufacture these parts wait in this buer until the start of their rst operation. (b) Work In Progress or WIP: this is the number of partially nished products waiting in machine buers on the shop oor. (c) Finished Product Buer: the number of parts produced earlier than their prescribed or desired due date.
4.1 Heuristic Dispatching Rules vs PR Heterarchical PR scheduling is compared to a number of traditional local dispatching rule schemes as well as two more sophisticated dispatching techniques. Dispatching rules specify
the criteria by which a machine selects the next part for processing from its input buer [11]. Experiments were conducted with four dispatching rules: 1. First-In-First-Out (FIFO): parts waiting in a buer are processed in the order of their arrival in the machine's input buer. 2. Earliest Due Date (EDD): parts in the input buer are sorted in the order of their due dates. The machine always picks the part with the earliest due date. This rule is known to achieve a good performance in term of meeting due dates, and, therefore keeping tardiness low [10, 11, 19]. 3. Shortest Processing Time (SPT): the part with the smallest processing time is picked for processing from the machine's input buer. This rule is biased toward increasing system throughput, while trying to keep the percentage of tardy parts low [10, 11, 19]. 4. Least Slack First (LSF): the part with the least dierence between its due date and the current time, the slack, is selected for processing. This heuristic helps achieve lower percentage of tardy parts since the slack value is dynamic [19]. The two dispatching techniques described below [6] have also been performed in order to obtain comparative evaluations to PR and SSPR: 1. Earliest Finish Time (EFT) when EDD is associated with each machine: EFT(EDD). Using this dispatching technique, a part requests, one operation at a time, the earliest possible time at which a machine can start its processing. Each machine compares the due date of the part to the due dates of the parts already waiting in its queue, and replies back with the earliest time at which the part can be processed based on the comparison. The part overtakes (will have precedence over) those parts that have due dates later than its own. 2. EFT when SPT is associated with each workstation: EFT(SPT). It is similar to the previous one, however, this dispatching technique is based on the processing time of the part. The part overtakes (will have presedence over) those parts that have longer processing times than its own. For both cases of EFT(EDD) and EFT(SPT), the part is routed to the input buer of the machine that has the least number of parts with earlier due dates, or less processing times, respectively, than the incoming part.
The results reported in Tables 1-5 were averaged over 5 runs. Each run was started with a new seed number for the random number generator, and results were collected after the simulation had run for a suciently long time to reach steady state [19]. The performance indicator values for the heuristic dispatching rules are presented in Tables 1 and 2. The average values of the lead time, ow time, tardiness, and earliness are measured in simulation time units. The WIP is measured as the maximum input buer level achieved at any one machine. The output buer levels of machines do not contribute to the WIP since, in the current model, the material handling system picks up parts from the output buers and delivers them immediately to the next machine in the part's routing sequence. The following parameters values were used in the simulation runs:
The average processing time for an operation: this parameter was modeled by a normal distribution with mean value equal to 10 and standard deviation of 3. Therefore, the average total processing time for a part is 50 time units.
The part arrival time is modeled by an exponential distribution with a mean of 6.5.
The due date of a part is set to four times its total processing time after its arrival time.
Each simulation runs for 22000 time units during which 3300 parts are produced by the system. 1
The necessary probability distributions have been generated from dierent random number generators, initiated with dierent seeds, in order to avoid any statistical bias. In current simulation experiments, parts have equal priority and, therefore, equal probability of being allocated to any of the machines for processing. This results in a uniform load distribution and consequently uniform machine utilization for all machines on the shop oor. It ranges between 82 and 88 since the same number of parts gets produced during each simulation. When the PR scheme is compared against the four rules, almost all parameters: ow time, production time, average tardiness, percent of tardy parts, and WIP levels are signi cantly reduced. Only lead time is higher because a part is kept in the raw material buer and is not released to the shop oor until it is time for its rst operation. These results prove that taking into consideration both part due dates and buer levels at the scheduling stage signi cantly improves the performance of the system over the local dispatching rules. Table 3 provides 1
a warm up period of 2000 time units was used to enable the system to stabilize after start up.
the percentage comparisons. A positive result of this computation re ects an improvement (while a negative one re ects a degradation) of system performance when the scheduling algorithm and dispatching rule were compared (in comparing two values, a vs b is computed as (a-b)/a). It is important to note that when PR scheduling is in eect, parts are held (delayed) in the input buers until their allotted reservation time. Whenever a machine is available for processing and there exists parts in its input buer, the machine remains idle until it is time to ful ll the reservation of a part. Such a part could have been waiting in the input buer of the machine or was yet to arrive. Each part is actually held in the raw material buer (Raw) until the start time of its rst operation. Whenever the processing of a part is nished before its due date, it is kept in a nished product buer ( nished).
4.2 Augmented Production Reservation A second set of experiments were conducted to study the scheduler performance when production reservation was combined with local dispatching rules. As before, the heterarchical scheduler, based on PR scheduling, assigns a sequence of machines for each part as soon as its work order is generated. The part is then immediately released to be routed to the input buer of the rst machine in its routing sequence. However, in this case, the next part to be processed by a machine is determined dynamically, based on the local dispatching rule associated with the machine. In this way, as discussed earlier, the scheduling scheme is more dynamic and reactive. The order in which parts in a machine's input buer are processed is a function of the characteristics of the set of parts that are present. This is especially true for the SPT and EDD dispatching rules. The performance of the job shop under the control of the augmented PR cases are listed in Tables 4 and 5. In most cases, the augmented PR schemes produce better performance but, it is likely that some parts could get stuck in a queue and wait a long time before being processed. To address this problem, PR was also combined with another heuristic, ERF (stands for Earliest Reservation First) and the performance indicator values for this case are listed in the initial sequence of machines is determined by the heterarchical PR algorithm. However, the parts waiting in a machine's input buer are ordered based on the time of their reservation. Hence, when a machine is available for processing, it will pick up from its input buer the part with the closest reservation time to the current time. Whenever a part experiences delays due to an increase in processing time at a machine over the expected one, this heuristic will favor
Table 1: Performance Parameters: Dispatching Rules versus PR. Rule Lead Time Flow Time Production Time Max Total WIP FIFO 27.05 201.68 228.73 62 EDD 45.2 165.16 210.36 47 SPT 19.91 205.09 225.0 41 LSF 48.67 169.83 218.50 45 PR 66.83 138.35 205.18 7 Table 2: Performance Parameters: Dispatching Rules versus PR. Rule Tardiness %Tardy Raw WIP per Machine Finished FIFO 74.61 36.75 0 10-26 19 EDD 44.34 23.04 0 11-30 21 SPT 230.84 10.88 0 9-16 21 LSF 119.01 15.39 0 11-19 22 PR 39.32 10.56 38 2-3 26 processing that part at the following workstation, helping the part to keep the deviation from its original schedule to a minimum.
5 Analysis Tables 1 and 2 summarize the superior performance of the job shop for PR scheduling versus the four dispatching rules. The lead times are higher because a part is released from the raw material buer only in time for its rst operation. Nonetheless, savings on the total production time are achieved and the maximum WIP buer levels are signi cantly lower than with any of the dispatching rules. Further improvements of the system performance were obtained by augmenting the PR algorithm with dispatching rules. However, improving the system performance along one dimension led to the degradation of the performance along other dimensions, as can be seen in Tables 4 and 5. The performance of the system actually degraded in all dimensions when Table 3: Percentage Improvement: Dispatching Rules versus PR. Rule Lead Time Flow Time Production Time Tardiness %Tardy Total WIP FIFO vs PR -91.52% 27.00% 12.65% 53.24% 89.40% 83.33% EDD vs PR -17.05% 9.23% 3.48% 15.13% 82.31% 81.82% PT vs PR -90.98% 32.39% 18.40% 89.14% 69.84% 57.14% LSF vs PR 7.14% 12.31% 10.92% 74.21% 78.16% 81.82%
Table 4: Performance Parameters: Augmented PR and SSPR. Rule Lead Time Flow Time Production Time Max Total WIP PR 66.83 138.35 205.18 7 PR+FIFO 17.49 188.24 205.73 45 PR+EDD 25.27 176.22 201.49 37 PR+SPT 19.75 174.84 194.59 33 PR+LSF 26.15 178.17 204.32 37 PR+ERF 23.85 177.24 201.09 35 SSPR 3.7 197.07 200.77 28 EFT(EDD) 12.05 187.97 200.02 27 EFT(SPT) 10.17 191.62 201.79 29
Table 5: Rule PR PR+FIFO PR+EDD PR+SPT PR+LSF PR+ERF SSPR EFT(EDD) EFT(SPT)
Performance Parameters: Augmented PR and SSPR. Tardiness %Tardy Raw WIP per Machine Finished 39.32 10.56 38 2-3 26 52.22 9.74 0 6-20 25 30.15 3.74 0 6-16 26 195.22 4.6 0 6-14 26 89.56 4.42 0 6-13 26 29.19 2.98 0 5-15 26 37.72 1.92 11 3-7 32 13.69 1.14 0 2-5 27 122.44 1.39 0 3-5 27
PR was combined with FIFO. This was because FIFO provided no exibility in reordering jobs in the buer. In fact, it counters an important property of PR scheduling, depicted in Figure 6, where a part operation can be placed between two others already in the queue if it can be accommodated in time. With FIFO, the parts would have to be sequenced in the order of their arrival to the buer, thus leaving unnecessary gaps in the processing of parts. A general observation is that whenever SPT is utilized, lower percentages of tardy parts are achieved at the expense of a much higher average tardiness. A general observation for the augmented PR schemes is the increase in WIP levels over the direct PR case. This is because a part may get reshued and have to wait in a machine's buer for more time than it had originally been assigned in the direct PR scheduling phase. Nevertheless, when SPT is combined with PR, the percentage of tardy parts is reduced over PR alone at the expense of a higher average tardiness. This is because SPT does not take into account the deadline of a part. However, when EDD and ERF are combined with PR, both the percentage of tardy parts and the average tardiness are reduced over PR alone. These are achieved at the expense of higher WIP levels in both cases, as well as a higher production time in the case of EDD (Table 5). By combining ERF with PR, deviations from the originally quoted PR schedule are kept to a minimum. This combination can help restore the schedule of a part whenever it experiences delays due to an increase in processing time at a machine over the expected one. An important general observation is the tradeo between the percentage of tardy jobs and WIP levels (e.g., the cases of (PR+EDD), (PR+SPT), and (PR+LSF)): less percentage of tardy jobs can be achieved at the expense of higher WIP levels. Therefore, the use of more dynamic schemes, like (PR+ERF), which detect the likelihood of tardiness and self-correct schedules help address this tradeo. SSPR achieves better percentage of tardy parts and average tardiness over the PR case, again at the expense of higher WIP levels. A disadvantage of SSPR is that parts can not make good estimates of their production times beforehand (at the start of production) because that depends on the dynamics of the production system and the rate of arrival of other parts. However, such an estimate can be obtained by the PR algorithm and the resulting production time is about the same as the SSPR case. The results in Tables 1-5 highlight the tradeos of using PR vs the augmented PR and the SSPR cases. Additional experiments were performed by only varying the distribution of the processing time to make it a uniform probability distribution over the interval 1 to 20. This corresponds to a worst case scenario for this parameter [19]. Nevertheless, PR and augmented PR schemes achieved lower percentage of tardy jobs than SSPR or the dispatching rules, with comparable ow time and average tardiness, but at the expense of higher WIP levels for the Augmented PR
cases. More comparisons will be conducted to have a better appreciation of the merits of EFT(EDD) and EFT(SPT) versus the augmented PR approaches. A suggested approach, to be implemented in the future, is to use the (PR+ERF) in the initial scheduling phase to keep tardiness and the percent of tardy parts down, at the same time keeping the WIP per machine low. Later, when scheduling new parts, the system needs to take into account the parts already within the manufacturing process, so that the resulting schedule re ects the best possible \operational compromise" between earliest nish of production, and low input buer levels of the process. This will be achieved, whenever possible, by requesting parts that have enough slack before their due date to delay their processing reservations (without violating their own due dates) in order to accommodate an incoming part that would otherwise be tardy. Such a process would conform to the Just-InTime (JIT) philosophy of production. In such cases, bottleneck situations can be avoided, and it becomes easier to quote reliable delivery dates to customers. Currently available commercial MES systems can play a major role by collecting and supplying up-to-minute status of the shop oor. Further extensions will also be performed so that the priority of parts is taken into account.
6 Conclusions and Future Work Our testbed and simulation experiments have generated preliminary but interesting results in heterarchical production scheduling. The merits of the proposed bidding technique have been established and analysis of the results have pointed out directions for extending PR to improve FMS performance. In future work, we will incorporate additional production parameters, such as priority levels for the parts being manufactured, and setup and transportation times, into our simulation experiments. In addition, the simulation of the AGV system for material handling will enable parts to negotiate with AGVs for transportation services, thereby adding another realistic dimension to the scheduling process. The fundamental contract net protocol requires a part to pay machines for their services. Since parts have equal priority in the current model, the price was a constant. In future work, parts will be allocated budgets proportional to their priority levels to enable them to outbid parts with lower priorities for services. In addition, to make the scheduling process more reactive and dynamic, we will design environments that, based on the state of the manufacturing process, are able to combine Production Reservation with dierent heuristic rules to achieve more optimal performance.
Other extensions of this work will explicitly address the issue of rescheduling to cope with machine-oriented and part-oriented disturbances, such as machine breakdowns, variations in processing, setup or transportation times, and cancellation of orders. This will be achieved within the framework of the heterarchical scheduling technique. The methodology discussed can also be extended to assembly-type of manufacturing applications. In this case, the components and subassemblies that make up a product can negotiate their production schedules with the machines in the same manner that the parts did in the job shop approach described in this paper.
Acknowledgments
The authors would like to thank Dr. Eric Johnson, Owen School of Management, for his help with the simulations, and Mr. Adel Salama, Austin Peay State University, for his help in the implementation of earlier versions of the simulation. This work has also bene ted from discussions with Dr. Sugato Bagchi, now at the IBM T. J. Watson Research Center.
References [1] Biswas, G., Kawamura K., and Saad, A., \Intelligent Manufacturing Systems: State-OfThe-Art." Proceedings of the 10th Annual Technical and Business Exhibition Symposium (TABES). Huntsville Association of Technical Societies (HATS), May 1994, pp. 94-503. [2] Kaplan, G. \Manufacturing a la Carte: Agile Assembly Lines, Faster Development Cycles." IEEE Spectrum. IEEE Society, September 1993, pp. 24-27. [3] Gunther, H. \The Design of an Hierarchical Model for Production Planning and Scheduling." Multi-Stage Production Planning and Inventory Control. Springer Verlag, 1986, pp. 227-260. [4] Ditts, D., N. Boyd, and H. Whorms. \The Evolution of Control Architectures for Automated Manufacturing Systems." Journal of Manufacturing Systems. SME, January 1993, pp. 79-93. [5] Due, N., and V. Prabhu. \Real-Time Distributed Scheduling of Heterarchical Manufacturing Systems." Journal of Manufacturing Systems. SME, February 1994, pp. 94-107. [6] Shaw, M. \A Distributed Scheduling Method for Computer Integrated Manufacturing: The Use of Local Area Networks in Cellular Systems." International Journal of Production Research. Volume 25, number 9, 1987, pp. 1285-1303.
[7] Parunak, H. \Manufacturing Experience with The Contract Net." Distributed Arti cial Intelligence. Morgan Kaufmann, 1987, pp. 285-310. [8] Smith, R. \A Framework for Problem Solving in a Distributed Processing Environment." Computer Science Department Report STAN-CS-78-700. Stanford University, 1978. [9] Baker, A. \Case Study Results with the Market-Driven Contract Net Production Planning and Control System." Proceedings of Autofact'92. Society of Manufacturing Engineers, 1992, pp. 17-35. [10] Blackstone, J., D. Phillips, and G. Hogg. \A State-of-the-art Survey of Dispatching Rules for Manufacturing Job Shop Operations." International Journal of Production Research. Volume 20, number 1, 1982, pp. 27-45. [11] Wein L., and P. Chevalier. \A Broader View of the Job-Shop Scheduling Algorithm." Management Science. Volume 38, number 7, pp. 1018-1033. [12] Smith, S. \A Constraint-Based Framework for Reactive Management of Factory Schedules." First International Conference on Expert Systems and The Leading Edge in Production Planning and Control. 1987, pp. 349-366. [13] Fox, M. Constraint-Directed Search: A Case Study of Job-Shop Scheduling. Morgan Kaufmann Publishers, 1992. [14] Uckun, S., S. Bagchi, K. Kawamura, and Y. Miyabe. \Managing Genetic Search in Job Shop Scheduling." IEEE Expert. IEEE Society, volume 8, number 5, pp. 15-24. [15] Werner, E., and Y. Demazeau (editors) . Decentralized A.I., Proceedings of the Third European Workshop on Modelling Autonomous Agents in a Multi-Agent World. Elsevier Science Publishers, 1992. [16] Sycara K., S. Roth, N. Sadeh, and M. Fox. \Distributed Constrained Heuristic Search." IEEE Transactions on Systems, Man, and Cybernetics. IEEE Society, NovemberDecember 1991, pp. 1446-1461. [17] Lin, G. and J. Solberg. \The Performance Analysis of an Adaptive Manufacturing Control System." Proceedings of the 2nd Industrial Engineering Research Conference. 1993 pp. 47-55. [18] Tsukada, T. \Polite Rescheduling: Responding to Local Schedule Disruptions in Distributed Manufacturing Systems." Proceeding of the IEEE International Conference on Robotics and Automation. IEEE Society, 1994, pp. 1986-1991.
[19] Huq, Z. \A Process Oriented Manufacturing System Simulation to Measure the Eect of Shop Control Factors." Journal of Simulation. April 1994, pp. 218-228. [20] Buzacott,J., and J. Shanthikumar. Stochastic Models of Manufacturing System. Prentice-Hall, 1993. [21] Pedgen, C., R. Shannon, and R. Sadowski. Introduction to Simulation Using Siman. McGraw-Hill, 1990. [22] Ramamritham K., and J. Stankovic. \Dynamic Task Scheduling in Hard Real-Time Distributed Systems." IEEE Software. IEEE Society, July 1984, pp. 65-75. [23] Cheng, S-C., Ramamritham K., and J. Stankovic. \Scheduling Algorithms for Hard Real-Time Systems - A Brief Survey." IEEE Society, 1988, pp. 65-75.