AN HORIZONTAL APPROACH TO BATCH SCHEDULING
Using the Simultaneous Manufacturing philosophy
Ana Almeida, Carlos Ramos
Knowledge Engineering and Decision Support Group, Institute of Engineering – Polytechnic of Porto, Porto, Portugal
Sílvio do Carmo Silva
Universidade do Minho, Dept. de Produção e Sistema, sGualtar, Braga – Portugal
Keywords: Batch Scheduling, Horizontal Scheduling
and Simultaneous Manufacturing
Abstract: This paper is concerned with Batch Scheduling in job-shop like manufacturing systems. The Horizontal
Scheduling approach is used, assuming that full scheduling of a simple or complex job, based on the job
routing network of operations, from the first operation to the last, is performed before another job is
considered for scheduling, having in consideration existing manufacturing processors and their availability.
We follow this approach because we aim at compressing job flow time to a minimum as a strategy to
meeting job due dates. To further enhance this objective the idea behind Simultaneous Manufacturing
through, the widespread use of batch overlapping with Job Scheduling Patterns, which proved particularly
effective in reducing job throughput time, maintaining operating simplicity and requiring reduced
coordination
1 INTRODUCTION
A job as defined in this work, is typical of reality but
untypical in theoretical scheduling problems
addressed in the literature. Our approach considers a
job to be a manufacturing order for a number of
identical products. These may be simple, i.e. having
a set of operations to be carried out in a given
sequence in a batch of identical parts, called simple
products. The products may also be complex
products, having a set of operations carried out in a
given sequence in a batch of products, each one
made of several different parts. The manufacture of
these complex products is typical of industries of
type A and T as defined in (Chase and Aquilano,
1998). It is mainly, but not only, for these types of
industries that the scheduling approach and methods
presented in this paper are most appropriate. A job is
specified by the quantity of products necessary, i.e.
it’s batch size, the manufacturing operations and
their precedence relationship, processing times of
operations and the manufacturing processors to be
used. Processing times include auxiliary time
elements such as set up time and time for parts
handling at a machine.
We strongly explore the possibility of different
b
atch overlapping and batch splitting schemes for
finding good schedules. Actually, we focus the
quality of scheduling in shortening job throughput
times and meeting job due dates. The reason is that
this has a positive contribution to both profits and
customer service. To further enhance this multi-
objective we adopt a strategy to scheduling known
as horizontal scheduling (Vollman et al., 1996).
Under Horizontal Scheduling, a job is scheduled
first in all the required processors before another job
is considered for scheduling. Therefore, again,
priority to execute a job already started is given and
consequently flow time further reduced. The
scheduling approach combining all or some of these
factors for reducing job throughput time has been
named as Simultaneous Manufacturing (Almeida
et.al., 2003).
2 PROBLEM DEFINITION
The problem under consideration can be included in
the job-shop class with renewable resources.
Because it assumes the existence of alternative
283
Almeida A., Ramos C. and do Carmo Silva S. (2004).
AN HORIZONTAL APPROACH TO BATCH SCHEDULING - Using the Simultaneous Manufacturing philosophy.
In Proceedings of the First International Conference on Informatics in Control, Automation and Robotics, pages 283-287
DOI: 10.5220/0001138302830287
Copyright
c
SciTePress
resources to process the task we can say that is a
flexible job-shop problem (Brucker and
Schlie,1990). Besides that, it is considered a variable
number of operations per task, so it is not restricted
to the pure job-shop problem but it refers to the
general job-shop problem (Conway et al., 1967).
Additionally, it is more general than this because
any task may be processed on more than one
machine at the same time. This happens not only
because several parts, to be fabricated and
assembled, belong to the same task, but also because
batch overlapping strategies may be adopted. This
scheduling problem scenario includes a much
general case than the basic JSSP, typically addresses
in JSSP literature, and is more realistic and in line
with what happens in practice We call the
scheduling problems of the type defined as Extended
Job-Shop Scheduling Problems (EJSSP).
3 BATCH SCHEDULING
In traditional batch production, a job is considered as
a set of identical parts that are always processed as a
whole, i.e. the full batch must be processed in a
processing stage before it can be transferred to
another to carry out further processing. In cases
where the batch size is large, this can become a too
great penalty to the full duration of the job
processing. So the performance of the manufacturing
system, mainly regarding job throughput time and
accomplishment of job due dates can become highly
poor. This operating weakness can be highly
reduced through Horizontal Scheduling, batch
overlapping and batch splitting. We explore these
strategies in our approach to solve the EJSSP.
3.1 Batch Overlapping
Batch overlapping means transferring work from a
machine, which is processing an operation of the
job, to another machine, for processing the next
operation, before the entire batch has been finished
on the previous machine. This is very common, in
practice, sometimes done randomly, with different
amounts of overlapping, and other times under a
well defined overlapping procedure. In this case,
transfer batches are clearly defined. These are
batches, normally smaller than the total job batch
size, transferred between two successively required
machines. When a transfer batch is equal to the total
job batch size batch overlapping does not take place.
In the extreme, when trying to fully implement
Simultaneous Manufacturing we should seek
maximum overlapping, i.e. the transfer of work
between processors should be continuous, which
means transfer batches of size one.
Batch overlapping does not necessarily changes
the processing batch size at a processing stage. A
processing batch size is the amount of units of a job
processed in a machine continuously before it takes
another job.
3.2 Horizontal Approach
Horizontal Scheduling (Vollman et al., 1996), have
in consideration that jobs are manufacturing orders
of products, resulting from fabrication of parts and
their assembly. The scheduling process is focused on
the job, in such a way that all the operations are
scheduled in all the required re-sources or processors
before the next job is considered for scheduling.
Using this approach it is possible to have a good
perception of the state of each job during the
scheduling time horizon and easily establish the
scheduled job completion date, which permits
verifying if job due date is likely to be
accomplished.
Horizontal Scheduling implements the concept
of Simultaneous Manufacturing in batch production
of complex product manufacturing orders. In this
work this is achieved, through the widespread use of
batch overlapping. The main purpose is to reduce
job throughput time as a strategy to meet due dates.
3.3 Simultaneous Manufacturing
The Simultaneous Manufacturing (SM) philosophy
aims at the complete manufacturing of each single
product of a product order in the minimum possible
time. The intention is to take the minimum time to
manufacture the whole job, i.e. the product order. To
achieve this, each set of parts belonging to each
product of the order must flow in a coordinated way
through the sys-tem, i.e. in a way such that they are
processed before any other parts, and arrive
simultaneously to where they are needed for
assembly. This assembly must be performed
immediately, according to available processors. In
this way, the throughput time for the complete
manufactured and assembly of each product of the
product order is minimum, and therefore the full job
throughput time is minimum too. Additionally, the
work-in-process is likely to be low (Almeida et al.,
2003). In our scheduling approach, mechanisms
were developed for implementing SM in a user-
controlled manner.
ICINCO 2004 - INTELLIGENT CONTROL SYSTEMS AND OPTIMIZATION
284
4 JOB SCHEDULING PATTERNS
One of the main mechanisms, which allow
implementing Horizontal Scheduling and SM in our
work, is what we call Job Scheduling Patterns (JSP).
A JSP is a virtual schedule of a given job, based
flexible batch transfer sizing, batch overlapping
and/or batch splitting (Almeida, 2002). A JSP is one
of several possible alternative schedules, for a given
job, under an empty manufacturing system, i.e. with
all processors considered available, in an unspecified
time horizon. A job can have several JSP, which can
be generated for better exploring the utilization of
manufacturing processors or machines.
A requirement for establishing a JSP is the job
operation plan. This specifies all operations and their
precedence interrelationships of each single product,
simple or complex, of a job order. It may be
expressed as graph as the one shown in figure 1.
Figure 1: Precedence graph representation of a Job
operation plan.
The computation procedure determines the starting
and finishing time instants for all the operations of a
job on each processor or machine depending on
transfer batch size, on the job operation plan adopted
and on machines to be used. This establishes a JSP.
Overall computing procedure
Compute the duration of each graph path and store the
sequence of operations for each one
For the critical paths
From the operation of level one until the last level operation
If prec(op
i
) = {} and op
i
is the first operation (level one)
Then
compute t
start(opi)
and t
fin(opi)
store the obtained values at the list of processed operations
Else
make a = op
i
and b = succ(op
i
)
compute the displacement
ts
(a
b)
;;
compute t
start(b) e
t
fin(b)
store the obtained values at the list of processed
operations
For the non-critical paths
From the last level operation until the operation of level one
If op
i
to the highest duration graph path
make a = op
i
and b = succ(op
i
)
compute t
fin(a) e
t
start(a)
compute the displacement
ts
(a
b)
;;
store the obtained values at the list of processed operations
Where:
prec( ) precedence operator
succ( ) succession operator
a
b represents a precedence relationship,
meaning that a directly precedes b
;;
lt
(a
b)
transfer batch between a and b
;;
ts
(a
b)
displacement or overlapping time between
the starting time instants of two operations
a and b
;;
t
start(op
i
)
instant of processing start for operation a
t
fin(op
i
)
instant of processing end for operation a
4.1 Illustrative Example
op
1
Op
2
Op
4
op
3
Supposing that we intend to manufacture a batch
with 8 product units within a deadline, td, of 70 tu,
being the release date, rk, the instant 0, we have: n =
8, td = 70 and rk = 0. The precedence graph is
represented in figure 1.
Considering the data of the example and a
unitary transfer batch, the result obtained by the job
scheduling pattern generator mechanism, is
illustrated in figure 2 where the batch displacement
between op1 and op2, and between op2 and op4 is
shown.
We point out that operation op3 could start
anytime between instants 0 and 10. By starting at
instant 10 a late start JSP is used. If had started at
instant 0 we were adopting the earliest start JSP.
121 *)( opopop tplt ;;
8
11 25 27
1
10
18
op
1
; mp
1
221
*
)( opopop
tplt
;;
121
*
)( opopop
tpltn
;;
442
*
)( opopop
tplt
;;
242 *)( opopop tplt ;;>
op
2
; mp
2
op
3
; mp
3
op
4
; mp
4
Figure 2: Job Scheduling Pattern with batch
displacement representation.
JPk ={(mp1,(op1, 0, 8)), (mp2,(op2, 1, 25)), (mp3,(op3,
10, 18)), (mp4,(op4, 11, 27))}
AN HORIZONTAL APPROACH TO BATCH SCHEDULING - Using the Simultaneous Manufacturing philosophy
285
5 BATCH SCHEDULING
THROUGH JSP
With basis on the JSP and processor agendas the
Scheduling Plan Generator (SPG), which
implements the horizontal approach generates a
scheduling solution. The SGP draws upon a
scheduling algorithm developed in previous work by
the authors (Almeida et al., 2002). Such algorithm
involves two scheduling phases: the forward
influence phase and the backward influence phase.
Mechanisms for implementing these phases were re-
ported and explained in (Almeida, 2002).
The SPG picks up information about the work
and processors, related with the scheduling problem
and suggests possible solutions if they exist. It
verifies the time horizon of the processors associated
to each operation and looks for their availability in a
relevant time interval.
An important feature the SPG, when it is not
possible to schedule the whole job batch to meet its
due date, is its ability to suggest a split batch size
that can be manufactured within the due date. This
may be important for time phasing delivery and
negotiation with customers.
Going back to the example, the obtained results
for the scheduling of the referred job using the
algorithm implemented by the SPG, are represented
in figure 3.
Figure 3: Results of application of the Scheduling Plans
Generator.
The only solution obtained stems from some
imposed restrictions on batching. By relaxing batch
size, trough batch splitting, for example, it might be
possible to take advantage of other available time
intervals of manufacturing resources. In this case the
split batches of the order could be taken separately
for scheduling by the same method and, possibly
provide further alternatives to scheduling.
When it is not possible to schedule a job within
the MP agendas, based on a given JSP, then some
strategies can be applied to obtain a solution, within
the available time intervals in the MP agendas.
These strategies can include trying a new JSP,
considering different transfer batches sizes, and
applying a batch splitting process followed by JSP
generation for the split batches. The scheduling
mechanisms in the SPG give suggestions about
where to split a job batch. Thus, we can break one
job batch in two or more smaller job batches whose
sizes can fit within the available time intervals of the
manufacturing processors.
6 CONCLUSIONS
Under today’s highly competitive markets it is
important to provide good service to customers and,
at the same time, reduce costs in manufacturing. One
clear contribution on these lines is to manufacture
job orders within the shortest time that is reasonably
possible, keeping work in process low. This has a
direct effect on profitability, since fast turnover of
short-term investment is achieved, and, of course, on
fast deliveries, which is an important requisite for
customer satisfaction.
We presented in this paper an approach oriented
towards achieving very short manufacturing
throughput times of customer orders. The approach
uses the Job Scheduling Pattern concept, and
implements a Horizontal Scheduling approach in
order to achieve the Simultaneous Manufacturing
philosophy. The main imbedded strategy used is
what we described as Scheduling through JSP.
Based on the described scheduling approach a
Scheduling Plan Generator was developed, which
can be seen as a powerful tool to aid users to
improve detailed shop floor scheduling in complex
manufacturing environments, integrating both
fabrication of parts and their assembly into customer
ordered products.
14 16
11
55
60
70
5
50
45
47 50
30
2623
15
20 38
45 60
8
28
25
mp
1
; op
1
mp
2
; op
2
mp
3
; op
3
mp
4
; op
4
REFERENCES
Chase, R. B., Aquilano, N.J., Jacobs, F.R., 1998.
Production and Operations Management: A Life Cycle
Approach. 8th ed., Irwin, Homewood, Boston.
Vollmann, T. E., William, L. B., Whybpark, D. C., 1996.
Manufacturing planning and control systems. Richard
D. Irwin, Inc..
Almeida, A. Ramos, C. , & Silva, S. C. Silva, 2003.
Simultaneous Manufacturing in Batch Production,
ISATP2003, Proceedings of the IEEE International
Symposium on Assembly and Task Planning,
Besançon, France, 2003.
Brucker, P., Schlie R., 1990. Job-shop scheduling with
multi-purpose machines, Computing 45, 369-375.
ICINCO 2004 - INTELLIGENT CONTROL SYSTEMS AND OPTIMIZATION
286
Conway, R. W., Maxwell, W. L., and Miller, L. W., 1967.
Theory of Scheduling, Addison-Wesley Publishing
Company.
Almeida, Ana, Ramos, Carlos, Silva, Sílvio Carmo, 2002.
Toward Dynamic Scheduling of Manufacturing. The
International Journal for Manufacturing Science &
Production, Freund Publishing House, Ltd..
Almeida, Ana, 2002. Analysis and Development of
Mechanisms and Algorithms to Support Product
Oriented Scheduling, Doctoral Thesis on Production
Engeneering, University of Minho, Portugal.
AN HORIZONTAL APPROACH TO BATCH SCHEDULING - Using the Simultaneous Manufacturing philosophy
287