A Heuristic Method for Job-Shop Scheduling with an Infinite Wait Buffer

Similar documents
An Effective Chromosome Representation for Evolving Flexible Job Shop Schedules

Exact Mixed Integer Programming for Integrated Scheduling and Process Planning in Flexible Environment

A heuristic algorithm for the Aircraft Landing Problem

An on-line approach to hybrid flow shop scheduling with jobs arriving over time

Multi-Objective Scheduling Using Rule Based Approach

Embedded Systems 14. Overview of embedded systems design

Module 5: CPU Scheduling

A comparison of sequencing formulations in a constraint generation procedure for avionics scheduling

Chapter 6: CPU Scheduling

Machine Scheduling with Deliveries to Multiple Customer Locations

Recoverable Robustness in Scheduling Problems

Proceedings of the 2012 Winter Simulation Conference C. Laroque, J. Himmelspach, R. Pasupathy, O. Rose, and A.M. Uhrmacher, eds

CS 700: Quantitative Methods & Experimental Design in Computer Science

Job Sequencing with One Common and Multiple Secondary Resources: A Problem Motivated from Particle Therapy for Cancer Treatment

A Mixed-Integer Linear Program for the Traveling Salesman Problem with Structured Time Windows

Lecture 13. Real-Time Scheduling. Daniel Kästner AbsInt GmbH 2013

RCPSP Single Machine Problems

International Journal of Industrial Engineering Computations

Chapter 3: Discrete Optimization Integer Programming

HYBRID FLOW-SHOP WITH ADJUSTMENT

Deterministic Models: Preliminaries

Real-time operating systems course. 6 Definitions Non real-time scheduling algorithms Real-time scheduling algorithm

An Integrated Column Generation and Lagrangian Relaxation for Flowshop Scheduling Problems

Marjan van den Akker. Han Hoogeveen Jules van Kempen

A Re-optimization Approach for Train Dispatching

Single Machine Scheduling: Comparison of MIP Formulations and Heuristics for. Interfering Job Sets. Ketan Khowala

Single Machine Problems Polynomial Cases

General Scheduling Model and

Using column generation to solve parallel machine scheduling problems with minmax objective functions

Scheduling Lecture 1: Scheduling on One Machine

R u t c o r Research R e p o r t. A Method to Schedule Both Transportation and Production at the Same Time in a Special FMS.

Logic-based Benders Decomposition

Partial job order for solving the two-machine flow-shop minimum-length problem with uncertain processing times

Batch delivery scheduling with simple linear deterioration on a single machine 1

Practical Tips for Modelling Lot-Sizing and Scheduling Problems. Waldemar Kaczmarczyk

Dynamic Scheduling with Genetic Programming

Evolutionary Ensemble Strategies for Heuristic Scheduling

CPU scheduling. CPU Scheduling

Using column generation to solve parallel machine scheduling problems with minmax objective functions

Embedded Systems Development

Column Generation for Extended Formulations

CMSC 722, AI Planning. Planning and Scheduling

MINIMIZING TOTAL TARDINESS FOR SINGLE MACHINE SEQUENCING

Throughput Optimization in Single and Dual-Gripper Robotic Cells

A note on the complexity of the concurrent open shop problem

Operator assignment problem in aircraft assembly lines: a new planning approach taking into account economic and ergonomic constraints

Scheduling with Constraint Programming. Job Shop Cumulative Job Shop

Algorithms and Complexity theory

FH2(P 2,P2) hybrid flow shop scheduling with recirculation of jobs

On Machine Dependency in Shop Scheduling

Event-based formulations for the RCPSP with production and consumption of resources

University of Twente. Faculty of Mathematical Sciences. Scheduling split-jobs on parallel machines. University for Technical and Social Sciences

CPU Scheduling. CPU Scheduler

TDDI04, K. Arvidsson, IDA, Linköpings universitet CPU Scheduling. Overview: CPU Scheduling. [SGG7] Chapter 5. Basic Concepts.

CSE 380 Computer Operating Systems

Minimizing Mean Flowtime and Makespan on Master-Slave Systems

