You are on page 1of 13

ReDS-A Dynamic Planning, Scheduling, and

Control System for Manufacturing


K. Hadavi, M. S. Shahraray, K. Voigt, Siemens Corporate Research, Inc., Princeton, NJ

Abstract complexity of the environment's dynamics. The


Classical scheduling theory has not solved the environment has serious implications in that even if
practical needs of factory management. Management one could arrive at a solution to the problem, the
objectives are often many, ill-defined, and changing. solution may soon become invalid because the
Management is generally interested in decision sup- original assumptions may now be false. Like other
port tools to facilitate specification of changed objec- scheduling problems, the scheduling of manufactur-
tives, to react to shop floor changes, and to make short
and long-term planning decisions. This paper ing environments faces the problem of conflict of
describes a dynamic, intelligent, real-time factory interests. However, unlike many environments, fac-
scheduling system known as Requirements Driven tory scheduling deals with indeterminable events.
Scheduling (REDS). ReDS combines Artificial Intelli- Random-like behavior is commonly observed in
gence (AI) and Operational Research (OR) techniques machine breakdown patterns, product quality assur-
to find solutions that are not always optimal but are ance, vendor delivery, operator availability, order
acceptable to the changing needs of management.
ReDS uses a number of techniques such as least quantities, etc. In sumnmry, characteristics of the
commitment planning and abstraction in order to make factory scheduling problem are:
a plan. To optimize the allocation of resources, heuris- 1. A wide variety of constraints.
tics are applied from order and shop-floor points of 2. Indeterminable behavior of events (constraint
view. ReDS works in time and event-driven modes of dynamics), z
operation. ReDS uses real-time data for two purposes;
short term feedback to reconfigure the current sched-
3. Nonuniform variety of manufacturing disci-
ule, and long-term feedback to adjust heuristics. Using plines, e.g. job-shop, flowline, mass-
this feedback, ReDS can automatically conform the manufacturing, etc.
factory in which it operates. An essential partner for Based on the aforementioned characteristics, a
ReDS operation is a data collection and equipment factory scheduling system should possess certain
monitoring system. The results of coupling ReDS to a
desirable features:
real-time data collection system in a VLSI development
line are encouraging. The data collection system a) Constraint Satisfaction
receives data from and returns instructions to the shop The ability or attempt to satisfy various
floor. classes of constraints ranging from manage-
ment objectives to tool availability and vendor
Keywords: Manufacturing Decision Support Sys- tardiness. This feature would entail the ability
tems, Planning, Scheduling, Real-Time Shop-Floor to represent all classes of constraints.
Control, Job Release Control.
b) Flexibility
The ability to adjust or reconfigure the solu-
Scheduling Problems in tion when and if a perturbation causes a
Manufacturing violation of original assumptions.
Scheduling problem may be generalized as ari c) Obscure and Incomplete Information
allocation of m jobs to n resources satisfying certain The ability to find and propose solutions in the
constraints. These constraints may include cost, due presence of obscure and/or incomplete infor-
date, and resource utilization. Generally, this prob- mation. For example, approximate vendor
lem is NP-hard. In manufacturing, there is an added delivery dates.

332
J~)urnal ~" Manufiwturing Systems
Volume 9/No. 4

d) Response Time Previous Approaches to


The time taken for the svstem to search for a Scheduling in Manufacturing
new solution when one or more of the original In the past, efforts to provide solutions to sched-
assumptions change. This is important for uling problems have been predominantly analytical
supporting interactive use. in nature. However, analytical approaches aimed at
e) Abstraction of Information optimal solutions are feasible only for a small subset
The coordination of several agents ranging of scheduling problems that assume highly idealized
from machine tools to the general managers' conditions, few machines, and a small number of
expertise. The factory scheduling system jobs. Recently in AI research, the use of heuristic
should be capable of dealing with the "'right" methods to find suboptimal and/or acceptable solu-
information at the time and place needed. tions to scheduling problems with size and complex-
Furthermore, the infornmtion should be pro- ity comparable to real manufacturing environments
cessed and presented as a decision or recom- has been proposed. 2"4"s'6"7"8
mendation. Analytical approaches have dealt mostly with
f) Applicability idealized abstractions of a manufacturing shop.
Different manufacturing operations have dif- With this approach many simplifying assumptions
ferent characteristics. Such characteristics are have been made. The first step toward reducing the
governed mostly by the dynamics of the problem is to specialize the general problem of
environment. For example, mass manufactur- job-shop scheduling to the less complex problem of
ing, batch manufacturing, and job shop envi- scheduling a flow shop. The difference between
ronments each have very unique characteris- job-shop and flow-shop scheduling is that all jobs
tics. However, there are industries, e.g. VLSI follow identical paths through the machines
wafer fabrication 3, where a mixed and com- whereas job-shop paths can be different for each
plex characteristic is observed. In the latter job. The following list shows some other simplify-
situation, one may find a job shop character- ing assumptions that can be made.
istic with long lead times, very frequent
machine breakdowns, and random low yield. 1. The tasks to be performed are well defined
Adding to the problem, the process plans may and completely known.
have to be decided dynamically, based on 2. Resources and facilities are entirely speci-
results of sudden test runs injected into the fied.
system. 3. The sequence of the tasks' elemental activi-
g) User Friendliness ties is known.
User, herein, implies both human user as well 4. Each machine is continuously available.
as computer system that may have to interact 5. Jobs are strictly-ordered sequences of oper-
with the system. For example, the real-time ations, without assembly operation.
data collection software and/or the manufac- 6. There is no rework.
turing database are among the potential users. 7. Each operation can be performed by only
h) Feedback one machine on the shop floor.
The ability to detect, analyze, and act when a 8. There is only one machine of each type on
problem or trend persists over a considerable the shop floor.
time period. An example of such a problem or 9. There is no preemption (undoing of previous
trend is the slow detectable deterioration of allocations.)
machine performance, leading to work center 10. The processing times of a particular job's
overload, poor product quality, and machine successive operations may not overlap.
breakdown. I 1. Each machine can handle only one job at a
i) Optimal Solutions time.
The production of a solution that satisfies Although assumptions I, 2, 3, and 9 frequently
constraints and provides the most desirable occur in real production lines, the remaining
result. assumptions usually do not. Consequently, any

