Enumerative approaches to parallel flowshop scheduling via problem transformation

Enumerative approaches to parallel flowshop scheduling via problem transformation

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)EO...

2MB Sizes 6 Downloads 40 Views

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.