19. Logic constraints, integer variables

Department of Mathematics, Graphic Era University, Dehradun, Uttarakhand, India

CS 550 Operating Systems Spring CPU scheduling I

Extended Job Shop Scheduling by Object-Oriented. Optimization Technology

A new ILS algorithm for parallel machine scheduling problems

Single-part-type, multiple stage systems

Scheduling Parallel Jobs with Linear Speedup

The coordinated scheduling of steelmaking with multi-refining and tandem transportation

Stochastic Sequencing and Scheduling of an Operating Room

A Mathematical Model for Cyclic Scheduling With Limited Work-In-Process and Cycle Time Minimization

Last class: Today: Threads. CPU Scheduling

Process Scheduling for RTS. RTS Scheduling Approach. Cyclic Executive Approach

Time-optimal scheduling for high throughput screening processes using cyclic discrete event models

Models and Cuts for the Two-Echelon Vehicle Routing Problem

Single Machine Models

Planning and Scheduling of batch processes. Prof. Cesar de Prada ISA-UVA

The Multiple Checkpoint Ordering Problem

CIS 4930/6930: Principles of Cyber-Physical Systems

Solution of Large-scale LP Problems Using MIP Solvers: Repeated Assignment Problem

Polynomially solvable and NP-hard special cases for scheduling with heads and tails

Transfer Line Balancing Problem

Multi-Skill Resource-Constrained Project Scheduling: Formulation and Inequalities

SEQUENCING A SINGLE MACHINE WITH DUE DATES AND DEADLINES: AN ILP-BASED APPROACH TO SOLVE VERY LARGE INSTANCES

A polynomial-time approximation scheme for the two-machine flow shop scheduling problem with an availability constraint

A Column Generation Based Destructive Lower Bound for Resource Constrained Project Scheduling Problems.

Algorithm Design Strategies V

SINGLE MACHINE SEQUENCING Part 2. ISE480 Sequencing and Scheduling Fall semestre

An improved approximation algorithm for two-machine flow shop scheduling with an availability constraint

arxiv:cs/ v1 [cs.ds] 18 Oct 2004

Lower Bounds for Parallel Machine Scheduling Problems

Chapter 3: Discrete Optimization Integer Programming

Integer and Constraint Programming for Batch Annealing Process Planning

Decision Diagrams for Discrete Optimization

Algorithm Design. Scheduling Algorithms. Part 2. Parallel machines. Open-shop Scheduling. Job-shop Scheduling.

An exact algorithm for Aircraft Landing Problem

A Mixed Integer Linear Program for Optimizing the Utilization of Locomotives with Maintenance Constraints

Single-Facility Scheduling by Logic-Based Benders Decomposition

Scheduling with Advanced Process Control Constraints

Solving a Production Scheduling Problem as a Time-Dependent Traveling Salesman Problem

Task Models and Scheduling

Productivity Gains in Flexible Robotic Cells. H. Neil Geismar. Suresh P. Sethi. Jeffrey B. Sidney. Chelliah Sriskandarajah

A HEURISTIC APPROACH TO MINIMISING MAXIMUM LATENESS ON A SINGLE MACHINE. Marmara University, Turkey 1 2

Unrelated Parallel Machines Scheduling Problem with Sequence Dependent Setup Times

Heuristics Algorithms For Job Sequencing Problems

Transcription:

A Heuristic Method for ob-shop Scheduling with an Infinite Wait Buffer - From One-Machine to Multi-Machine Problems Z.. Zhao *. Kim M. Luo H. C. Lau S. S. Ge.B. Zhang Abstract Through empirical comparison of classical ob Shop Problems (SP) with multi-machine consideration, we find that the objective to minimize the sum of weighted tardiness has a better wait property compared with the objective to minimize the makespan. Further, we test the proposed Iterative Minimization Micro-model (IMM) heuristic method with the Mixed Integer Programming (MIP) solution by CPLEX. For multi-machine problems, the IMM heuristic method is faster and achieves a better solution. Finally, for a large problem instance with 09 jobs and 0 types of machines, IMM-heuristic method is compared with ProModel and we find that the heuristic method is slightly better. Index Terms ob Shop Scheduling, Multiple Machine, infinite in-process wait buffer I. INTRODUCTION Multi-machine shop scheduling problems (job-shop, flowshop and etc.) receive more and more attention ever since 0 years ago, as it can greatly improve the production rate and reliability. Its application can be found in logistics, semiconductor manufacturing, robotics, and etc. In [], there is a broad classification for classical onemachine problem. In [], the same notation follows and further, an extensive review for multi-machine problems is given. Multi-machine problems are usually studied in one of the following cases: Case: There are multiple exchangeable and renewable machines C k for each machine type k, and each specific machine could perform no more than one operation at any time; Case:There is exactly one machine for each type k, which can perform as many as C k operations at any time, and C k ; Case:There are cases with combination of Case and Case. Z.. Zhao is with School of Information System, Singapore Management University. He is currently a PhD candidate at the Electrical and Computer Engineering Department of the National University of Singapore, Singapore. Tel.: +-88. Fax: +-90. Email: zzytgx@yahoo.com.cn * Corresponding author. Kim is with the Institute of Transportation & Logistics, UTAC, Korea M. Luo and.b.zhang are with the Singapore Institute of Manufacturing Technology H.C. Lau is with School of Information Systems, Singapore Management University S.S. Ge is with the Electrical and Computer Engineering Department of the National University of Singapore. This research is partially funded by the A*STAR SERC TSRP GRANT P000 and IMSS TSRP 0 00. From Formulation s point of view, the Differences between one-machine problem and multi-machine problem are noted as following: FD-: One-machine problem can be formulated as disjunctive graph [], which could be easily mapped to MIP model and the processing time can be non-integers. FD-: For multi-machine problem, it is so far not yet nicely formulated in our opinion especially when processing time is non-integer. In [8], a model is proposed with δ() function, which can only be solved by heuristic methods and the optimality is not guaranteed for all cases. For integer processing time, in [], the Pritsker s formulation [] was applied and a 0- Integer Problem (IP) is solved. With respect to the Solutions, there are following Differences, which will be further explained later. SD-: One-machine problem has a solution as the task schedule, while the multi-machine problem s solution includes task schedule and machine dispatching. SD-: The solution of task schedule for both one-machine problem and multi-machine problem is unique, while solution for machine dispatching in multi-machine problem is not unique. In this paper, our work is focused on the multi-machine SP under Case. In order to make benchmark with optimal solutions, we use Pritsker s 0- formulation and all processing time are integers. Although we assume infinite wait buffer in the problem formulation, we can see that the wait-in-process is reduced when machine capacity is increased. An iterative minimization micro-model is implemented to solve the overall problem iteratively. The solution performance is bench-marked with the CPLEX solution for small-size problems and compared with ProModel solution for large-size problems. The notation of this paper is summarized in Table I. II. SAMPLE PROBLEM: MT,C k =, k For a clear demonstration, we use the MT problem [], where totally there are jobs and each job has tasks on different types of machines. The original MT problem in [] is one-machine problem C k =,k {,,..., }, while our sample problem differs in C k =,k {,,..., }. The solution Gantt chart is shown in Fig. where Fig. (a) is represented by job-grouping and Fig. (b) is by machine-grouping. Both Fig. (a) and Fig. (b) are actually from the same solution. Y-axis in Fig. (a) is job-id, while in Fig. (b), integer represents machine type and fraction represents machine-id of 98 /08/$.00 c 008 IEEE CIS 008