333
Journal of Mt~nt~t~cturino S~ ~tem.~
Volume 9,No. 4

schedule generated with this idealized and simpli- each run may take up to several days; therefore.
fied situation in mind becomes an inadequate solu- when there are abrupt and unexpected changes on
tion to the problem. the shop floor, questions concerning schedule
Furthermore, the size of analytically-treated reconfiguration remain unanswered.
scheduling problems in terms of job number and In MRP systems, various constraints imposed by
m a c h i n e s , is very restricted. E x a m p l e s in a given manufacturing environment are considered
literature 9"~° do not go beyond cases of two jobs only for the purpose of adjusting the suggested
and/or two machines. Considering that a problem schedule after it is generated. ISIS-I 1"12, however, is
with rz jobs and m machines has (n!)" possible a "constraint-directed" scheduling system. This
schedules, standard procedures such as enumera- systems generates schedules explicitly through
tion, integer programming, or branch and bound organizational (work in process, resources, cost,
method quickly become computationatly impracti- etc.), physical, routing, and general preference
cal. constraints. The heuristic method of beam search is
M a t e r i a l R e q u i r e m e n t s P l a n n i n g (MRP) employed to construct solutions to given scheduling
systems ~ are a family of scheduling systems widely problems incrementally. In the search tree, opera-
used in existing factories. Schedules are generated tors expand nodes by introducing new bindings of
by a very rigid and simplistic analytical algorithm. operations, machines, and queues. Each path, from
An MRP system receives a set of orders as input. the root of the tree to some descendent node,
The system knows the routings and estimated lead- describes a schedule that may be partial and need
times associated with each order; and based on this further expansion for completion. At each node in
information backschedules to compute the start the search tree, a subset of the original constraints is
times of each order. This method unrealistically used to rate the quality of the current partial
assumes that the shop floor is " e m p t y " at the schedule. If the rating flails below a certain thresh-
beginning of each start, and that an infinite amount old, the entire path is discarded or kept for expan-
of machine capacity and all the raw materials sion.
needed are available. The desired feature of flexibility requires easy
Consequently, in real manufacturing environ- rescheduling when the original assumptions have
ments with limited machine capacities and material been violated, as during machine breakdowns. Dis-
availability, the MRP-generated schedules are cor- ruptions should be kept to a minimum, in terms of
rected constantly by the users of the system. Mod- computational eflbrt to reconfigure the schedule and
ifying a schedule to accomodate a new order may easy implementation of the needed changes on the
adversely affect the already successfully scheduled shop floor. In a case where a schedule needs to be
orders. altered to accommodate changes in constraints,
Accomplishing this task to "perfection" tends to ISIS-II reruns a beam search with changed search
exceed human capabilities, and errors are likely to operators to accommodate the altered constraints.
be made. In a succeeding generation of MRP sys- An attempt is made to economize computation by
tems, efforts have been made to automate the rescheduling the affected orders only, leaving
schedule adjustment phase; however, these sys- untouched as many previous resource allocations as
tems' achievements do not go beyond pinpointing possible. This keeps the amount of consequent
trouble-spots in the MRP-generated schedule. The physical changes on the shop floor to a minimum. In
user still faces the burden of rearranging the sched- ISIS-II, the entire order affected by changes in
ule to resolve the problems detected automatically. constraints is rescheduled. It is desirable and often
The latter system is frequently called Manufacturing possible to reschedule only the "affected" portion
Resource Planning II (MRP II). of the order. This further decreases the potential
When comparing characteristics of MRP systems- disturbance of earlier resource allocations.
with desired features of a scheduling system, it is Heuristic systems generally mix a number of
evident that MRP does not offer these features. MRP "good rules" in order to generate a " g o o d " sched-
systems are highly rigid programs operating under ule. This approach can be very deceiving because
idealized assumptions. Due to long response time, only local optimization is considered when such

334
Journal of ManuJacturing Systems
Volume 9/No. 4

