A SIMULATION STUDY FOR DYNAMIC FLEXIBLE JOB SHOP SCHEDULING WITH SEQUENCE-DEPENDENT SETUP TIMES by Zakaria Yahia Abdelrasol Abdelgawad A Thesis Submitted to the Faculty of Engineering at Cairo University in Partial Fulfillment of the Requirements for the Degree of MASTER OF SCIENCE in MECHANICAL DESIGN AND PRODUCTION FACULTY OF ENGINEERING, CAIRO UNIVERSITY GIZA, EGYPT 2012
A SIMULATION STUDY FOR DYNAMIC FLEXIBLE JOB SHOP SCHEDULING WITH SEQUENCE-DEPENDENT SETUP TIMES by Zakaria Yahia Abdelrasol Abdelgawad A Thesis Submitted to the Faculty of Engineering at Cairo University in Partial Fulfillment of the Requirements for the Degree of MASTER OF SCIENCE in MECHANICAL DESIGN AND PRODUCTION Under the Supervision of Prof. Dr. Mohamed A. Shalaby Dr. Tamer F. Abdelmaguid Professor of Industrial Engineering, Mechanical Design and Production Department, Faculty of Engineering, Cairo University Assistant Professor, Mechanical Design and Production Department, Faculty of Engineering, Cairo University FACULTY OF ENGINEERING, CAIRO UNIVERSITY GIZA, EGYPT 2012 ii
A SIMULATION STUDY FOR DYNAMIC FLEXIBLE JOB SHOP SCHEDULING WITH SEQUENCE-DEPENDENT SETUP TIMES by Zakaria Yahia Abdelrasol Abdelgawad A Thesis Submitted to the Faculty of Engineering at Cairo University in Partial Fulfillment of the Requirements for the Degree of MASTER OF SCIENCE in MECHANICAL DESIGN AND PRODUCTION Approved by the Examining Committee: Prof. Dr. Reda M.S. Abdulaal, Chairman Prof. Dr. Mohammed H. Gadallah, Member Prof. Dr. Mohamed A. Shalaby, Main Advisor FACULTY OF ENGINEERING, CAIRO UNIVERSITY GIZA, EGYPT 2012 iii
Table of Contents TABLE OF CONTENTS... IV LIST OF TABLES... VI LIST OF FIGURES... VII NOMENCLATURE... VIII ACKNOWLEDGMENTS... X ABSTRACT... XI CHAPTER 1: INTRODUCTION... 1 1.1 SIGNIFICANCE OF RESEARCH... 1 1.2 RESEARCH OBJECTIVES... 3 1.3 PROBLEM DEFINITION... 5 1.4 RESEARCH APPROACH... 7 1.5 ORGANIZATION OF THE THESIS... 8 CHAPTER 2: LITERATURE REVIEW... 9 2.1 INTRODUCTION... 9 2.2 DYNAMIC JSSP WITH SEQUENCE-DEPENDENT SETUPS... 11 2.3 DYNAMIC FJSP... 14 2.4 SUMMARY AND CONCLUSIONS... 19 CHAPTER 3: SIMULATION MODEL... 22 3.1 MODEL ASSUMPTIONS... 22 3.2 PART MOVEMENT IN THE SYSTEM... 23 3.3 JOB DATA... 25 3.4 PROCESSING TIME... 26 3.5 SETUP TIME... 26 3.6 ARRIVAL TIME... 27 3.7 DUE-DATE OF JOBS... 29 3.8 DOWNTIME... 29 3.9 SEQUENCING RULE... 31 3.10 PERFORMANCE MEASURES... 31 3.10.1 Mean Flow Time... 33 3.10.2 Mean Tardiness... 34 3.10.3 Average Utilization... 34 3.11 VERIFICATION AND VALIDATION OF THE SIMULATION MODEL... 35 iv
CHAPTER 4: PROPOSED ROUTING RULES... 37 4.1 INTRODUCTION... 37 4.2 WINQ FOR THE WORKING MACHINES (WINQ+BD):... 39 4.3 MODIFIED WINQ (MWINQ):... 40 4.4 SHORTEST WAITING AND SETUP TIME (SWST):... 42 CHAPTER 5: EXPERIMENTAL DESIGN AND RESULTS... 44 5.1 INTRODUCTION... 44 5.2 COMPARISON OF ROUTING RULES... 45 5.2.1 MEAN FLOW TIME (MFT)... 47 5.2.2 MEAN TARDINESS (MT)... 47 5.2.3 AVERAGE UTILIZATION (AU%)... 47 5.3 STATISTICAL ANALYSIS OF RESULTS... 53 5.3.1 BASIC DEFINITIONS... 53 5.3.2 EXPERIMENTAL RESULTS AND ANALYSIS... 55 5.3.2.1 MEAN FLOW TIME... 56 5.3.2.2 MEAN TARDINESS... 57 5.3.2.3 AVERAGE UTILIZATION %... 57 CHAPTER 6: SUMMARY AND CONCLUSIONS... 62 REFERENCES... 64 APPENDIXA: PROCESS PLANS AND PROCESSING TIMES... 68 APPENDIX B: SETUP TIME MATRICES... 72 v
List of Tables Table 2-1: Scheduling Rules applied in the Dynamic JSSP with SDS... 14 Table 2-2: Routing Rules applied in the Dynamic FJSP... 18 Table 5-1: Factors and values for each factor level... 46 Table 5-2: Routing rules comparison table for mean flow time (MFT)... 50 Table 5-3: Routing rules comparison table for mean tardiness (MT)... 51 Table 5-4: Routing rules comparison table for average utilization (AU%)... 52 Table 5-5 : Main and interaction effects and P-value... 56 Table A-1: Process plans and processing times for low flexibility ratio case...68 Table A-2: Process plans and processing times for high flexibility ratio case...69 Table B-1: Low setup time matrix for machine number 1......72 Table B-2: Low setup time matrix for machine number 2......73 Table B-3: Low setup time matrix for machine number 3......74 Table B-4: Low setup time matrix for machine number 4.....75 Table B-5: Low setup time matrix for machine number 5.......76 Table B-6: Low setup time matrix for machine number 6.....77 Table B-7: Low setup time matrix for machine number 7.....78 Table B-8: Low setup time matrix for machine number 8.....79 Table B-9: Low setup time matrix for machine number 9.....80 Table B-10: Low setup time matrix for machine number 10.....81 Table B-11: High setup time matrix for machine number 1.......82 Table B-12: High setup time matrix for machine number 2.......83 Table B-13: High setup time matrix for machine number 3.......84 Table B-14: High setup time matrix for machine number 4.......85 Table B-15: High setup time matrix for machine number 5.......86 Table B-16: High setup time matrix for machine number 6.......87 Table B-17: High setup time matrix for machine number 7.......88 Table B-18: High setup time matrix for machine number 8.......89 vi
Table B-19: High setup time matrix for machine number 9.......90 Table B-20: High setup time matrix for machine number 10....91 List of Figures Figure 3-1: SIMUL8 block diagram... 24 Figure 3-2: Control logic for parts... 25 Figure 3-3: Classification based on objective functions.... 32 Figure 4-1: WINQ routing rule flow chart.... 38 Figure 4-2: BL routing rule flow chart.... 39 Figure 4-3: WINQ+BD routing rule flow chart.... 40 Figure 4-4: MWINQ routing rule flow chart.... 41 Figure 4-5: SWST routing rule flow chart.... 42 Figure 5-1: Mean flow time (MFT) comparison results... 48 Figure 5-2: Mean tardiness(mt) comparison results... 48 Figure 5-3: Average utilization (AU%) comparison results... 49 Figure 5-4: Main effect plots for Mean Flow Time... 58 Figure 5-5: Interaction effect plots for Mean Flow Time... 58 Figure 5-6: Main effect plots for Mean Tardiness... 59 Figure 5-7: Interaction effect plots for Mean Tardiness... 59 Figure 5-8: Main effect plots for Average Utilization %... 60 Figure 5-9: Interaction effect plots for Average Utilization %... 60 vii
Nomenclature µ g The Mean Number of Operations per Job. µ p The Average Time Required for Processing and Setups per Operation. µ s The Overall Mean Setup Time. a The Mean Inter-arrival Time. a i The Arrival Time of Job i. ANOVA Analysis of the Variance. AU Average Machines Utilization. BL Balanced Load. C i The Completion Time of job i. CWT The Accumulated Working Time (Setup and Processing) of Machine i. D i The Due Date of Job i. F i Flow Time of job i. FJSP Flexible Job Shop Problem. FR Flexibility Ratio. JSSP Job Shop Scheduling Problem. k The Due Date Tightness Factor. L i Lateness of Job i. m The Number of Machines in The Shop. MFT Mean Flow Time. MT Mean Tardiness. MTBF Mean Time between Failures. MTTR Mean Time to Repair. MWINQ Modified Work in Next Queue. n The Total Number of Jobs. viii
p The Overall Mean Processing Time. PDT Percentage Downtime or Breakdown level. QL i The Queue Length Associated with Machine i. R Number of The Available Alternative Machines for an Operation. RPD The Relative Percentage Deviation. SDS Sequence Dependent Setups. SR Setup time Ratio. SSPT Shortest Setup Time and Processing Time Scheduling Rule. ST The required setup time for the next operation. SWST Shortest Waiting and Setup Times. T i Tardiness of job i. TI Traffic Intensity or Shop Load. TWK The total Work Content. U i Utilization of Machine i. WINQ Work in Next Queue. WINQ & BD Work in Next Queue with Exclusion of the Broken Down Machines. WST The Total Estimated Waiting and Setup Times. ix
Acknowledgments My sincere appreciation goes to both Prof. Dr. Mohammed A. Shalaby and Dr. Tamer F. Abdelmaguid, my academic and thesis advisors, for their valuable support, guidance, encouragement, and patience. By all means, this thesis would not have been a reality without their knowledge, constructive criticism, and supervision. I am so grateful for my loving and supporting wife, for without her I would have not had the extra pushing that I needed from time to time to keep focused on my studies. I wish to express my thanks to my mother, and my brothers for their ongoing support to me through all the ups and downs on life. It is to my wife and my children whom I dedicate this thesis. x
Abstract This thesis addresses the problem of scheduling a dynamic job shop in which there are alternative machines that can be used to process a given operation. The machine setup times are considered and assumed as sequence-dependent. Machines are prone to failure, and stochastic processing, setup and down times are assumed. The target of this study is to develop new routing rules which define the route of each part by selecting an appropriate machine for each operation. A simulation study is conducted to investigate the performance of job shop under the developed routing rules. The performance is evaluated using three performance measures, namely mean flow time, mean tardiness, and average utilization. The developed new routing rules in this study are: Work in next queue with exclusion of the broken down machine (WINQ+BD), Modified Work in Next Queue (MWINQ) and Shortest Waiting and Setup Times (SWST). These new rules are compared via simulation with two well-known routing rules: Work in Next Queue (WINQ) and Balanced Load (BL), which are reported in the literature. A set of experimental problems are developed with considering four factors; shop load, flexibility ratio, setup time ratio and downtime ratio. The simulation results show that the SWST rule outperforms the other rules for the mean flow time and mean tardiness performance measures. Furthermore, the performance of the SWST rule improves at higher levels of all factors. While, for the average utilization, the WINQ, WINQ+BD and MWINQ rules result in the best performance and the differences between them and the SWST rule, are minor. xi
Chapter 1 Introduction 1.1 Significance of Research Sequencing problems are very common occurrences. They exist whenever there is a choice as to the order in which a number of tasks can be performed, Conway et al. (1967). Sequencing and scheduling are forms of decision-making that play an important role in manufacturing as well as in service industries. They are used in many applications such as procurement and production, transportation and distribution, and information processing and communication. The scheduling function in a company is to allocate limited resources to the processing tasks. To be competitive, a company has to schedule activities in such way as to use the resources available in an effective manner. Studies in job shop scheduling problem (JSSP) are significant due to several reasons. One of them is, about 50% - 75% of all manufactured parts fall into the low volume and high variety and mid-volume and mid variety categories, and with the trend towards variety in products, this percentage is likely to increase, Adams et al. (1988). Although the experience of industries such as machine tool, metal processing, paper packaging, and printing shows that setup time varies and it is jobsequence dependent, most of authors who considered JSSP are either to neglect or to include the setup times in the processing times so as to simplify the problem. While in most real manufacturing systems, arrival pattern of jobs is a dynamic and there are a lot of natural variations in processing and setup times, there is a small number of authors whose considered dynamic JSSP and stochastic times. Also few authors have considered the JSSP with SDS and alternate routing. Authors who considered this problem assumed a static arrival 1
pattern. This low interest is due to the problem difficulties especially with these assumptions. A practical example in which SDS times can be encountered is in semiconductor industries. For instance, semiconductor testing requires that a circuit be tested under different temperatures. The testing facility needs time to adjust to the required temperature in which case the time required depends on the current temperature and the target temperature. Thus, setup times depend significantly on the sequence by which semiconductor components are tested. Other examples include cutting and stitching machines in a commercial printing firm, the stamping operation in plastics manufacturing, die changing in metal processing and roll slitting in the paper industry, printing, metal and chemical processing etc. For the case of alternate routing, often in industry, there are several nonidentical machines that can be used in executing a specific operation. In this problem, a job can be processed on either of a number of machines, perhaps with either a time or a cost penalty if an alternate machine is selected. This problem could arise if a machine is overloaded and an operation can be executed on an older machine that takes longer processing time. The routing flexibility is also used to tackle production stops, if busy or inoperative machines occur. It replaces and often outperforms the availability of alternative process plans for a given part. The scope of this research is the JSSP with the condition of alternate routing of operations along with the consideration of SDS times in a dynamic scheduling environment that takes into consideration machine failure and time uncertainty. 2
1.2 Research Objectives According to the literature, the JSSP in most cases is NP-hard. So JSSP remains an open issue to be solved. Optimization techniques can give very good solutions. It is especially true for small problem sizes and static problems. The disadvantage of combinatorial optimization comes from the dimensionality of the problem formulation. Regardless of whether it is formulated as a disjunctive programming or mixed integer programming model, the dimensionality is high. Due to the large dimensionality, the optimization techniques that have been developed often require excessive computational time during which the system to be scheduled has changed. So, the performance of generated schedules is not satisfactory. However, due to the complexity and unpredictability of manufacturing environments, existing optimization techniques are not efficient enough to deal with the dynamic nature of manufacturing systems. Another disadvantage of combinatorial optimization is that it often over simplifies the system. Most methods developed in combinatorial optimization use minimization of makespan as objective function. In practice, a manufacturing system represents a continuous flow of production which cannot be clearly segmented in order to create a measure of makespan. Unrealistic simplifications also include omission of SDSs while setups are common phenomena in manufacturing systems. Other new techniques like, expert system has the advantages of the possibility of customization and flexibility of the system where the complexity of building, verifying and changing the model are the main disadvantages. Dispatching rules have been used in the last decades to address scheduling problems for their simplicity and ease of use. Dispatching rules are simple algorithms that have been developed to control the production sequences. The effects of dispatching rules are normally studied with the use of computer simulation models. The reason for using simulation models is evident. First, it is almost impossible to test all the available dispatching rules on the physical system due to the required time frame and associated cost. Second, without 3
testing alternative rules, there is no way to predict how they will affect the system's behavior. Computer simulation models have made it feasible to quickly compare alternative dispatching rules and test their effect on shop operation performance regardless of the problem dimensionality. In order to find the optimal sequence of jobs, dispatching rules have been applied to determine job priority. As soon as a machine becomes free, it has to be decided which of the waiting jobs is to be loaded on the machine. For making this decision, a priority rule is used to assign a priority value to each of the waiting jobs. The job having the highest priority, which is defined by either the smallest or the largest priority value, is selected for processing next. In the flexible job shop environments, there are alternative machines to perform an operation, so routing rules used to select a machine among these alternative machines. Routing rule selects a machine according to specific criteria, that to improve the considered performance measure. The rules proposed in this area are few: the most prominent heuristic in this area is still the least work in next queue (WINQ). The first objective of this study is to develop simple real-time alternate machine selection rules (routing rules) applicable for dynamic routing of parts, to minimize mean flow time and mean tardiness, and maximizing average utilization in flexible job shop with sequence-dependent setups and machines breakdown. The second objective of this dissertation is to analyze the performance of the proposed routing rules against the different values of the experimental factors to be sure that the proposed rules are applicable in cases of machine breakdowns, heavy traffic intensity, high setup times, and at different flexibility ratios. 4
1.3 Problem Definition We consider a scheduling problem in which jobs arrive continuously over time (dynamically) to a job shop consisting of a set of different machines. The time between arrivals of jobs is a random variable with a known probability distribution function. Each arriving job has a pre-assigned due date. There is a finite set of job types where each job type has a predetermined sequence of manufacturing operations, where operation needs to be processed on one machine out of a set of alternate machines. The type of an arriving job follows a given discrete probability distribution function. The duration or processing time of each operation on its selected machine is a random variable with a known probability distribution function. There is a machine setup time needed before an operation can start on its selected machine. The length of the machine setup time of an operation is a random variable whose distribution function depends on which operation has just finished its processing on the same machine. This is referred to as sequence-dependent setup time. Furthermore, machine failures may occur randomly. Both time between failures and downtime are random variables with known probability distribution functions for each machine. The job shop becomes a queuing system: a job leaves one machine and proceeds on its route to the selected machine for the next operation, only to find other jobs already waiting for the machine to complete its current task, so that a queue of jobs in front of that machine is formed. The studied problem essentially involves two types of decisions. The first one concerns the selection of a machine to process each operation from its set of eligible machines. The second one is of deciding the order or priority for the jobs waiting to be processed at each machine. 5
The scheduling problem considered in the present work can be defined as follows: jobs arrive continuously into the system to be processed on multiple machines, There are m machines M 1,...,M m and n jobs J 1,...,J n. Each job consists of a sequence of operations O jh, (h=1,...n), denoting the h th operation of job j, with the total number of operations equal to N. The operation O jh is executed on the machine M jh with processing time p jh. For any two successive operations O jh and O kl to be processed on the same machine (M jh =M kl ), there is a setup time S jh,kl between them. Operation O jh can be executed on a machine M jh or on its alternative machine M jh,ar. Job j arrives at time r j and is due at time d j. If job j is completed after d j, there will be a delay penalty. On the other hand, no penalty incurs if a job is completed on or before its due date. In this study, the delay penalty of job j is defined as its tardiness which is equal to max {0, C j d j }, where C j is the completion time of job j. The arrival time, due date, routing and processing times of a job are not known until the job arrives in the shop. The objective is to find a production sequence of the jobs on the processors such that one or some selected criteria are optimized. The following objectives based on flow time and due dates are considered: Minimization of mean flow time per job, Minimization of mean tardiness per job, and Maximization of average machine utilization of all machines. The present study focuses on scheduling a dynamic job shop under the following assumptions: An operation cannot start before its preceding operation for the same job is completed. Each machine can perform only one operation at a time. 6
Whenever an operation starts on a given machine, it cannot be preempted by another operation. The machines are different and there is only one machine of each type. Job type assigned according to suitable probability distribution. Arrival times and due dates are only known in time and not a prior. Jobs inter-arrival times and due dates follow suitable probability distributions. Each job has one or more possible sequence(s) of operations (alternate routing). Processing times of all jobs on each machine follow stochastic distributions. Machine setup for a given job is dependent on the preceding job on the same machine. An operation can be processed on a set of alternative machine types. Machine breakdowns are allowed, and more than one machine may fail in the same time. Time between failures is a random variable. If an operation is interrupted due to machine breakdown, it presumes its remaining processing time after repair. 1.4 Research Approach The effect of different routing rules is studied through the following methodology: Creating a simulation model for the considered configuration. In this regard SIMUL8 simulator software is used for modeling the problem. Using the Design of Experiments (D.O.E) method to set up runs for studying the performance of the proposed routing rules based on the performance measures of interest. Executing the simulation runs and collecting the results. 7
Comparing the results of the proposed rules with the results of rules considered from the literature. Evaluating and analyzing the performance of the routing rules for each set of experiments based on the performance measure through ANOVA (Analysis of the Variance) statistical analysis. Presenting conclusions of this study, and the recommended future work. 1.5 Organization of the Thesis The remainder of this thesis organized as follow: Chapter 2 provides a detailed survey of the previous studies of scheduling problems related to our main assumptions. Chapter 3 provides an overview of the configuration, data, times, values applied in the model. Chapter 4 presents the details of the three proposed routing rules. Chapter 5 covers the applied design of experiments to evaluate the performance of routing rules. In this regard the factors and experimental conditions of interest are presented. Then the results are generally presented, followed by discussions and analyses of results. Chapter 6 presents concluding remarks, the highlights of the research and recommendations for future research. 8
Chapter 2 Literature Review 2.1 Introduction The first comprehensive survey paper on scheduling problems with separate setup times or costs, was conducted by Allahverdi et al. (1999). It reviewed the literature since the mid-1960s. Allahverdi et al. (2008) provided an extensive review of the scheduling literature which appeared after 1999. They classified the separate setup time (cost) scheduling problems relative to shop environment to single machine, parallel machines, flow shop and job shop. Then they sub classified the problems relative to batches and non-batches consideration, and then relative to setup dependency to sequence independent, and sequence dependent setups (SDS). Low-volume, high-variety production systems in which products are made to order and alternative machines exist are referred to as flexible job shops. The scheduling problem in those systems, referred to as flexible job shop scheduling problem (FJSP), is a generalization of the traditional job shop scheduling problem (JSSP) in which there is no alternative machines. The JSSP is known to be NP-hard (Garey et al., 1977), and so is the FJSP. Therefore, in a dynamic environment in which scheduling decisions need to be made quickly, it is not an option to look for an optimal solution for the FJSP. Rather, heuristic scheduling rules are more reasonable and convenient. As mentioned earlier, the job shop scheduling problem in most cases is NPhard. So job shop scheduling remains an open issue to be solved. Optimization techniques can give very good solutions. It is especially true for small problem sizes and static problems. The disadvantage of combinatorial optimization 9