TABLE I NOTATION FOR OBS, PROCESSES MACHINES Solution Scheduling for the ob Shop, Y-Group is ob N o i p ij d i W i Notation for obs and Processes Total number of jobs Total number of operations (i.e. processes) for job i processing time of job i process j i {,..., N} and j {,..., o i} Due time of job i Delay penalty per unit time if job i is completed after its due time Notation for Machines Total number of machine types K k Machine type index, k {,..., K} T Total in discrete time formulation C k M ij X ijt Tij s Tij e M k (t) R L k (R) t a l t r m mi(l) RT AM CTA T M TW WT WT M AMU Capacity of machine k, i.e. number of operations that can be executed at anytime on machine type k Mapping from job i and process j to machine type Variables in Process Scheduling discrete decision variable for i th job, j th process at t start time of process j in job i completion time of process j in job i Machine utilization function in continuous time Each k indicates a specific machine type Notation in the IMM heuristic method Iterative number total number of executable tasks on machine type k at iteration R; executable in the sense of precedence constraints arrive time for task l, l L k (R) release time for machine-id m of type k m C k a -to- mapping from task-id l {,,..., L k (R)} to machine-id mi {,,..., C k } mi(l) Π(L k (R) C k ) Mean Release Time of all machines after scheduling Mean Completion Time of all jobs Makespan of scheduling Total Wait count Mean Wait Time Max Wait Time Mean percentage of Machine Utilization of all that type. For the multiple solutions in machine dispatching, which is mentioned previously in SD-, it can be explained that in Fig. (b), exchanging the machine-id (fractional part of machine scheduling) will not affect the task scheduling. We further group the Gantt chart in colors, for the detailed readers to verify that Fig. (a) and Fig. (b) are actually the same solution. In Fig. (a), the same color represents the same machine type, while in Fig. (b), the same color represents the same job-id. III. A 0- FORMULATION A 0- formulation is proposed by [], which might be the only solvable model for rigorous multi-machine problems. ob Id Integer: Machine Type; Fraction: Machine-Id MP PM PM PM PMP M MP PM PM PM P M MP PM PM PM PMP M MP PM PM PM PM PM MP PM PM PM PM PM MPM PM PM PM PM PM P 0 0 0 0 0 0 P P P P P P P P P P P P P P P P P (a) schedule (by job) ob Sequence Generation, Y-Group is Machine P P P P P P P P P P 0 0 0 0 0 0 P P P P P P P P P (b) schedule (by machine type (integer) and ID(fraction)) A. Decision variable Fig.. Sample Schedule Before formulating the problem in discrete time domain, one has to estimate a proper time unit U T R, with which the continuous time domain is discretized to T N s in total. This estimation is introduced [] [8], and the total time period U T T could be available by heuristic solution. In discrete time domain, t {,,..., T } is used to represent each. A binary decision variable is X ijt, where if process j in job i starts by time t inclusively; X ijt = if process j in job i 0 has not yet started time at t. There are following constraints by assumption: X ijt X i,j,t+ 0, i, j, t {,,..., T }. () X ijt {0, } i, j, t {,,..., T }. () Inequality () assumes that every task is non-preemptive.

