You are on page 1of 28

Scheduling

Scheduling
(Carlier & Chrtienne, 1988) Scheduling is to forecast the processing of a
work by assigning resources to tasks and fixing their start times
The different components of a scheduling problem are the tasks, the potential
constraints, the resources and the objective function
The tasks must be programmed to optimise a specific objective
Of course, often it will be more realistic in practice to consider several criteria
(Pinedo, 1995) Scheduling concerns the allocation of limited resources to
tasks over time.
It is a decision-making process that has a goal the optimization of one or more
objectives
(Baker, 1974) Scheduling is the allocation of resources over time to
perform a collection of tasks
Scheduling is a decision-making function: it is the process of determining a
schedule
Scheduling is a body of theory: it is a collection of principles, models,
techniques, and logical conclusions that provide insight into the scheduling
function
2
The scheduling function
The scheduling function is determining answers to the fundamental
managerial decisions questions:
What product or service is to be provided?
On what scale will it be provided?
What resources will be made available?
The scheduling function presumes that answers to these questions
is already exist
The function scheduling becomes relevant in a situation where the
nature of the tasks to be scheduled has been described and the
configuration of the resources available has been determined
The scheduling and planning functions may not be completely
independent
Systems approach: the steps by which scheduling decisions are
reached
Formulation, analysis, synthesis, evaluation
3
Systems approach: 4 primary stages
Formulation
The process of identifying the problem and determining the criteria that should guide decision
making
Subtle and complicated activity
Good decision can be seldom be expected without a clear definition of the problem at hand
and an explicit recognition of objective
Analysis
The detailed process of examining the elements of problem and their interrelationships
Aimed at identifying the decision variables and at specifying the relationships among them
and the constraints they must obey
Synthesis
The process of building alternative solutions to the problem
The role is to characterize the feasible options that are available
Evaluation
The process of comparing al feasible alternatives and selecting a desirable course of action
based on criteria that were developed at the outset
4
Gantt chart
The simplest and most
widely used models
Graphical
representation of
scheduling relationships
5
Scheduling theory
Scheduling theory is concerned primarily with mathematical models that
relate to the scheduling function
The development of useful models and techniques has been the continuing
interfaces between theory and practice
Quantitative approach
A translation of decision making goals into an explicit objective and decision
making restrictions into explicit constraints
Decision Making Goals
Efficient utilization of resources
Rapid response to demands
Close conformance to prescribed deadlines
Feasibility constraints
There are limits on the capacity of available resources
There are technological restrictions on the order in which tasks can be performed
Solution: feasible resolution of the constraints
Which resources will be allocated to perform each task?
When will each task be performed?
6
Scheduling theory
The essence of scheduling problems:
Allocation decisions
Sequencing decisions
The vital elements in scheduling models:
Resources
Tasks
The theory of scheduling includes a variety
techniques that are useful in solving
scheduling problem
7
Scheduling problems without
assignment
The problem is to find a processing start time for each operation.
Several types of arrangement are traditionally encountered:
single machine:
Only a single machine is available for the processing of jobs. It concerns a basic shop or one in which a
single machine poses a real scheduling problem. Besides, resolution of more complex problems is
often achieved by the study of single machine problems. We can find an area of direct application in
computing, if we think of the machine as the single processor of the computer. The jobs to be
processed are necessarily mono-operation.
flowshop (F):
several machines are available in the shop. The characteristic of this type of shop is that the jobs
processed in it use machines in the same order: they all have the same processing routing. In a
permutation flowshop we find in addition that each machine has the same sequence of jobs: they
cannot overtake each other.
jobshop (J):
several machines are available in the shop. Each job has a route of its own, i.e. it uses the resources in
its own order.
openshop (O):
several machines are available in the shop. The jobs do not have fixed routings. They can, therefore,
use the machines in any order.
mixed shop (X):
several machines are available in the shop. Some jobs have their own routing and others do not.
8
Scheduling and assignment problems
with stages
The machines are grouped in well defined stages and a machine belongs to one stage only. In all
cases the machines of a stage are capable of performing the same operations. To carry out one
operation it is necessary to choose one among the available machines and, therefore, the problem
is twofold, assigning one machine to each operation and sequencing the operations on the
machines.
At each stage we can differentiate between the following configurations:
the machines are identical (P): an operation has the same processing time on all the machines.
the machines are uniform (Q): the processing time of an operation O
i,j
on the machine M
k
is equal to p
i,j,k
=
q
i,j
/v
k
where q
i,j
is for example a number of components in the operation O
i,j
to be processed, and v
k
is the
number of components which the machine M
k
can process per unit of time.
the machines are unrelated or even independent (R): the processing time of the operation O
i,j
on the
machine M
k
is equal to P
i,j,k
, and is a data of the problem. Of course, just as the assignment of O
i,j
is
unknown, so is its processing time.
Globally, "traditional" scheduling and assignment problems correspond to the following
configuration:
parallel machines (P/Q/R): there is only one stage and the jobs are mono-operation.
hybrid flowshop (HF): all the jobs have the same production routing, and therefore use the stages in the
same order.
general jobshop (GJ): each job has a route of its own.
general openshop (GO): the jobs do not have a fixed routing.
It is easily possible to generalise these problems by supposing that each operation can only use its
own subset of the resources of the performing stage.
9
General scheduling and assignment
problems
This is the most general case where we suppose that each
operation has its own set of machines on which it can be processed.
No assumption is made on these sets of resources. We can
differentiate several cases:
the jobs are mono-operations, and we are confronted by a problem of
parallel machines with general assignment. We find these problems in
the literature ([Brucker, 2004]) under the name "Multi Purpose
Machines Scheduling Problems" (P/Q/R MPM SP).
the jobs follow a processing order. It is difiicult in this case to
distinguish between flowshop and jobshop since the groups of
machines used by these jobs are not comparable. This is what is called
shops with general assignment problems (" General Shop MPM SP").
the jobs do not follow a fixed routing. This is the case in openshop
with general assignment problems ("Openshop MPM SP").
10
constraints
pmtn indicates that preemption is authorised.
Here it is possible to forsee interuption of an operation so that, possibly it can be taken up
next by another resource.
split indicates that splitting is authorised.
Here it is possible to forsee splitting of the operation into lots, which can be performed on one
or several machines, possibly simultaneously.
prec indicates that the operations are connected by precedence constraints.
This heading gives different particular cases according to the nature of the constraints: prec to
describe the most general case, tree, in-tree, outtree, chains and sp-graph (for series-parallel
graph ; see [Pinedo, 1995] or [Brucker, 2004]) to denote particular cases.
batch indicates that the operations are grouped in batches.
Two types of batch constraints are differentiated in the literature: the first called sometimes s-
batch concerns serial batches where the operations constituting a batch are processed in
sequence and the second of type p-batch concerns parallel batches where the operations
constituting a batch are processed in parallel on a cumulative resource. In both cases, the
completion time of an operation is equal to the completion time of the batch. In the first case.
the duration of the batch is equal to the sum of the processing times of the operations which
constitute it, whereas in the second case its duration is equal to the longest processing time of
the operations in the batch.
11
constraints
no-wait indicates that the operations which constitute each job follow each other
without any waiting.
prmu (permutation) indicates that the operations occur on the machines in the
same order. In other words, they cannot overtake themselves (this is true solely for
flowshop problems).
d
i
= d indicates that all the due dates are identical. Likewise d
i
d for the
deadlines.
p
i
= p indicates that the processing times are all identical. We often encounter this
constraint with p = 1.
S
nsd
and R
nsd
indicate that the setup and removal times on the resources before
and after each processing, respectively, must be taken into account. These
preparation times are independent of the sequence of operations.
S
sd
and R
sd
indicate that the setup and removal times on the resources before and
after each processing, respectively, must be taken into account. These preparation
times are dependent of the sequence of operations.
12
constraints
a
i1,i2
indicates that a minimum time lag must be respected between the
jobs J
ii
and J
i2
, if the jobs are mono-operation. Otherwise, we use a
i1,j1,i2,j2
to indicate a minimum time lag which must be respected between the
operation O
i1,j1
and the operation O
i2,j2.
If this value is positive, we model,
for example, a drying time between two successive operations, or else a
transport time. In the latter case the resource is available to process the
following operation during the transport. If this value is negative, it
indicates that it is possible to carry out an overlap, i.e. to start an
operation before its precedent in the routing is completely finished. Of
course, this is possible when a job is composed of lots of items and it is
not necessary to wait for the end of a lot on a machine to start the
operation on the following machine.
blcg (balancing) is a constraint peculiar to parallel machine shops,
translating the fact that the machines must complete processing of jobs
which are assigned to them at the same time. This constraint may be
imposed when it is necessary to change the type of manufacture on all the
machines simultaneously.
13
constraints
block (blocking) is a constraint indicating that the shop has a limited
stock area between the machines. Then we note b
k
the stock
capacity between machine M
k
and machine M
k+1
.
recrc (recirculation) is a constraint which indicates that a job may be
processed several times on the same machine.
unavail
j
translates the case where all the resources are not
available all the time, but only during well defined periods. It is a
matter of timetables translating periods of opening/closing of the
factory, periods of planned maintenance, of holidays, etc. Two types
of operations can be associated with this problem: interruption and
resumption of an operation as soon as possible (unavail
j
-resumable)
or else the operation is not started if it is going to be interrupted
(unavail
j
-nonresumable). In the latter case we can have problems of
unfeasibility.
14
routing and precedence constraints
a routing is a document which precisely describes the set of
operations necessary for ending up with a final product:
machine, processing time, tools, particular conditions, etc.
This routing contains, of course, the order in which the
operations must be processed, possibly with the help of a
precedence graph (in the case of non identical routings).
Two successive operations in a routing indicate a flow of
material between machines or a set of machines.
precedence relations between operations indicate simply
that the start of an operation is conditioned by the end of
all the preceding operations. No notion of flow is attached,
a priori, to this constraint and it may simply be a matter of
severe technological constraints. Two operations linked by
a precedence relation may correspond to two distinct jobs.
15
Types of Decision Making Goals
Efficient utilization of resources
Rapid response to demands
Close conformance to prescribed deadlines
16
Optimality criteria
Minimisation of a maximum function:
"minimax" criteria
Minimisation of a sum function: "minisum"
criteria
17
Minimisation of a maximum function:
"minimax" criteria
18
Minimisation of a sum function:
"minisum" criteria
19
Typology of scheduling problems
20
Typology of scheduling problems
21
Notation of problems
Field refers to the typology and describes the
structure of the problem.
It breaks down into two fields: =
1

2
.
The values of
1
and
2
refer to the machines
environment of the problem and possibly to the
number of available machines.
Field contains the explicit constraints of the
problem.
Field contains the criterion/criteria to be
optimised.
22
Notation of Data
23
Notation of Variables
24

25

26

27

28

You might also like