Computers
Vol. 1X. No. 10. pp. YWLY27, IYW Copyright IQ lYY4 Elsevicr Scicncc Ltd
them.
Pergamon
En~q
Printed
in Great
Britain.
009%1354(94)EOO29-M
All
rights
mY%1354/Y4
rcscrvcd
$7.w+
o.ou
ENUMERATIVE APPROACHES TO PARALLEL FLOWSHOP SCHEDULING VIA PROBLEM TRANSFORMATION W. ‘School
B.
Of Chemical
‘Central
GOODING
Research
J. F. PEKNY’
It,
Engineering,
Purdue
and Development,
$
and
University,
The
Dow
P.
West
S. MCCROSKE~
Lafayette,
Chemical
Co.,
(Receiued I3 April 1993; final reuision received 8 November 25 February 1994)
IN 47907-1283,
Midland,
U.S.A.
MI 48674, U.S.A.
19%‘; received
forpublication
Abstract-Flowshop scheduling arises in the chemical process industries in continuous and batch processing applications. The parallel flowshop model is defined by a set of jobs and a set of production lines on which the jobs will be processed. Each job has a particular time at which it can begin processing and a deadline by which processing must be complete. A schedule will give a specific ordering of which jobs to process on which lines. The objective is to minimize the total cost associated with the schedule. The major costs associated with each job are production costs, transportation costs, inventory costs, and setup costs. This model has the ability to address trade-offs associated with differing cost functions for each production line. These differing cost functions allow for the simultaneous optimization of several chemical plants which have disparate production and technological capabilities. A mathematical model is developed for the parallel flowshop and is transformed into a constrained traveling salesman problem. An exact algorithm is given based on implicit enumeration of the solution space. Results show that the
algorithm performs well on some instances having up to 100 jobs.
scheduling
1. BACKGROUND I.
research
I. Introduction
In any
found
manufacturing such
about
when
these products
tories
to carry.
alternatives
available of
can improve
capital
customer
to be gained information
from
teristics,
inherent (Garey
While
This
there
are the
to make precise
product
and Johnson,
equipment
Contributing difficulty 1979).
to
The
of
the
potential
The
are given
and
Reklaitis
is a structured
network
consisting
based
a certain
production erials,
storage, upon
make
com-
a variety
product
to be made
demand,
problem
which
the plant
of
horizon.
will
In general,
the beginning
t The work of the first author has been supported in part by the Computational Science Graduate Fellowship Program of the Oftice of Scientific Computing in the U.S. Department of Energy. $ The work of the second author has been supported by the National Science Foundation under grant number DDM-9058073.
orders
are
Typically,
unknown
some
information
by the
a particular
some of the orders during
horizon
the
based
available
orders planning
while
horizon.
are generated general
at
other
on past experience about
to
market
are known
planning
or forecasts
orders
mat-
of each
of a set of product
during
received estimates
raw
quantity
by
limited
are allocated
The
of the planning
these
conditions. 909
receive
units,
be arranged
equipment,
is determined
consists
the
of production
facilities,
manpower)
of products.
others,
separation
among
a variety
In these
(i.e.
sources,
among and
can typically
cost.
resources
energy
of
interconnections
are made
incurring
and the value
facility
units,
and cost considerations,
of
problem this
industries (1987),
A
in the con-
problem
intermediate
systems.
charac-
of variables
manufacturing
which
sche-
scheduling
processing
reactors,
Secondly,
optimization
is both the large number combinatorial
these
kowledge
demands.
of
much
First,
et al.
be
Graves
(1991).
scheduling
processing Ku
can
(1979),
Weglarz
concerning
(1983),
General
A
costs, and
technology,
requires
1.2.
the
to be addressed.
mathematical difficult.
on
decisions
there is certainly
alternatives,
projected
better
et al.
and
substantial
reviews
(1991).
of resources. impact
Blazewicz
text of the chemical
competing
operating
scheduling
operating and
extremely
plexity
Making
must be available
the underlying is
a large
utilization,
problems
decisions.
different
have
a facility.
satisfaction.
still significant duling
in the utilization
can
profitability
the
prompted
Scheduling
by Graham
of work
by Rippin
for scheduling
from
and
summary
has
area.
in articles
(1981),
be
to make,
and what inven-
the need
arises
must
products
will be made,
operations
decisions
decisions
as what
In general,
production These
facility,
issues
made
technology in the
for or
market
910
B.
W.
Reactors
GOODING
et
al.
Finishing
storage
*
Packaging
1
I
L
.
Fig. 1. An illustration of a parallel production system.
Based
upon
problem
the market
is to determine
to be performed, zon,
throughout
so as to optimize
system
demand, which
performance
a specified
some
suitable
criterion.
cal and operational
tasks are time
hori-
economic
Additionally,
constraints
minimize
the scheduling
individual
or
physi-
may exist which must
Resource
limitations
(i.e.
manpower,
utilities,
time).
(2)
Structural
limitations
equipment
modules).
Product
(3)
due
dates
(i.e.
interconnectivity
(composed
of orders
of
and/or
forecasts). (4)
Limited
(5)
Raw
(6)
Minimum
intermediate
material
Typically, specify total
(1)
storage.
release
dates.
and maximum the goal
the order operating
composed
Inventory
inventory
levels.
of the scheduling
model
Production
(3)
Machine
of operations cost
of
the
This
cleanout,
manpower,
included, The
costs-startup,
material. loading, costs-
the
parallel
flowshop
relationship
among
satisfy
the product
terized
by product
depending
key question
upon
is how
the specific to develop
could
interraw
ship-
be
application.
schedules
lines
is such that the into independent represents
entity,
being
demands.
that
The
dependent
with they
a task begins change
and
line
have
same
character
plant
dependent
that
be interconnected,
scheduling
plexity area
problem
are generally
The based
(Cheng
have
hierarchy.
A
is the use of
been widely
and Sin, 1990;
objective
functions
con-
on timing of jobs such as
tardiness.
interest
the parallel
case of the general
optimum
makespan,
or if the
plants.
literature,
as a special
et al., 1979).
of
distributed
research
is regarded
machine
lems
line
line. This non-
can occur if the lines are in the
Graham optimum
production
on another
and cannot
In the operations
sidered
depen-
on one of the production
lines are in geographically flowshop
to
the production
to another
even if a unit is available
each
the only
lines are charac-
rates. For batch facilities,
time, and optimum costs
probwhere
model
line as a separate
be
situation
network
lines. This production
can
flowshop
scheduling
a common
units can be partitioned
it cannot
tax. and
a parallel
generalized
interconnection
lines,
is
off-grade
constraints
facilities
by solving
processing
the
shutdown,
unloading,
of
the
facility.
simplijkation
manufacturing
1 illustrates
Once
cost
raw materials,
costs-utilities,
Transportation
the plant
interacting
costs-products,
changeover
Figure
within
times for each batch can be line and product
so as to minimize facility.
lem.
of
scheduled
dent.
materials.
Additional
types
is to
mediates.
ping,
Many effectively
remaining
of the production
The parallel flowshop
production
of the following:
(2)
(4)
1.3.
constraints
simplification
be satisfied:
(1)
the total cost while
operational
Most
total
classified used
list scheduling
completion
scheduling technique and
prob-
in the comin this
interchange
Parallel
heuristics.
A classical
processing
time algorithm.
minimize machine
This method
by first sorting
time
scheduling
and
with the lowest
Another
method
in a parallel portation
m-salesman
parallel
traveling
salesman
problem matrix
tive
total
of
minimizing
salesman
TSP,
m-salesman in that a set of
But
in the
A heuristic
was proposed solutions
for 100 city problems.
An
by Parker
within
5%
important
cial case of the m-salesman
TSP is the standard
A
the
Lawler
reference
the
Musier
parallel
algorithm
(1989). called
algorithm.
changes
of
sequence.
Results
for randomly
Grossmann for
line
makes
The
cost and included profit
freed
product
demand.
a
results
for
in cycles
The
dependent MINLP
Decomposition and
FLOWSHOP
MATHEMATKAL
3 lines
MODEL
_ Basic assumptions
an
independent
imposed
work,
various
product
lines must demand.
assumptions
act jointly Within
can be made
of
both
T, = GCD(T,k,
interruption.
The
to satisfy
this frame-
on storage,
mass
and
time
(Bowman,
T,,, . . . , T,,, . . . , T,,,)
(1)
nlk = TW I Tk
(21
t;k = Tik/ Tk
(3)
where Tik = time required to process job i on line k Tk = time discretization for line k Thk = time horizon for line k nrk= number of time slots for line k tik= number of time slots to process job i on
line k GCD = the greatest NJ= This
As noted in the Introduction, the basic characteristic of parallel flowshops is that all plant processing units can be partitioned into independent lines. These
without
The costs considered in the mode1 are production costs, transportation costs, inventory costs, and changeover costs. The imposed demand can be non-uniform and have associated deadlines and release times. Demand is represented as a set, J, of discrete jobs that must be processed over the time horizon. As shown in Fig. 2, each job i takes a certain number of discrete time slots tik on each line k which corresponds to a real time of Tik time units. To apply this mathematical model, the product demand must be discretized into a set of jobs. If there is a set of customer orders available for the time horizon, each job can correspond to a customer order. If there are forecasts, each job could correspond to an expected order size of a product. The important point is that once a discretization is selected no single job can be split among several lines. So if the job size is too large, the model would not consider solutions where these large jobs could be split. If the discretization is too small, the resulting model will have a large number of variables which will increase solution time. The time discretization on each line must be such that each job takes an integral number of time slots on each line. If each job takes Tik time units then the proper time discretization for each line k is:
a on
and expected
30 products
completed
each
based
resulting
Bender’s
a
having
was
costs,
be
schedues
sequence
holding
must
Their
strategy,
function
ing. This means that once a job is started on a line it
which
given.
2. PARALLEL
2. I
100 batches developed
production
capacity.
using
and
initial by 13%
flowshops
product
production,
inventory
solved
(1991)
objective
changeover,
approach
with
that cyclic production
In a cyclic
from
for inter-
a given
optimality
parallel
a constant
also assumes
length.
of a network looks
problems
by
an approxi-
Improvement
improve from
indus-
units.
under
production
algorithm
deviated
and
desired.
were
by
studied
propose
Heuristic
which
procedure
operate
been
to development
generated
Sahinidis solution
They
This
batches
and 12 parallel
was
TSP.
is given
processing
has
the
as a precursor
flowshop
fixed
flowshop
and Evans
Method
are
subject
of the chemical
In the context
model
on
of
spe-
et al. (1985).
tries, mate
m-
each city can be visited by any one of
the m salesmen.
general
as
if the
with the objec-
distance.
line rate, costs, and time. In our development, the first main assumption is no-wait processdemand,
1959).
to the classi-
(TSP)
is given
et al. (1977) which obtained optimality
An
91 I
discretization
schedules objectives
problem
scheduling
second assumption is that there exists an acceptable
cost, and trans-
is identical
cities and a distance
the
can be formulated
identical.
problem
on
time.
based
salesman
are
salesman
cal traveling
problem
to
by their
one
different
is by cost
cost, production
flowshops
traveling
the jobs each
of comparing
cost. This
attempts
total processing
flowshop
such as changeover an
of this is the longest
example
makespan
processing
flowshop
amount
common
the total number time
denominator
of jobs
discretization,
of real time associated
to be processed.
Tk,
represents
the
with one slot on line
k. The total number of time slots for line k, nrkr for line k is simply the time horizon, Thk. divided by the time discretization, T*. The time horizon for each line can be specified by either the latest material deadline or an overestimate of the amount of time
W. B.
912
GOOD~NG
necessary to produce all the jobs. The number of slots required to process job i on line k, r,, is the real time to process job i on line k, Tik, divided by the time discretization on line k. In general taking the greatest common denominator to obtain the discretization will result in a large number of time slots. However in practice, it is often the case that there is a basic lot size by which product is sold (e.g. one ton lots). This can often fix the time discretization to a manageable value. Our algorithm does handle several cases that have a large number of variables. In terms of costs, the schedule is evaluated based upon when a job is processed, what line it is processed on, and the changeover to begin the next job. There is a unique cost, c,,~,, associated with starting production of job i on line k in time slot t to be followed by job j. Analogously, a variable _xgkris defined such that xii*,= 1 if job i is assigned to begin production in slot t on line k to be followed by job j = 0 otherwise. The objective is to minimize the cost associated with a schedule: Min c c c iel jeJ jcL
c
(4)
CijkrXijkr
IeTCk)
where T is the set of jobs L is the set of lines T(k) is the set of time slots for each line k.
er al.
The factors contributing to the cost coefficient for job i, beginning production in time slot r, on line k, followed by job j, are the following: (Cijkr)
Change costs between job i and job j (I) shutdown of job i (2) equipment cleanout needed to start job j (3) startup of job j (4) off-grade product made during transition. Production costs (1) raw materials (2) utilities (3) manpower (4) transportation. Release times and deadlines. Inventory costs. Demand costs. The changeover costs incurred between jobs are generally related to job setup costs. If jobs i and i belong to the same product group then there will probably be no changeover costs but the model does allow there to be a changeover cost. If jobs i and j belong to different product groups then the changeover cost included in ciik,will be the cost of shutting down job i and starting job j. This includes any offgrade product costs and cleanout costs incurred when changing production. The changeover costs can also be a function of the line on which the changeover occurs and the time at which the changeover occurs. In the same way changeover times can also be accommodated so long as they are integral multiples of the time discretization. The production costs associated with are the costs of processing job i in slot t of line k. The main cijkt
1
“0
Unit 1
I
r-
Unit2
1
“u
0
0
0 -
s
Tk
-
i
j t--
1
t#kFig. 2. Time discretization for the parallel flowshop.
n
Unit k
Parallel flowshop scheduling costs associated materials, can
be
line
needed. only
dependent
with
lines
and
more
efficient
deadlines
time
slot.
included time
and
line
Hard
others.
deadlines
times
before
deadline
penalties
on deadlines
included
by adding
in time
slots before
to
are
the release Variable
times can also be
to the production the release
times
infinity.
and release
by
in a particular
by setting the ciiktvalues the
if
of job
are handled
a job
release
after
Also,
a transport-
and
and
typically
with the production
release
if
cost would
since
than
the cost of processing
costs
dependent
distributed
ation cost can be included varying
time
to the
the lines are geographically i. The
are labor,
These
likely that production
respect
are
of a job
and transportation.
It is more
vary
some
with production
utilities,
cost of the job
time and
after
the
deadline. There cost,
can be many
but one
tory
methods
natural
way
cost proportional
job
remains
sale value These
to the amount
on site after of the job.
costs each job deadlines
inventory
the
to model
inventory deadline.
on customer
deadlines
if forecasts
are used.
The
can be line dependent,
which
to the time away
line that the product
and
an associated
can be based
then proportional
inventory the inven-
of time each
processed
In order
deadlines
costs,
material
being
i must have
or on expected
to model
is to consider
is made
from
the dead-
and to the value of the
max{&
a,SV,T,
- tit -
issues such as production
t, 0)
a
consider subset also
particular
of the jobs
does
schedule. only
important
partially
it woutd
Thus
a subset
when of
a job.
This
line does
not correspond
can
tik is the number
where it is
a penalty
for not
represented
in the
a “dummy”
to any existing
line.
This
line so any
2.2.
Mathematical
model
The constraint set for the model must restict the values of Xijk,to feasible job assignments. The variable xijkrwas previously defined to be:
x ,,lrr=1 if job i is assigned
to begin
production
in
t on line k to be followed by job i
slot
= 0 otherwise. The restriction on the values of x~,*~are represented by the following mathematical constraints:
(5)
i on line k, given
in
c
c 2 ~cJ\Slfke
job i begins
C
for line k
of time slots to process
of a
on it would not be processed by a real line. Thus the production cost for making a job on the dummy line corresponds to the opportunity cost incurred for not satisfying a customer. Conversely if plant production capability exceeds demand, then dummy jobs must be added to reflect line idle time. These dummy jobs, if not used, can be processed on the dummy line at no cost.
processing Tk is the time discretization
the order
job sequenced
of time slots
t is the time slot on line k where
c
2
2
k~l.
2
Cijkrxijkr
(6)
,rT(k)
xijpl=l
ieJ\SD
(7)
~EJ\SU
(8)
L ,P 7’(k)
C
C
1
Xijkr=
job i on
line k IC is the inventory slot
(9)
cost for job i on line k in time
t
SVi is the sale value ak is the capital
of job
holding
i
c
cost per unit time and
n~~k(,+,,k+,,)~xijk,
.XEJ\S”
mass for line k.
The given
a
be an undesirable a schedule
be
by creating
IEJ\SD,EJ\S”
slot for job
satisfy
probably
to associate
model
Min
number
produces
cost. If this schedule
evaluating
flowshop
where dik is the deadline
For instance,
which
jobs can be produced,
the
to be able
producing
cost.
schedule
at minimum
not even
large customer,
are
produced: tC=
other
913
time
the
ieJ\SD,
material
by the difference
remains between
and the time the job completes multiplied
in inventory the deadline
processing,
by the time discretization
held in inventory In some
for (d,-t-t,,)T,
plants the product
capacity.
In this case
compare
the relative
of capital
it is desirable
being
importance
exceeds
plant
to be abte
of each
job
seJ\SU
cI
Xrsk(r+l)
to
with
s
keL,
ctik
+
tE 7’(k)
tijk
-
1)(1
(IO)
-Xn,kr)
I=
icJ\SD, Tk.
units of time. demand
cc
reJ\.W
d,-t-t,,,
on the line,
The sale value of job i is the amount
is slot
jEJ\SU,
X,,k,E{O, 1)
jcJ\SU, ieJ,
jeJ,
kc L, tE T(k) kE L, TV T(k)
where J is the set of jobs L is the set of lines
T(k) is the set of time slots for each line k
(11) (12)
W. B.
914
GOODING
rij,is the changeover time from job i to jon line k SU is the set of startup jobs SD is the set of shutdown jobs. In this formulation, two new sets of jobs are introduced namely the line startup jobs (SU) and the line shutdown jobs (SD). The line startup job represents the cost of beginning production on a line. A line startup job must always be the first job processed on every line. The changeover cost associated with this startup job depends directly upon the initia1 state of the line. That is, if the line is idle then the associated changeover is the startup cost for the next job. If the line is already making product then the changeover cost for the line startup job is just the changeover cost for the current to the next job. The line shutdown job represents the cost of terminating production on a line and it acts only as the successor of the last job produced. This represents the cost of shutting down the line or bringing it to some desired final state. To assure proper assignment, each job must be assigned a unique time slot, a unique predecessor, and a unique successor. Also, since the processing of job i and the changover to job j will take trk+ tijkslots of time on line k, production of the new job j cannot begin until t, + ti,k slots after the start of job i. The first three constraints, referred to as the assignment constraints, force each job to be assigned a unique successor (7), a unique predecessor (S), and a unique time slot (9). The dummy shutdown jobs are not included in (7) since they are never actually processed (they only act as the successor of the last processed job). The dummy startup jobs are not included in (8) since they are never preceded by any job. Notice that the time slot assignment constraints allow xijkrto be zero for a particular time slot for all jobs i and j. This is because xi,*, represents job i beginning production on line k in slot t. In general, job i and changeover to job j could be allocated t,p+ r,,, time slots on line k which implies that no job could begin during those t,l,+ tiik time slots. To enforce this requirement, two other constraints (10, 11) are added to the assignment constraints. The first such constraint (10) states that if job i begins production on line k, in slot t, with successor j (i.e. xijk,= l), then job j must begin on line k in time slot t + tik + tijk. In this constraint if xijk,= 0, then the constraint
is inactive
must be greater Constraint
since all values
than or equal
(11)
of all variables
to zero.
states that if job
i is processed on
line k in slot t, no job can begin production during the next tik + tjik - 1 slots associated with the production of job i. That is, if x,~~,= 1, then the sum of all
e!
al.
variables associated with the next tik + iilk- 1 time slot must be equal to zero. If job i is not assigned to slot t on line k, the constraint states that the sum of the variables in the next tik+ tijk- 1 time slots cannot be greater than tik+ tijk- 1. This imposes no restriction because at most only one job can be assigned to each slot by (9). 3.
TRANSFORMATION MODEL
3.1.
Generalized
FROM
THE PARALLEL
TO TSP CLASS
Traveling
FLOWSHOP
PROBLEMS
Salesman
Problem
The basic motivation behind problem transformation techniques is to take an unsolved problem and transform it to a well understood problem. This allows the use of all the information that is known about the well understood problem and can also lead to insights about the original problem. The Generalized Traveling Salesman Problem (GTSP) is an extension of the Traveling Salesman Problem (TSP). The TSP is a fundamental problem in combinatorial optimization where exact solution techniques have proven effective for certain large instances (Miller and Pekny, 1991). The TSP can be characterized by a set of cities (V) and a cost matrix whose entries (cij) give the cost of traveling from city i to city j. The objective is to visit each city exactly once while incurring the smallest possible cost. The mathematical formulation of the TSP is:
Min 2
c
ieV
2
cijx,j
xii=
1
WjEV
(14)
xxi)=
1
ViEV
(15)
VScV,S#0
(IO)
icv
jcv
C C
its jts
(13)
jeV
xijsIsIxije{O, 1)
1
Vi, jE V
(17)
where c,, = cost of traveling from city i to city j x,, = 1 if the city j immediately follows city i in the tour = 0 otherwise V= set of cities in the TSP. The objective of the TSP is to minimize the total tour cost such that the x,- variables define a tour of the cities. The assignment constraints (14) and (15) force each city to be visited by the tour. Constraint (14) requires the tour to leave each city, and (15)
Parallel flowshop scheduling requires
the tour to enter each city. After
particular (16)
city, the subtour
require
all other cities be visited
to that particular
city. That
cities S, the number
visiting
elimination
before
turning
is, for any subset
of arcs contained
of cities must be less than or equal
a
constraints of the
in that subset
to the number
of
The
GTSP
was
first developed
of computer
1969) and the scheduling agencies of
as
(Saksena,
a single
companies sidered has
been
there
matrix
giving
branch
office.
particular within ing
To
the
the
of
A
an
the
visited
visit
a set
of
is con-
instance
offices
of
exactly
variables
the
with a cost
between
in the GTSP offices
the
each with a
is a tour
tour
such that each
once.
The
associated
follow-
with
the
follows
city i in
the tour = 0 otherwise
stated
in Section offices
between
branch
set of branch
offices
C = set of companies
offices
belonging
For
jobs,
means
of
the
IE”
GTSP
2 nij=yj ie V
(18)
Vk:EC
xij=y,
(19)
V
(20)
Vitz V
(21)
jE C
The objective
VScC,S#0
1)
Vi, je
y,c{O,
1)
Vie
of the GTSP
the companies.
The
(22)
V
(23)
V.
(24)
y, variables
matrix
instance
for
with
traveling The
the
set
such that each
in the parallel
except
the
branch
company
flow-
startup
and
offices
in
a
has IZkELnrlr branch
the cost matrix a particular
office b, has a directed
associated
branch
with
office
b,.
job i, line
arc entering
the completion
job j. This directed
j,
company
of job i and beginning
arc will enter at the branch
j corresponding
shutdown
jobs,
associated
with
arcs exiting
office
to line k and time slot
define
one
the startup
branch
office
companies.
companies
The
are calculated
For the shutdown
in
company
with line k, there is one arc entering
the the
arc enters the startup arcs exiting
job associated
the shutdown
with line k = 1.
companies
have zero
cost. To illustrate GTSP
tour
through (job)
a tour, consider
begins the on
by entering
startup
the
3 requires
duction
the example
5 time slots per line,
those companies
scheduled
a tour of which
is only
startup job of line k + 1 except for k = NL where
requires
determine
there
the corresponding
the same way as above.
the total
is to minimize
tour cost such that the xii variables
of
based model
a GTSP
office must have an associated
represents
x,,E{O,
cost
to a job
that each
with 2 lines, 2 2 Xi,
be
a set of companies
This branch
The C
will
consider
associated Vje
GTSP
mathematical
t + tik + tijk having a cost of ciik,. For the startup and
cijxrj
jE”
c yi=1 isBO(k)
the This
to a single time slot on a line.
To construct
bz of company 2
the
minus one.
the GTSP,
branch
becomes: Min 2
of
than
transformation
all jobs
correspond
j representing formulation
subset arcs
must be generated.
each
office
elimination
k, and time slot t. For each of the other companies
to
k
mathematical
The
in the GTSP
in the GTSP
= the set of branch company
corresponds
shutdown
each
C, will be constructed
model.
offices.
= 0 otherwise V=
shop
force
the companies.
flowshop, offices
(20)
which
branch
more
flowshop
a
subtour
Constraints
each
be
by the
the
The subtour
to the
and
of companies,
and
2. To construct
the parallel
branch
visited.
constraints
involving
parallel
be
in the subset
transformation the
company
leave
Basic idea governing
upon
branch
that for
of companies
The
This
to
and
upon.
one
are to be visited
cannot
subtours
incident
must hold.
states
there
is
exactly
constraints
enter
(22)
company
yi = 1 if city i is traveled
each
constraints to
company
xii = 1 if the city j immediately
with
cities which
by the yi variables.
prevents
from
tour that
are the assignment
number
3.2.
GTSP
requires
assignment
elimination
companies
GTSP:
BO(k)
tour,
constraint
office is associated
tour
of all branch
sets and
those
selected
office of a company
traveling
Each branch
company.
to
a
(19)
associated
Among
welfare
cost. A company
specify
cost
has been
are
to
is a set of n branch
a subset
company
having
if a single branch
visited.
office
can be thought
of clients through
1970). The GTSP
for a minimum
GTSP,
in connection
files (Henry-Labordere,
salesman
visited
offices
Constraint
and (21)
cities in set S minus one. the sequencing
branch
915
job.
first line.
3 time slots.
the company The
tour
After
jobs to be
In this case and company the completion
on line 1 the tour enters
The which
traverses
which represent
2 time slots,
in Fig. 3
and 4 jobs.
company (job)
the shutdown
for line 1 then starts line 2 and processes
1
of projob
all the jobs
916
W. B. su 1
Job 3
Job 1
SD 1
GOODING
et
al.
Job4
SW2
Job 2
SD2
J
Fig. 3. Illustration of GTSP tour in a transformed graph.
4. PROTOTYPE SOLUTION ALGORITHM FOR THE for line 2. To complete the tour the startup job for PARALLEL FLOWSHOP line 1 is entered by the shutdown job of the last line, in this case line 2. The tour in the graph provides the basis for a 4.1. Use of branch and bound to solve optimization construction algorithm to obtain the cost elements in problems the GTSP. Exiting company i represents the producOne of the more successful methods of attacking tion of the corresponding job i in the parallel flowinteger programs has been through the use of shop model. The branch office 6, visited within this branch and bound algorithms. Branch and bound company represents the time slot t and line k on algorithms implicitly enumerate the exponential which the job is produced. This suggests that the solution space associated with an integer program cost of exiting a company should be equal to the cijk, (Nemhauser and Wolsey, 1988). The algorithm used where j is the company entered by the arc exiting to solve the parallel flowshop problem employs a branch office b,. This is in fact how the GTSP cost branch and bound implicit enumeration. The paralmatrix is constructed. With this constructed GTSP, lel flowshop is first transformed from the GTSP the transformation reduces to proving that an optimodel previously described to a resource conmal tour in the GTSP maps to an optimal schedule strained TSP which is a TSP with side constraints. in the parallel flowshop. In the Appendix, two We employ three lower bounding techniques. The stronger results are shown namely: first two are based on a general purpose linear programming solver and the third is based on Theorem 1: The GTSP solution generated from the Lagrangian assignment problem relaxation. The upIP solution of the parallel flowshop is a per bounding technique attempts to use the results tour in the GTSP graph. from each of the three lower bounding routines to Theorem 2: The TP solution generated from the obtain an initial feasible solution and then uses a two GTSP tours satisfies the constraints for interchange algorithm to improve this initial soluthe parallel Howshop. tion. Branching rules integrate information from the To show the first result, a mapping between schelower bound and try to select the best method to dules represented by the xhk,variables of the parallel partition the solution space for each node in the flowshop to the tour variables xh,+ is generated. It is branch and bound tree. shown that if that mapping is applied to a feasible 4.2. Formulation of GTSP as a resource constrained schedule in the parallel flowshop that the resulting
x,,~, variables yield a feasible tour in the constructed GTSP graph. The second result uses a mapping from the tour variables x,,,~, to the parallel flowshop variables x,,~#. It is shown that if the new mapping is applied to a feasible tour in the constructed GTSP graph that the resulting xiik, variables represent a feasible schedule in the parallet flowshop.
TSP
For the parallel flowshop, the GTSP transform defined in Section 3 is used as the basic model. To obtain a lower bound, this basic model is first transformed into a traveling salesman problem with side constraints. Each city, ci, in the TSP represents branch office b, in the original GTSP. A single zero
Parallelflowshop scheduling cost directed cycle is created in all the cities associated with a company in the GTSP. Given a company i and its cities indexed 1 to ni, this dicycle is created by connecting city i to i + 1 and city ni to 1. The intercompany arcs in the problem are then created such that for each arc (bi, b,) in the GTSP, an arc is created from city ci to the city succeeding ci in the constructed directed cycle associated with the company of bj_ These arcs have the same cost as the original arc in the GTSP. This creates an instance of the TSP with side resource constraints. The resulting mathematical model of the parallel line flowshop becomes: Min 2
2
IEV
c
xii=
cijxij
jeV
1
ViEV
(27)
917
The first is to relax integrality (30) and the subtour elimination constraints (28). The linear program is solved using the general purpose linear programming solver CPLEX. The second lower bounding method relaxes only integrality (30). The difficulty with this lower bounding technique is that there are exponentially many subtour elimination constraints. This requires that only the subtour elimination constraints which are violated be used in the linear programming relaxation as described in the TSP review by Padberg and Grotschel (1985). To obtain the second lower bound, the first step is to calculate the first lower bound where integrality and the subtour elimination constraints are relaxed. The next step is to realize that the subtour elimination constraints can be combined with the assignment constraints to yield an equivalent “cutset” form of the subtour elimination constraints: c c xii<1 le.5iCY\S
VScV,S#(a.
(31)
jeV
1
2 ~Xij4w
VScV,S#0
IESjcS 2
2
x,=N(k)-1
VkcC
(28)
(29)
rcBO(k),cBO(*)
+e{O.
1)
Vi, jE V
(30)
where c, = cost of traveling from city i to city j xii = 1 if the city j immediately follows city i in the tour = 0 otherwise V= set of branch offices in the GTSP C= set of companies in the GTSP BO(k) = set of cities associated with company k N(k) = number of cities associated with company k. An additional constraint (29) has been added to the basic TSP to force each company to be visited only once. The transformation of the GTSP to a pure TSP has been shown by Noon and Bean (1993). The company visitation constraints are retained in this development to keep the arc costs of the TSP the same as the GTSP and to reduce the polyhedral dimensionality of the formulation. The main advantage of this approach is that all polyhedral information available for the TSP can be used to solve the original parallel flowshop problem. 4.3. Lower bounding techniques With this equivalent model of the parallel flowshop, three basic lower bounding stategies are used. CACE 18:10-C
To detect a violated subtour elimination constraint, the primal solution is transformed into a graph where the arc capacities are given by the primal solution value on the arc. If the maximum flow between some nodes s and f in the graph is < 1.0, this defines a cutset which is a partition of all the nodes into sets S and V\S where s is in S and t is in V\S. Since this represents the maximum flow between s and t, the sets S and V\S represent a violated cutset inequality and can be added to the linear program. The linear program is then resolved. This process is repeated until no violated subtour elimination constraints are detected. It is apparent that for large graphs repeated application of maximum flow algorithms is not computationally feasible. To solve this problem, node s was fixed to be node 0 and node t was selected as the first branch office of each company. This reduced the number of applications of the maximum flow algorithm from the number of cities (n) to the number of companies (n,). This allowed a reasonable bound to be calculated, however, it is possible that not all the subtour elimination constraints have been enforced. The third lower bound is obtained by relaxing the subtour eiimination constraints (28) and the integrality constraints (30). The company visitation constraints (29) are then dualized into the objective function to obtain a Lagrangian relaxation (Fisher, 1981) that results in the following formulation: Min 2 gcirxii+ i=, ,=I
c 2 c keCieBo(k) jeBO(k)
rk(xij-N(k)+
1) (32)
W. B.
918
&=
1,
et al.
GOODING
selection
i=l,.__,n
is that the best value
maximum
i=l
bound
duals and the best value solution
-&,=l,
i=l,.
(34)
. . ,n.
j=l
offices g,+
The
Lagrangian
generating
This
much
linear
lower
faster
the job
et
represents
the case where
the job is produced
technique
is gener-
slot whose
corresponding
arcs were
using
the
general
but
produced
parameters ameter
a
is based with
condenses for each
mum
cost
(i, j)
where
node
d,
ciated
with forcing
Upper
with node from
resulting
from
sented degree
pany
k. A
with respect
parameter
shoud
the
panies
whose
offices
are within
to branch
The
within and
feasibility
value as the
All Of
on, we first the
wm-
than
the
companies those
gi is chosen
rationale
solution.
the lower
space.
in any
Typically,
a
of some
scheduling
problem,
relaxed
be infeasible The
bounding
from the lower
this solution
considering
wmas the
behind
this
space. can
bound
will
problem. accepts
a solution
and attempts
an initial solution. as not assigned
perturbation
a particular
for
is per-
information
algorithm
to form
the
that except
to the lower
algorithm
bounding
the
with
solution
this global
for the original
upper
an
represents
optimization
entire
since the solution
arises solution
associated
implies the
obtaining
in the
is in a sense
bound
which
the
over
be difficult
lower
In
global
information
of the entire
constraints
constraints
Unfortunately,
certain
solution
characterization
bounding
solutions.
is available
This global
bound
relaxation these
an upper
the problem
to
The
to a line
heuristic
begins
by
line and starts with the first
time slot of that line. For each time slot, the algorithm
will
bound
assign
to
that
the time
because
feasibility
number
of branch
algorithm
selects
job
alternative
job
exists,
infeasible.
As
the
is not
gi is not
in company
perturbation
assigned
each
job
as being
lower
possible
equal
to the
i minus
1, the
from
the
a time slot. If no
then the perturbation
and time slot. This process bation
by
this
the least cost alternative
have not been
infeasible
If
measure
jobs which sidered
processed
slot.
offices
slot, the job is marked
of the maximum
as candidates. on.
of
of branch
is less
10%
the one with the smallest
company
the
the primal
of f$“g over
measure
about
bound
first step is to mark all jobs
fractional.
minus one.
last child
unity.
algorithm,
or a time slot. The
is
intracom-
This
bound
(gi)
number
to branch
The
good candidate
repre-
is integral
one.
and
lower
perturb
For each comthe
to the number
value
para-
and measures
are contained
minus
feasibility
are considered
dual
unity where
more
j$“b, is
the job
to
corresponding
unity.
in developing
information
formed
asso-
parameter
solution
the company
values
a
improvement
from that maximum
maximum
of branch
arcs
for each
to a single company,
becomes
To determine obtain
panies
equal
be equal
decreases
prima1 solution
value
on
If the
in that company
fP
based
arcs which
feasibIe
whose
the
arcs with value
company.
number
assess second
is
arcs are those
measures
k. This
of the solution.
a single
offices
to
parameter
intracompany
fi,is
goal
branch
approximate
Thisfi
average,
by averagingfi
company
not
algorithm
is to produce
par-
the mini-
company.
with the prima1 solution
this
main
because
arcs are all arcs exiting
branching
of feasibility
pany
i by taking
i. A company
with
by company
associated
A
on the improvement
pkvg, attempts
meter,
company.
all intercompany
these values
were
bounding
two
the job into the time slot and line
associated
associated
for a In the
considering
the same
bound
calculated node
each
over
and not reentering is a lower
on
node
intercompany
value
space
subspaces.
the dual information,
first calculated reduced
the solution
into smaller
of the slots whose
arcs
weaker
algorithm
associated
which
in each
are to be
purpose
yields
rules
branching
with the company
(Balas
rules partition
algorithm,
associated
be N,-
children
algorithm
solver
program
will
intercompany
any Branching
there
first iVj -gj
is
The
single integer
on,
j with branch
problem
4.5.
Branching
associated
the underly-
bound.
4.4.
The
Ni
and solving path
than
created
to branch
created.
the prima1
The assignment bounding
programming
is selected
1 children
and
the
to the
If company
by iteratively
by an augmenting
al., 1991). ally
problem.
gj
points.
give
respect
of gi will branch
critical
measure
with
is solved
the multipliers
ing assignment solved
relaxation
at some
feasibilty
of fkvg will
improvement
is con-
is assigned assigned
continues
is encountered
a time
to that line
until either
an
or the pertur-
is successful.
If the perturbation
represents
a staged
two interchange
improve
the schedule.
a feasible
algorithm
A proposed
schedule,
is then used
to
two interchange
is only accepted
in each stage if it improves
of the schedule.
In the first stage,
the cost
two interchange
is
Parallel fiowshop scheduling
only applied
to
those
jobs
in the
original
lower
max C
were processed at more than one time (due to fractional values in the linear programming bound) or were not processed at all (due to relaxation of visitation constraints in the Lagrangian bound). Also in this stage. the partial schedule which has been forced in by the branching bound
rules
solution
which
will not be interchanged.
In the second
not
Ser(i.
In order to improve algorithm performance, certain cost element elimination procedures can be devised. If it can be shown that a given arc will not appear in an optimal solution, then this arc can be eliminated from consideration. This can be done by exploiting properties of the dual of the given linear program. For the parallel flowshop model the dual program is:
C(i-2)
C(i-1)
C(i)
Uj
+
j.ZV
+c
C
(N(k)
l)Wk
-
k.EC
(l-lwzs
(35)
j)
Vj E V, i E V, COMP(i)
forced
4.6. Arc elimination procedures
Ui+ 2
iaV
stage
in by the branching rules are candidates for two interchange. The final stage is to apply two interchange to all the jobs. The basic idea is that lower bound and the branching rule impose some direction in which to guide the local search. The assumption is that on average the lower bound has properly scheduled those jobs which are only made in a single time slot. The jobs which are made in multiple time slots or are not produced in the original lower bound have not been scheduled properly, and two interchange is applied to them first. In the second stage the assumption is that for those jobs which have been forced in a slot by the branching rule, the other alternatives for these jobs were considered in a different part of the branch and bound tree. The final step applies two interchange over all the jobs merely to try to get the best improvement possible. all jobs
919
Ui+Uj+Wk-
2s
=G
# COMP(i)
(36)
cij
c
Ser(i.i)
Vj E V, i E V, COMP(i) ui ,
Uj,
W,
= COMP(J’) = k
(37)
unrestricted, i,j=l,...,n Zs”O,
k=l,.
. . ,nc
ScV,S#QI
(38) (39)
where lY(i,j) = the set S c V such that i E S and i E S.
(40)
To show that an arc can be excluded, the arc is fixed into the solution and a new feasible dual solution is calculated. This augmented solution will represent a lower bound on the problem with the arc fixed in the solution. If this bound is greater than the current incumbent solution then the arc can be excluded. This dual solution is constructed by analyzing the values associated with the assignment variables ui and uj. If arc (i, j) is forced into the solution as shown in Fig. 4, there are certain increases that can be made to the assignment dual variables (u). Clearly the value of ui can be increased by the reduced cost associated with arc (i, j) since all arcs exiting node i are excluded. Looking ahead one company, it can be seen that the value of Us can be increased by the minimum of the dual reduced cost exiting node k except for those nodes in companies i and j. Looking back one arc
C(i)
Fig. 4. Arc elimination procedure.
wi+l)
c(j+z)
w. B.
920
GOODING
the value of u, can be increased by the value of the minimum dual reduced cost entering node r excepting those nodes in companies i and i. If the total improvement in the dual is greater than the difference between the upper and lower bounds, the arc can be excluded. This arc exclusion process aids the upper and lower bounding techniques by identifying those arcs which are not in an optimal solution and eliminating them from further consideration.
5. COMPUTATIONAL
5.1.
RESULTS
Introduction
Virtually all scheduling problems of practical interest are NP-Hard (Garey and Johnson, 1979), and at this point it seems extremely unlikely that reasonable bounds on execution time can be proven for all instances. So in order to benchmark the performance of any scheduling algorithm, empirical perfomance measures must be used. This necessitates developing a method to generate test cases. This generation method must have the capability of producing a large number of reasonably realistic instances so that the performance of the algorithm in practice can be reasonably guaranteed. For the parallel line flowshop algorithm, two different generation methods were considered. In order to compare with existing methods, the first generation procedure is taken from a paper by Musier and Evans (1989) in which they develop a heuristic based solution procedure to the parallel line flowshop problem. Their generation method develops instances that are tightly deadline constrained. A second generation method was then developed to model changeover cost considerations. The computational results illustrate the idea that algorithm performance is very instance dependent. That is, using the fh-st generation method up to 100 jobs were solved to optimality while in the second generation method up to 33 products were solved to optimality, with good approximate solutions for larger cases. The instances for the changeover based approach are harder mainly due to the nature of the sequence dependent costs. In each case, the constrained TSP model of Section 4 is used. The reason for not employing the original model of Section 2 is that it has too many constraints to apply a general purpose MIP solver. To illustrate, for a 30 job case the original model has approximately 54,000 constraints where our reformulation has about 1800 constraints. More traditional models such as uniform discretization model proposed by Kondili et al. (1993) require over 130,000 constraints to model just sequencing.
et al.
5.2.
Musier
and Evans
method
Musier and Evans (1989) solved test cases by using an interchange based heuristic and compared their solution technique with list scheduling in earliest due date order. Their generation method accepts three parameters-the number of jobs, the number of lines, and the dimensionless average cleanout time. The method begins by randomly assigning a line independent production time to each job in the interval l-10. Also, there is a 50% probability that a cleanout would be required after the production of each job. If a cleanout is required, the cleanout time is set to be the dimensionless cleanout time multiplied by the average processing time for all jobs, and this cleanout time is sequence independent. Next, a saturated schedule is created by sequencing through all the jobs in order and assigning each job to the earliest available line on which it can be processed. Finally, the allowable lines for each job are set. Each job can be produced on the line that it is processed on in the saturated schedule, but for all other lines there is a 50% probability that the line can produce the job. The deadline for each job is set to its completion time given by the saturated schedule. Thus by this generation method, it is known that there exists an optimal schedule with zero tardiness. Results are compared in terms of the total number of late days divided by the total number of production days. Total Late Days = c
min{Cj - di, 0)
is,
Total Production Days = c
Tk ICE
where J is the set of jobs M is the set of lines Tk is the total production time on line k
Ci is the completion time of job i in the schedule d, is the deadline for job i. The Musier and Evans algorithm was applied to the instances generated, and the results are reproduced in Tables 1, 3, and 5. It is important to note that using our solution technology we obtained the optima1 solution to these cases using a full discretization of time. That is, the time discretization was the greatest common demonination which was one. For the largest cases solved, the number of time slots per line was approx. 100. The other set of Tables 2, 4, and 6 gives the performance of the branch and bound algorithm using Lagrangian relaxation of problems having up to 75,000 cities and 900,000
Parallel flowshop scheduling Table
1. Mu&r
and Evans results comparing ratio days to total production days
z 70 Ea 90 100
: 8 8 8
These
cases
were
90001730 workstation average
of twenty time.
obtained
reason
was
able
value
the lower
bound.
off
between
The
Musier
solved
and
algorithm
and where to be
the
paper
more 5.3.
Evans
than 20 jobs Second
This
generation
generation
of changeover common
These
model
Number
of lines
Number
of products
(3)
Number
of jobs
(4)
Number
of families
(5)
Minimum
20 30 40 50 @.I 70 80 90 100
the
problems
changeover
No. of lines
! 8 x
to account plastic
parameters
for
process manufac-
are:
4
0.2
0.02
0.2 0.2 0.2
0.04 0.06 0.07 0.08
(6)
Maximum
(7)
Number
(8)
Maximum
x-coordinate
Maximum
y-coordinate
(9)
changeover
(11)
Minimum
production
cost
(12)
Maximum
production
cost
(13)
Time
(14)
Line
(15)
Random
horizon seed.
to generate
a cost
matrix,
the cost of producing
t to be followed
all the cost
The cost element job
by the production
of job j. As
cost of job
line k, the transportation
i on line k, and
the changeover
cost of job
cost associated
with starting
ciik,= Transportation, The
transportation
+ Productionu
rectangular
and (maximum Each
line
generated
customer
(41)
costs are generated
a Cartesian
randomly
point.
(or
point
The
by first con-
grid
plant) on
the
The job
product determine
(s)
8.1 21.3 38.8 82.7 145.0 229.1 410.4 x02.7 95x. 1
Table
The
production
randomly
between
the
changeover i to job
families the
times
is located
j on
associated family
to
and
70 70 70 70 70
No. of lines 4 6 8 10 12
jobs a job
maximum with
0.2 0.2 0.2 0.2 0.2
going
upon
the
i and j.
To
belongs,
for Musier
Cleanout time ratio
job
a uniform
k depends
which
from
costs for each
associated
4. Times to obtain optimal solution cases
No. of jobs
distance
the transportation
minimum
with
each
at a randomly
from
line
at a
and
cost for a job
chosen
cost
by
maximum
grid,
transportation
to the customer line are
bounded
x-coordinate,
for each job is also located
generated
from
Times
job j as
+ Changeover,j,.
distribution
Evans
i on
shown:
from a plant is given by the Euclidean
cost
cijk,
i on line k in
such it is the sum of the production
costs.
u.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2
probability
number
cUkrmust be specified.
represents slot
cost coefficient
interaction
In order
on each
Cleanout time ratio
types
Transportation
cost coefficient.
and
cost
of changeover
(IO)
elements
latc
method
6 8 10 12
the plant
for Musier
Heuristic
;: 70 70
in
with
Cleanout tin-w ratio
of total
70
y-coordinate).
optimal solution cases
8 8 8 8 S
No. of lines
structing
costs in scheduling
(2)
No. of jobs
No. of jobs
points (0,O)
in continuous
to obtain
and Evans results comparing ratio days to total production days
are signifi-
and was stated
that
to
if only
obtaining
results
attempts
(1)
Table 2. Times
cases need
is superior
method
method
operations
facilities.
is being
are intractable.
the impact turing
time.
solutions
problem
and
assumed
and
from
execution obtains
These
cant since it is generally Musier
routine
a basic trade-
many
solved
is crucial.
is
close to the optimal.
our algorithm
need
solution
to
was equal
solutions
if the scheduling
However
cases
optimal
quality
Evans
interactively
a few
value
bounding
optimal
that are reasonably
This is preferable be solved.
bound
The results illustrate
and
in seconds
solution
for this performance
extract
solution
the
in less than 1 h of
and the upper
to always
represents
The optimal
that in these cases the lower to the optimal
method
Table 3. Musk
run on a Hewlett-Packard
were The
late
0.00 0.01 0.03 0.03 0.05 0.07 0.08 0.11 0.13
and each case
instances.
size 100 problems computer
Heuristic
0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2
8 8 8 8
20 30 40
arcs.
Cleanout time ratio
No. of lines
No. of jobs
of total
921
and
a
Evans
Times 248.2 244.5 229.1 256.5 234.2
(s)
W. B.
922 Table5.
Mu&r
and Evans results comparing ratio days to total production days
No. of jobs
No. of lines
Cleanout time ratio
g 70 70 70
8 8 8 8 8
0.2 0.4 0.6 0.8 1.0
of total
Heuristic
GOODING late
method
0.06 0.08 0.08 0.09 0.11
3 (variable) (No. of products) (No. of products) 1000 3000
Table 6. Times
to obtain
optimal solution case*
for Musier
No. of jobs
No. of lines
Cleanout time ratio
70 70 70 70 70
8 8 8 R 8
0.2 0.4 0.6 0.8 1 .o
and Evans
Times 229.1 253.1 292.1 416.0 424.0
(s)
for changeover
CoSt generation
No. of jobs
Lower bound
Root node upper bound
18
63,424 74,274 82,382 94.134 106,813 114,134 122,375
63,951 74.670 82,798 94,445 107.451 114,564 123,705
;: 27 30 33 36
product number for each job is randomly generated and a family for each product is randomly generated. The changeover cost between each family on each line is randomly generated between the interval given by parameters minimum and maximum changeover costs. The changeover costs, unlike the production and transportation costs, are not randomly generated over a uniform distribution. The cost range is partitioned linearly into a number of discrete changeover types given by the number of changeover types. The changeover cost between each family on each line will be one of these discrete changeover types. The line interaction probability represents the probability that a job can be processed on a particular line. To assure feasibility, each job is fixed to appear on one randomly selected line. If the line interaction probability is zero then each job can only be made on a single line. an interaction probability of unity Conversely, means that all jobs can be produced on all lines. The tradeoffs addressed by this generation method relate the changeover cost, production cost, and transportation cost. The parameters for the generation method were selected so that each cost (transportation, production, and changeover) are in approximately a 1:l: 1 ratio. This implies that each cost is generated to be on the same order of magnitude so that the costs are weighed directly against one another. Also, the lines are considered fully interacting in that each job can be made on every line. The following parameters were used: No. of lines No. of products No. of jobs No. of families Minimum changeover cost Maximum changeover cost
et al. Table 7. Results
method Best wluton 63.424 74,274 82,382 94,134 106,813 114.134 122,755
No. of changeover types 4” (No. of products) Maximum x-coordinate 100.0 Maximum y-coordinate 100.0 Transportation cost coefficient 20.0 Minimum production cost 1000 Maximum production cost 3000 Time horizon (No. of products/3) Line interaction probability 1.0 Random number seed (variable) The computational results shown in Table 7 were obtained for each problem size by averaging the results of five different random number seeds. For each individual problem, the maximum time allowed was 2.5 h on a Hewlett-Packard 90001730 workstation. The branch and bound trees contained up to 70 nodes. The lower bound was based on the linear programming relaxation including subtour elimination constraints and was solved on problems having up to 900 cities and 24,000 arcs. If the optimal solution was not obtained by that time, the algorithm terminates and returns the best solution found. The last column in the table “best solution” gives that value. The “lower bound” column gives the final lower bound. That is, at termination the optimal solution is bracketed between the “lower bound” and the “best solution” columns. For all of the problems except 36 products, an optimum was obtained. For larger instances, optimality was not ascertained. However, from the data it is clear that even the largest case was no more than an average of 400 units from the optimal solution with the worst case being 1000 units away. 6. CONCLUSlONS
An enumerative branch and bound algorithm has been presented for the solution of parallel flowshop scheduling problems. These problems are recognized as important in scheduling chemical process operations either as a complete model of the process or as a model of some critical set of equipment. Our algorithm is based on a transformation from the parallel flowshop problem to a constrained traveling salesman problem. With respect to the parallel flowshop model costs, ciik,, our transformation is
Parallel flowshop scheduling efficient one
in that each intercompany
with
However
the
parallel
if the cijkrvalues
ficiency
production
changeover
lines.
For
constrained
the
the largest
cities.
The
TSP
cases
are
solved
by
applying
solved,
also
assignment lated
very
and
for
elimination
algorithm
solution
solutions
to problems which
flowshop
by heuristic
methods
solutions based
to
a
generation
generated
could and
newly
TSP
for
combi-
a very
developed
TSP
an effective
scheduling obtains
using
previously
the
of vio-
The
yielded
lem. The result is that this algorithm the literature
of
detection
at
were
to the constrained
technology
for the parallel
body
algorithms the
by
having
large problems
constraints.
of the transformation
new
generated
sparse
extensive
and
inef-
of cities
this represents
TSPs
specialized
problem
subtour
nation
the
including
number
is the total number
most abo.ut 900,000 arcs. These research
into a
of time slots on all the
constrained
transformation
ciik,.
cost and a line
The
of jobs times the total number 75,000
costs
cost, there is a resulting
in the representation.
in the resulting
model
can be decomposed
line and time dependent dependent
arc maps one to
flowshop
proboptimal
methods
in
only be solved
good
approximate
changeover
cost
923
D.
L. Miller and J. F. Pekny, Exact solution of large asymmetric traveling salesman problems. Science 251. 754-761 (1991). Musier R. F. H. and L. B. Evans, An approximate method for the production scheduling of industrial hatch processes with paratlel units. Compurers them. Engng 13, 229-238 ( 1989). Nemhauser G. L. and L. A. Wolsey, Inreger and CombinatoriaC Optimization. Wiley, New York (1988). Noon C. E. and J. C. Bean, An efficient transformation of the generalized traveling salesman problem. INFOR 31(l), 39-44 (1993). Padberg M. W. and M. Grotschel, Polyhedral computations. In The Travelinp Salesman Probiem: A Guided Tour of Combinarotial 5pfimization (Edited by E. L. Lawler, J. K. Lenstra, A. H. G. R. Kan and D. B. Shmoys), pp. 307-360. Wiley, New York (1985). Parker R. G., R. H. Deane and R. A. Holmes, On the use of a vehicle routing algorithm for the parallel processor problem with sequence-dependent changeover costs. AIZE Trans. 155 (1977). Reklaitis G. V., Perspectives on scheduling and planning of process operations. Fourth International Symposium on Process Systems Engineering (1991). Rippin D. W. T., Simulation of single and multiproduct batch chemical plants for optimal design and operation. Computers them. Engng 7, 137-156 (1983). Sahinidis N. V. and I. E. Grossmann, MINLP model for cyclic multiproduct scheduling on continuous parallel lines. Computers them. Engng 15,85-103 (1991). Saksena J., Mathematical model of scheduling clients through welfare agencies. CORS J. 8, 97-101 (1970).
method. APPENDIX
A
REFERENCES Balas E., D. L. Miller, J. F. Pekny and P. Toth, A parallel shortest path algorithm for the assignment problem. J. Ass. Cornmu. Mach. 38, 985-1004 (1991). Blazewicz M. and J. Weglatz, Mathematical programming formulations for machine scheduling. Eur. J. Opl Res. 51,283-300 (1991). Bowman E. H., The schedule sequencing problem. Opns Res. 7, 621-624 (1959). Cheng T. C. E. and C. C. S. Sin, A state-of-the-art review of parallel-ma.chine scheduling research. Eur. J. Op. Res. 47, 271-292 (1990). Fisher M. L., The Lagrangian relaxation method for solving integer programming problems. Mgmf Sri. 27, No. 1 (1981). Carey ‘M. R. and D. S. Johnson, Computers and the Theory of Guide to Intractability: A NP-Compl&eness. Freeman, New Yoark (1979). Graham R. L., E. L. Lawler, J. K. Lenstra and A. H. G. R. Kan, Optimization and approximation in detenninistic sequence and scheduling: a survey. Ann. DLcrete Mrh. 5,287-326 (1979). Graves S., A review of production scheduling. Opns Res. 29, 646-675 (1981). Henrv-Labordere A. L.. The record balancine, problem: a dynamic programming solution of a gener&ed traveling salesman problem. RIRO 8-2, 43-49 (1969). Kondili E., C. C. Pantelides and R. W. H. Sargent, A general algorithm for scheduling batch operat&s-I. MILP formulation. Computers them. Engng 17, 211227 (1993). Ku H. M., D. Rajagopalan and I. Karimi, Scheduling in batch processes. Chem. Engng Prog. 35-45 (1987). Lawler E. L.. J. K. Lenstra. A. H. G. R. Kan and D. 3. Shmoys, The Traveling Salesman Problem: A Guided Tour of Combinatorial Optimization. Wiley, New Year (1985);
Proof of Parallel FIowshop to GTSP Transformation A.I. Transfomr of parallel flowshop to GTSP The transformation to the GTSP is based upon the parallel flowshoo mathematical model develooed in Section 2. Consider such a flowshop with NL line’s and a total of NJ jobs. Each set T(k) will correspond to the NT(k) time slots associated with link k. Each j& i will take r, time slots on line k and rjjktime to changeover to job j. As before the cost matrix cilk,will be defined as the cost of beginning the oroductioa of iob i in slot t of line k to be succeeded bv the production of job j. To construct a GTSP instance from the parallel flowshop, a set of companies with branch offices and a cost matrix for traveling between branch offices must be generated. Ihe set of companies C are constructed such that each company corresponds to a job in the parallel flowshop model. For all jobs except the startup and shutdown jobs, each of the branch offices in a company correspond to a single time slot on a line. The startup and shutdown jobs have onlv one b,ranch office. Finallv. a cost matrix must be defined for the set of branch offices and associated companies. Consider the following quantities for the GTSP obtained by transforming the parallel flowshop: C = set of companies BO(k) = the set of branch offices corresponding to company k NT= total number of time slots over all lines COMP(bi) = the company corresponding to branch office
bi
L(bi) = the TS(b,) = the 6, J= the SU= the SD = the
line corresponding to branch office bi time slot corresponding to branch office set of all jobs startup jobs within the job set shutdown jobs within the job set.
W.
924
B. GOODINC
Definitions: Element chln2 in the matrix corresponds traveling from city b, to city b,. The cost matrix will asymmetric. For each step let
COMP(b,) COMP(br)
to be
TC=
j = COMP(b,)
TC=
COMP(b,)=iL(&,)=k?X(b,)=t COMP(b,) =j TC= TC+ccblb2
k = L(b,) c= TS(b,) - 1 Cb,hZ = Cilkl
END Step 2. Set
L(b,) = L(b,) THEN
Step2.
.I
%, b>= cm,
END IF END IF IF JE SD AND
L(b,) = L(b,) THEN k = L(b,) IF TS(b,) + r,r+ t,,, ==NT(k) THEN
t = i”S(b,) %,b* = =,*t END IF END IF Step 3. Successor list for the set of branch offices that i E SD IF jeSU AND L(b,) = L(b,) + 1 THEN
b, such
cb,b2=0
AND
L(b,) =NL.
AND
L(b,) = 1
Cb, Lq --0 END IF With this defined cost matrix, an instance of the GTSP is created which corresponds to parallel flowshop production. Since each job is a company in the GTSP, each job will have to be produced on some line in some time slot. This satisfies the job to time slot assignment constraints (9). By the construction of the graph, each job is always assigned the proper number of time slots (tik + tijk) needed to complte production of that job changeover to the next job.
A.2.
Conversion from IP solutions to GTSP tours
Given a set of xc, values corresponding to a solution of the integer program describing the parallel flowshop, the algorithm to construct a GTSP solution defined by x,,,,,~ is: Step 0. Initialize all GTSP solution for each b, E V, 6, E V
IF successors
variables
&,h* --0
Step 1. Set GTSP solution variables based on IP solutions initialize total cost TC=O; foreachieJ,jeJ,kcL.toT(k) IF (x,,= 1 AND igSU AND j$SD) Connect offices b, and b, such that
of
the
shutdown
= ie SD) such that GTSP
pleted j = COMP(b*) TFje SU AND L(b,) Connect offices b, END IF IF JE SU AND L(b,) THEN Connect offices b, END IF
=,,x,
Successor list for the set of branch offices b, such that ie J\(SU U SD) IF jeJ\(SU U SD) AND L(b,) = L(b,) AND i#j THEN k= Lcb,) . IF TS(b,) = TS(b,) + I, + tijkTHEN t = TS(b,)
END IF IF jeSU THEN
the
(COMP(b,)
k = f.(b,) r=o =
7-c-+ C&,hZ
END IF IF (xijk, = 1 AND j E SD) Connect offices b, and b, such that
Step 1. Successor list for the set of branch offices b, such that i E SU IF J E J\(SU u SD) AND L(b,) = L(b,) THEN
6, b2 ENDIF
TC+chlh2
IF iESU) IF (-Q, = 1 AND Connect offices b, and bl such that COMP(b,) = i COMP(bz) = j L(b*) = k TS(b,) = I + f;* + tjjk
Step 0. Initialize matrix Set chlbZ= INFINITY
AND
= i L(b,) = k TS(b,) =t = j L.(b,) = k TS(b,) = t + tik+ t,,
END
i = COMP(b,)
ENDIF IF je SD
et al.
companies tour is com-
= L(b,) + 1 THEN
and bz
= NL AND
L(b,) = 1
and bZ
Clearly the total cost of the xblbl assignment defined by the above transformation algorithm has a cost equal to the associated xp, schedule defined by the integer program. This is simply because the arc which is taken at each step of the algorithm has cost cqb corresponding to x~,~, which is being processed. It must also be shown that the assignment of xblbZ values derived from the IP solution defines a GTSP tour. In particular the following statements must be shown about the xblbZ values: (1) (2) (3)
Each company is entered by the tour exactly once. Each company is exited exactly once. The branch offices visited form a single tour.
Lemma 1. The tour generated by the transformation algori&m enters each company exactly once. PROOF: Assume that a particular company c was entered more than once. Say that there are m such branch offices which belong to company c and have been so entered. By the construction algorithm there must be m values of xirk, overallieJ,keL,teT(k)suchthatx,~~,=l. This violates the predecessor constraint (8) of the integer program for all companies except those corresponding to the startup jobs. Each startup job is entered by the shutdown job of the previous line by the last half of the transformation. Assume that a company was not entered in the candidate GTSP solution. If this is so then x,.~:,= 0 for all i E J, k E L, I E T(k). This also violates the predecessor constraint (8) of the integer program since the sum of xLkr would be zero and not one. Thus the only possibility remaining is that each company is entered exactly once. Lemma 2. The tour generated by the transformation algorithm exists each company exacffy once. PROOF: Assume that a particular company c was excited more than once. Say that there are k branch offices which belong to company c and have been so excited. By the construction algorithm there must be k values of x+ over all jeJ, keL, ff T(k). This violates the successor constraint (7) of the integer program for all companies except those corresponding So the shutdown jobs. Each shutdown job is excited exactly once and enters the startup job of the next line by the last half of the transformation.
W.
926
B. GOADING e&al.
branch offices uisited representing line 2. . , Startup Job of Iine k, all companies who have branch ofices visited representing tine k, Shutdown Job of line k, Startup Job of line k + I, . , Shutdown Job of line NL, Startup Job of line 1.
PROOF: Consider the successors of all the companies the GTSP along with the arcs which exist in the GTSP (1)
in
Startup Jobs
Consider the startup job for a particular line k. By the construction algorithm, the arcs exiting the branch office will only enter branch offices associated with line k. Therefore it is clear that in any feasible GTSP tour the successor of the branch office belonging to a startup job on a particular line will only be branch offices associated with that line. (2)
Jobs other than Startup or Shutdown jobs
Consider the arcs which exit the branch offices of these jobs. From the construction of arcs in the GTSP, a tour in the GTSP which enters any one of these types of companies at a particular branch office associated with line k can only move to another branch office associated with the same line (it can enter the shutdown company for that line to stop production). (3)
Shutdown
jobs
Consider the arcs which exit the branch office of the shutdown job of a particular tine k. The only company which can be the successor of these branch offices is the startup job of line k + I (unless it is the shutdown job of the last line in which case it will enter the startup job of the first line). With the above characterizations of the successors of the branch offices of the proof of Principle 1 is not difficult. Consider the startup job associated with the particular line k. It must have a successor company in the set of companies representing shutdown, or jobs not associated with startup or shutdown. The succeeding branch office must be associated with line k. If the tour moves to set of companies not associated with the shutdown job, it clearly must enter and exit from only branch offices associated with line k. However once the shutdown job for line k is visited then the only place the tour can move is to the next line (or first line if the last line is shutdown) and the process repeats generating the tour structure defined by Principle I. Lemma 6. The IP solution generated by the transformation algorithm
satisfies the constraint
2 2 is,
Xijk, =
1
associated with producing a job (tik + tijk see GTSP graph construction). At some point as time is advanced, the shutdown job for that line will be encountered. This means that in the forward direction x~~ will never be encountered. Finally consider moving in the reverse direction. Let branch office a be the predecessor of branch office b. Clearly the time slot associated with branch office a must be at time TS(b)t,,- & where r= COMP(a) and s= COMP(b). This is also true for the predecessor of branch office a. That is, at each preceding branch office in a feasible GTSP tour the time slot is decremented by the production time assoicated with the job (tik + I,,*). At some point as time is decremented, the startup job will be encountered. This in the reverse direction x,,, and .rk are both one is impossible. This implies that no IP solution generated from a GTSP solution will violate the time slot assignment constraints. Lemma 7. The IP soluton generated by the transformation algorithm
c
satisfies the constraint.
~~~k(,+,,~
+ ,,,))
*xijk<
i
E
J\SD,
j E J\Su,
k E L, f E T(k).
SE,\SU
PROOF: The above constraint is only meaningful if xiic,= 1. If this is true then there must be a corresponding value of x,~ = 1 from the GTSP tour such that: (1)
COMP(a)
= i
(2)
COMP(b)
=i
(3)
L(a) = k
(4)
XS(a) = t.
Now consider branch office c as the successor of branch office b (where b is not associated with a shutdown job). From the GTSP constraints the successor branch office c is unique and associated with a particular company r. Further from the construction of the GTSP graph time slot associated with branch office b is ti- tik+ tijk. Since the line associated with branch office b is also k (since 6 is not a shutdown job), the IP variable associated with x,.= 1 is x,,~(,+,~~+,~~) = 1. This satisfies the given constraint to equality for each GTSP tour variable. Lemma 8. The IP solution generated algorithm satisfies the constraint
by the transformation
kEL,tcT(k).
,‘J
PROOF: Consider a particular line k. Let us assume that in the IP solution there are at least two jobs processed at a particular time slot t,. By the transformaton algorithm, this implies that there are GTSP tour variables .rti and x,, such that: (1)
L(b)
(2)
KY(b)
= L(d) = 73(d)
= k = t,.
According to Principle 1, all the companies which have been visited at branch offices corresponding to line k must be between the startup and shutdown jobs associated with line k. So consider starting at branch office b which is processed at time slot t,. By the construction of the algorithm branch office c must necessarily occur at time t, + t.k+ t,,* where s = COMP(b) and r = COMP(c). This is also true for the neighbor of branch office c. That is, at each succeeding branch office in a feasible GTSP tour the associated time slot must be incremented by the time
i=J\SD,jEJ\SU,keL,tET(k).
PROOF: The argument is that if the above constraint were violated then there would exist an infeasible GTSP solution. Take one of these GTSP values and show that the other value could not be equal to one if the GASP tour is feasible. Consider a particular line k. Let us assume that in the IP solution there are at least two jobs processed at a particular time slot such that job one is produced in slot t and job two is produced in some slot between t and I,* + tlzk. By the transformation algorithm. this implies that there are GTSP tour variables x,,~ and x,,_ such that: L(b)
(1)
TS(b)
(2)
(3)
= L(d)
t<
7’S(d)
= k
= t
c t + t,k + t,?*.
Parallel flowshop scheduling This reduces the remainder of the proof to showing that if x”,, is part of a single feasible tour then x,,, will never be encountered. The argument from Lemma 6 completes the proof. Lemma 9. The IP solufion generated by the trunsformaton algorithm satisfies the constraint
927
xiik,e(O. I]
iEJ,jEJ.kEL,tET(k)
PROOF: Trivial, the transformation algorithm values of the IP solution to either zero or one.
set all
Theorem 2. The IP solution generafed from the GTSP &ourssatisfies the constraints for the parallel flowshop. PROOF:
From Lemmas 4-9.