{ } Xi,j,t X i,j,t pi,j if t>p i,j 0, i, j {,..., o X i,j,t if t p i }. () i,j { if t>pij (X ijt X ) } i,j,t pij C if t p ij X k 0, k {,,..., K} () ijt i,j:m ij=k B. Constraints on task precedence and machine capacity Task precedence constraint is specified as inequality (), which means that in-process wait is allowed. We name it to be an Infinite Wait Buffer because the model does not specify on: wait buffer capacity, which is usually related with machine settings, upper and lower bounds on wait time, which is usually from specifications of task schedule. Machine capacity constraint is stated as the inequality (), which is well studied in [8]. C. Objective functions There are usually two types of criterions CRI- and CRI-: CRI-:The objective is to minimize the makespan, which by nature, is to minimize the time length from the starting time of very first task to completion time of the very last task. CRI-:The objective is to minimize the sum of weighted tardiness, which actually, is to minimize some areas. Their formulations are following: CRI-:For a general job-shop problem, two types of dummy variables {X S,t,X E,t : t =,,..., T } are introduced to formulate the Start time of very first task, and the End time of the very last task. See () and the inequality constraints () and (). minimize ( X E,t ) t ( X S,t ) () t X i,j,t X S,t 0, i, j, t () X E,t X i,j,t 0, i, j, t () CRI-:The most generalized formulation introduces two lists of parameters, W i : i =,,..., N for each job s weight (or importance) and d i : i =,,..., N for each job s due time. For a special kind of flow shop with some sequencing constraints like [8], by adjusting the parameter W i, (8) represents either minimizing the makespan or minimizing the sum of weighted tardiness. minimize i (W i t>d i p i,oi ( X i,oi,t)) (8) D. An empirical comparison of above two criterions Classical jobshop problems are usually to minimize the makespan [] []. However, we observe that the overall final machine release time, which is more important in our opinion especially for multi-machine problems and it is related with the sum of weighted completion time. Some experiments are given to compare the two criterions, the sample problems are chosen to be {MT,MT0} at machine capacity C k {,,,...}. Some terms are defined at first. There is wait between i th job s j th process and its precedence process iff. there is Ti,j e T ij s ; i =,..., N, j =,..., o i. Total Wait: TW - the total element count in {(i, j) Ti,j e T ij s,i=,..., N, j =,..., o i}; Max Wait Time: WT M = max{tij s T i,j e i =,..., N; j =,..., o i }; Mean Wait Time: WT = TotalWaitTime T otalw ait = {T s i,j ij T e i,j i=,...,n;j=,...,oi} TW. Relation of continuous variable Tij s and discrete variable X ijt are studied in [8] and listed as follows: X i,j,t == 0 X i,j,t == Tij s = t,i th job s j th process starts at the t. For the terms related with the machine utilizations, our definition is based on previous work [8] w.r.t. the construction of machine utilization function M k (t). Their definitions are shown as following. t Mean Machine Utilization for type k: M k(t)dt C k ; k Mean Utilization All Machines: AM U = M k(t)dt t, k C k where the integration is from the very first time when the machine type k is put to use to the very last time when the machine type k stops using. Mean Complete Time is defined as CTA = T e i,o i N. For the discrete formulation under assumption that all jobs first process is arrived at time 0, it is equivalent Machine Type, and PM Id to i t>0 ( Xi,o i,t) N. ob Sequence Generation, Y Group is Machine 0 0 0 0 0 0 0 0 (a) To minimize sum of completion time (by CRI-) Machine Type, and PM Id ob Sequence Generation, Y Group is Machine 0 0 0 0 0 0 0 0 (b) To minimize the makespan (by CRI-) Fig.. Criterion Comparison: One-machine MT problem, grouping by machine

