Moaz Magdy Tawfeek
Ain Shams University, Cairo, Egypt
Moazmagdy91@gmail.com
Yomna Mahmoud Sadek
Ain Shams University, Cairo, Egypt
yomna.sadek@eng.asu.edu.eg
Amin M. K. Elkharbotly
Ain Shams University,
Cairo, Egypt
amin_elkharbotly@eng.asu.edu.eg
Submission: 14/05/2018
Accept: 07/06/2018
ABSTRACT
This paper studies the
rescheduling problem of a single machine facing unexpected disruptions in order
to determine which parameters can help reducing the negative impacts of these
disruptions on schedule performance. A Genetic Algorithm (GA) is used to
generate the initial schedule and the updated ones according to a reactive
strategy. The performance of event-driven rescheduling and periodic
rescheduling policies are compared in terms of total tardiness and total cost
of rescheduling. Other factors that may affect rescheduling such as disruption
time, disruption duration and number of disruptions are investigated. The
sensitivity of results to both due date tightness and cost factor variation is
tested. The results showed that the timing of the occurrence of disruption as
related to scheduling horizon has a major effect on determining the best
rescheduling policy. Event-driven policy is superior to other policies for
short infrequent disruptions. It was found that the periodic policy is more
appropriate for long and frequent disruptions.
Keywords: Single machine, rescheduling, event-driven, periodic, rescheduling
frequency
1. INTRODUCTION
In a production
system, the production schedule is developed for a certain scheduling horizon
and released to the shop floor before production begins. However, once a
schedule is released to the shop floor, it is immediately subject to random
disruptions, which may render the original schedule obsolete and necessitate
rescheduling. Examples of unexpected disruptions “rescheduling factors” include
machine breakdown, arrival of urgent jobs, cancellation of an order, operator
absenteeism, rework or quality problems, and shortage of raw materials.
Rescheduling is
the process of generating a new executable schedule in response to unexpected
disruption. Because disruptions at the shop floor are inevitable, the
importance of rescheduling is comparable with that of scheduling. Proper
rescheduling requires generating a new efficient schedule in a timely manner.
The
classification of rescheduling studies introduced by Vieira et al. (2003) is adopted in this study. They have
classified the rescheduling studies into four categories according to the rescheduling
environment, rescheduling strategies, rescheduling methods,
and rescheduling policies. In their classification, the rescheduling
environment identifies the set of jobs that need to be scheduled/rescheduled;
it can be static or dynamic.
The rescheduling
strategy describes whether initial production schedules are generated or the
jobs will be dispatched dynamically. The rescheduling policy specifies when
rescheduling should occur; it can be event-driven, periodic or hybrid. And
rescheduling methods describe how updated schedules are generated; it can be
complete schedule regeneration or only repairing the original schedule.
From an
industrial point of view, the aim of rescheduling is typically to find a
trade-off between efficiency in terms of a specified scheduling objective
function (e.g. makespan, total flow time and total tardiness) and stability in
terms of the difference between original and new schedules. The alternations
after disruptions to the initial schedule inevitably make some earlier
preparations (e.g. setups, materials supply and tooling) obsolete, thereby
incurring additional costs. It is necessary and reasonable for the newly
generated schedule to minimize or restrict the variances from the initial
schedule as reported by LIU and ZHOU (2015).
The literature on
production rescheduling includes different machine environments. MASON et. Al. (2004),
DONG and JANG (2012), MORATORI and PETROVIC (2012) studied the rescheduling of
job shops. While Caricato and Grieco (2008), Chiu and shih (2012) and
Katragjini, Vallada and Ruiz (2013), studied the rescheduling of flowshop.
Parallel machine rescheduling is studied by Vieira, Hermannn and Lin (2000), Liu and Zhou (2013) and Arnaout (2014).
Also Flexible manufacturing systems (FMS) rescheduling studies was found in
literature such as Zakaria and Petrovic (2012) and Jain, Foley (2016).
Although several
studies have considered the single machine rescheduling problem for new jobs
arrival, little attention has been given to the rescheduling problem with
machine breakdown.
The problem of
new job insertion into a single machine schedule has been studied by LIU and ZHOU (2015), VIEIRA, HERMANN, and LIN (2000), LIU and ZHOU (2012), AKKAN (2015), HOOGEVEEN, LENTÉ, T’KINDT (2012), UNAL, UZSOY,
and KIRAN (1997), YANG (2007) and GUO et
al. (2016).
Vieira,
Hermann and Lin (2000) suggested an analytical model, which uses FIFO dispatching rule
to sequence jobs, to estimate the performance of both event-driven and periodic
rescheduling in terms of average flow time and machine utilization. While Liu and
Zhou (2012) used Variable Neighborhood Search (VNS) algorithm to solve to near
optimal solution for single machine maximum lateness rescheduling problem
subject to an upper limit on the total sequence disruption.
Akkan (2015) used simple heuristics in addition to
hybrid branch-and-bound/local search algorithm to find the most stable schedule
among schedules with minimal maximum tardiness. And Hoogeveen; Lenté and
T’kindt (2012) studied new job insertion problem in single machine schedule to
minimize total cost of disruption and to minimize number of setups.
Unal, Uzsoy and
Kiran (1997) considered the problem of rescheduling a facility modeled as a
single machine in the face of newly arrived jobs with part-type dependent setup
times. They provided a polynomial time algorithm to minimize the maximum
completion time of the new jobs.
Yang (2007) considered single machine rescheduling
problem for new jobs arrival, in which jobs processing time can be reduced at a
cost, with the objective to minimize total cost after rescheduling. (LIU; ZHOU, 2015) studied
the rescheduling problem of a single machine in response to an unexpected
arrival of new jobs, where both the deterioration and learning effects are
considered.
Zakaria
and Petrovic (2012), Moratori and Petrovic (2012), Vallada and Ruiz (2010),
Kundakci and Kulak (2016), Armentano and Mazzini (2000) and
Ribeiro and Souza (2009) have used the Genetic Algorithms to solve different
scheduling problems. They have reported that GA can achieve good solutions in a
time efficient way.
As seen from the
literature review, most of authors have adopted the reactive strategy for
rescheduling, in which an initial schedule is generated then it’s updated
according to a specific policy to minimize its impact on system performance.
Also, approximate methods for optimization have been used widely since most of
scheduling problem are NP-hard.
Quite recently,
researchers started to use stability based performance measures for the
rescheduling problem to reduce systems nervousness. Most researches on single
machine rescheduling problem have considered the disruption of new jobs arrival
because of the fact that manufacturing systems are dynamic and new jobs
continue to arrive while executing the initial schedule.
But the
disruption of machine breakdown has been merely considered in single machine
rescheduling problem despite of its importance. Also, most of the previous studies
did not take into account the effect of disruption timing although it may
affect the rescheduling decision.
In this paper,
the single-machine rescheduling problem with unexpected disruptions is
addressed. A genetic algorithm is used to generate both initial schedule and
the updated one according to a reactive strategy. This study compares the
performance of three rescheduling policies; right-shift rescheduling,
event-driven rescheduling, and periodic rescheduling policy. Total tardiness is
used as a measure of schedule efficiency. And total cost is used as a combined
efficiency and stability measure. And there has been no reported work on this
issue so far.
The rest of the
paper is organized as follows: In Section 2, the proposed study will be detailed.
Section 3 is devoted to computational results and discussion. The conclusion is
reported in Section 4.
2. THE PROPOSED STUDY
This section
describes the scheduling/rescheduling problem, the experimental design, and the
proposed model under which the rescheduling policies are studied.
2.1.
Problem
description
This work
considers the problem of scheduling/rescheduling of a single machine under two
different objectives; minimizing the total tardiness and minimizing the total
cost. At the beginning of the scheduling horizon there is a certain set of jobs
to be scheduled. So, it is a static scheduling problem. Different rescheduling
approaches are adopted and the performances of different rescheduling policies
are to be compared in terms of total tardiness and total cost.
This study is
based on the following assumptions:
·
The planning horizon is a single period (one month) and jobs that
arrive during schedule execution will be delayed till the end of current
schedule (Frozen MPS).
·
The processing times and due dates for jobs are deterministic and
dependent on the jobs.
·
All jobs are available at time zero.
·
Every single job is assumed to be a batch which can’t be split.
·
Processing of disrupted jobs is to be resumed immediately after
disruption is over.
·
Machine setup time is included in the processing time for each job
and it is independent of the preceding job.
·
The time of disruption occurrence and the duration of downtime
resulted from each disruption are probabilistic, following a uniform
probability distribution.
·
The machine can process only one job at a time.
·
Materials are delivered to the shop floor according the initial
schedule.
·
The required raw material for each job is to be supplied just
before the starting time of the job.
·
WIP inventory is charged with holding cost according to the time
spent in manufacturing workshop.
During the
execution of the schedule, unexpected disruptions may occur. To overcome the
forthcomings of these disruptions, the following rescheduling actions may be
applied as policies:
a)
Right-shift rescheduling:
Unprocessed jobs’ start times are shifted forward by the amount of disruption
durations keeping the initial jobs’ processing sequence.
b)
Event-driven rescheduling:
complete rescheduling of all unprocessed jobs at time of disruption.
c)
Periodic rescheduling:
rescheduling is made periodically with fixed intervals of time. If disruptions
took place before the beginning of any interval, the Right-Shift rescheduling
action is taken until the processing situation is revised at the beginning of each
interval for rescheduling.
The following are
the problem parameters considered in this study are:
a) Rescheduling policy: This refers to whether schedule will be
revised periodically at equal time intervals, or only at the time of disruption
or will not be revised at all.
b) Time of disruption occurrence: This refers to the time of disruption
occurrence relative to the planning period.
c) Number of disruption occurrences: this refers to the number of disruptions
that occur during the planning period.
d) Disruption duration: This refers to the duration of the
downtime due to disruption.
e) Jobs’ processing time (pj): this refers to the jobs’ processing
time compared to the disruption duration. It is expressed in terms of the
number of jobs to be scheduled at the same planning horizon. Such that smaller
number of jobs means longer processing times and the vice versa. Jobs’ processing
times are N uniformly distributed random variables such that pj ϵ
U[6, 24], . Where N is the
number of jobs.
f) Due date tightness: this indicates how jobs’ due dates are
spaced in time. The following tightness measure suggested by Pinedo (2010) is used in this study:
|
(1) |
Where is the average of the due dates,
and is the makespan. Values of close to 1 indicate that the due
dates are tight and values close to 0 indicate that the due dates are loose.
Jobs’ due dates, dj,
are N uniformly distributed random variables such that dj ϵ U[8,
176*β]. Where β is a percentage factor controlling due date tightness and it
will be initially set to 1.
2.2.
Mathematical
Modelling
The mathematical
modelling of the problem is based upon the work of Armentano and Mazzini (2000)
on a similar problem with some modifications to adapt the assumptions of this
study.
Also the
rescheduling cost function used in this study is based upon the cost function
proposed by Naseri and Kuzgunkaya (2010)
for a flexible manufacturing system (FMS) with some modifications to adapt
single machine rescheduling costs.
Notations, sets,
and variables used in this model are presented in Table 1.
Table 1:
Notations, sets and variables
N |
Total number of jobs to be
scheduled |
J |
The job number, where j = 1, …,
N. |
R |
Rescheduling frequency (total
number of rescheduling times). |
R |
The number of the rescheduling
time, where r = 1, …, R. |
D |
Total number of disruptions. |
D |
The disruption number, where d =
1, …, D. |
Υ |
The initial schedule. |
|
Due date tightness factor, where
. |
|
Time of the rescheduling (r) [in
hrs.]. |
Jo |
Set of jobs to be initially
scheduled, where Jo =
{1, …, N}. |
Tj |
Tardiness of job (j) [in hrs.]. |
Pj |
Processing time of job (j) [in
hrs.]. |
dj |
Due date of job (j) [in hrs.]. |
Cj |
Completion time of job (j) [in
hrs.]. |
Sj |
Starting time of job (j) [in
hrs.]. |
|
Starting time of job (j) in the
updated schedule [in hrs.]. |
|
Starting time of job (j) in the
initial schedule [in hrs.]. |
|
Partial schedule of the
completed jobs. |
|
Partial schedule of the
uncompleted jobs. |
|
Actually realized schedule. |
S[k](υ) |
Start time of jobs k in schedule
υ [in
hrs.]. |
C[k](υ) |
Completion time of job k in
schedule υ [in
hrs.]. |
π* |
Optimized jobs’ sequence. |
DSd |
Start time of disruption (d) [in
hrs.]. |
DEd |
End time of disruption (d) [in
hrs.]. |
DLd |
Duration of disruption (d) [in
hrs.]. |
Yjd |
Binary variable that indicates
whether the disruption (d) occurred during the processing of job (j). |
Α |
Tardiness penalty cost for each
time unit of tardiness [in L.E./hr.]. |
Μ |
WIP holding cost for each time
unit of holding [in L.E./hr.]. |
Τ |
Material expediting cost for
each time unit of expediting [in L.E./hr.]. |
|
Scheduling / rescheduling cost for each schedule
generation [in L.E./Schedule]. |
The objective functions
are:
Min. |
(3) |
Min. |
(4) |
Subject to:
|
(5) |
|
(6) |
Where:
d = 1, 2,..., D |
(7) |
|
(8) |
|
(9) |
|
(10) |
|
(11) |
|
(12) |
> |
(13) |
> |
(14) |
|
(15) |
|
(16) |
|
(17) |
Eq. (3) represents the objective of
minimizing the total tardiness, which is the summation of tardiness for all
jobs, . Eq. (4) represents the other objective
of minimizing the total cost, which is the summation of the costs of tardiness
(), earliness (), material expediting (), WIP holding () and scheduling/rescheduling.
Expression (5) implies that the start
time of a particular job () is greater than or equal to the
summation of the processing time of the previous job (Pj), previous
jobs start time (Sj) and the disruption duration , if any exists then (Yjd =1)
otherwise (Yjd =0).
Expression (6) shows that Jobs can’t
be split such that after disruption is over, the disrupted job starts
processing from the same point where it was before disruption. So the
completion time of the disrupted job (k) is equal to the sum of completion time
of previous job (), processing time of the disrupted job () and the down time due to disruption ().
Expression (7) defines the disrupted
job (k) whose completion time,, lies between disruption, Dd,
start time () and disruption end time ().
Expression (8) defines job
tardiness, , as the positive difference between job
completion time, , and its due date, . Expression (9) implies that all
disruptions occur within schedule makespan.
Expression (10) defines the
rescheduling start time, , according to the rescheduling policy.
Such that it equals the disruption start time, , for event-driven policy. And it equals
the rescheduling period multiplied by an integer whose value changes from 1 to the rescheduling frequency, R.
Eq. (11) implies that the initial
schedule has no idle time between jobs, and the starting time of the first job
is zero.
Eq. (12) represents the penalty cost
of jobs’ tardiness. Eq. (13) represents the cost of holding material for jobs
which were the next in order when the rescheduling triggered and their start
time changed in the new schedule, , to start later than the initial schedule,
. Since their
material is already delivered to the shop floor.
Eq. (14) represents the cost of
expediting material for jobs whose start time has changed in the new schedule
to be started earlier than the initial schedule. Eq. (15) represents the cost
of earliness. Eq. (16) represents the cost of scheduling/rescheduling which is
the cost of schedule computation and the wage of the scheduler. Expression (17)
shows that Job processing time, job due date, job completion time, disruption
start time, disruption end time, and job tardiness are all non-negative values.
2.3.
The
genetic algorithm (GA)
In
the used GA, the chromosome encoding is a job-based representation. Each
chromosome represents a processing sequence. An inversion mutation operator is
used in which two random positions in the parent are chosen and the genes
between the two points are inverted, while those outside the points are
retained.
Two
crossover operators are used simultaneously in the GA, namely precedence
preservative and set-partition operators. One child is produced from
two parents once by the Set-Partition crossover operator, and another child is
produced from the same parents by the Precedence Preservative crossover
operator. Both children are then evaluated according to the fitness function,
and the child that has the better fitness value proceeds to the following
generation.
The
GA parameters that are used are presented in Table 2.
Table 2:
Genetic algorithm parameters
Parameter |
Value |
Population size |
50 |
Cross over rate |
0.9 |
Mutation rate |
0.1 |
No. of elite children |
1 |
No. of generations |
1000 |
The cross over rate of
0.9 and the number of elite children of 1 are determined through a factorial
experiment (ANOVA technique) reported by Church and Uzsoy (1992) for the same
cross over and mutation operators.
2.4.
Experiments
design
Production
rescheduling may be affected by many factors and our concern is to estimate the
effect of these factors on the rescheduling decision, as well as the effect of
possible interactions between these factors. In each complete trial of the
experiment all possible combinations of all levels of the factors are
investigated.
Using Minitab®
statistical software, a general factorial experiment, in which more than two
factors are considered and each factor has different number of levels, is
designed to study the performance of different rescheduling policies in terms
of the total tardiness and the total cost as performance measures.
The experiments
include the following factors: 1) rescheduling policy. 2) time of disruption
occurrence. 3) Number of disruptions during the planning period. 4) Disruption
duration. 5) jobs processing time represented by different number of jobs to be
scheduled in the same planning horizon. 6) the optimization objective (minimum
total tardiness or minimum total cost). The experiment is designed to consider
different disruption parameters to optimize a certain objective of interest. Table 3 shows the designed
experiments for this study.
The disruption
parameters are the number of disruption occurrences, disruption duration and
the time of disruption occurrence.
The number of
disruptions, D, is an input variable and it changes to reflect different levels
of disruption frequency (Table 3). The disruption
duration, DLd, is an input variable and it changes to reflect
different levels of the downtime resulted from disruptions. According to the
number of disruptions the model generates random uniformly distributed values,
DLd, based on the level of disruption duration (Table 3).
The
time of disruption occurrence, DSd, is an input variable
representing disruption start time and it changes to reflect the
fact that the disruption can start at different times of schedule execution.
Such that it can start early, at the middle or late in the makespan. The model
generates random uniformly distributed values, DSd, within a
predefined time interval based on the level of disruption time (Table 3).
Table 3:
Experiments design
|
Experimental
factor |
||||||
Policy |
Time of
disruption |
Number of
disruptions |
Disruption
duration |
Jobs’
Processing time |
Optimization
Objective |
||
Factor levels |
Event-driven |
Early
[0.05M**, 0.35M] |
None (0) |
Short [0.02 TWK***,
0.04 TWK] |
Small (10 jobs) |
Min. total
tardiness |
|
Periodic
(r*=0) |
|||||||
Periodic
(r=2) |
Small (1) |
||||||
Middle
[0.35M, 0.65M] |
|||||||
Periodic
(r=4) |
Medium (2) |
Long [0.07 TWK,
0.14 TWK] |
Large (25 jobs) |
Min. total
cost |
|||
Periodic (r=6) |
|||||||
Periodic
(r=8) |
Late [0.65M,
0.95M] |
Large (3) |
|||||
Periodic
(r=10) |
|||||||
Periodic
(r=20) |
* r is the rescheduling frequency.
** M is the makespan of the initial schedule.
*** TWK is the total work content
().
2.5.
Scheduling/rescheduling
model
The developed
production rescheduling model aims at introducing the unexpected disruption to
the initial production schedule and generates an updated production schedule.
The rescheduling model is composed of two stages; the first one is for
generating the initial schedule and the second is for updating the initial
schedule according to the policy followed.
2.6.
Generating
initial schedule
Let Jo
= {1, …, N} be the set of original jobs that are scheduled for processing on
the machine. The model uses this set of jobs to construct a row vector which is
used as the chromosome for the genetic algorithm. The genetic algorithm finds the best sequence, π*, that optimizes
the objective function.
So, it is assumed
that the jobs of π* have been sequenced optimally to minimize the objective
function at time zero. Then, the model constructs an
initial schedule, υ, for the jobs sequence π*. The decision variable is jobs’
start times in schedule υ, S[j](υ), for j ϵ Jo. Let C[j](υ)
be the completion time of job j in schedule υ and is the job in the kth position in the sequence π*.
Algorithm
1: Constructing initial schedule
Step 1: Use set of
original jobs, Jo, to form a row vector x.
Step 2: Set schedule start
time equal zero.
Step 3: Input vector x to
GA to get optimized sequence π*.
Step 4: Construct initial
schedule, υ, according to π*.
2.7.
Generating
updated schedules
The model uses
one of three different algorithms to generate the updated schedule according to
the rescheduling policy followed. In the following, there is a set of
disruptions start time, DSd = {DS1, …, DSD},
which are randomly generated.
Algorithm
2: Right-shift rescheduling
According to the
right-shifting policy, the algorithm keeps the initial sequence of jobs. And
only right-shifts the start time of all jobs that start after the disruption by
the amount of disruption duration, DLd.
Step 1: Generate
disruption parameters (No. of disruptions, timing, and duration).
Step 2: For each
disruption, Dd, find the disrupted job k where S[k](υ) ≤
DSd ≤ C[k](υ).
Step 3: Identify the
partial schedule of completed jobs, = Jo{1, …, k}.
Step 4: Add disruption duration to the
completion time of job k in .
Step 5: Identify another partial
schedule of the unprocessed jobs, = Jo{k+1, …, N}.
Step 6: Add disruption length, DLd,
to start and completion time of all jobs in .
Step 7: Merge the partial schedules, and into .
Step 8: set υ = .
Step 9: Repeat step 2 through 8 for all
disruptions D.
Step 10: Calculate total tardiness and
rescheduling total cost on realized schedule, υ.
Algorithm
3: Event-driven policy to update schedule
In event-driven
rescheduling policy the model generates a new schedule, υ*, for the
unprocessed jobs, Juc, using the GA at the time of disruption, DSd.
Step 1: Generate disruption
parameters (No. of disruptions, timing, and duration).
Step 2: For each
disruption, Dd, find the disrupted job k where S[k](υ) ≤
DSd ≤ C[k](υ).
Step 3: Identify partial
schedule of completed jobs, = Jo{1, …, k}.
Step 4: Add disruption duration to completion time of jobs k in .
Step 5: Identify partial schedule of
unprocessed jobs, Juc = Jo{k+1, …, N}.
Step 6: Set start time of partial schedule of unprocessed jobs, , equal C[k](υ)
+DLd.
Step 7: Run GA for all jobs in Juc and get updated jobs sequence π*.
Step 8: Construct updated partial
schedule of unprocessed jobs, , according to updated sequence π*.
Step 9: Merge partial schedules, and into .
Step 10: set υ = .
Step 11: Repeat step 2 through 10 for all
disruptions D.
Step 12: Calculate total tardiness and
rescheduling total cost on realized schedule, υ.
Algorithm 4: Periodic policy to
update schedule
In periodic rescheduling policy, in
addition to the set of disruptions, there is a set of predefined rescheduling
times, Qr = {Q1, …, QR},
equally spaced along the planning
horizon based on the given rescheduling frequency. At each rescheduling time, Qr,
the model generates a new schedule for the unprocessed jobs.
Step 1: Generate
disruption parameters (No. of disruptions, timing, duration).
Step 2: For each
disruption, Dd, find the disrupted job k where S[k](υ) ≤
DSd ≤ C[k](υ).
Step 3: Identify partial
schedule of completed jobs, = Jo{1, …, k}.
Step 4: Add disruption duration to
completion time of jobs k in .
Step 5: Identify partial schedule of
unprocessed jobs, = Jo{k+1, …, N}.
Step 6: Add disruption length, DLd,
to start and completion time of all jobs in .
Step 7: Merge partial schedules, and into .
Step 8: set υ = .
Step 9: For each rescheduling time,
Qr, find job Y where S[Y](υ) ≤ Qr ≤ C[Y](υ).
Step 10: Identify partial schedule of
processed jobs, Juc = Jo{Y+1, …, N}.
Step 11: Run GA for all jobs in Juc and get updated jobs sequence π*.
Step 12: Construct updated partial
schedule of unprocessed jobs, , according to updated sequence π*.
Step 13: Merge partial schedules, and into .
Step 14: set υ = .
Step 15: Repeat step 2 through 14 for all
rescheduling times Qr.
Step 16: Calculate total tardiness and
rescheduling total cost on realized schedule, υ.
3. RESULTS AND DISCUSSION
This section
provides the computational results of different rescheduling policies at
different disruption parameters. Results are classified in sections according
to the performance criteria.
The three
rescheduling policies under examination are: right-shift rescheduling policy,
event driven policy and periodic policy. Each policy is tested under different
disruption parameters. The disruption parameters are the number of disruptions,
disruption duration and the time of disruption occurrence. The objective
function is to minimize the total tardiness.
Figure 1 shows the
performance of three rescheduling policies in terms of total tardiness for
different disruption parameters. Each value in the graphs is an average of 10
trials.
Figure 1 shows the total
tardiness at six different disruption parameters for 25 jobs problem. The left
and right panels show the results for short and long disruption duration,
respectively. From the graph it is seen that as the disruption starts late, the
total tardiness decreases, and performance of the three rescheduling policies
are very close.
This may be due
to the fact that the later the disruption begins the less the number of
affected jobs. Hence the smaller total tardiness. Also when
scheduling/rescheduling has the objective of minimizing total tardiness, jobs
with largest slack time come at the end of the schedule. So, the effect of the
disruption can be absorbed due to slack time.
Also, it can be
noted that the earlier the disruption begins the more the affected number of
jobs and the more the jobs tend to miss its due date, hence the total tardiness
increases significantly. The periodic policy tends to be superior to the other
rescheduling policies for long disruptions while the event-driven policy tends
to be superior to other policies for short disruptions.
Figure 2 shows the results
of rescheduling policies under the same disruption parameters (long, middle
disruption) for different problem sizes. The graph shows that when the machine
is prone to long disruption duration, the periodic policy will result in the
minimum total tardiness regardless of the problem size.
This is because
some jobs may have tight due dates, so when generating the initial schedule,
schedules that don’t begin with these jobs will be excluded because of large
total tardiness. But after the completion of these jobs, there’s a better
opportunity for the scheduling algorithm to find another schedule that will
result in lower total tardiness than that which resulted from keeping the
initial schedule.
The opportunity
for finding better solutions arise from the fact that the tardiness of jobs
whose completion time is less than its due date is zero, so the starting time
of these (early) jobs can be right-shifted to some extent, |dj - Cj|,
without increasing its tardiness. Hence, the tardy jobs can be rescheduled to
start earlier so its tardiness decreases, and the total tardiness decreases.
Figure 3 is the same as Figure 2 but for short
middle disruption. The graph shows that event driven policy outperforms other
rescheduling policies in terms of total tardiness when the machine is prone to
short disruptions. This is because rescheduling at time of short disruption
makes benefit of the available slack time of greater number of jobs than that
number of jobs available when waiting until the next rescheduling time in the
periodic policy.
Figure 1:Total tardiness resulted from different rescheduling policies at
different disruption durations and different time of disruption occurrence and
problem size 25 job.
Figure 2: Total tardiness for different rescheduling policies with
long middle disruption and different problem size. |
Figure 3: Total tardiness for different rescheduling policies with
short middle disruptions and different problem sizes. |
It can be noted
from Figure 2 and Figure 3 that the total
tardiness increases with increasing the number of jobs. The reason is that the
due dates of the larger problem is more tight than that of the small one,
because both sets of due dates have been generated from the same uniform distribution
using the same parameters U[8, 176]. By calculating the tightness measure, ,for
both sets of due dates it will result in 0.33 and 0.68 for the small and large
problem, respectively. So the jobs with more tight due dates are more likely to
miss their due dates. Hence they have higher total tardiness.
The effect of the
rescheduling frequency on the total tardiness is shown in Figure 4. The graph shows
the percentage improvement in total tardiness for periodic rescheduling with
different frequency at different values for the total disruption duration
compared to the right-shifting policy.
From the graph it
can be noticed that at low-to-moderate values of total disruption time
increasing the rescheduling frequency may reduce the total tardiness (higher
percentage improvement). This may be due to the utilization of the slack time
for some jobs to decrease the tardiness of other jobs explained earlier.
Figure 4:
Percentage improvement in total tardiness due rescheduling for different
rescheduling frequency at different values for total disruption time compared
to right-shifting policy.
Also it can be
noted from Figure 4 that the average improvement (dashed-line)
compared to the right-shifting policy increases as the total disruption
duration increases to a some value of the total disruption duration after which
the improvement that can be obtained from rescheduling decreases regardless of
the rescheduling frequency.
For example, at
total disruption duration of 150 the rescheduling frequency of 2 will yield the
same improvement as rescheduling frequency of 20. This behavior may be due to
the fact that at some value of the total disruption time, the due date of the
farthest job will be equal to the summation of remaining jobs processing time
and total disruption time as follows:
|
(18) |
This means that,
at this value the slack time of all remaining jobs is less than or equal zero (no
slack time). Hence, no more right-shifting is possible without increasing the
total tardiness.
The effect of the
number of disruptions on the performance of different rescheduling policies is
shown in Figure 5. The figure shows
the total tardiness resulted from rescheduling with different frequencies at
different number of disruptions with the same total disruption duration.
It can be
concluded from the figure that frequent short disruptions results in smaller total
tardiness than that results from one long disruption. This is because long
disruptions at the beginning of schedule affect larger number of jobs than that
affected by short successive disruptions (Figure 1). On the other
hand, the effect of small disruptions can be reduced by frequent rescheduling
utilizing the slack time of the remaining jobs.
Figure 5: Total
tardiness resulted from different rescheduling frequencies at different number
of disruptions with the same total disruption duration
3.2.
Minimum
total cost
In this
subsection the same rescheduling policies are examined but the objective
function is to minimize the total cost. Figure 6 shows the total
cost resulted from different rescheduling policies at different disruption
duration and time of disruption occurrence. It can be noticed from the graph
that the total cost is higher for early disruptions. This is because of the
increased total tardiness resulted from early disruptions so the tardiness
penalty cost increases significantly (Figure 1).
Also it can be
noticed from Figure 6 that right-shifting
policy will result in the minimum total cost. This is because of the high cost
of scheduling/rescheduling relative to other cost elements. Although
right-shifting policy will result in higher tardiness than other rescheduling
policies (Figure 1), but the increased
tardiness cost will be less than the rescheduling cost incurred due to
increased rescheduling frequency.
The results show
that the ratio between the scheduling/rescheduling cost and the tardiness cost,
/α, has a significant effect on the
performance of rescheduling policies in terms of the total cost. Figure 7 Shows the total
rescheduling cost for different rescheduling frequencies at different values of
the ratio between the scheduling/rescheduling cost and the tardiness penalty
cost.
Results
represented in Figure 7 are at the same
number of disruptions and total disruption duration. It can be noticed from Figure 7 that at relatively
small ratios of scheduling cost to the tardiness penalty, high rescheduling
frequency results in reduction of the total costs due to the corresponding
reduction of total tardiness (Figure 4). But as this ratio
increases the rescheduling becomes too expensive and keeping the initial
schedule results in minimum total cost despite the increased total tardiness.
Figure 8 and Figure 9 show the total cost
results for different rescheduling policies for different problem sizes at
middle short and long disruptions, respectively. It can be noticed from the
graph, the total cost increases significantly when problem size increases. This
is because of the increased tardiness that resulted from increased tightness
for larger problem size which was explained in section 3.1.
Figure 6: Total
cost resulted from different rescheduling policies at different disruption
durations and different time of disruption occurrence and problem size 25 job.
Figure 7: Total
cost of rescheduling for different rescheduling frequencies at different values
of scheduling/tardiness cost ratio.
Figure 8: Total cost resulted from different rescheduling policies
at short middle disruption for different problem size. |
Figure 9: Total cost resulted from different rescheduling policies
at long middle disruption for different problem size. |
3.3.
Sensitivity
analysis
The main purpose
of sensitivity analysis in this study is to identify the sensitive parameters,
that changes in their values could result in significant changes in the
rescheduling decision. In this section, the sensitivity of our results to
changes in due date tightness coefficient and cost coefficients is tested.
3.4.
Due
date tightness
In studying the
sensitivity of tardiness results to changes in due date tightness, three values
of tightness factor, φ: 0.4, 0.6 and 0.8 are used to represent three levels of
due date tightness following the work of Armentano and Mazzini (2000). The due
date tightness factor is calculated form Eq. (1) and it has a maximum value of
1. Such that, values of close to 1 indicate that the due
dates are tight and values close to 0 indicate that the due dates are loose.
The effects of
due date tightness have been tested under the following conditions:
1. Rescheduling policy: Event
driven and Periodic (r=0, 4, 8, 20)
2. Objective function: minimum
total tardiness.
3. Problem size: large (25
jobs).
4. The effect of rescheduling
is expressed in terms of the percentage improvement which is defined as the
ratio between rescheduling policy’s result and the right-shifting policy’s
result.
Figure 10 show the total
tardiness that results from different rescheduling policies due to changing the
due date tightness factor for a large problem size (25 jobs). The results in
the graph are obtained at the disruption parameters of three long middle
disruptions. It can be noticed from Figure 10, the total
tardiness is sensitive to changes in due date tightness factor between the
values of 0.4 and 0.8. And the total tardiness increases as the due dates
tightness increases. This is because more jobs tend to miss their due date when
due dates are too tight.
Also, it can be
noticed from Figure 10 that, when due
dates are loose, periodic rescheduling will be superior to the other policies.
This is because jobs with loose due dates have more slack time. So more
frequent rescheduling in periodic rescheduling policy makes better utilization
of the available slack time for all jobs.
Figure 10: Total
tardiness changes due to changing due date tightness factor with long middle
disruption for 25 jobs problem.
In Table 4, the total
tardiness results for different rescheduling policies and the percentage
improvement in performance at different levels of due date tightness factor are
presented. It can be noticed that, for tight due dates all rescheduling
policies don’t result in significant improvement in performance (Table 4) and they performs
almost the same. This is because of that, at tight due dates jobs don’t have
much slack time and there’s less opportunity to utilize this slack time to
generate better schedule with lower total tardiness. As jobs’ due dates get
looser, the rescheduling frequency becomes more significant and this is
consistent with the results reported by Church and Uzsoy (1992).
Table 4: Effect of due date tightness and rescheduling policy on total tardiness
Policy |
Tightness factor (φ) |
||
0.4 |
0.6 |
0.8 |
|
Right-shifting (r=0) |
198 |
707 |
1003 |
Event-driven (% Improvement) |
163 |
699 |
967 |
(18%) |
(1%) |
(4%) |
|
Periodic (r=4) (% Improvement) |
159 |
693 |
957 |
(20%) |
(2%) |
(5%) |
|
Periodic (r=8) (% Improvement) |
157 |
688 |
953 |
(21%) |
(3%) |
(5%) |
|
Periodic (r=20) (% Improvement) |
145 |
617 |
953 |
(27%) |
(13%) |
(5%) |
3.5.
Cost
coefficients
Cost coefficients
used in the cost function could be changed according to company’s priorities
determined by the nature of its industry. These cost coefficients considered in
this study are the tardiness cost, material expediting cost and WIP holding
cost. The effect of changing these cost coefficients on the total cost is
studied.
Through this
analysis, five levels are considered for each cost coefficient: 0.1, 0.5, 1, 5,
10. One coefficient is changed at the time and the others are held constant.
Figure 11 shows the total
cost for different rescheduling policies that resulted from changing the
tardiness cost coefficient. From the graph it can be concluded that the total
cost is sensitive to the tardiness cost coefficient, α, since changing in its
value leads to significant change in the total cost.
This is because
when the value of the tardiness cost coefficient increases, jobs tend to finish
earlier than their due dates. Hence incurring earliness cost in addition to the
increase of the tardiness cost, so the total cost increases significantly. So,
the tardiness cost coefficient can be considered as dominant.
Figure 12 shows the total
cost for different rescheduling policies that resulted from changing the WIP
holding cost coefficient. It can be noticed from the graph that the total cost
is robust to changes in the values of WIP holding cost coefficient, μ, between
the values of 0.01 and 10, and then it becomes sensitive for greater values.
Because by
significantly increasing the value of WIP hold cost coefficient, the cost of
delaying the start of job processing whose material has already delivered to
the shop floor and start processing another job becomes too expensive. Also the
earliness cost of the jobs that finish before their due date becomes too
expensive, which leads to a significant increase in the total cost.
Finally, Figure 13 shows the total
cost for different rescheduling policies that resulted from changing the
material expediting cost coefficient. It can be noticed from the figure that,
changing the value of the expediting cost coefficient between 0.01 and 100 has
almost no effect on the total cost. So, the total cost results could be
considered robust to changes in this cost coefficient.
Figure 11: Effect
of changing tardiness cost coefficient on total cost for different rescheduling
policies at long middle disruption and 10 job problem.
Figure 12: Effect
of changing WIP holding cost coefficient on total cost for different
rescheduling policies at long middle disruption and 10 job problem.
Figure 13: Effect
of changing expediting cost coefficient on total cost for different
rescheduling policies at long middle disruption and 10 job problem.
4. CONCLUSIONS
This study considered
the rescheduling problem for a single machine with unexpected disruptions. The
effect of different disruption parameters such as the time of disruption
occurrence, the disruption duration, and the number of disruption occurrences
was considered. The main concern of this study is to compare the performance of
different rescheduling policies under different levels of disruptions’
parameters to optimize a certain objective of interest. The results of our
study showed that:
1)
When the objective is to minimize the total tardiness:
·
If the machine is prone to short disruptions, from 2% to 4% of
TWK, the event-driven policy will be the superior to other policies for the
early and middle disruptions regardless of jobs’ processing time.
·
If machine is prone to long disruptions, from 7% to 14% of total
work content (TWK), the periodic policy will be superior to the other
policies for early and middle disruptions regardless of the jobs’ processing
time.
·
If disruptions occur late in schedule planning period, for instance,
after the completion of 65% of initial schedule makespan, keeping the initial
schedule this will always result in minimum total tardiness.
2)
When the objective is to minimize total cost:
·
If the ratio of the scheduling cost to the tardiness penalty cost is
more than or equal to 25, keeping the initial schedule will result in the
minimum total cost.
·
If the ratio of the scheduling cost to tardiness penalty cost is
less than 25, the event-driven policy will be superior to other policies for
short early and middle disruptions. Otherwise, the periodic policy with
moderate rescheduling frequency will be superior.
3)
As due dates become more tight, the improvement in total tardiness
due to rescheduling decreases. So, event-driven policy will result in
performance improvement in terms of total tardiness with much lower cost than
the periodic rescheduling for jobs with tight due dates, whose tightness
measure is greater than 0.7 .
4)
Total cost is much more sensitive to changes in tardiness cost
coefficient compared to other cost coefficients. Therefore, rescheduling
becomes more efficient as the tardiness cost coefficient increases with respect
to scheduling/rescheduling cost.
REFERENCES
ABUMAIZAR, R. J.; SVESTKA, J.
A. (1997) Rescheduling job shops under random disruptions, International journal of
production research, v. 35, n. 7.
AKKAN, C. (2015) Improving
schedule stability in single machine rescheduling for new operation insertion, Computers
& Operations Research, v. 64, p. 198-209.
ARMENTANO, V. A.; MAZZINI, R.
(2000) A genetic algorithm for scheduling on a single machine with set-up times
and due dates, Production Planning & Control, v. 11, n. 7, p. 713-720.
ARNAOUT, J. P. (2014) Rescheduling
of parallel machines with stochastic processing and setup times, Journal
of Manufacturing Systems.
CARICATO, P.; GRIECO, A.
(2008) An online approach to dynamic rescheduling for production planning
applications, International Journal of Production Research, v. 46,
n. 16, p. 4597-4617.
CHIU, Y.; SHIH, C. J. (2012) Rescheduling
strategies for integrating rush orders with preventive maintenance in a
two-machine flow shop, International Journal of Production Research,
v. 50, n. 20, p. 5783-5794.
CHURCH, L.; UZSOY, R. (1992) Analysis
of periodic and event-driven rescheduling policies in dynamic shops, International
Journal of Computer Integrated Manufacturing, v. 5, n. 3, p.
153-163.
DONG, Y. H.; JANG, J. (2012) Production
rescheduling for machine breakdown at a job shop, International Journal of
Production Research, v. 50, n. 10, p. 2681-2691.
GUO, Y.; HUANG, M.; WANG, Q.;
LEON, V. J. (2016) Single-machine rework rescheduling to minimize maximum
waiting-times with fixed sequence of jobs and ready times, Computers & Industrial
Engineering, v. 91, p. 262-273.
HOOGEVEEN, H.; LENTÉ, C.; T'KINDT,
V. (2012) Rescheduling for new orders on a single machine with setup times, European
Journal of Operational, v. 223, p. 40-46.
JAIN, S.; FOLEY, W. J. (2016) Dispatching
strategies for managing uncertainties in automated manufacturing systems, European
Journal of Operational Research, v. 248, p. 328-341.
KATRAGJINI, K.; VALLADA, E.;
RUIZ, R. (2013) Flow shop rescheduling under different types of disruption, International
Journal of Production, v. 51, n. 3, p. 780-797.
KUNDAKCI, N.; KULAK, O. (2016)
Hybrid genetic algorithms for minimizing makespan in dynamic job shop
scheduling problem, Computers & Industrial Engineering,
v. 96, p. 31-51.
LIU, L.; ZHOU, H. (2012) Applying
Variable Neighborhood Search to the Single-machine Maximum Lateness
Rescheduling Problem, Electronic Notes in Discrete Mathematics,
v. 39, p. 107-114.
LIU, L.; ZHOU, H. (2013) On
the identical parallel-machine rescheduling with job rework disruption, Computers
& Industrial Engineering.
LIU, L.; ZHOU, H. (2015) Single-machine
rescheduling with deterioration and learning effects against the maximum
sequence disruption, International Journal of Systems Science,
V. 46, N. 14, p. 2640-2658.
MASON, S. J.; JIN, S.;
WESSELS, C. M. (2004) Rescheduling strategies for minimizing total weighted tardiness
in complex job shops, International Journal of Production,
v. 42, n. 3, p. 613-628.
MORATORI, P.; PETROVIC, S.
(2012) Match-up approaches to a dynamic rescheduling problem, International
Journal of Production Research, v. 50, n. 1, p. 261-276.
NASERI, E.; KUZGUNKAYA, O.
(2010) Cost effective handling of disruptions in production management, in POMS
21st Annual Conference, Vancouver.
PINEDO, M. L. (2010) Scheduling: theory, algorithms and
systems, New York: Springer, p. 379.
RIBEIRO, F. F.; SOUZA, S. R.
(2009) An Adaptive Genetic Algorithm for solving the Single Machine Scheduling
Problem with Earliness and Tardiness Penalties, International Conference on
Systems, Man, and Cybernetics.
UNAL, A. T.; UZSOY, R.; KIRAN,
A. S. (1997) Rescheduling on a single machine with part-type dependent setup
times and deadlines, Annals of Operations Research,
v. 70, p. 93-113.
VALLADA, E.; RUIZ, R. (2010) Genetic
algorithms with path relinking for the minimum tardiness permutation flowshop
problem, Omega, v. 38, p. 57-67.
VIEIRA, G. E.; HERMANN, J. W.;
LIN, E. (2000) Predicting the Performance of Rescheduling Strategies for
Parallel Machine Systems, Journal of Manufacturing Systems,
V. 19, n. 4.
VIEIRA, G. E.; HERMANN, J. W.;
LIN, E. (2000) Analytical models to predict the performance of a single-machine
system under periodic and event-driven rescheduling strategies, International
journal of production, v. 38, n. 8, p. 1899 - 1915.
VIEIRA, G. E.; HERMANN, J. W.;
LIN, E. (2003) Rescheduling manufacturing systems: a framework of strategies,
policies, and methods, Journal of Scheduling.
YANG, B. (2007) Single machine
rescheduling with new jobs arrivals and processing time compression, The
International Journal of Advanced Manufacturing, v. 34, n. 7,
p. 378-384.
ZAKARIA, Z.; PETROVIC, S.
(2012) Genetic algorithms for match-up rescheduling of the flexible
manufacturing systems, Computers & Industrial Engineering,
v. 62, p. 670-686.