rules are employed. Expert systems generally tbl- descendent of i. This mapping is referred to as the
low this approach. These systems use some heuris- abstraction function. If I = UCP(j) such that all js
tics to produce an acceptable schedule and employ are descendent of some i, then we say that I is an
more rules for "'reactive scheduling". 4" t3 Global implementation of CP(i). Alternatively, CP(i) is the
measures, i.e. management objectives are directly specification of I. Figure 1 depicts an instance of
taken into account, This problem also appears in the constraint pools.
distributed scheduling systems, where a local role is Note that if aji is an abstraction function mapping
used to schedule a machine to create more problems UCP(j) to CP(i) and aik is an abstraction function
for another machine line. In contrast, ReDS mapping UCP(i) to CP(k) then ajk, the functional
employs management objectives and local con- composition of aji and aik, maps UCP(j) to CP(k).
straints to produce an acceptable schedule. With every level of recursion, h., we define a
global constraint pool CP (,k). The global constraint
pools refer to management objectives and goals
such as trends in products, efficiency consider-
Requirements Driven Scheduling ations, uniform work loads, etc. The local con-
(REDS) Architecture straint pools CP(i) refer to physical constraints such
This scheduling system is aimed at creating more as capacity, tool, labor, etc. Given that the abstrac-
flexibility in reacting to shop-floor changes that tion function follows the rule of functional compo-
inwdidate a suggested schedule, In constructing a sition, then the "Implementation Relation" is tran-
new schedule, the old schedule is maintained mak- sitive. This implies that a physical factory is an
ing changes only where needed. Additionally, the implementation of the constraint pool CP(year 88).
system's feature of information abstraction allows It is also an implementation of the month CP(June
further reduction of disruptions in a schedule caused 88), etc. Alternatively CP(year 88) is a specification
by violated assumptions. Consider a long-term of the factory. A requirement is a partial ordering of
schedule (six months) which constructs to such actions and a set of constraints. A requirement, r, is
detail that daily hours of resources are allocated to realized by a CP(i) at level h, if the implementation
the order. Within six months changes in numerous of CP(i), at level ,k + 1 realizes r. Needless to say,
aspects of the mant.facturing environment are the recursive definition of realizability has a fixed
expected. Many alterations of the schedule will take point at the physical factory level where the actions
place. Much of the potentially-wasted computation of the requirement are realized by the machines
time is saved when schedules are formulated at a without violating the associated set of constraints. A
higher level of abstraction. Changes that affect requirement, r, is realized by a level, k, if r is
low-level aspects of manufacturing will not cause
conflicts with the previously-generated, long-term
schedules.
In ReDS two policies are important: keeping
more det
disturbances by constraint changes minimal to
absorb some of the problem's disruptive dynamics
(locality axiom), and committing minimal resources
to maintain maximal flexibility to local changes.
The basic architecture of the system is a recursive
structure of constraint pools. Each constraint pool
represents the local (physical) constraints over a
period of time. The periods are totally arbitrary
except that each period unravels into smaller periods
at the next level of recursion. Furthermore, each
constraint pool (cp) for an interval of time: i, CP(i),
represents a set such that there exists a mapping, aj~, Figure 1
from UCP(j) to CP (i) if all values of j are Internal Representation of T i m e W i n d o w s in ReDS

335
Jourmtl of ,l,lant{:~lcturitlg S~ ~tem.~
Volume 9,,No. 4

realized by some CP(R) at level X-I ( X > l ) and Preprocessing


CP(R) "'is not violated." For example, a constraint This is the first module through which a new
in CP(R) could be "'minimum horizon planning," order must pass. In order to prune the search tree as
that defines how far and to which nodes realization early as possible, the ReDS preprocessor decides the
can be extended. In order to find an implementation minimum time needed to schedule an order given all
that can realize a requirement, two phases are the needed resources. Furthermore, based on cus-
involved. First, a "feasibility analysis" determines tomer requirements, the preprocessor defines a
the feasibility of a requirement in a qualitative boundary on the starting time of the order so that
sense. Next "'detailed scheduling," based on the either forward scheduling or backward scheduling
recommendations of the feasibility analysis, deter- has a cut off point in the scheduling tree of time
mines the location of the best implementation that periods. For example, the most urgent orders' cut
can realize the requirement. Before describing these off point would be today since we cannot start the
functions we introduce one more concept, viz. the order in the past. After preprocessing, the e s s e n c e
essence of a requirement. of the order is formed before it is passed on to the
next phase, feasibility analysis. The e s s e n c e of an
Let r = < a , c > be a requirement where a is a
order is all the critical resources needed and the
partial ordering and c is a set of constraints (first
range of time in which they are needed to satisfy the
order predicates). Then r' = < a ' , c ' > is called
desired due date. For example, bottleneck work
the e s s e n c e of r if a' is a partial ordering which is
centers, type A inventories, and especially, jigs and
isomorphic to a such that certain actions J;., 1_<-iN
fixtures can contribute in forming the essence of an
N where (J'~,,O'~,) • a with m,n<=N, are renanaed as
order.
mtll. And c' C c.

For example if: Feasibility Analysis (FA)


r = <{(get metal,milling), (get polish,polishing) In order to detect the problem areas, the feasibil-
(milling,cutting), (cutting,polishing)}, {ready ity analysis (FA) uses the e s s e n c e of the order as
(metal,day 4), ready (cutting,day 5) ..... ready input and examines certain key resources such as
(polish,day 6), ready (polishing,day 6)}>. bottleneck work centers, critical inventory items,
and other crucial constraints so that with little
Then r' may be defined as the following: (Note computation one of the following answers is
that cutting is not nullified because it is done on received:
a bottleneck machine; and metal is also consid- • Impossible to satisfy the requirement (order).
ered to be a critical inventory item.) • Conditional realization of the requirements.
r ' = < { ( g e t metal,null), (null,null), (null,cut-
ting), (cutting,null)}, {ready (metal,day4), ready Incoming Orders
(cutting, day 5)}>. Cu~lomet
I Preprocessing ]
T ~ MANAGEMENT

Implementation
The functionality of individual modules in ReDS
are mentioned in order to describe in detail how the
• I " ]
Seooeno,oo,OS ,
aforementioned ideas are implemented, in schedul-
ing new incoming orders and updating current
I
orders. F i g u r e 2 depicts the connectivity of these
----Jl
=.oo,,eo,,oo I
./
modules. ReDS was originall3, written in prolog for ........ "~-_ _ _ Shop Floor _ -/__ ....

prototyping purposes; for its actual use it was


rewritten in a combination of C and pascal on an Figure 2
Apollo workstation. Architecture of ReDS

336
Journal ~g'Manufacturing Systems
Volume 9/No. 4