Fig. demonstrates a one-machine MT optimal solution by CPLEX. Fig. (a) is to minimize the sum of completion time (or criterion- with d i =0,W i =, i), while Fig. (b) is to minimize the makespan as criterion-. The authors suggest to focus on only comparison of the length (makespan) and the area of last task with x-axis (sum of weighted tardiness). Here, we use gray figure because it is a -machine MT problem, in contrast with Fig. which is -machine MT problem. It should be noticed that Fig. is for two representation of the same problem (actually criterion-) while Fig. is for different problems (criterion- in Fig. (a) and criterion- in Fig. (b)). Precisely, Table IV is used to compare {, }-machine by CRI-{, } on the MT and the MT0 problems. All schedule solutions are done by CPLEX. From Table IV, we have following observations: When the total number of machines is increasing, both the makespan and the sum of weighted tardiness are dropping. When it reaches some level, both will keep the same value. This is similar to the Infinite Resource Model in [8]. The sum of weighted tardiness (criterion-) model is consistently better in the wait property ( i.e. less in total wait count and the wait time) and the mean complete time than makespan model (criterion-) For the mean machine release time, the -machine problem and the multi-machine problem are contrary to each other, while for the makespan and the machine utilization, there is no consistency. E. Complete model for comparison with heuristic method Based on above observation, we will further study our heuristic method for multi-machine job-shop with CRI- as objective to minimize. For simplicity without loss of generality, d i =0,W i =, i. The complete model to benchmark our IMM heuristic method is shown as follows. SP minimize subject to: MultiMach InfWait SumCompleteTime(8) Inequality() Inequality() Inequality() 0- Variable as() This is the formulation for CPLEX solution of a -machine MT problem and shown in Fig.. IV. HEURISTIC SOLUTION: ITERATIVE MINIMIZATION OF A MICRO-MODEL The micro-model is defined for one particular machine type k with capacity C k, on which, totally L k (R) processes are to be done. This model is solved and updated iteratively for the overall multi-machine SP. R is a counter for iterations, and L k (R) is the total number of executable tasks on machine type k. Executable means satisfying sequencing constraints. A. Minimization of a micro-model In the Micro-model, there are C k exchangeable and renewable machines, serving L k (R) tasks. Each machine has a release time t r m : m {,,..., C k } while each task has an arrival time t a l : l {,,..., L k (R)} and processing time p l : l {,,..., L k (R)}. t r m is a time for a particular machine m to be ready to start a new task. t a l is a time for task l to be ready to start. It is the completion time of task l s precedence task which is specified in sequencing constraint. p l, l L k (R), processing time for task l. The problem is to minimize the sum of completion (or end) time. The summation is done for min{c k,l k (R)} tasks. Minimize: mi(l) mi(l) {,...,C k },l {,,...,L k (R)} t e l (9) subject to: t s l = max{t a l,t r mi(l) } l (0) t e l = t s l + p l, l () decision variable: mi(l) Π(L k (R) C k ) () t s l,t e l R, l =,,..., L k (R) () This micro-model is to minimize the sum of end time in schedulable and executable task schedule as in (9) under the constraints of (0) and () with variable mapping (), and the time variable lists (). From (9), total number of items in the summation is min{c k,l k (R)} where C k is for scheduleable constraints by the machine availability and L k (R) is for executable constraints of precedence. In (9), mi(l) is a -to- mapping from the task-id l {,,..., L k (R)} to the machine-id m = mi(l) {,,..., C k } There is a post-process after solving above minimization micro-model, which is to update the machine release time for next group of tasks, as shown in (). t r mi(l) = te l, l executable & schedulable () B. Three scenarios and computational complexity According to the relative value of C k and L k (R), there are totally scenarios for consideration: IMM:L k (R) C k =, this is actually a one-machine problem. This can be solved optimally by enumeration, which is shown in Proposition-. IMM:C k L k (R), the total number of machines is not less than the total number of tasks. The optimal solution for this case is following in Proposition-. IMM:L k (R) >C k >, the total number of machines is less than the total number of tasks. Proposition-: For IMM, the single machine is m and the task list is l {,,..., L k (R)}. The optimal objective value is following: ( ) min min {p l + t r l:t a m }, min {p l + t a l tr m l:t a l } l >tr m Proof: Done by enumeration.

