SCHEDULING AND CONTROLLING PRODUCTION...

14
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 [email protected] [email protected] 2015 - 2016

Transcript of SCHEDULING AND CONTROLLING PRODUCTION...

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

[email protected]

[email protected]

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

9

Solution:

6201 - 5201 Dr. Mahmoud Abbas Mahmoud Production Planning and Control

10

Critical ratio:

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

6201 - 5201 Dr. Mahmoud Abbas Mahmoud Production Planning and Control

13

Example ;

Job Routing - machine number, processing time required

1 M1, 10 M2, 6 M3, 10 M2, 8

2 M1, 6 M3, 10 M2, 8

3 M3, 10 M2, 4 M1, 4 M3, 8

4 M2, 6 M1, 10

Solution

The schedule obtained with LWR