• Based on some relaxation of either the require- The above tree structure can be represented by a
ments or constraints or both, the order can be predicate:
realized. The required relaxations are passed on
to the next phase. range (L, W, [minchild(L, W). maxchild(L, W)]).
• No serious problems detected.
where L • {y,q,m,w,d}, W • {1 .... D}.
Such a qualitative analysis will tell whether the
search space should be extended for detailed sched- For L = d and all W • {1 ..... D}, the range is
uling, or whether time should not be wasted. defined by:
In summary, the FA checks to see if the essence
range (d,W, [0,01).
of r can be realized and if not, what can be relaxed
to obviate the problem. Relaxation of constraints This indicates that nodes in the daily level do not
may include adding shifts, extending due dates, and have descendants. In the following example (L,W)
pre-emptying existing orders. A more important denote the window with number W on level L. The
task of FA checks for consistency of starting the functions minchildL,W) and maxchild(L.W) map
order on the proposed schedule with management each (L,W) into its child with minimum and maxi-
objectives. In other words, it looks at the shop-floor mum number (integer) respectively. Both functions
requirements of the order and their availability, and are undefined for all (L,W) for which " r a n g e " is
checks the impact of introducing this order based on undefined. For all other cases minchild and max-
management objectives. The technique for doing child are defined:
this analysis is described in Reference 14, where a
job release technique is introduced to globally 4W-3, i f L = y
balance to manager's specifications the ratio minchild (L,W) = 3W-2, if L = q
between jobs completed on time and machine utili- 4 W - 3 , if L = m
zation. For more detail regarding the Factory Order 7W-6, i l L = w
Release Control and Evaluation (FORCE) algo- 0, i f L = d
rithm, the reader is referred to References 14 and
4W, if L = v
15. If the FORCE algorithm or relaxation of due date
ma.rchild (L, W) = 3W, i f L = q
requires a change in the schedule proposed by the
4W, if L = m
preprocessor, the remainder of the order is sent back
7W, if L = w
to the preprocessor for adjustment of starting times
0, i f L = d
for the remaining steps.
Also note that for all integers l, k
l < k iff (Lev, l) before (Lev, k).
Detailed Scheduling (DS)
After a new order has passed through the FA
module, it enters the detailed scheduling phase.
. . . . . . . . . Y (years)
Suppose the order is to produce N pieces of some
item. Detailed scheduling determines how many of
these N pieces are to be produced in each quarter,
month, week, and day of future time. Start date and
due date of each order are decided by the FA
module. This allows detailed scheduling to focus on
only those quarters, months, weeks, and days that
fall within these two dates, i.e. only a " s l i c e " of the
original hierarchy of time windows is relevant for
scheduling this order. Figure 3 shows the number-
ing scheme for the nodes (windows) of the hierar-
chy, and a more formal specification of the " f o c u s " Figure 3
of detailed scheduling is given. Numbering of Time Windows

337
Journal of ,1,1anufitcturing Systems
Volume 9:No. 4

For a window (L, W ) the focus of detailed sched-


uling is specified in the predicate: s ~ s~ I]
focus (L,W,[l,k]).
where range (L,W, [minchild (L,W), ma.whild
(L, W)]), and _: . . . . ,.,-(
minchild (L, W) = < l = <k<ma.vchild (L, W ),
and start date before -or-in (L,/), and
due date after-or-in (L,k).
Figure 4 highlights some of the loci in the
collection of scheduling foci between startdate =
day 41 and due date = day 120.
Once the foci of detailed scheduling have been
determined, the task consists of partitioning the Figure 4
requested quantity of N pieces into quarterly sub- Planning Horizons in ReDS
quantities N(q,i), N(q,i + 1) .... N(q,i + k), where
Jbcus (y,l,[i,i + k]). For each quarter (q,j), Constraint-driven scheduling systems generate
i = < j = < i + k, N(q,j) is to be partitioned into solutions that do not violate any of the "driving
monthly subquantities N(m,l), where n = < 1 = < m constraints." In contrast, scheduling systems first
and focus (q,j[n,m]). The partitioning of the generate a solution by some procedure and then test
requested quantity for each node into subquantities this solution against the constraints. In ReDS an
for each of the descendants in focus continues until intermediate strategy was favored. The critical con-
quantities are scheduled for each day. Formally, this straint of capacity availability is used to drive the
can be stated as follows: generation of a schedule first; all other constraints
If the predicate order (L,W, Rw) indicates that for are then used to test this schedule. The schedule is
window (L,W) a quantity of R~t, pieces of some considered to be a solution if it passes all tests.
product has been scheduled, and the focus is focus An algorithm Load-Leveling 16 was developed
(L,W) D"I, f 2 ] ) , then on the level of children, i.e. that uses the capacity constraints to generate a
succ (L), a set of predicates should be sought: tentative schedule while staying within the limits of
{order (succ(L),j,R) where J l = < j = < f 2 } available capacity. This algorithm brings about a
desirable form of work load distribution. Work load
A partition of Rw into Rj's should be formed such
is the number of hours on a work center that have
that Ej Rj = Rw.
been reserved for currently pending orders. Work
In the rest of this section, we introduce the idea of
center utilization is one of the objectives in manu-
a heuristic algorithm to compute the partitions in a
facturing. In terms of work load, this may mean
way that is driven by the various constraints of
that, ideally, the amounts of work load should be
factory scheduling. constant over all consecutive time periods (within
Constraints in manufacturing can be of global or
the current focus). This should hold for all work
local nature. Global constraints are valid throughout
centers needed to complete a given new order. The
the entire hierarchy of time windows, i.e. on each
load-leveling problem is restated in more formal
level and within each window. The due date is a
terms:
global constraint. Local constraints apply to a spe-
cific window only. For example, the available The task is
capacity of some workcenter during a particular
order (pred(L),K,R) > {order (L,W,Rw)
week locally constrains possible capacity alloca--
wherefl = <W=<f2 & Ew Rw = R}
tions in this week. Among constraints, one can
distinguish critical constraints from constraints of by load-leveling where focus (pred (L),K, Ill,
minor importance. The importance of constraints f 2 ] ) , and pred (L) is the predecessor level of level
may vary depending on the type of factory. L (eg. pred (w) = m).

