scheduling and controlling production...
TRANSCRIPT
SCHEDULING AND CONTROLLING PRODUCTION
ACTIVITIES
Dr. Mahmoud Abbas Mahmoud Al-Naimi
Assistant Professor
Industrial Engineering Branch
Department of Production Engineering and Metallurgy
University of Technology
Baghdad - Iraq
2015 - 2016
6201 - 5201 Dr. Mahmoud Abbas Mahmoud Production Planning and Control
1
8- SCHEDULING AND CONTROLLING PRODUCTION ACTIVITIES
8.1 INTRODUCTION
Scheduling is the allocation of starts and finish time to each particular order. Therefore
scheduling can bring productivity in shop floor by providing a calendar for processing
a set of jobs.
The single machine-scheduling problem consists of n jobs with the same single
operation on each of the jobs, while the flow shop-scheduling problem consists of n
jobs with m operations on each of the jobs. In this problem, all the jobs will have the
same process sequences. The job shop scheduling problem contains n jobs with m
operations on each of the jobs; but, in this case, the process sequences of the jobs will
be different from each other.
8.2 CONCEPT OF SINGLE MACHINE SCHEDULING
The basic single machine scheduling problem is characterized by the following
conditions:
1. A set of independent, single-operation jobs is available for processing at time zero.
2. Set-up time of each job is independent of its position in jobs sequence. So, the set-up
time of each job can be included in its processing time.
3. Job descriptors are known in advance.
4. One machine is continuously available and is never kept idle when work is waiting.
5. Each job is processed till its completion without break.
Under these conditions, one can see one-to-one correspondence between a sequence of
the n jobs and a permutation of the job indices 1, 2, ... n. The total number of sequences
in the basic single machine problem is n! which is the number of different permutation
of n elements. The following three basic data are necessary to describe jobs in a
deterministic single machine-scheduling problem.
Processing time (tj ): It is the time required to process job j. The processing time, tj will
normally include both actual processing time and set-up time.
Ready time (rj ): It is the time at which job j is available for processing. The ready time
of a job is the difference between the arrival time of that job and the time at which that
job is taken for processing. In the basic model, as per condition I, rj = 0 for all jobs.
Due date (dj ): It is the time at which the job j is to be completed.
Completion time (Cj ): It is the time at which the job j is completed in a sequence.
Performance measures for evaluating schedules are usually function of job completion
time. Some, sample performance measures are Flow time, Lateness, Tardiness, etc.
6201 - 5201 Dr. Mahmoud Abbas Mahmoud Production Planning and Control
2
Flow time (Fj ): It is the amount of time job j spends in the system. Flow time is a
measure, which indicates the waiting time of jobs in a system. This in turn gives some
idea about in-process inventory due to a schedule. It is the difference between the
completion time and the ready time of the job j. i.e. Fj = Cj – rj
Lateness (Lj): It is the amount of time by which the completion time of job j differs
from the due date (Lj = Cj – dj). Lateness is a measure which gives an idea about
conformity of the jobs in a schedule to a given set of due dates of the jobs. Lateness can
be either positive lateness or negative lateness. Positive lateness of a job means that the
job is completed after its due date. Negative lateness of a job means that the job is
completed before its due date. The positive lateness is a measure of poor service. The
negative lateness is a measure of better service. In many situations, distinct penalties
and other costs are associated with positive lateness, but generally, no benefits are
associated with negative lateness. Therefore, it is often desirable to optimize only
positive lateness.
Tardiness (Tj ): Tardiness is the lateness of job j if it fails to meet its due date, or zero,
otherwise
Tj = Max {0, Cj – dj}
= Max {0, Lj }
8.3 MEASURES OF PERFORMANCE
The different measures of performance which are used in the single machine scheduling
are listed below with their formulas.
6201 - 5201 Dr. Mahmoud Abbas Mahmoud Production Planning and Control
3
8.4 SHORTEST PROCESSING TIME (SPT) RULE
In single machine scheduling problem, sequencing the jobs in increasing order of
processing time is known as the shortest processing time (SPT) sequencing.
Sometimes we may be interested in minimizing the time spent by jobs in the system.
This, in turn, will minimize the in-process inventory. Also, we may be interested in rapid
turnaround/throughput times of the jobs.
The time spent by a job in the system is nothing but its flow time, and the ‘rapid
turnaround time’ is its mean flow time (F). Shortest processing time (SPT) rule
minimizes the mean flow time.
ILLUSTRATION 1: Consider the following single machine-scheduling problem.
Find the optimal sequence, which will minimize the mean flow time and also obtain the
minimum mean flow time.
SOLUTION
No. of jobs = 5
Arrange the jobs as per the SPT ordering
6201 - 5201 Dr. Mahmoud Abbas Mahmoud Production Planning and Control
4
8.5 WSPT RULE
Sometimes, the jobs in a single machine-scheduling problem will not have equal
importance. Under such situation, each job is assigned a weight, wj . The mean flow
time, which is computed after considering wj is called, weighted mean flow time, which
is shown below:
In single machine scheduling problem, sequencing the jobs in increasing order of
weighted processing time is known as Weighted Shortest Processing Time (WSPT)
sequencing. The weighted processing time of a job is obtained by dividing its processing
time by its weight.
ILLUSTRATION 2: Consider the following single machine-scheduling problem with
weights:
Determine the sequence, which will minimize the weighted mean flow time of the above
problem. Also find the weighted mean flow time.
SOLUTION
6201 - 5201 Dr. Mahmoud Abbas Mahmoud Production Planning and Control
5
8.6 EARLIEST DUE DATE (EDD) RULE
The lateness (Lj) of a job is defined as the difference between the completion time and
the due date of that job. Lj can be either positive or negative values.
Lj = Cj – dj
The maximum job lateness (Lmax) and the maximum job tardiness (Tmax) are minimized
by Earliest Due Date sequencing. In a single machining scheduling problem, sequencing
of jobs in increasing order of due date is known as ‘Earliest Due Date Rule’.
ILLUSTRATION 3: Consider the following single machining scheduling problem:
Determine the sequence which will minimize the maximum lateness (Lmax). Also,
determine Lmax with respect to the optimal sequence.
SOLUTION: Arrange the jobs as per EDD rule (i.e. in the order of their due dates).
The EDD sequence is 2-4-3-1-5-6.This sequence gives a minimum value for Lmax.
From the table, the maximum is 35. This is the optimal value for Lmax. The Lmax of any
other non-EDD sequence will not be less than 35.
6201 - 5201 Dr. Mahmoud Abbas Mahmoud Production Planning and Control
6
8.7 PRIORITY DECISION RULES
Priority decision rules are simplified guidelines (heuristics) for determining the
sequence in which jobs will be done. The simplest rules assign jobs on the basis of a
single criterion such as: first come first served (FCFS), earliest due date (EDD), least
slack (or time due, less processing) time (LS), shortest processing tirne (SPT), longest
processing time (LPT), and preferred customer order (PCO). Most single-criterion rules
are static in that they do not incorporate an updating feature.
For example, shown in Table below are the time remaining (number of days until due)
and work remaining (number of days) for five jobs which were assigned a letter as they
arrived. Sequence the jobs by priority rules.
(a) FCFS, (b) EDD, (c) LS, (d) SPT, and (e) LPT.
Solution is shown in table below. The numerical amounts included in parentheses are
for reference only.
8.8 FLOW SHOP SCHEDULING
In flow shop scheduling problem, there are n jobs; each require processing on m
different machines. The order in which the machines are required to process a job is
called process sequence of that job. The process sequences of all the jobs are the same.
But the processing times for various jobs on a machine may differ. If an operation is
absent in a job, and then the processing time of the operation of that job is assumed as
zero.
The flow-shop scheduling problem can be characterized as given below:
6201 - 5201 Dr. Mahmoud Abbas Mahmoud Production Planning and Control
7
1. A set of multiple-operation jobs is available for processing at time zero (Each job
requires m operations and each operation requires a different machine).
2. Set-up times for the operations are sequence independent, and are included in
processing times.
3. Job descriptors are known in advance.
4. m different machines are continuously available.
5. Each individual operation of jobs is processed till its completion without break.
The main difference of the flow shop scheduling from the basic single machine
scheduling is that the inserted idle time may be advantageous in flow shop scheduling.
Though the current machine is free, if the job from the previous machine is not released
to the current machine, we cannot start processing on that job. So, the current machine
has to be idle for some time. Hence, inserted idle time on some machines would lead to
optimality.
For example, consider the following flow-shop problem:
If the sequence of the job is 2-1-4-3, then the corresponding makespan is computed as
25. Also, note the inserted idle times on machine 2 are from 0 to 3, 4 to 8 and 12 to 15.
Now consider another sequence say 3-4-1-2. The Gantt chart for this sequence is
different and the makespan for the schedule is 26. The machine 2 has idle time from 0
to 6 and from 8 to 13.
6201 - 5201 Dr. Mahmoud Abbas Mahmoud Production Planning and Control
8
This problem has 4 jobs. Hence, 4! sequences are possible. Unlike in single machine
scheduling, in flow shop scheduling, inserted idle time would minimize the makespan.
In the above two sequences, 2-1-4-3 and 3-4-1-2, the first sequence has lesser makespan.
Like this, one can enumerate all 4! sequences, then select the sequence with the
minimum makespan as the optimal sequence. Since, n! grows exponentially with n, one
needs some efficient procedure to solve the problem. For large size of n, it would be
difficult to solve the problem. Under such situation we can use some efficient heuristic.
8.9 Johnson’s Algorithm
Johnson's Algorithm yields a minimum processing time for sequencing n jobs through
two machines or work centers where the same processing sequence must be followed
by all jobs. Jobs with shortest processing times are placed early if that processing time
is on the first machine and placed late if that processing time is on the second machine.
This procedure maximizes the concurrent operating time of both work centers.
The above algorithm is illustrated using the following problem:
6201 - 5201 Dr. Mahmoud Abbas Mahmoud Production Planning and Control
11
8.10 Job shop scheduling
In job shop we have a set of jobs that must be processed on a set of machines. A job
consists of a sequence of operations, each of which is to be processed on a specific
machine for a specified integral amount of time. Any job can have more than one
operation on a given machine. The operations of a job must be processed in the given
sequence, and a machine can process at most one operation at any given time. Therefore,
routings in job shop environment is very complicated.
Practically, the numerous variables and constraints involved in job shop scheduling,
complexity of its large solution space and its multi-criteria objective function make the
problem difficult. The complexity of the problem can be seen from the fact that when n
jobs go through m machines there are (n!)m possible schedules, hence if (n=20 and
m=10) then the number of schedules is 7.2651x10183. This problem is a class of NP-
Hard ones that cannot be optimally solved for large-scale problems in a reasonable
amount of computational time. For this reason, great deals of researches develop and
work on heuristic methods to find near-optimal solutions.
Types of Schedules
Practically, for any job shop problem, there is infinite number of possible feasible
schedules, because one can insert arbitrary amount of idle time at any machine between
adjacent pairs of operations. This type of schedule is called the total possible schedules.
When the start time of a particular operation is constrained either by processing a
different job on the same machine or by processing the directly preceding operation on
different machines, this called semi-active schedule. The set of active schedules
dominates the set of semi-active schedules in terms of optimizing any regular measure
of performance. In the case, no machine is kept idle at a time when it could begin
processing some operation then it is called a non-delay schedule.
The different types of schedules and relative sizes between them are illustrated in the
Venn diagram shown in figure below.
Venn diagram showing different types of schedules
6201 - 5201 Dr. Mahmoud Abbas Mahmoud Production Planning and Control
12
Heuristic Dispatching Rules
Although, a large number of approaches to the modeling and solution of job shop
scheduling problems have been reported in the literature, but practically heuristic
dispatching rules has been extensively applied to the scheduling problems in job shop
manufacturing comparing with the other approaches. These rules have strong
advantages in that these are easy to understand, easy to apply, and require relatively
little computing time. But, the primary disadvantage is that these cannot hope for an
optimal solution.
Obviously, the terms dispatching rules, scheduling rules, sequencing rules, or heuristics
are often used synonymously in literature. There are enormous heuristic dispatching
rules that have appeared in literature and practice, each can be used in scheduling jobs.
The most popular rules are listed and described in table below. No doubt, there are many
other rules in practice.
Most popular heuristic dispatching rules and their description
Rule Rule
abbreviation Rule properties
Random R Pick any job in the queue with equal probability
First come
first serve FCFS
Jobs are processed in the order in which they arrived at the work
center
Shortest
processing
time SPT
This rule tends to reduce work-in-process inventory, the average job
completion time, and average job lateness
Longest
processing
time LPT
This rule tends to move the jobs with longest processing time in the
work centers as soon as possible
Earliest due
date EDD This rule seems to work well for criteria associated with job lateness
Critical ratio CR
In this rule the priority index is calculated by dividing the time
remaining until a job`s due date by the total shop time remaining for
the job
Least work
remaining LWR
This rule is an extension of SPT in that it considers all of the
processing time remaining until the job is completed. It tends to get
the small jobs out of the shop quickly
Most work
remaining MWR
This rule is an extension of LPT in that it considers all of the
processing time remaining until the job is completed. It tends to get
the long jobs out of the shop quickly
The critical
path CP
This rule, always selects as the next job the one that is at head of the
chain of jobs that contains the largest amount of processing
Slack time
per operation ST/O
A variant of ST that divides the slack time by the number of
remaining operations, sequencing jobs in order of the smallest value
first