Proposition-: For IMM, the optimal solution is to assign earliest available L k (R) machines for tasks by first come first serve rule. Proof: We begin with tasks l,l on parallel machines m,m. The processing time and arrival time of the tasks are {p l,t a l } and {p l,t a l }, while the machine release time of the machines are t r m,t r m. Without loss of generality, we assume that t a l t a l and t r m t r m. The optimal objective value is p l + max{t a l,t r m } + p l + max{t a l,t r m } because it can be verified by all the possible cases as following: t a l t a l t r m t r m t a l t r m t a l t r m. t r m t a l t r m t a l t r m t r m t a l t a l The first come first serve rule will result as following mapping mi(l )=m,mi(l )=m, so it is true for -task--machine case. For general cases, C k,l k (R), for any mapping solution mi(l), if {l,l,m,m }, s.t. mi(l )=m,mi(l )= m, and (t a l t a l )(t r m t r m ) < 0. By swapping the mapping to first come first serve order will always achieve a better solution. For IMM, one solution strategy is to schedule one machine id after another and repeatedly apply Proposition- to be solved. This is not an optimal solution, but a fast feasible solution. The optimality depends on machine id sequencing. Computational complexity for Proposition- is O(L k (R)), and for Proposition- is O (L k (R) ln(l k (R))), while the fast feasible solution of IMM is O(L k (R) C k ) V. REPORT FOR THE EXPERIMENTS A. Benchmark on classical problems {MT, MT0} a multimachine version There are pairs of experiments to test our proposed IMM-heuristic method with CPLEX solution. The job-processmachine setting is exactly same as the MT and MT0 problems. First pairs are the MT with {,, } machine(s) for each type. Last pairs are the MT0 with {,, }- machine(s) for each type. The results are shown in Table V. There are following points for notice: CPLEX solver engine is stopped after one hour and return the best feasible solution; both CPLEX and IMM-heuristics solver runs on Intel(R) Xeon(R) CPU of X0. GHz with.ghz &.0 GB RAM; IMM-heuristic method runs about seconds for MT0 problems or second for MT problems. From the table, we can see that the optimality of IMMheuristic method becomes better when total number of machines are increased. Except for MT0 one-machine problem, IMM-heuristic method achieves better solution than CPLEX in other problems. We observe that for one-machine MT0 problem, CPLEX [] failed to have a feasible solution within one hour. It is because the 0- formulation results as a very large size problem [8]. TABLE II SAMPLE OB LIST IN A SEMICONDUCTOR MANUFACTURING PROBLEM Product Total Number of Daily Production Processes Per ob Throughput (lots) 8 9 Subtotal 09 TABLE III SOLUTION COMPARISON FOR ABOVE SAMPLE OB LIST Methods IMM Rules in ProModel FIFO LIFO SPT Makespan 0 9 B. Comparison with existing job dispatch rules for a semiconductor manufacturing scheduling problem The model of multi-machine SP with an infinite wait buffer is just suitable for schedule application in back-end semiconductor manufacturing which has following features: each job represents particular part (or one lot of chips), whose volume is not so large and has standard size for easy storing; the temperature of the parts does not need strict control. A complex manufacturing floor shop in a semiconductor industry is used as a further test bed in this study. Using ProModel, which is an industrial manufacturing modeling software, a simulation model of the floor shop is created. The specifications of the shop floor are summarized in Fig. and Table III. There are 0 types of machines corresponding to 0 different processes and there are product types, each with its own process flow and planed daily production throughput. Such problem is too hard to be solved by the 0- IP model as in section III, while it can be solved by our IMM-heuristic method by around minute for all 09 jobs. IMM-heuristic method achieves slightly better performance than the existing dispatching rules (FIFO, SPT and etc.) used in ProModel. The problem detailed instance and the solution are given from ftp://imss:@robotics.nus.edu.sg/release/data/imssdram/cisram008/. VI. CONCLUSION AND FURTHER RESEARCH SUGGESTIONS We empirically evaluated the impact of multi-machine consideration on solution of several classical SPs with an infinite wait buffer. Statistics show that the objective of sum weighted tardiness is more suitable for multi-machine SP. Furthermore, an IMM heuristic method has been proposed for a fast feasible solution and the performance is bench-marked with CPLEX solutions. Especially, our IMM heuristic method has following features: It supports fractional processing time; The micro-model considers the machine release time and the task arrival time, which can be extended as an input from the problem of multi-machine SP; It outputs the machine dispatching solution and the machine release time, so the micro-model can be easily applied to construct a huge multi-machine problems;