338
Journal of ,~,lanufczcturing S)'stems
Volume 9/No. 4

For each work center, and each window (L, W) in management objectives. The latter choice is built
focus, predicate: load (Wc, L, W) denotes the into the model of the system; however, the user has
existing load on work center Wc in window (L, W). the option to create a dialogue with the system to
Load-Leveling is to compute the Rw such that override the system's decision.
load Wc, L, W) + Rw = Newload,.cL.W and
for all l,Ve"
Newloadwc,L,i = Newloadwc,L,j where Y"i= Sequencing
<i, j = < f 2 . Feasibility analysis and detailed scheduling
decide which day a requirement can be realized. But
Another condition is that, for all We, L, i given a set of requirements for a single day the best
Newloadwc,L,i = <Maxcapwc,L,i sequence in which to release the orders is decided in
the sequencing phase. The objective of this phase
where Maxcapwc,L,i is the maximal capacity of a can be defined by management as one or a combi-
work center Wc in window (L,i). It is in the nature nation of the following: optimizing throughput,
of the problem that the condition maximizing machine utilization, and minimizing
Newloadwc,L,i = Newloadwc,L,j i:~ j can sel- flow time and work in process (WlP).
dom be achieved. The nature of the sequencing algorithm varies,
depending on the type of factory and goals set by
However, the solution which most clearly management. ~7z° Sequencing decisions involve
approximates ideal leveling of work loads is dispatching, which includes routing of orders
desired. Our heuristic algorithm computes an through certain work centers and determining the
acceptable solution in quadratic time. This algo- sequencing of orders at each work center. Analytic
rithm is applied repeatedly to each node (window) approaches, seeking optimal solutions to the most
in the hierarchy to determine how much of the sequencing problems of any theoretical or practical
quantity requested in the node is to be scheduled in interest, are proven to be computationally infeasi-
each of its descendants. Calls to the Load-Leveling ble. Therefore, research in this area has primarily
routine on the hierarchy of windows can either be focused on developing and testing various heuristic
depth-first or breadth-first. Depth-first calling is rules operating on the queues of jobs. z~ The rule is
suitable for detailed short-term scheduling, when then uniformly applied to all shop queues to choose
the immediate future is of greatest concern. For the highest priority order to be processed whenever
long-term scheduling, for the next two quarters, a work center (or a machine) becomes available.
shallow breadth-first load-leveling is more appro- Example of such rules are; First In First Out (FIFO),
priate (minimum horizon planning). Shortest Processing Time (SPT), Most Number of
Each work center has a defined maximal capac- Operations Remaining (MNOPR), Earliest Due Date
ity. Whenever, as a result of load-leveling, a work (EDD) and RANDOM. This extensive research has
center's maximal capacity is exceeded, backtrack- failed to arrive at a single simple priority rule which
ing occurs. Backtracking consists of locally undo- results in superior performance as measured by all
ing all capacity reservations of the windows which criteria for all shops and sets of orders. It shows that
share the same parent with the conflicting window one rule may be better than others, depending upon
and finding an alternative, non-load-leveled, distri- the measure of performance selected and the char-
bution of the parent's work load. If no solution is acteristics of the shop and orders.
found (all allocations would exceed some work We have developed a novel method called the
center's maximal capacity) three options are pro- Dynamic Sequencing Rule (DSR) to determine an
vided: 1) use capacity reserves (mostly in the f o r m effective priority rule for the specific scheduling
of additional shifts), or 2) preempt previously problem at hand. zz By applying DSR, sequencing
scheduled orders to free needed resources, and 3) decisions are made in real time to respond to
delay if there are slackdays. The choice is made constantly-changing conditions of manufacturing
according to the "priority" of the orders and/or environments. Our approach offers a degree of

339
Journal vf Manu]m'turitL~ Systems
Volume 9/No. 4

flexibility and control that is not available when downtime of that machine. Expected downtime
other priority rules are employed. The strength of of each machine can be defined as the remaining
DSR lies in its ability to take into account, simulta- time to the end of the work day or to scheduled
neously, various line phenomena, (e.g. setups, maintenance. The weight given to this factor can
machine breakdowns and downtimes, finite buffers, ensure the selection of an order such that its
blocking and starvation), and management objec- operation can be completed before this event.
tives, (e.g. order priority, higher machine utiliza- This feature is very valuable when systematic
tion, lower cycle time and nfinimum tardiness). In preventive maintenance is a must for reducing
the following subsections, we present the approach downtime of a costly machine or when unloading
and some experimental results indicating the supe- an expensive lot is necessary before the day ends.
riority of DSR to other heuristic rules. If there is not enough time remaining to process
an order, DSR recommends starting maintenance.
The DSR Approach The "look-ahead" feature offered by DSR guar-
As part of a real-time shop-floor control system, antees utilization of all machines. The status of
DSR is applied to the queue of the waiting orders. subsequent machines required by the waiting
Based on current conditions, the order with the orders are checked to prevent directing them to
highest priority is selected at the time a work center down machines or machines expected to go down
becomes available. The procedure for computing shortly, and to delay sending the orders to the
priorities is discussed. bottleneck work centers or centers with over-
Let Pi be the priority value of each order i, loaded buffers. Consequently, by encouraging
(i= 1..... n) in the queue of the available machine orders that have their next operations on starving
m , ( m = 1. . . . . M).
machines, machine idleness is minimized.
Minimum tardiness is achieved by speeding the
Then processing of the "rush orders." A rush order is
Pi = A*BI identified using pre-defined criteria such as, ear-
B i is an n*l column vector of indexes for some
liest due date, management wish, etc.
factors such as: number of remaining operations, Given a penalty (cost) function, P(S) the weight
processing time, due date, setup time, type of job values in A can be tuned to improve the sched-
(express or normal), status of the available machine, ules. Again, it has to be noted that if many factors
state of the next machine for order i (look-ahead), contribute to P(S), the problem of optimizing
P(S) is NP-complete.
etc.
Finally, daily work plans can be predicted by
and
applying DSR and using simulation (e.g. using
A is a l*n row vector of weight values for the DSR in the static mode at the beginning of the
indexes specified in B r day). As a result, dispatch lists containing the
The number and kind of indexes included in Bi sequence of the orders to load with load and
depend on the characteristics of the production line. maintenance times can be provided. This feature
The weight values in A can be set such that some helps the scheduler evaluate the effectiveness of
objectives are achieved (e.g. speeding up the pro- the schedules and make necessary adjustments, if
cess of the express orders, meeting more due dates, possible.
higher machine utilization). A and B; vectors can be
adjusted to react to both expected and unexpected
changes in the requirements and constraints. Fur-
The Use of DSR in a Manufacturing
thermore, this approach can be adapted to any Environment
manufacturing application to generate an effective Applying DSR in a practical real-time factory
and site-dependent sequencing rule. Other implicit control system requires the utilization of a real-time
features offered by DSR are: data collection and communication system. By
• In assigning priorities, an important factor is the using shop-floor data collection terminals, whether
status of the available machine or the expected automated or manually operated, an up-to-date

