To minimize order earliness before transportation, the favorable completion time for each order is their corresponding flight departure time.. Once the completion time for the last order
Trang 1processing sequence is reversed, and the schedule time frame is reversed back to forward time frame
The backward scheduling considers inserted idle times between processing of orders Forward scheduling is a straightforward method that schedules jobs one by one from the beginning time of the planning period The main objective is to make sure that each job can meet its due date The forward scheduling methodology presented in the previous section does not minimize AWT effectively This is overcome by adopting a backward approach that inserts idle times between order groups
The last flight’s departure time determines the completion time for the last order to be scheduled in the assembly in the planning period To minimize order earliness before transportation, the favorable completion time for each order is their corresponding flight departure time Hence, within each group, orders are scheduled one by one without inserted idle time in backward direction from the order group’s due-date Once the completion time for the last order to be scheduled in each group is determined, the release times for the preceding orders is calculated by subtracting its processing times from the release time of the succeeding orders Idle times are inserted only between order groups When the release time of the first order in the succeeding group is later than the current order group’s due date, idle time is inserted between the two groups Thus the last job of the current order group is scheduled to complete at the corresponding flight departure time The pseudo code description of the backward scheduling logic is presented below:
If (job i is the last job in flight j) then
If (flight j is the last flight) then
Release time(job i, flight j) =Departure time(flight j) –
Processing time(job i, flight j)
Else
If (Release time (the first job, fight j+1) is earlier than
Departure time(flight j)) then
Release time (job i, flight j) =Release time (the first job,
flight j+1) – Processing time(job i, flight j)
Else
Release time (job i, flight j) =Departure time (flight j) –
Processing time (job i, flight j)
End if
End if
Else
Release time (job i, flight j) =Release time (job i+1, flight j) –
Processing time (job i, flight j)
End if
Computational results indicate that BSSH outperforms FSSH in terms of AWT For detailed results of the comparison, it can be referred to Li et al (2005)
4 Single Machine Assembly Scheduling Problem with random delay
Today’s manufacturing environment is highly time varying, and most of the components in the supply chain have stochastic nature of objectives and constraints due to environmental uncertainties and executional uncertainties (Szelke & Markus, 1997) These uncertainties can
be triggered by machine breakdowns, shortage of materials, interruption of machine
Trang 2Synchronized scheduling of manufacturing and 3PL transportation 411operations when their performance violates quality control standards, etc The occurrence of interruptions and the time required for assembly to resume from the interruptions are often highly stochastic in nature These issues always lead to unexpected delays in assembly The deterministic schedule obtained prior to the start of assembly processing is affected and becomes inappropriate Thus, the deterministic schedule should be updated so as to minimize the disturbances due to uncertainties The scenario of assembly process delays caused by the stochastic events is studied and a schedule repair heuristic is presented to minimize the influence of stochastic events on deliveries
There are two types of orders, viz., regular (non-delayed) orders and delayed orders Regular (non-delayed) orders are the orders that are released into the shop as per the predetermined transportation allocation Orders that have not been processed in assembly because of unexpected uncertainties are referred as delayed orders The decision consists of the schedule of the delayed orders which have missed their earlier departure due-dates along with non-delayed orders A delay is characterized by a start time and duration It may result from machine breakdowns, shortage of materials, interruption of machine operations when their performance violates quality control standards, etc The jobs completed prior to the delay are not taken into account Hence, this section considers a situation of rescheduling the delayed orders along with non-delayed orders with a possibility of identifying a sequence in which non-delayed orders in the original schedule can reach their destination on time It is also to be stated again that if an order misses it scheduled departure time it can only be shipped by a commercial fight at a higher cost Basically, this possibility is considered to avoid a situation of very high disruptions caused in relation to the customer deliveries
4.1 Problem formulation
The formulation presented in this section assumes that the new schedule obtained does not include unexpected delays in the remaining time of the planning period However, if delay occurs at any future time point in the planning period, a new schedule is generated again considering the remaining time horizon Thus, the formulation considers a decision situation of re-scheduling both delayed and non-delayed orders without considering unexpected future delays The input data consists of a set of orders to be processed, the machine capacity, allocation of orders to flights, transportation cost by commercial flight, and delivery earliness/tardiness cost per unit time for each order The objective is to minimize the total waiting cost between assembly and transportation, the total transportation cost, total delivery earliness/tardiness costs, and the penalty costs of missed allocations The following notation is defined before presenting the Mixed Integer Programming (MIP) model
i the job/order index, i=1, 2, …, Nc, Nc is the total number of jobs considered at the
decision instant;
t the delay start time;
DU the delay duration;
R i the release time of job i;
P i the processing time of job i;
C i the assembly completion time of job i
ǃ 1i per unit transportation cost of job i when transported by a commercial flight;
ǂ the per hour earliness penalty of job i for assembly and it is assumed that ǂ = Q;
Trang 3PI ij 1 if job i precedes job j immediately, 0 otherwise;
EF if 1 if assembly completion time of job i is earlier than flight f’s departure time,
otherwise 0;
PA if the predetermined allocation, 1 if job i is predetermined to be allocated to flight f by
the ILP model, 0 otherwise;
TC if the transportation cost matrix which is determined by the ILP model
The model is expressed as follows:
N N i i
PI
' 1 0 1
0
N j j
PI
' ( ' 1) 0
Trang 4Synchronized scheduling of manufacturing and 3PL transportation 413
The decision variables are R i , PI ij , EF if The objective function includes the two early and two late penalties for the orders Early penalties are incurred when assembly of the order is completed earlier than its transportation departure time The late penalties are the special flight transportation cost when orders miss their predetermined flight Since the assembly scheduling model considers synchronization with transportation, early and late penalty for assembly together with final delivery early and late penalties are taken into account in this model The first term in the objective function is the cost of early penalties of the orders when they can catch its pre-determined flight The early penalties consist of earliness cost before transportation, predetermined flight transportation cost, final delivery earliness/tardiness costs The second term in the objective function is the late penalties of the orders when they miss their predetermined flights The late penalties consist of the commercial flight transportation cost, the final delivery earliness/tardiness costs
Note that two dummy jobs are created in order to facilitate the representation of the immediate precedence of the jobs They are the first and the last job which has zero quantity Constraint (12) represents the relationship among the release time, completion time and
processing time of each order Constraint (13) sets the release time of the first job, R 0, to the
assembly resume time, which is the sum of delay start time t and the delay duration DU Constraint (14) sets the release time of the last job, R N’+1, larger or equal to the total processing time of all the jobs These two constraints denote that there might be inserted idle time between the release times of each two adjacent jobs Constraint (15) and (17) ensure that all the jobs should have a precedence job except the first job Constraint (16) and (18) ensures that all the jobs should have a successive job except the last job Constraint (19) represents the completion time relationship between any two jobs Constraint (20) and (21) indicate that when a job’s completion time is earlier than a flight departure time, it can catch
the flight Constraint (22) indicates that PI ij is 0-1 integer variable
4.2 NP-completeness proof
To prove the assembly scheduling problem is NP-hard, it is reduced to a single machine scheduling problem with distinct due windows and job dependent earliness/tardiness penalty weights The reduced problem is then proved to be NP-hard Thus, the assembly scheduling problem investigated in this chapter is also NP-hard In the following, the equivalence is established between the reduced problem and the problem studied by Wan & Yen (2002), which is NP-hard
The reduced problem: For the present discussion, the air transportation cost and time is ignored, as well as the final delivery earliness penalties This is equivalent to say that these parameters take value zero Therefore, the problem basically becomes a scheduling problem with distinct due-windows and job dependent earliness/tardiness penalty weights for each job The due-window has a length equal to the difference between the final customer delivery time and transportation departure time
Distinct due-windows: There is waiting cost if an order completed earlier than its assembly due date As there is no earliness cost for final delivery, only tardiness cost is taken into account if the order is delivered later than the final due-date Also, it is assumed that the air transportation cost and time are ignored Therefore, the assembly of orders completed between assembly due-date and final due-date lead to no penalty It is obvious that the number of flights corresponds to the number of due-dates for assembly Thus, the assembly
Trang 5due-date is distinct In addition, the final due-date of each order is distinct Hence the reduced problem is a distinct due windows scheduling problem
Job dependent earliness penalty: If assembly of a job is completed earlier than its due date, there is a waiting penalty, which depends on the product of the early time and the quantity
of the job
Job dependent tardiness penalty: As assumed that if an order is delivered later than its final due date, a late delivery penalty, which is the product of lateness time length and the order quantity, is incurred
Wan & Yen (2002) show that the single machine scheduling problem with distinct due windows to minimize total weighted earliness and tardiness is NP-hard As the reduced assembly scheduling problem is equivalent to the problem studied by Wan & Yen (2002), the prior problem is NP-hard Therefore, the assembly scheduling problem studied in this chapter is NP-hard
4.3 Schedule Repair Heuristics
In many production situations, it is not desirable to reschedule all the non-delayed jobs along with the delayed jobs Instead, the required changes should be performed in such a way that the entire system is affected as little as possible (Roslöf, et al 2001) This process is termed schedule repair in this chapter To repair an unfinished schedule which has delayed orders, its valid parts (or the remaining unaffected schedule) should be re-used as far as possible, and only the parts touched by the disturbance are adjusted (Szelke & Markus 1997) At the beginning of assembly, the schedule obtained using BSSH is executed Suppose
the delay is caused by machine breakdown starting from time t and the assembly resumes after time length DU Jobs that are to be released between t and t+DU in original schedule
are only influenced by the disturbance In line with the concept of schedule repair, the
schedule after time t+DU is valid part and should be kept unchanged The schedule of the influenced jobs between time t and t+DU should be adjusted
The schedule generated using BSSH methodology will have idle times between job groups, during which the assembly does not work at its full capacity The idle time can be utilized to process the delayed jobs Therefore, a heuristic to repair the disturbed schedule is proposed
is this section The main motive is to insert the disturbed job into the idle time spans so that the assembly utilization is improved at the advantage of minimizing the delay penalties for the jobs If still some jobs cannot be inserted into the idle time span, they are appended after the last job of the final schedule Figure 2 illustrates this idea in detail
7L PH
Figure 2 Illustration of schedule repair heuristic
Trang 6Synchronized scheduling of manufacturing and 3PL transportation 415
In Figure 2, the x axial denotes time The blocks denote the scheduled jobs During time t to
t+DU, the jobs predetermined to be processed are denoted using shaded blocks The delayed jobs are to be inserted into the idle times among the job groups in the BSSH schedule as denoted by the arc in the figure using the following heuristic
The schedule repair heuristic (SRH):
1 Sequence the jobs scheduled between t and t+DU by Longest-Processing Time (LPT)
first rule
2 Insert disturbed jobs into the idle time spans between order groups Suppose there are
N d disturbed jobs and are sequenced by LPT rule Let the BSSH schedule has S idle time spans from time t+DU till the end of the planning period The detailed steps are: 2.1 i=1, j=1
2.2 If Length[span(i)]>ProcessingTime[job(j)], insert job j into span i.
5 Conclusion and Further Research
In this chapter, the formulation of synchronized scheduling problem of production and transportation is presented The solution methodology is to decompose the overall problem into two sub-problems, i.e., the transportation allocation problem and machine scheduling problem The 3PL transportation allocation problem is formulated using an integer programming model It is shown that the problem is solvable in polynomial time Furthermore, the formulations for single machine with and without random delay are presented The methods to solve these two problems are summarized Further research can address the assembly sub-problem with parallel machines or sequential machines, etc
6 References
Chen, Z.L and Vairaktarakis, G.L., 2005 Integrated Scheduling of Production and
Distribution Operations Management Science, 51(4), 614-628
Garcia, J.M., Lozano, S and Canca, D., 2004 Coordinated scheduling of production and
delivery from multiple plants Robotics and Computer-Integrated Manufacturing, 20(3),
191-198
Li, K.P., Ganesan, V.K and Sivakumar, A.I., 2005 Synchronized scheduling of Assembly and
Multi-Destination Air Transportation in Consumer Electronics Supply Chain
Li, K.P., Ganesan, V.K and Sivakumar, A.I., 2006 Scheduling of Single Stage Assembly with
Air Transportation in A Consumer Electronics Supply Chain Computers &
Trang 7Panwalkar, S.S., Smith, M.L., and Seidmann, A., 1982, Common due-date assignment to
minimize total penalty for the one machine scheduling problem Operations
Roslöf, J., Harjunkoski, I., Björkqvist, J, Karlsson, S & Westerlund, T (2001) An MILP-based
reordering algorithm for complex industrial scheduling and rescheduling
Szelke, E & Markus G (1997) A learning reactive scheduler using CBR/L Computers in
Wan, G.H & Yen, B.M.P.C (2002) Tabu search for single machine scheduling with distinct
due windows and weighted earliness/tardiness penalties European Journal of
Winston, W.L (1994) Operations research: applications and algorithms (3rd edition)
(Duxbury, California)
Trang 8Scheduling for Dedicated Machine Constraint
Arthur Shr1, Peter P Chen1 and Alan Liu2
1Department of Computer Science, Louisiana State University,
2Department of Electrical Engineering, National Chung Cheng University
1U.S.A., 2Taiwan, R.O.C
1 Introduction
We have proposed the heuristic Load Balancing (LB) scheduling (Shr et al., 2006a) (Shr et al., 2006b) (Shr et al., 2006c) and Multiagent Scheduling System (MSS) (Shr, et al 2006d) approaches to provide solutions to the issue of dedicated photolithography machine constraint The dedicated photolithography machine constraint, which is caused by the natural bias of the photolithography machine, is a new challenge in the semiconductor manufacturing systems Natural bias will impact the alignment of patterns between different layers This is especially true for smaller dimension IC for high technology products A study considered different production control policies for semiconductor manufacturing, including a “machine dedication policy” in their simulation, has reported that the scheduling policy with machine dedication had the worst performance of photolithography process (Akcalt et al., 2001) The machine dedication policy reflects the constraint we are discussing here
In our previous work, along with providing the LB scheduling or MSS approaches to the dedicated machine constraint, we have also presented a novel model––the Resource Schedule and Execution Matrix (RSEM) framework This knowledge representation and manipulation method can be used to tackle the dedicated machine constraint A simulation system has also been implemented in these researches and we have applied our proposed scheduling approaches to compare with the Least Slack (LS) time approach in the simulation system (Kumar & Kumar, 2001) The reason for choosing the LS scheduling approach was that this approach was the most suitable method for solving the types of problems caused
by natural bias at the time of our survey
The LS scheduling approach has been developed in the research of Fluctuation Smoothing Policy for Mean Cycle Time (FSMCT) (Kumar & Kumar, 2001), in which the FSMCT scheduling policy is for the re-entrant production lines The entire class of the LS scheduling policies has been proven stable in a deterministic setting (Kumar, 1994) (Lu & Kumar, 1991) The LS approach sets the highest priority to a wafer lot whose slack time is the smallest in the queue buffer of one machine When the machine becomes idle, it selects the highest priority wafer lot in the queue buffer to service next However, the simulation result has shown that the performances of both our proposed LB and MSS approaches were better than the LS method Although the simulations were simplified, they have reflected the real situation we have met in the factory
Trang 9Extending the previous simulations, we introduce two different types of simulation for the dedicated machine constraint in this paper One is to show that our proposed LB scheduling approach is still better than the LS approach under the different capacity and service demand of the wafer lots The case of setting with different photolithography machines represents the different capacity of the semiconductor factory, while the case of setting with different photolithography layers represents the different products’ demand for the semiconductor factory The other simulation is to show the situation of the thrashing phenomenon, i.e., the load unbalancing among the photolithography machines during the process when we apply the LS approach We have also learned that the load unbalancing is consistent with different photolithography machines
The rest of the paper is organized as follows: Section 2 describes the motivation of this research including the description of dedicated machine constraint, the load balancing issue, and related research In Section 3, we present the construction procedure and algorithms of the RSEM framework to illustrate the proposed approach for dedicated machine constraint The proposed LB scheduling approach is presented along with an example of the semiconductor factory in Section 4 Section 5 shows the simulation results and we conclude the work in Section 6
2 Motivation
2.1 Dedicated Machine Constraint
Dedicated machine constraint forces wafer lots passing through each photolithography stage to be processed on the same machine The purpose of the limitation is to prevent the impact of natural bias and to keep a good yield of the IC product Fig 1 describes the dedicated machine constraint When material enters the photolithography stage with dedicated machine constraint, the wafer lots dedicated to machine X need to wait for it, even
if machine Y is idle By contrast, when wafer lots enter into non-photolithography stages without any machine constraints, they can be scheduled to any machine, A, B, or C
Non-Photolithography Stages
Machine A Machine
B
Machine C
Machine
X
Machine Y
Machine ZBusy
Trang 10Scheduling for Dedicated Machine Constraint 419Presently, the dedicated machine constraint is the most significant barrier to improving productivity and fulfilling the requests of customers It is also the main contributor to the complexity and uncertainty of semiconductor manufacturing Moreover, photolithography
is the most important process in semiconductor manufacturing A good yield of IC products
is heavily dependent on a good photolithography process At the same time, the process can also cause defects Therefore, the performance of a factory particularly relies on the performance of photolithography machines
2.2 Load Balancing Issue
The load balancing issue is mainly derived from the dedicated photolithography machine constraint This happens because once the wafer lots have been scheduled to one of the machines at the first photolithography stage, they must be assigned to the same machine in all subsequent photolithography stages Therefore, if we randomly schedule the wafer lots
to arbitrary photolithography machines at the first photolithography stage, then the load of all photolithography machines might become unbalanced Any unexpected abnormal events
or a breakdown of machines will cause a pile-up of many wafer lots waiting for the machine and cause a big problem for the factory Therefore, the unbalanced load among photolithography machines means that some of the photolithography machines become idle and remain so for a while, due to the fact that no wafer lots can be processed, and the other
is always busy while many wafer lots bound to this machine are awaiting processing As a result, some wafer lots are never delivered to the customer on time, and the performance of the factory decreases Moreover, it cannot meet the fast-changing market of the semiconductor industry
2.3 Related Research
The scheduling problems of the semiconductor manufacturing systems or photolithography machines have been studied by some researchers By using a queuing network model, a ''Re-Entrant Lines'' model has been proposed to provide the analysis and design of the semiconductor manufacturing system Kumar's research described several scheduling policies with some results concerning their stability and performance (Kumar, 1993) (Kumar, 1994) These scheduling policies have been proposed to deal with the buffer competing problem in the re-entrant production line, wherein they pick up the next wafer lot in the queue buffers when machines become idle A study proposed a stochastic dynamic programming model for scheduling a new wafer lot release and bottleneck processing by stage in the semiconductor factory This scheduling policy is based on the paradigm of stochastic linear quadratic control and incorporates considerable analysis of uncertainties in products' yield and demand (Shen & Leachman, 2003) A special family-based scheduling rule, Stepper Dispatch Algorithm (SDA-F), is proposed for the wafer fabrication system (Chern & Liu, 2003) SDA-F uses a rule-based algorithm with threshold control and least slack principles to dispatch wafer lots in photolithography stages Many queuing network scheduling policies or methods have been published to formulate the complexity of semiconductor manufacturing problems; however, they need to be processed off-line and cannot respond rapidly to dynamic changes and uncertainty in the environment
Vargas-Villamil, et al proposed a three-layer hierarchical approach for semiconductor reentrant manufacturing (Vargas-Villamil et al., 2003), which decomposes the big and intractable problems of semiconductor manufacturing into smaller control problems It
Trang 11reduces the effort and frequency of the control decisions The scheduling problems of the photolithography machines have been studied by some researchers Their proposed scheduling methods make an effort to improve the performance of the photolithography machines Two approaches were reported to use simulations to model the photolithography process One of them proposed a Neural Network approach to develop an intelligent scheduling method according to a qualifying matrix and lot scheduling criteria to improve the performance of the photolithography machines (Mönch et al., 2001) The other approach decides the wafer lots assignment of the photolithography machines at the time when the wafer lots are released to the manufacturing system in order to improve the load-balancing problem (Arisha & Young, 2004) These researches have emphasized that photolithography process scheduling issues are the most important and critical challenge of the semiconductor manufacturing system However, it might be difficult to have the proper training data to build a Neural Network scheduling system It is also inefficient to manually adjust lot scheduling criteria or lot assignment to fit the fast-changing market of semiconductor manufacturing Moreover, their proposed scheduling methods did not concern the dedicated machine constraint
3 Resource Schedule and Execution Matrix (RSEM) Framework
In this section, the procedure and algorithm associated with the Resource Schedule and Execution Matrix (RSEM) framework are presented The RSEM framework construction
process consists of three modules including the Task Generation, Resource Calculation, and
The first module, Task Generation, models the tasks for the scheduling system and it is represented in a two-dimensional task matrix One dimension is reserved for the tasks, t 1 , t 2 ,
…, t n ; the other represents the periodical time events (or steps) s 1 , s 2 , …,s m Each task has a sequential Process Pattern to represent the resources it needs to go from the raw material to
a product during the process sequence and we put the process pattern in an array We
define each type of resource as r k , k =1 to o For example, the process pattern, r 1 , r 2 , …, r o ,
means that a particular task needs the resources in the sequence of r 1 first and r 2 following
that until r o is gained Therefore, the matrix looks as follows:
Trang 12Scheduling for Dedicated Machine Constraint 421
The symbol r k in the task matrix entry [t i , s j ] represents that task t i needs the resource r k at
the time s j If t i starts to be processed at s q , and the total number of steps needed for t i is p, we will fill its process pattern into the matrix from [t i , s q ]… to [t i , s q+p-1 ] with r k , k =1 to o All the tasks, t 1 …t n , follow the illustration above to form a task matrix in the Task Generation
module To represent dedicated machine constraint in the matrix for this research, the
symbol r kx , a replacement of r k , represents that t i has been dedicated to a particular instance x
of a resource type r k at s j One more symbol w k represents the wait situation when the r k cannot allocate to t i at s j The situation can be that r k is assigned to other higher priority tasks
or it is breakdown This symbol will be used in the Resource Allocation module
The Resource Calculation module summarizes the value of each dimension as the factors for the scheduling rule of the Resource Allocation module For example, by counting the task pattern of the row t i in the task matrix, we can determine how many steps t i processed after
it finished the whole process We can also realize how many wait steps t i has had by
counting w k from the starting step to the current step in that row of the task matrix
Furthermore, if we count the symbol r kx at the column s j, we can know how many tasks will
need the machine m x of resource r k at s j
We need to generate the task matrix, obtain all the factors for the scheduling rules, and build
up the scheduling rules before starting the execution of the Resource Allocation module The
module schedules the tasks to the suitable resource according to the factors and predefined
rules To represent the situation of waiting for r k ; i.e when the resource of r k is not available
for t i at s j , then we will not only insert the symbol w k in the pattern of t i , but will also need to
shift one step for the process pattern following t i in the matrix Therefore, we can obtain the
updated factor for the number of tasks waiting for r k at s j by simply counting w k at the
column s j We can also obtain the factor for the number of wait steps t i has by counting w k,
1≤k≤o by the row t i in the matrix
Our proposed approach can provide two kinds of functions One is that, to define the factors and resource allocation rules according to expert knowledge, we can quickly determine the allocation of resources at each step by the factors summarized from the task matrix The other is that we can predict the bottleneck or critical situation quickly by executing proper steps forward This can also evaluate the predefined rules to obtain better scheduling rules for the system at the same time Moreover, by using different predefined rules and factors, the RSEM framework could apply to different scheduling issues or constraints of semiconductor manufacturing
3.1 Procedure for Constructing the RSEM framework
To better understand our proposed scheduling process, the flowchart of the RSEM framework construction process is shown in Fig 2 The process of using the RSEM
framework starts from the Task Generation module, and it will copy the predefined task patterns of tasks into the matrix Entering the Resource Calculation module, the factors for the
tasks and resources will be brought out at the current step This module will update these factors again at each scheduling step The execution of the scheduling process is in the
we will return to check for new tasks and repeat the whole process again by following the flowchart We will exit the scheduling process when we reach the final step of the last task if there is still no new task appended to the matrix After that, the scheduling process will restart immediately when the new tasks arrives in the system
Trang 13Figure 2 Flowchart of the RSEM framework construction process
3.2 Algorithms Associated to the RSEM framework
To make the construction process of the proposed RSEM framework more concrete, three
algorithms for the Task Generation (Algorithm-1), Resource Calculation (Algorithm-2), and
In Algorithm-1, the procedure appends tasks to the task matrix by copying the task patterns
of the tasks in the matrix It will start from the start step s s and go to the end step s e of each
task The s s will not start before the current step s c and the s e should not end beyond the
maximum step m of the matrix in the system The task matrix will be passed to and
manipulated at the other two algorithms