P P P P0 P P 0 mins (x) mins 0 mins mins mins (x) P P 0 mins 0 mins 90 mins (0x) mins (x0) mins (x0) P 8 mins (x) P8 P9 mins (0x) mins (x0) 00 mins mins 8 mins (x00) mins mins mins mins (x8) st manufacturing line 9 mins (x0) P0 P9 P8 P P P 0 mins (0x) P P P 0 mins (x) 90 mins mins 0 mins (x0) 0 mins (x) 0 mins 0 mins (x0) 0 mins (x0) 0 mins 0 mins mins 90 mins (x0) mins (x0) mins (x) nd manufacturing line P P P P P P P8 P9 P0 0 mins 0 mins (x) P 0 mins mins 0 mins mins (x0) 0 mins mins (x0) 00 mins 00 mins (x0) 0 mins mins 0 mins (x0) 0 mins 0 mins 0 mins mins (x0) 0 mins 80 mins (0x) 0 mins 0 mins 0 mins 0mins 0 mins 0 mins (x0) mins (x0) rd manufacturing line 00 mins mins (x0) A min (bxc) A : processing time b : capacity of machine(unit : lot) c : number of machine Product Product Product Product Fig.. A Semiconductor Manufacturing Problem: Production Line with Types of Products and 0 Types of Machines The overall computational complexity of IMM-heuristic method is not more than O((N K max i=,,...,n {o i }) ) It achieves local optimality for micro-model in scenarios, which are IMM and IMM. The optimality of the overall solution is affected by the sequencing in selection of machine type k at iteration R for solving the Minimization Micro-model and the sequencing of solving IMM during a specific iteration. This, to our opinion, deserves further research. In the future, multi-period consideration should come into picture for better machine utilization and dynamics handler. What s more, a fast solution towards optimality of IMM also deserves further study. Intuitively, the classical model of traveling-salesman is well and deep studied. Afterward, the problems of traveling group with multi agents (or robots), and the case when some parts of the group are ill (or not in best performance) will be further studied. VII. ACKNOWLEDGEMENT Much appreciation goes to Ireneus Wior for his excellent simulation work which makes ProModel a really efficient tool. REFERENCES [].Adams, E.Balas, and D.Zawack. The shifting bottleneck procedure for job shop scheduling, Management Science,, pp.9-0, 988. [] S.D. Wu, E.S. Byeon, R. H. Storer, A graph-theoretic decomposition of the job shop scheduling problem to achieve scheduling robustness, Operations Research, vol., no., pp.-, 999. [] R.L. Graham, E.L. Lawler,.K.Lenstra and A.H.G.R. Kan, Optimization and approximation in deterministic sequencing and scheduling: a survey, Annuals of Discrete Mathematics, pp.8-, 99. TABLE IV COMPARISON OF -MACHINE V.S. -MACHINE AND CRI- (MAKESPAN) V.S. CRI- (SUM TARDI.) ON MT & MT0 PROBLEMS Cri- RT AM T M TW WT M / WT AMU CTA te- time time time per time rion slot slot count slot cent slot MT-.0 /..0%. Cap.8 8 /.0.9%. MT-. /. 8.%. Cap.0 /.0.%. MT0-8. 9 8 /..8%. Cap.8 /..% 8.9 MT0-. 9 0 /..%.8 Cap.8 0 / 0. 0.0%.8 TABLE V PERFORMANCE BENCH MARK (IMM-HEURISTICS V.S. CPLEX) RT AM T M TW WT M / WT AMU CTA Prob- Me- time time time per time lem thod slot slot count slot cent slot MT- IMM.8 0 0 /. 9.% 8.8 Cap CPLX.8 8 /.0.9%. MT- IMM. 8 /.0.%.8 Cap CPLX.0 /.0.%. MT- IMM.0 0 0/0.0.%.8 Cap CPLX 8. 0 0/0.0.%.8 MT0- IMM 9. 9 0 / 9..8% 8. Cap CPLX - 90 [] - -/- - - MT0- IMM 8. 0 /..% 8.8 Cap CPLX.8 /..% 8.9 MT0- IMM.8 90 / 9. 0.%. Cap CPLX.8 0 / 0. 0.0%.8 [] E. Kutanoglu, S.D. Wu, Improving scheduling robustness via preprocessing and dynamic adaptation, in IIE Transactions, vol., pp.0-, 00. [].F. Muth and G.L. Thompson (eds.) Industrial scheduling, Prentice-Hall, Englewood Cliffs, N. 9. [] M. Drozdowski, Scheduling multiprocessor tasks - an overview, European ournal of Operational Research, vol. 9, pp. -0, 99. [] A. Pritsker, L. Watters, and P. Wolfe, Multiproject scheduling with limited resources: a zero-one programming approach, Management Science: Theory, vol., no., pp.9-08, 99. [8] Z.. Zhao, T.Y.Leong, S.S.Ge, and H.C.Lau, Bidirectional flow shop scheduling with multi-machine capacity and critical operation sequencing, Proceedings IEEE-ISIC, International Symposium on Intelligent Control, 00, pp. -.