340
Journal of Manufacturing Systems
Volume 9/No. 4

database about the current state of the shop could be generated. The number is sampled from a uniform
maintained. This includes the position of each job in distribution (number of machines + 1,3* number of
the shop, status of each machine, etc. Information machines). Each operation is carried out on one of
about the shop's state is then combined with data the machines and the sequence of operations for
from a short-term planning system "detailed sched- each job is generated randomly. The operation and
uling," to give a complete and accurate picture of maintenance times are sampled from uniform dis-
current shop state and expected job arrivals over the tributions (40,70) and (30,60) respectively. Main-
planning horizon. tenance cycle times are generated from uniform
As a machine becomes available, the data collec- distribution (120,210). It is assumed that preventive
tion system alerts the overall shop controller. The maintenance should start before or at the scheduled
shop controller then consults the database to deter- time to reduce the possibility of machine break-
mine which jobs are in the queue, and applies the down. Jobs are randomly assigned as express or
DSR priority rule to select the next job to be loaded. normal.
Occurrence of events such as machine breakdown, Simulation runs were started with 10 jobs and
job arrivals, and completions cause an interrupt and repeated for 15, 20, 25 . . . . . 100 jobs with DSR,
the appropriate databases are updated. The job FIFO, SPT, MNOPR, and RANDOM for the job-shop
priorities in queue for the next available machine are models with 3, 5, 8, 12, and 17 machines. The
calculated based on the new status of the shop floor. average and standard deviation for the job-flow time
The organization of the process sequencer is (cycle time), job-waiting time, and machine utiliza-
depicted in Figure 5. tion were measured. The behavior of simulated job
shops with 3, 5, 8, 12, and 17 machines were
similar and results from the study with 17 machines
Experimental Results are illustrated in Figures 6-8. The results indicate
A series of" experiments were designed to test the that DSR always produces significantly lower cycle
performance of DSR in a specific job-shop. Simu- times and waiting times than the other four loading
lation was used to compare DSR to other commonly rules, regardless of the number of jobs and/or
used dispatching rules such as; FIFO, SPT, MNOPR, machines. The difference grows as the number of
and RANDOM. In these tests, the number of jobs jobs increase (on the average from 20% to 35%),
and machines were varied (jobs from 10 to 100 and but remains within the same limits as the number of
machines from 3 to 17). To support the results machines increase. The results also demonstrate that
statistically, each test was replicated ten times. DSR outperforms other methods in the average
The job shop simulated for this study may be machine utilization by 15%. The outcome of this
visualized as a network of queues. A queue being
formed in front of each machine in the simulated
shop. It is assumed that all jobs are available at time
zero. For each job a number of operations is

F- lac¢~ .. U'''•'"
G L O B A L D A T A BASES
FACTS '1 11~30 r..,d[" _
MANUFACTURING PROCESS P L A N S & SCHEDULING PLAN
SYSTEMS RESOURCES FROM DETAILED
PARAMETERS DS& ALGORITHM SCHEDULING MODULE
lC~X~ ..4""
O0~ . .E .j.

iooo . "'r','dt • Os~


SYSTEM STATUS
at,o "4 --~-- Rt-o
CURRENT DATA O F JOOS .." - 4 - SJ:'T

J/ \'T'
. " --°* °- PtAN~

...... ....
lo is 20 zs 30 3s 4o 4s so ss Io 6s zo rs Io Is go g$ loo
NO of Jobs

UPDATE FROM N
\1 ........
EACH IDLE MACHINE
I
II C O M M A N D S T O
LOWER LEVEL
THE FACTORY FLOOR

Figure 6
Figure 5 The Effects of Dispatch Rules on the Average Job-
Dynamic Process Sequencer Flow Time (No. of machines= 17)

341
Journal o[" ~4anut~(turin'4 ~ ~tenL~
Volume 9:No. 4

t,=o~o

~ooo ,,=r'"

tz0oo .,r'" ..
.~'" .=r'~ -
1~0oo I. --~" ...,r"~

~oo ,.= • ~ ' ~ ' ..~ - ' ' ' 9 ~

r00o .~.. ....

¢,ooo ,f.-" .... • oSR


~o °"
,4 ...'" "" .... ~ - - - Fro

UNOI~ ~oo ." "" ~ MNOPR


- - -• -- ItANI~M 3OOO

z000

°,o ,', 2'0 2'~ ;0 ,', ,; ,'s so s's ,.0 ,'~ ;o A ,'0 ,', ,~ ,'s ,00 '~,o ,'s 2'0 ~'~ ;o ;s ,'0 ,'~ s'0 5's ;o ,'~ ,'0 A ;0 ,'~ 9.0 ,'5 ,0o
NO of Jobs NO Of Jobs

Figure 7 Figure 8
T h e Effects of Dispatch Rules on the A v e r a g e T h e Effects of Dispatch Rules on the A v e r a g e ,lob-
M a c h i n e Utilization [No. of m a c h i n e s = 17) W a i t i n g T i m e (No. of m a c h i n e s = 17)

study confirms the effectiveness of DSR in main- work center, or b) alerting management about
taining higher machine utilization and reducing the certain quality problems or e.g. a machine that is
cycle and waiting time in the job-shop environments down more than 60% of the time. With the use of
suffering from machine breakdowns. the statistician, ReDS will constantly update its
long-term view of the factory and will try to mold
itself so the specific problems, such as potential
Simulation long-term machine breakdowns, are taken into
account in the scheduling policy. The subject of this
As indicated in the section on the implementation
module is very extensive and beyond the scope of
of REDS, DSR was designed to react to shop floor
this paper. However, where the sequencer monitors
problems in real time. However, users are often
and corrects instances of problems in the shop floor,
interested in looking into the future given a pro-
the statistician is searching for " e p i d e m i c " occur-
posed schedule. The simulation module allows
rences, such as frequent backlog of order, etc.
assumption of future events based on the schedule
that is and would be proposed by REDS. Thus, the
simulation module has two functions: a) "what-if" Conclusions
type questioning, and b) verification of the schedule Classical scheduling theory has been far from
proposed by REDS. The horizon of simulation time successful in solving the practical needs of factory
is specified by the user interactively. It can be done management. Management objectives are often
for the next few minutes, to the next few days, or many, ill-defined, and changing. In general, man-
months. However, our experience indicates that the agement is interested in a decision support tool,
use of simulation to prepare future schedules, espe- facilitating specification of their objectives as they
cially for extended time horizon, is not a particu- change, so that they can react to a constantly
larly reliable approach. This, of course, is due to the changing shop floor, making short and long-term
dynamic nature of most factories. planning decisions. In this paper we described ReDS
which is a dynamic, intelligent, real-time factory
scheduling environment. ReDS combines AI and OR
Statistician techniques for finding solutions that are not always
The statistician is a novel module of REDS; its optimal but acceptable to the changing needs of
function is to monitor, analyze, and correct long- management.
term shop-floor problems. Correction of such prob- ReDS uses a number of different techniques such
lems may occur in two forms: a) signaling different as least commitment planning and abstraction in
modules of ReDS about a newly-found bottleneck order to create a plan. Heuristics are applied from

342
Journal o]" Manu]~tcturing Systems
Volume 9-/No. 4

the order and shop floor points of view to optimize


APOLLO
the allocation of resources. ReDS works in real
time, e v e n t - d r i v e n operation, and/or semi-
real-time. The former implies event driven and the
latter time-driven operation. ReDS uses real-time
data for two purposes: short-term feedback to recon-
figure the current schedule and long-term feedback
for adjustment of heuristics. Thus, ReDS can auto- / ./',.;,:,"/i i ",".,".,".?'-'"~
matically mold itself into the shape of the factory it
serves.
An essential partner for ReDS operation is the
presence of a data collection and equipment moni-
toring system. ReDS is designed to work in a variety
of different environments such as batch manufac-
turing and job-shops. Unlike existing expert sys-
tems, such as ISIS, it deals with the sequencing
problem and addresses the more general scheduling
problem as well. And unlike many other well-
Figure 9
known systems, such as OPIS 13, ReDS is more than ReDS/Comets Interface
just a paper design or prototype. ReDS has been
operational in one of the most difficult scheduling Acknowledgement
environments, namely a VLSI development line, for The authors wish to thank Tony Chen, Peter
over a year and the results are very encouraging. Spool, Herb Foster, and Rowena Hou for their
Other prototypes of ReDS were built for a PCB invaluable contribution in our frequent discussions
assembly line and a plastic connectors assembly and their many suggestions for improving the
line. The results of our VLSI installation indicate model. The aforementioned individuals as well as
that ReDS has improved productivity by at least Luc DeRidder and Dietrich Krueger implemented
10%. The actual graphs showing such improve- the system and made it work. John Gaylord was a
ments could not be presented due to the confiden- constant source of encouragement and support and
tiality of the fab line.
helped us generously in order to remove the many
From a more pragmatic viewpoint, an important problems we encountered. We thank Karin Cermele
question is how to use ReDS with an existing MRP for typing this manuscript and being patient with our
system. ReDS and MRP can complement each other never-ending changes.
since the former's primary task is generation of
real-time schedules, whereas the latter is maintain-
ing a more traditional role of an IMS system. For
example, an MRP system can provide process plan
References
1. M.S. Fox, "Constraint-Directed Search: A Case Study of Job-
information and inventory availability data to ReDS Shop Scheduling." Carnegie-lVlellon University CMU-RI-TR-83-22,
for generating schedules. In addition, the MRP 1983.
2. K. Hadavi, "Dynamic Scheduling for FMS." AUTOFACT 85
system can perform other tasks such as accounting, PRDC., Detroit, 1985.
purchasing, and marketing. In one fab line installa- 3. W. Boesenberg. "Current Status of Integrated Circuit Factory
Automation, Especially Related to Diffusion Furnaces.'" Siemens
tion ReDS is fully integrated with Comets (Trade- RTL. Technical Report #RTL-85-TR-044, 1985.
mark of Consilium) for exchange of data and -4. M.S. Fox, S.F. Smith. "'ISIS-A Knowledge-Based System for
Factory Scheduling, Expert Systems," Vol. I. No. I, 1984.
instructions to the shop floor. The basic configura- 5. T.J. Grant, "Lessons for OR frown AI: A Scheduling Case
tion is shown in Figure 9, where Comets is used as Study," Journal of the Operational Research Society, Vol. 37, No. I,
1986. pp. 41-57.
a data collection system as well as a manufacturing 6. J.J. Kanet, H.H. Adelsberger, "Expert Systems in Production
database providing engineering information such as Scheduling," European Jrnl. of OR, Vol. 29, 1987, pp. 51-59.
7. A. Kusiak. "Designing Expert Systems for Scheduling of
process plans for REDS. Automated Manufacturing," IE. July, 1987, pp. 42-46.

343
J~mrnal ~!~".t,hmu/~zcturint¢ Systems
Volume 9/No. 4

8. P. Mertens, J.J. Kanet, "'Expert Systems in Production Manage-


ment: An Assessment," Journal of Operations Management, Vol. 6.
Author(s) Biography
No. 4, 1986. pp. 393-403. Kh~)srow Hada~i received his BSc degree in electronic and
9. R.W. Conway. et.al., "'Theory, of Scheduling." Addison Wesley electrical engineering from Birmingham University. UK in 1975:
Publishing Co., Inc.. 1967. his MSc in computer engineering from University of Southampton,
10. K.R. Baker, "'Introduction to Sequencing and Scheduling." John UK in 1976: a Master's degree in management from the University
Wiley & Sons, Inc., 1974. of Birmingham, UK in 1977: and a PhD degree from the Electrical
1 I. S.C. Aggarwal, "'MRP, J[T, OPT. FMS," Harvard Business Engineering Department. University of Michigan in 1983. He is a
Review. September-October, 1985. group leader of Decision Support Systems Group at Siemens
12. M.S. Fox. et at.. "'Job-Shop Scheduling: An Investigation in Corporate Research, Inc.. where he is engaged in research in
Constraint-Directed Reasoning." Proc. j AA.41, 1982. various aspects of decision support systems for industrial
13. S.F. Smith. P.S. Ow. "The Use of Multiple Problem Decompo- management. His current interests are conceptualizing mental
sition in Time-Constrained Planning Tasks," I JCAI 85. pp. 1013-15, models of factory managers and consultants and automatic updating
August, 1985. of such models directly from the shop floor.
14. K. Hadavi. and M.S. Shahraray, "'Release No Job Before Its Maryam Shahna~az Shahraray rcccived a BS degree in industrial
Time." Third International Con]~'rence ou ES's and the Leadin~ Edge engineering from Arya-Mehr University of Technology, Tehran. lran
in Pro~htction and Operatious Management, 1989. in 1977; an IrIS degree in industrial and systems engineering from
15. K. Hadavi, M.S. Shahraray, "FORCE-Factory Order Release Ohio University in 1979: and her MS degree in operations research
Control and Evaluation," CORS/TIMS/ORSA Conl~'rence, Vancou- from the University of Michigan in 19,',12. She is currently a research
vcr. 1989. scientist with the Decision Support Systems Group at Siemens
16. K. Hadavi, A. Lehnnert. "'A Load Leveling Algorithm lbr Corporate Rescarch, Inc. tter research interests includc real-time
Factories,'" Technical Memo. Siemens Corporate Research, Inc.. control of flexible manufacturing, automatic explanation of changes in
1987. the results generated by quantitative and qualitative modeling systems.
17. S. French. "'Sequencing & Scheduling," Ellis Horv,,ood Ltd., and application of statistics and opcrations research models and
1982. mcthodologies to industrial decision making problems.
18. R.J. Wittrock, "'Scheduling Algorithms in Flexible Flov¢-Lines," Kerstin Voigt received her undergraduate training in computer
DSM. IRes. & Devehqmtent, Vol. 29, No. 4, July, 1985. science and psychoh)gy at the University of Frankfort and the
19. K.L. Hitz, "'Scheduling of Flexible Flow-Shops.ll,'" Lab fi~r Technical University of Munich, Germany. In 1982 she joined
ht/i,'matitm & Decision Systems, MIT, LIDS-R-1049, OSP 87049. Rutgers University, NJ. on a two-year Fulbright scholarship. She
October, 1980. received an MSc in computer science in 1984. From 1985 to 1987, she
2ll. S.K. Eilon. ctal., "'Experiments with the Six Rules in Job-Shop was employed as a research scientist at Siemens Corporate Research
Scheduling: Simulation." February, 1975. and Technology, Princeton, NJ. There she was a member of the
21. S.S. Panwalkcr. W. Eskandcr, " A Survey of Schcduling Rules," Factory Autolnation Group. Since 1987 she has rejoined Rutgcrs
ops. Rcs., 25, 45-61, 1977. University to pursue a PhD degree in computer science. Her disser-
22. M.S. Shahraray, "Dynamic Sequencing Rule Applied to Job- tation research is on "'incorporating global constraints into hillclimb-
Shop Scheduling.'" Proceedin.~s q[" the Simulation atul Art~[Tcial ing patchcrs.'" Her general research interests include automatic
/ntelligence in Manuf~tcturing ConJ?rem'e, SME, Dearborn, M[., algorithm design, knowledge compilation, constraint incorporation.
1987. and heuristic search.

344

You might also like