1993 Book OperationsResearchInProduction
1993 Book OperationsResearchInProduction
Operations Research
in Production Planning
and Control
Proceedings of a Joint German/US Conference,
Hagen, Germany, June 25-26, 1992
Springer-Verlag
Berlin Heidelberg New York
London Paris Tokyo
Hong Kong Barcelona
Budapest
Prof. Dr. Gunter Fandel, Institute of Production Management
Femuniversitat Hagen, FeithstraBe 140/AVZ II
D-5800 Hagen, FRG
Prof. Dr. Thomas Gulledge, The Institute of Public Policy
George Mason University, 4400 University Drive
Fairfax, Virginia 22030-444, USA
Dr. Albert Jones, AMFR, NIST B 124 Metrology,
Gaithersburg, Maryland 20899, USA
This proceedings volume contains selected and refereed contributions that were presented at
the conference on "Recent Developments and New Perspectives of Operations Research in
the Area of Production Planning and Control" in Hagen/Germany, 25. - 26. June 1992.
This conference was organized with the cooperation of the FernuniversiHit Hagen and was
jointly hosted by the "Deutsche Gesellschaft fur Operations Research (DGOR)" and the
"Manufacturing Special Interest Group of the Operations Research Society of America
(ORSA-SIGMA)". For the organization of the conference we received generous financial
support from the sponsors listed at the end of this volume. We wish to express our
appreciation to all supporters for their contributions.
Last, but not least, we would like to thank all who have shared efforts to make this conference
a success. In particular Lioba Lanwer, Peter Fran'$ois and Dr. Richard Lackes are recognized
for their help in organizing and conducting the conference. We thank also Prof. Dr. Wolfgang
Buhler and Prof. Dr. Lothar Streitferdt of the DGOR for initiating this joint venture of
DGOR and ORSA.
IV. Scheduling
VI. Quality
Charles V. Trappey
Department of Consumer Sciences and Retailing
Purdue University, W. Lafayette, In 47907, USA
Amy J. C. Trappey
Department of Industrial & Manufacturing Systems Engineering
Iowa State University, Ames, Ia 50011, USA
Richard Feinberg
Department of Consumer Sciences and Retailing
Purdue University, W. Lafayette, In 47907, USA
Abstract
The task of planning product assortments using portfolio optimization is developed and
applied to a case in apparel manufacturing and distribution. The planning process begins with the
retail buyer, the key individual in the organization that selects merchandise for resale to the
consumer. In order to maximize the profit and minimize the risk of the merchandise investment,
the retail buyer must simultaneously consider many different factors that impact the merchandise
mix decision. A merchandise planning model is developed for the retail buyer based on the
concept of stock portfolio theory. The investment returns and risks are considered to determine the
product assortment. A retrospective statistical test is conducted to verify the goodness of the
product assortment portfolio model. The methodology, developed for a large Midwest retailer, can
be extended to a wide variety of cases in manufacturing, especially cases involving the production
of consumer products.
Key Wonk Merchandise assortment planning, portfolio theory, product life cycle.
1. Introduction
This research introduces the use of investment portfolio theory to optimize two
merchandise investment planning decisions. The first decision is the merchandise item selection.
Given a set of n items available for investment, find m items to form a maximum profit, minimum
risk merchandise assortment (Figure 1). The selection criteria are based upon the buyer's purchase
objectives and evaluation of risk and returns. The second decision is the item percentage decision.
4
Given the set of m items, selected by the item selection model, as a portfolio, find the optimal
percentage of investment dollars for each item (Figure 2). That is, maximize the profit and
minimize the risk of the merchandise percentage investment portfolio based upon the buyer's
investment objectives and evaluation of risk and returns. Both analytical optimization models
depend upon the projected merchandise returns that can be derived from a merchandise investment
knowledge base. In this paper, the item percentage decision model is implemented and tested.
m items to be
choosen for
purchase
al% item 1
a2% item 2
a3% item 3
.
.
am% itemm
The main objective is to assist the merchandise buyer in deciding which merchandise to buy
and in what quantities. The objective of applying portfolio theory to these decisiqns is to lower the
investment risk and increase the investment return. In Section 2, the background of the portfolio
theory and investment systems is reviewed. In Sections 3, the mathematical basis of two
merchandise portfolio decisions is discussed. Section 4 describes the formulation of the
optimization models incorporating portfolio theory to support merchandise assortment decisions.
In Section 5, an example of the merchandise investment planning scenario is presented to
demonstrate the model implementation. Section 6 introduces the retrospective test to compare the
decisions made based on the portfolio model, an expert buyer, and the existing textbook method.
Finally, Section 7 summarizes the contribution of this research and the future research directions.
5
2. Background
Markowitz (1959) first introduced the portfolio selection concept to demonsttate how the
risk of a portfolio investment can be reduced, and how investment capital can be optimally
allocated between assets which have different risks and returns. Diversification of a portfolio is a
strategy whereby the investor attllmpts to reduce risk by investing in assets that provide different
yields under different economic conditions. By using a portfolio diversification approach, the
assets held in the portfolio are protected from extreme fluctuations in the economy. Portfolio
diversification is necessary because there is risk in investment, especially when high rates of return
are expected. Retailers in particular are continually investing in portfolios of merchandise that have
degrees of risk and rates of return highly correlated with fashion levels. Siegel (1979) introduces
this concept as the Fashion Triangle. At the top of the triangle, there are the "new fashion" items.
These items are the highest risk group, with almost a 100% chance of requiring a mark-down in
price. Buyers are advised never to invest more than 5% of their budget in these items. The
"fashion right" items occupy the next 15% of the triangle, and represent a high risk category of
merchandise that will require advertisement to educate the consumer and stimulate interest in the
new look. At the bottom of the triangle lies the "fashionable" merchandise, the 80% portion of the
investment that can be handled by assistant buyers and will never require a markdown. Siegel's
approach to merchandise investment is based upon "rules-of-thumb," a heuristic derived through
experience. The Fashion Triangle approach may be suitable for reducing the risk of merchandise
investments, but it is unknown whether or not the assortment chosen will yield the maximum
returns for the given level of risk. Neither is it known that the 5%-15%-80% assortment will
minimize the risk for the expected level of returns.
Markowitz portfolio theory uses four standard statistical measures to analyze the variability
of investments and the expected returns of those investments. As described by Baumol (1970), the
expected value (or mean) is used to measure the returns of the portfolio as well as the returns of
each component investment. The standard deviation measures the dispersion of the returns around
the expected value, and the covariance and correlation coefficient are used to measure the degree of
parallelism in the behavior of the investments. The principle assumption of Markowitz's approach
is that the investor's preference for a portfolio depends only upon the mean and standard deviation
of the components as the predictor of the risk of the portfolio. In order to minimize the risk of the
portfolio, Markowitz formulated a nonlinear optimization model with the formula for portfolio risk
as the objective function. The constraints consisted of a proportionality requirement to insure that
the investments added up to 100%, and a non negativity requirement to insure positive proportions.
Many extensions to this early formulation are discussed in Portfolio Management (Smith 1971).
Although the original intention of Markowitz's theory was to reduce the risk of portfolios
of securities, the theory has been extended to include investments in a number of different types of
assets. Several authors (Corstjens & Weinstein, 1982; Mahajan, Wind, & Bradford, 1982; Wind,
1974; Wind & Mahajan, 1981) provide both a theoretical and a mathematical development of
6
portfolio theory and apply the theory to product selection and analysis. Another group of authors
(Allaway, Mason, & Brown, 1987; Mason & Mayer, 1990; Rosenbloom, 1980) discuss the
application of portfolio theory in the retail organization and provide an overview of the product
portfolio concept. The research conducted by these authors establishes the theoretical foundation
for creating and utilizing merchandise portfolios in a retail setting.
Given the forecasted states of apparel demand and the expected returns under the demand
scenarios, the expected merchandise rate of return I{Rj] is computed using the formula
(1)
where Ps is the probability of the demand scenario s occurring and Rjs is the investment return for
item j under the dem~nd scenario s. Referring to the example in Table 1, Rj is the weighted
average of the returns Rjs (or the geometric mean of the distribution) under the different levels of
consumer demand for each jacket. The variance and the standard deviation of the distribution are
computed using the formulas:
(2)
(3)
Table 1 Example data for the comparison of the expected returns and standard deviations of
four related merchandise items.
0.6 . , . - - - - - - - - - - - - - - ,
0.5
Probability .. ORVISBC
... ORVISCJ
of 0.4 .. CROADSJ
... CROADCJ
Occurance
0.3
0.2 +-_.---.--O--.-........---.--....---.r---I
-0.2 0.0 0.2 0.4 0.6
Rate of Returns
3
COVij = L Ps(Ris - RiXRjs - Rj)
8=1 (4)
8
is used to measure the portfolio risk when items i and j are selected. Notice that when i = j, then
COVij = Of, which is the variance of item j. Since the risk of the portfolio is a function of the
weighted variances and covariances of the merchandise returns (Baumol, 1970), the portfolio risk
may be substantially increased or decreased by the selection of items or by the percentage
investment in items. The equation for portfolio risk is presented below.
n m
I. I. Wi\\jOOVij
i=1 j=l (5)
For the decision depicted in Figure 1, Wi is 1 (0) when item i is selected (not selected).
Furthennore, Wi is the percentage invested in item i when the equation is used to model the
decision depicted in Figure 2. The merchandise investment planning objective is to minimize the
risk and maximize the expected returns. The expected returns of the portfolio are represented as
(6)
In order to maximize the returns of the portfolio while minimizing the risk, Equations 5 and 6 are
combined as an objective function. In the next section, mathematical optimization models are
derived to represent the merchandise portfolio concept.
Two mathematical optimization models are provided to assist the retail merchandise buyer.
One is the item selection decision model (Decision 1), and the other is the item percentage decision
model (Decision 2). If the buyer is given a set of n items for purchase, the task is to find the best
m items to fonn a maximum profit, minimum risk portfolio. If the buyer is given a set of m items
as a portfolio, the task is to find the percent investment of each item that will maximize the returns
and minimize the risk of the portfolio. Each of the above tasks is fonnulated as a non-linear
programming problem. Only the first model (Section 4.1) requires that the variables be restricted
to integers. Section 4.2 presents the item percentage decision fonnulation.
Given a set of n items (Xl' x2' x3' ... , Xn) available for purchase, find m items to fonn a
maximum profit, minimum risk portfolio. The selection criteria is based upon buyer's purchase
objectives and tolerance of risk 0\:).
9
n n n
Max. L Xi~ - nc L L XiXjOOVij
i=1 i=l j=1 (7)
ST.
n
L Xi=m
i=l (8)
Xi = 0 or 1. i = 1.2.3 •...• n
v
L Xj~y%m
i=1 (9)
(at least y% of m items selected have to be staple goods (or fashion goods. etc.) as
described by the set of v items (xl' x2. x3' ...• xv' ...• Xm).
v
LXi=1O
i=1 (10)
(at least 10 of the m items selected have to belong to the set of v items. v ~ 10)
".;=1 (11)
(item j must be chosen)
PIc is the risk adjustment factor used to reflect the buyer's investment philosophy. Three
levels of PIc are identified:
a. Risk Adverse - the buyer wishes to maintain a moderate level of returns but is willing to
tolemte only minimum levels of risk. Thus. PI is determined from
n _ In n
PI >>> L Xj~ L L XjXjCOVij
i=l i=l j=l (12)
b. Risk-Return Indifferent - risk and returns are equally weighed in the selection of items. P2
is determined from
10
n _ /n n
P.2 = L ~Rj L L ~"jroVij
i=1 i=1 j=1 (13)
c. Profit Seeker - the buyer wishes to maximize returns and is willing to tolerate high levels of
risk. P3 is determined from
n _ /n n
P3 <<< L ~Rj L L ~"jroVij
i=1 i=1 j=1 (14)
Given a set of m items (CI'~' c3 •...• em) as a portfolio. find the optimal percentage
investment in each item. That is. maximize the profit and minimize the risk of the portfolio
depending upon the buyer's investment objectives and tolerance of risk (<JIc).
m m m
Max L wiRj - CIk L L WiWjroVij
i=1 i=1 j=1 (15)
ST.
(16)
'tc is the risk adjustment factor that reflects the buyer's investment philosophy. Three levels of'tc;
risk adverse(Clt). risk-return indifferent (CJ2). and profit seeker (<11). are identified. The value of'tc
is set using the equations specified for 1\.
The sequence of steps required to solve the percentage investment decision model are
shown in Figure 4. The steps illustrate the optimization of the percentage investment decision.
Step 1 Select the items to be included in the portfolio. The item selection model could be applied
at this point. However. in order to simplify the problem. the selection is pre-determined
and is given as the four men's jackets listed in Table I.
11
Step 2
----
Detennine investment returns
using a knowledge base MIR_3b
I
•
. .. -- ,..
Step 4
•
Fonnulate Markowitz quadratic
programming model to minimize
risk and maximize returns.
.....l.
Fonnulate constraints for the
Step 5 model.
•
Solve nonlinear model using
Gino, a generalized reduced
Step 6
gradient optimizer.
Figure 4. The automated decision making process for the merchandise investment plan
Step 2 A knowledge base program is used to estimate the Gross Profit on Sales (GPS) for each
jacket. Given the GPS value, the Merchandise Investment Returns (MIR) can be
estimated. For the jacket example, assume that a knowledge base MIR_3b (Trappey,
1992) predicted the following for the Orvis Back Country jacket:
Using actual retail sales data from Younkers, a Mid-west chain of department stores, the
relationship between GPS and MIR (for men's sportswear) is modeled as a polynomial of
degree four. In order to use the polynomial equation to represent both positive and
negative investment returns (a GPS value of 38% represents a MIR of zero), a simple
transfonnation is used to shift the curve down the y-axis:
Using Equation 17, the MIR for the Orvis Back Country jacket is computed for each
economic state. Also, the MIR_3b knowledge base is used to estimate the probability of
occurrence for each economic state.
Step 3 Given the Ps and MIR values for ORVISBC, ORVISCJ, CROADSJ, and CROADCJ, the
third step is to compute the variance I covariance matrix using Equation (4). The matrix
output is summarized in Table 2.
Table 2 Using a variance I covariance matrix to model the merchandise investment risks.
Step 4 Use the data from Step 3 to formulate the Markowitz quadratic programming model:
I Objective Function - Maximize portfolio returns for an average economy where the buyer
is risk adverse (Ck = 10.0). Using Equation 15,
1) MAX = ( 0.1200 • ORVISBC + 0.1450 • ORVISCJ + 0.1200 • CROADSJ +
0.1500· CROADCJ) - 10.0· (0.0031 • ORVISBC 1\ 2 + 0.0042 • ORVISCJ 1\ 2
+ 0.0651 • CROADSJ 1\ 2 + 0.0300 • CROADCJ 1\ 2 - 0.0058 • ORVISBC •
ORVISCJ + 0.0282· ORVISBC· CROADSJ + 0.0180· ORVISBC· CROADCJ -
0.0288 • ORVISCJ • CROADSJ - 0.0120 • ORVISCJ • CROADCJ + 0.0780 •
CROADSJ • CROADCJ );
Step 6 Solve the non-linear programming model using Gino software (Liebman, Lasdon,
Schrage, & Waren, 1986). Gino uses the generalized reduced gradient algorithm (GRG2).
The solution of the model, for three different investment strategies, is presented in Table 3.
Table 3 shows the optimal percentage investment for a risk adverse strategy, an indifferent
strategy, and a profit seeker strategy. For the risk adverse strategy, ORVISCJ (the Corduroy
jacket) has the least risk, so it has the highest investment percentage allocated. High risk items
such as CROADSJ and CROADCJ have the lowest suggested investment percentages. In order to
increase the returns of the portfolio, the buyer must be willing to assume more risk. The buyer of
merchandise assumes more risk for the risk indifferent strategy (the model risk adjustment factor
(<It) is set to 1.0). The portfolio returns increase to 13.5% as the risk is increased. The model
switches 5% of the investment from the low risk Orvis Back Country jacket to the high return,
high risk Country Road Cashmere jacket. When the merchandise buyer totally disregards the risk
of the portfolio (profit seeker strategy) and chooses only to max~mize the returns of the investment,
the model allocates 70% of the investment to the two most profitable items - the Cashmere and the
Corduroy jacket. Using a profit seeker strategy, the returns of the portfolio reach a maximum of
14%.
For each of the three investment strategies described above, the probabilities were based
upon the assumption of an average economy. If the probabilities had predicted a good or a bad
economy, then the model would have yielded an investment strategy tailored to satisfy either of
these conditions. In conclusion, the portfolio approach gives the retail buyer a decision making
tool which can be used to model (1) merchandise under different economic conditions, (2) different
risk tolerance strategies, and (3) a variety of different types of merchandise classifications. The
example used in this section illustrates the application of the model to a simple portfolio of four
jackets. The application can be extended to a number of different applications in retailing. Instead
of building a portfolio of jackets, the buyer could feasibly build a portfolio of vendors, or explore
the optimum allocation of goods between staple and fashion merchandise categories. The model
could also be used on a more aggregate level to plan merchandise investments across departments
in a department store, or across stores for a multi-store operation. In the next section, a
14
retrospective test is used to statistically compare the investment outcome of the model to the
investment outcome of a retail buying expert. The Younkers men's sportswear buyer typically
purchases over 300,000 items every six months, representing a seasonal investment of over 5
million dollars. Management confmned that the buyer providing data for the test was highly
capable and successful, and had a proven record of profitable investment planning.
6. Retrospective Test
A Merchandise Assortment Plan (MAP) was generated using the percentage investment
portfolio optimization model (Equations 15 & 16). A test methodology called a retrospective test
(Hillier & Liberman, 1974) was used to determine how well the MAP would have performed had it
been used. The objective of the test was to determine whether or not the optimized assortment plan
would yield as good of a profit as the expert buyer's best plan.
The net profit of a portfolio of men's sportswear items was used at the performance
measure to test the Hypothesis. Net profit was selected as the performance measure since
profitability provides "the hard numbers on which continuing merchandise assortments are built."
(Seegal, 1979). The MAP obtained from the expert buyer and the MAP obtained from the
optimization model provided the data from which the net profit values were computed. The
buyer's MAP was taken directly from the Younkers 1991 Fall season assortment plan, and
represents a sample of the buyer's investment strategy for 22 classifications of merchandise. The
model MAP is the output generated from the application of the percentage investment decision
optimization model (Equations 15 & 16) to the 22 classifications of merchandise. The net profits
are computed for each of the 22 classifications (Table 4). The research hypothesis is stated as
follows:
The experiment for testing the Hypothesis is concerned with the differences in net profit that may
occur when a portfolio optimization model is used or not used to generate the MAP. The test of the
hypothesis is based upon the nonparametric sign test (Conover, 1971) of the net profits computed
for the MAPs. The sign test is used to determine if the net profit measures derived from the
expert's MAP are significantly smaller than the net profit measures derived from the optimized
MAP. The inputs to the optimization model included (1) a set of 22 basic classifications of
merchandise for the Fall planning season, (2) the expected returns for each classification (Rj), (3)
15
the probability (Ps) of a given state of economy occurring during the planning period, and (4) the
risk adjustment factor <1\:).
During a field interview, the expert buyer stated that the plans for the 1991 Fall Season
were based upon expectations of an average economy. When the buyer was formulating the plan,
Younkers was experiencing an increase in store traffic, fewer sales, no change in markdowns, and
no change in gross margin. The national economy also seemed to be experiencing growth. Given
this data, the knowledge base created for the test stated that "there is weakly suggestive (-0.3)
evidence that the economy is not 'bad,' suggestive evidence that the economy is 'average,' and
weakly suggestive (0.3) evidence that the economy is 'good.' After converting the certainty values
to probabilities, the three economic states were set to 20% chance bad economy, 50% chance
average economy, and 30% chance good economy. The buyer's records provided information
about the minimum and maximum stock levels recommended by management, information which
was used to formulate the constraints of the optimization model. Since the buyer was observed to
be risk I return indifferent, the impact of risk and returns were equally weighed in the selection of
items (Le., the model risk adjustment factor CJk was set to 1.0). The net profit for each of the 22
classifications of merchandise was calculated using the standard formula for net income, earnings,
or profits (Davidson, Stickney, & Weil, 1982). Gross profit represents the excess of merchandise
sales revenues over the cost of the merchandise sold, whereas net profit represents the excess of
gross profit over the operating costs of the department store. The expert buyer reported that the
Operating Cost Index (OCI) for the department store typically ranged from 30% to 40% of the total
retail sales. Based upon an analysis of the Fall season sales results, the operating cost for the
men's sportswear department was set to 35.7% of the retail sales. The buyer's plan provided an
accurate count of the number of items received and the cost and retail of the items sold during the
1992 Fall season. Using the buyer's data, the net profit was computed for 22 classifications of
merchandise. The merchandise portfolio selected by the buyer (MAPl) was optimiZed using the
Gino software to form MAPl. Using a published merchandise planning heuristic called the
Fashion Triangle (Siegel, 1979), MAl'3 was created.
As an example of the retrospective net profits computed, consider the classification for
rugby knit shirts. Table 4 shows that the expert buyer's net profit for rugby shirts was $88,300.
Using the results of the Gino portfolio model, the net profit was determined to be $lO4,000.
Using the Fashion Triangle (FT) planning heuristic, the net profit in retrospect was determined to
be $11,900.
The retrospective test results are presented in two parts. Section 6.2.1 provides a historical
basis for the buyer's investment strategy. Section 6.2.2 utilizes the non-parametric sign test to
evaluate the statistical significance of the differences between the buyer's plan and the
16
mathematically optimal plan. The differences between the portfolio approach, the expert buyer,
and the Ff approach are also tested.
Table 4 Comparison of net profit (in thousands of dollars) for three assortment plans
MAP)
Abbrev. Ex
or nswtr
cttnswtr -1.7
woolswtr -0.1
wlblswtr -4.2
-16.3
Sweaters
In retrospect, acrylic sweaters were poor sellers during the 1991 Christmas season. The
portfolio model correctly reduced the investment in acrylic sweaters and increased the investment in
orlon sweaters. The buyer also argued (in retrospect) that an increase in the supply of cotton
sweaters during the peak of Christmas sales would have substantially improved his departmental
performance. The model results however, do not support an increase in cotton sweaters.
Woven Shirts
The expert buyer invested the largest percentage of woven shirt money in high risk updates
and fashions. Since the model selected assortment percentages based upon a 30% probability of a
good economy, a 50% probability of an average economy, and a 20% probability of a bad
economy, the optimal allocation is somewhat different from the expert. Evidently the expert
selected a wovens investment strategy based upon expectations of a good economy. Furthermore,
17
since the model parameters were set to avoid risk, the largest investment percentage went to the
low risk, regular weight wovens. The portfolio model, in retrospect, recommended that the buyer
focus on a basic stock of wovens instead of a fashion forward collection of wovens.
Knit Shirts
During the 1991 Fall season at Younkers, the best selling men's sportswear items were
knits. Rugby and fleece knit shirts were top performers in the stores located in Iowa, Nebraska,
and Illinois. The buyer's largest investment was in rugbys, followed by fleece wear. The
portfolio approach fairly matched the expert's rugby strategy, and invested the maximum allowed
by the model constraints. Since fleece items are considered by the buyer to be most profitable ina
good economy, and since Docker's knits are typically profitable regardless of the state of the
/
economy, the model shifted investment percentages away from polos, updated knits, and Bugle
Boy knits and increased the investment in rugbys and fleece. The portfolio model correctly
reduced the investment in Bugle Boy knits.
A one tailed sign test (Conover, 1971) was used to test the null hypothesis that the buyer's
net profit values for MAPl are more likely to exceed the optimized net profit values for MAPl.
Rejecting the null hypothesis would indicate that the optimized net profit values tend to be larger
than the buyer's. The data in Table 4 show that 13 of the 22 net profit values planned by the model
exceeded the net profit values planned by the buyer. If 13 < (n - t), the null hypothesis cannot be
rejected, where (n - t) is the critical value, n =22 in this case study, and t =0.5 x (n + ou Yii).
When a = 0.05, ou =~.05 = -1.6449 and then (n - t) = 15. Thus, the results of the sign test fail
18
to reject the null hypothesis and provide no statistical evidence that the net profit values of the
optimization model tend to be larger than the buyer's (p > 0.05).
7. Conclusion
This paper demonstrate the applicability of the portfolio concept to the product assortment
planning problem. The traditional task of planning merchandise assortments, often regarded as an
art that cannot be taught (Mason & Mayer, 1990), can be quantitatively modeled using the
technique provided and tested in this paper. This research contributes to the retail automation by
presenting a scientifically sound methodology to assist product assortment decision making
processes.
The portfolio model developed for the percentage merchandise investment decision cannot
be shown to be significantly better than the expert buyer when net profit is used as the comparative
basis. The net profits resulting from the use of the portfolio model are at least as good as the
expert for the given economic condition. Even though there is no statistically significant difference
between the expert and the model, there is an observable difference in net profit. When the net
profit of the buyer's assortment ($123,600) is compared to the net profit of the portfolio model
($155,000), the portfolio model outperforms the buyer by at least $31,000.
19
The plans for the expert and portfolio model were also compared to the plan derived using
the Fashion Triangle approach. Both the expert and the model were significantly better than the FT
approach. Both the expert and the model produced profitable plans, whereas the FT approach
produced a plan which yielded a net loss of $202,000. The retrospective analysis of the FT
approach indicates that there are a number of serious limitations to the heuristic. The most serious
limitation is that the FT approach failed to produce a profitable plan. The FT approach also
produces a plan inconsistent with the expected state of the economy and the buyer's risk tolerance
level.
8. References
Allaway, A., Mason, J.B., and Brown (1987). An optimal decision support model for department
-level promotion mix planning. Journal of Retailing, Vol. 63, No.3, pp. 215-242.
Baumol, W. J. (1970). Portfolio Theory: The Selection of Asset Combinations. New York:
McCaleb-Seiler Publishing Company.
Conover, J. (1971). Practical NOllparametric Statistics. New York, NY: John Wiley & Sons,
Inc.
Corstjens, M. and Weinstein, D. (1982). Optimal strategic business units portfolio analysis. In
A.A. Zoltner (ed.), Marketing Planning Models: T1MS Studies in the Management Sciences,
Vol. 18, pp. 141-160. New York: North-Holland Publishing Co.
Davidson, S., Stickney, C., & Weil, R. (1982). Financial Accounting: An Introduction to
Concepts, Methods, and Uses. Chicago, II: The Dryden Press.
Hillier, F. S., & Lieberman, G. J. (1974). Operations Research. San Franscisco, CA: Holden-
Day, Inc.
Liebman, J, Lasdon, L., Schrage, L., & Waren, A. (1986). Modeling and Optimization with
GINO. San Franscisco, CA: The Scientific Press.
Mahajan, V., Wind, Y., & Bradford, J. (1982). Stochastic dominance rules for product portfolio
analysis. In A.A. Zohner (Ed.), Marketing Planning Models: T1MS Studies in the
Management Sciences, Vol. 18, pp. 161-183. New York: North-Holland Publishing Co.
Mason, J. B., & Mayer, M. L. (1989). Retail merchandise information systems for the 1980's.
Journal of Retailing, Vol. 56, No. I, pp.56-76.
Mason, J. B., & Mayer, M. L. (1990). Modern Retailing: Theory and Practice. Boston, MA:
BPI/Irwin.
Smith, K. (1971). Portfolio Management. New York: Hoh, Rinehart and Winston.
20
Seegal, H. (1979). Keys to profit. In R. Patrick Cash (Ed.), The Buyers Manual, pp. 357-376.
New York, NY: National Retail Merchants Association.
Siegel, J. B. (1979). Managing the risk of fashion merchandising. In R. Patrick Cash (Ed.), The
Buyers Manual, pp. 287-298. New York, NY: National Retail Merchants Association.
Trappey, C. V. (1992). A Merchandise Investment Planning System Using Knowledge Based
Representation and Portfolio Theory. Ph.D. Thesis, Purdue University, W. Lafayette,
Indiana. .
Wind, Y. (1974). Product portfolio analysis: A new approach to the product mix decision. In
Ronald Curhan (ed.), American Marketing Association Combined Proceeding, Series No. 36,
pp. 460-464.
Wind, Y., and Mahajan, V. (1981). Designing product and business portfolios. Harvard
Business Reyiew, Vol. 59, No. I, pp. 155-165.
Rapid Modeling:
The Use of Queueing Models to Support
Time-Based Competitive Manufacturing
Rajan Suri
University of Wisconsin-Madison
Dept of Industrial Engineering
1513 University Avenue, Madison, WI 53706, USA
and
Suzanne de Treville
Helsinki University of Technology
Institute of Industrial Automation
Espoo 02150, Finland
Time-Based Manufacturing
more a firm produced, the more it could sell. U.S. firms dominated world
markets and the name of the game in manufacturing was Scale. As some of the
European and Japanese firms entered the world markets more effectively in the
70's, competition shifted to costJprice issues. Then in the 80's came the first major
"paradigm shift". Primarily through the results of the Japanese firms, the
manufacturing world realized that there does not have to be a tradeoff between
cost and quality: if one focused on improving quality, then cost competitiveness
would follow as well . Now in the 90's another paradigm shift has occurred,
leading to a focus on speed: this is also known as time-based competition. "Time is
becoming the main battlefield -- and weapon -- of competition".5 How exactly does
one compete on time? In essence, time-based competition means delivering
products or services faster than ones competitors 6. But there is more involved.
The very act of looking for ways to speed up existing procedures results in
manifold benefits. For instance, one company found that efforts to reduce
throughput time were closely linked to other improvements:7 "Everything we
wanted to do to improve operations had something to do with squeezing time out of
our processes. The deeper we probed, the more opportunity we saw."
with its own routing, setup times, and cycle times; general service times;
equipment failures; labor shared across equipment (also known as "operator
interference"); lot sizes and transfer batches.
Products to be
Fabrical9d
Equipment
Resources
I ~=-I Indented Bill
of Materials
Part
Routings
Operation
Assignments
~\I//
RMT
ENGINE
Automated Reports and Color Graphics
//I\~~
Production
Equipment
Utiization
Labor
Utilization
Scrap &
Assembly
Work-in-Process r--::I
L::-1
Levels Inventory
and Queues and Queues Reports
These features are a far cry from the "exponential assumptions" of the
early queueing models, and are critical to the industrial acceptance of the tooL
Outputs from MPX include reports on production levels, equipment and labor
utilizations and queue lengths, work-in-process, and product lead times. While
the only values reported are "steady state averages", use of RMT tools has shown
that most of the time these reports are sufficient for management to choose
among alternatives, or to obtain insight on critical parameters for a particular
manufacturing system 15_
Traditional View
Capacity Volume
Utilization Production
Production
Feasible
Modern View
Time-based Time-based
Competition 100% Competition
D.I
The two points we would like to emphasize now, are that (i) queueing
models can do a good job of illustrating the above behaviors which were previously
neglected, and (ii) queueing (or RMT) is arguably the "best" decision support
technology for time-based manufacturing. We now elaborate on these points.
27
It is worth discussing further the two graphs on the lower half of Figure 3.
The one on the left is the "classic" result to be found in any basic text on queueing
theory, that lead time and WIP grow unbounded as utilization approaches 100%.
The one on the right however, while fundamental for modern manufacturing, is
relatively unknown in practice, although it has been known in the OR literature
for many years16. We give here a brief explanation of it. The graph goes up on the
right because, as lot size increases, two things happen: (i) pieces spend more time
waiting for other pieces in their own lot; (ii) lots spend more time waiting for other
lots ahead of them -- while the first item can be estimated by a deterministic
formula, this second item can only be predicted by queueing theory. The graph
goes up on the left because as lot size decreases, setups increase, leading to higher
utilization and thus higher waiting times. Somewhere in-between is a "good" lot
size which leads to low lead times and WIP (and incidentally, this lot size bears
little relation to the now-obsolete "Economic Lot Size" formula). Thus there are
some very interesting dynamics and tradeoffs in a multi-product manufacturing
system that are well-captured by queueing theory. A sophisticated RMT tool can
capture these effects for a real factory, as illustrated in several articles 17 .
conclusion had been previously proposed but not implemented because it was
thought that too much material handling would be required, and line
inefficiencies would result. The RMT model showed, however, that lead time
could be cut by one half or more, with little impact on overall line efficiency. The
beauty of this solution was that it could be done at a nominal cost -- the cost of the
new containers -- and had been obtained with little analysis effort.
In addition to guiding the reduction of lead times, RMT also helps to speed
up new product introductions. The ease and speed with which models can be built
encourage productJprocess designers to use RMT at early stages of a project. This
can provide valuable feedback on critical processes and equipment needs, which
removes potential sources of delay later on in the product introduction effort.
Brown I8 details the case of RMT helping to speed up a new product introduction
by IBM. As reported there, the firm was planning a large factory-of-the-future to
manufacture printed circuit boards. The entire factory was modeled in a matter of
days, and hundreds of what-ifs were answered in just over a month, including
many alternatives for implementing just-in-time, lot sizes for material handling,
and yields under various scenarios. The rapidity with which the analysis was
completed sped up the project implementation time; in addition, early feedback
influenced process choices and equipment purchases, and enhanced the
successful implementation of the factory.
FOOTNOTES
1 Buchanan, J. and J. Scott, "Vehicle Utilization at Bay of Plenty Electricity", Interfaces,
Vol.22 No.2, March-April 1992,28-35.
2 See, for example, the Preface in Queueing Systems, Vol. I, L. Kleinrock, John Wiley, 1975.
4 R Suri and S. deTreville, "Full Speed Ahead: A Look at Rapid Modeling Technology in
Operations Management", OR/ MS Today, June 1991, 34-42.
6 Stalk, G., Jr., "Time -- The Next Source of Competitive Advantage", Harvard Business
Review, July-August 1988, pages 41-51.
7 Merrills, R "How Northern Telecom Competes on Time", Harvard Business Review, July-
August 1989,108-114.
8 Suri, R, "Lead Time Reduction through Rapid Modeling", Manufacturing Systems, July
1989,66-68.
9 Law, A.M. and S.W. Haider. 1989. Selecting simulation software for manufacturing
applications: Practical guidelines and software survey. Ind. Eng. 31 33-46.
10 See the statistics in: Anderson, K.R 1987. A Method for Planning Analysis and Design
Simulation of CIM Systems. Proc. 1987 Winter Simulation Conference, 715-720; and Brown,
E. 1988. IBM combines rapid modeling technique and simulation to design PCB factory-of-
the-future. Industrial Eng. 20 (6) 23-26.
13 Whitt, W, Approximations for the GI/G/m queue, Advances in Applied Probability (to
appear); Bitran, G.R and D. Tirupati, Multiproduct queueing networks with deterministic
routing: Decomposition approach and the notion of interference. Management Science 34 (1)
75-100,1988; also see the survey in Suri, Sanders and Kamath, op.cit.
30
FOOTNOTES
14 This tool was developed by Greg Diehl and Mike Tomsicek of Network Dynamics along with
one of us (Suri).
16 See, for example, Karmarkar, U.S., "Lot Sizes, Lead Times and In-Process Inventories",
Management Science, March 1987,409-418.
17 See several application articles listed in Suri and deTreville, 1991, op.cit.
18 Brown, E., 1988. IBM combines rapid modeling technique and simulation to design PCB
factory-of-the-future. Industrial Eng. 20 (6) 23-26.
Abstract- This paper describes a theoretical framework called Process Network Theory and
its implementation for evaluating the economic, technical and environmental performance of
manufacturing systems. Historically, performance of manufacturing enterprises has been
measured largely in monetary terms such as cash, value added and net return on investment.
Achieving and maintaining a long-term competitive position in a global economy requires
looking beyond monetary performance measures and financial accounting systems. It is
necessary to evaluate alternative technologies in the context of their economic performance,
technical performance and environmental loading. Technical performance, as defined here
is the physical performance of manufacturing systems in terms of physical flows of materials,
products and energy. Many companies recognize the crucial role of technical performance
measures such as defect and scrap rates, yields, throughput time and resource efficiencies in
retaining competitive position in the economy. They are experimenting with processes and
procedures that stress quality control (TQC), reduce throughput time (JIT), improve process
efficiencies, and others. Process network theory provides the ability to determine the
technical and economic performance of manufacturing systems by following a two step
procedure. As a first step, the physical part of the manufacturing system is represented as
a network of elemental processes whose basic function is to transform the technical state of
materials using physical energy and skill-specific human time. The models of the elemental
processes are parameterized by a set of feasible technologies which are selected based on
constraints and opportunities available for the exchange of materials and energies between the
manufacturing system and its economic and natural environment. Linear graph theory is used
to obtain the overall model of the manufacturing system as a function of the technologies and
the network structure. The model is then used to obtain technical, economic and
environmental performance as a function of the technologies involved.
32
INTRODUCTION
Historically, performance of the manufacturing enterprise has been measured largely in
monetary terms such as cash flow, value added, and net return on investment, Johnson and
Kapl<w [1987]. Contemporary management accounting systems and budgeting processes deal
almost exclusively in financial terms. Achieving and maintaining a long-term competitive
position in an environmentally sensitive global economy requires looking beyond internalized
monetary performance measures and financial accounting systems.
Today, many companies recognize the crucial role of technical pe1jormance measures
such as defect rates, yields, throughput time, and resource efficiencies, in retaining a
competitive position in the economy. They are experimenting with processes and procedures
that stress total quality control (TQC), reduce throughput time (JIT), improve manufacturing
cycle effectiveness (MCE), flexible manufacturing (FM), and material requirements planning
(MRP) , Kaplan [1989] and [1982], Veilleus and Petro [1988], Sethi and Sethi [1990],
Fogarty, Blackstone and Hoffmann [1991], Browne, Haren and Shivan [1989]. Some have
begun to experiment with new approaches to management accounting systems for operations
control and technical performance measurement, at both the enterprise and industry levels of
organization, i.e., in the context of their own manufacturing operations as articulated with
their industrial partners as suppliers and customers.
Many companies are also searching for processes and procedures for factoring
environmental load constraints such as air and water emission standards, alternative natural
resource supplies, and available human resource skills into the management of their
operations and in their long-term strategic plans for products, production processes, and plant
siting, Society of Environmental Toxicology and Chemistry [1991]. Environmental loads,
along with available human resource skills and worker expectations are already factors in
plant closings and relocation.
Strategic trade-offs must now be made between monetary pe1jormance, technical
pe1jormance and environmental factors at both the enterprise and industry levels of
organization and/or simultaneous improvements must be realized in all three. Articulation
and evaluation of these trade-offs and/or improvements can be viewed as a two-stage iterative
process;
1) Technology innovation --- synthesis of specialized knowledge and understanding to
identify alternative technologies at the process level.
33
processing assembly
by products by products
5-4
Processing 04 Assembly LI~-----," Product
3-2 2 : 02 No. 2
4
feed Pre-
processing
stock r6
5
4-1
Product
Processing 3-1 Assembly '-'-,~---" No. 1
3 I-I...c}-..--I 1 101
· ·····1:·······. ·······. ····. ·· ....· . · . · ....······F····
~~~~ 03 ~--~~
··~ ·· ··
etc., and referred to as boundary resources. The unit energetic cost associated with
technically-specific boundary resources represent the skill-specific human resources and
technically-specific synthetic energy required to deliver the material to the process or to
remove it, as the case may be.
The network diagram provides an unambiguous reference frame for all processes and
observables to be used in the technical analysis of the manufacturing enterprise. But, it is
not unique. It is always associated with a particular level of organization. More detailed
representation of the same enterprise can be obtained, for example, by partitioning one or
more of the production processes illustrated in Figure 1 into a more detailed network of
processes, each of which might be associated with a particular manufacturing operation such
as docking, milling, grinding, etc., in durable goods manufacturing or cracking, stripping,
scrubbing, etc. in chemical and biochemical production operations.
The level of organization considered in any technical analysis depends primarily on a) the
alternative technologies and management details to be considered, b) the level of organization
at which the processing technologies can be parameterized, and c) the physical features of the
production processes. The guiding principle is to start at a level of organization no more
detailed than that required to address the design and management issues of interest.
Aggregation from lower levels of organization to higher levels of organization is carried out
analytically using concepts and tools being described herein.
time scales are used, such as number of units/day and number of units/year, then the
coefficients of material conversion are dimensional as required to convert from one unit of
measure and/or time scale to another. The only requirement is that the same time scale and
units must be used between certain production processes so that resource requirements of one
process can be equated to the product of another at nodes in the network.
Synthetic energy in one or more of its various technical forms --- kWh of heat, work, or
electricity --- is almost always involved in these production processes. Human time in its
various skill-specific forms --- technicians, chemists, engineers, craftsman, equipment
operators, etc. --- is also usually involved. General purpose machine time such as
programmable milling machines, gestation vessels, separators, and robots may also be
involved. Finally, a production facility time is always involved in the production process.
As a class, these resources are called energetic resources as distinct from material resources,
because synthetic energy is dissipated and human and machine time as a resource are
irreversible. The time rate of resource utilization, respectively, of synthetic energy, labor
time, machine time, and facilities time are typically measured in terms of kWh/day, person
hours/day, machine hours/day, and facility hours/day. Other units and time scales can be
used for each energetic resource, provided only that the same units and time scales are used
for all transformation processes, so that energetic resources of the processes can be summed
for the network as a whole.
For any given set of measures, the rate at which energetic resources are utilized in a
given network process is proportional to the flow rate of the product. The coefficients, f, of
proportionality are called the energetic cost coefficients. The units of measure are energetic
units per unit of material produced. More specifically, if the material output rate is measured
in tons/day, then for each of the respective energetic resources, f has dimensions of kWh/ton,
person hours!ton, machine hours/ton, and facility hours/ton. However, unlike the coefficients
of material conversion, the energetic cost coefficients, f, may depend on the rate of
production. The manner in which it varies with production rate is, in fact, an important
characteristic of a processing technology.
The coefficients of conversion, k, and the energetic cost coefficients, f, are recorded as
entries in a matrix of the form illustrated in Table 1. The columns of this matrix have a one-
to-one correspondence with the products associated with bold-faced line segments of the
network diagram. Boundary (external) products are always listed as columns on the far right
37
Material Products
Internal External
(ij
·c
Q)II)
Material rates
oo~
::E~ 05 04 03 02 01
3-1 k31
4-1 k41
3-2 k32
4-2 ~2
5-3 k53
5-4 ks4
r1 kr1
r2
(ij r3
....
C
Q)
X
r4 kr4
UJ
r5 kr5
r6 kr6
II)
Q)
....
()
:::J
0
labor el f15 f14 f13
II)
Q)
a: elect. e2 '24 122 f21
25 23
()
robots ' '
.~ e3 f35 f32 f31
e>
C
Q)
UJ
woe.
Ime
e4 145 f44 143 f42 f41
li5 155 f54 153 f52 151
()
~
e>1I)
Coo
Q)Q)
UJ ....
''U
5Q.
c
.S!
Q)
e>
(J)
c
UJ
intrinsic
losses, 0
-r~----------~------------------~
o typical
operating - - -...~~:
range
E
(J)
'0
:e
(J)
o
() /= -:
e
iii Yo
o
()
()
.~ .. ...... .. ....... ... .~.... ... .. ............ ......... .. ' ,. ... ~~.
e> . .
(J)
c
:. :.
UJ : :
o
Processing Rate, Yo
orders and other support activities involved in what is sometimes called activity-based
accounting (ABC), Kaplan [1989]. In principle, the energetic cost coefficient, f, is obtained
operationally by dividing measured values of the energetic resource input rates by the
production rate for at least two levels of operation. There are a number of specific
techniques for estimating and recording the variations of the energetic cost coefficients, f,
with production rate.
In practice, it may be necessary or desirable to represent k and/or f as random variables
of time, to account for indeterminate factors associated with the production processes. For
example, the mean and variance of the conversion coefficient for defects or effluents can be
evaluated by standard statistical control techniques at the process level. In general, the mean
and variance of k and f represent important technical performance parameters of processing
technologies.
Finally, alternative or modified processing technologies are introduced into Table 1 by
simply replacing the base-line parameters in the corresponding column by those of the
proposed technology. Of necessity, the parameters of the new technology must be determined
from a synthesis of information available from the vendor, from prototype studies, or
operating data from another system in which the technology has been, or is, in operation.
In principle, the vendor should be expected to characterize the production technology in terms
of its technical parameters so that its performance can be evaluated in the context of the
manufacturing network in which it is to function .
Internal Resources
(ij
0;:: Material
Q)I/)
«i~
rates
I/) ::E~ 3-1 4-1 3-2 4-2 5-3 5-4
t5
:J
"0 05 0 0 0 0
e
Cl..
(ij 04 0 0 0 0
c
~
03 0 0 0
c 0
Q)
Material Products
External
(ij
"C
(I)(/)
Material
-(I)
<'l!_ rates
(/) ~~ 02 01
U
:l
"C 05 k32ksa)
e
a.. (ij
(~2ks4+ (k3tks3+ ~tks4)
-
(ij
C
~
(I)
04 ~2 ~t
"C
(I) oS 03
"E k32 k3t
::E
Table 3 Process Schedule. Coefficients are computed from Tables 1 and 2 as a linear
matrix transformation. Production rates 02 and 01 are specified. Internal production rates
05,04, and 03 are computed.
multiplying the computed coefficients in the table by the target production rates, 01 and 02.
The coefficients computed for Table 4 represent the units of external resources, by-
products (including defects) and energetic resources utilized by the enterprise in the
production of one unit of outputs 01 and 02. The conversion coefficients between output
products and input resources represent material conversion coefficients of the network as
computed from the corresponding coefficients of the processes technologies. Careful
inspection will show that the technical parameters of the network as given in Table 4 are
linearly related to those technical parameters of the processes which appear below the
horizontal line of partitioning between internal and externally derived resources in Table 1.
This is a fundamental property of processing networks. Thus, it can be concluded that t~
statistical quality control parameters for t~ network are computable from t~ statistical
quality control parameters of t~ processes. Likewise, the statistical parameters of the
processing time for the network can always be computed from the statistical parameters of
the processing times for the technologies of the component process. The ration of the
43
1
Table 4. Network Technologies.
Material Products
External
Exchange
Q) prices
0'1
c: (ij
ClSIIl ' C:
Material
.cal allll
00
X'C:
mal rates
III LU ::2 m....
Q) 02 01
~
::J
0
III (ij r1 kr1
al c:
....
a:
(ij x
al r2 kr2
'C LU
Q) r3 k31 kr3
ro
~
k32kr3
r4 ~2kr4 ~1kr4
r5 (~2k54+ k32ks3) krs (k31 k53+ ~1k54) krs
r6 (~2k54 + k32ks3) kr6 (k31 k53+ ~1k54) kr6
labor el
.
f 12
.
f 11
elect. e2 (22 (21
III
OQ)
:;:;~ robots e3 (32 (31
Q)::J
e>o
Q)1Il
c:al proc, e4 (42 (41
LUa:
time
e5 f S2 f 51
0
III
'$
al e>1Il
0 alQ)
'C C: m
a.. LU ....
where
t'i2 = ( ~2k54+ k32k53) fis + ~2fi4 + k32fi3 + fi2 , i = 1,2,3,4,5
t'i1 = ( k31 k53+ k41 k54) fiS + k41fi4 + k31fi3 + fi1 , i =1,2,3,4,5
1. Computed from tables I and 3 by master program. External production rates are specified by user. Exter-
nal material and energetic resources computed from table. Exchange prices and capital cost allocation func-
tion G specified by user. Monetized performance, technical performance and environmental loading
computed from table.
44
processing time to the actual throughput time is a measure of the manufacturing cycle
effectiveness (MCE).
The columns of coefficients in Table 4 represents the parameters of the network as
processing technologies, i.e. they represent the technologies of the network as computed from
the technologies of the component processes. All the irifonnation regarding monetary
performance, technical performance, environrnentalloading, and the specific human resource
requirements of the network is contained in this table of parameters. This information can
be used in two ways;
a) The network can be considered as a component process in a higher level network of
production processes; in which case, the above analysis can be repeated in technology
assessments and evaluations at a higher level of organization.
b) It forms the basis for the technical design and operations control of the enterprise.
For single output, line-item production operations, the capital costs can be allocated
directly to the final product. However, for custom-order batch operations and/or multiple
output operations, such as that illustrated in Figure 1, it is necessary to allocate capital costs
at the process level to avoid distortions. Information contained in Table 3 is used to
transform process level capital cost allocations to the network level. The capital costs of the
product(s) so established, are based on their resource content and the processing technologies
used to produce them. Technical distortions in conventional allocation procedures are
frequently major issues in financial accounting for advanced technologies and/or custom-order
operations, where capital costs are frequently large compared to the cost of materials and
labor, Kaplan [1989].
Among other things, Table 4 establishes norms for defect rates, yields, resource
efficiencies, processing time and other technical performance measures, as well as
environmental load factors, and human resource requirements of the network as a whole.
The performance norms for the network become a basis for zero-based budgeting, risk
assessment, contingency planning, regulatory compliance, and other elements of tactical and
strategic planning. They also provide the base-line information from which to identify
improvements in technologies at the process level for new and improved environmental,
technical, and monetized performance at the network level. Deviations from the network
norms serve as a basis for corrective action in operations control.
In all but the very simple manufacturing operation it is desirable, if not necessary, to
partition the overall manufacturing network into sub-networks according to the specific
operational responsibilities of the members of the manufacturing team. In this context,
technical design and operations control take the form of a network of hierarchial desk-top
information and decision centers that are informationally interconnected in a very specific way
as illustrated in Figure 3. Specifically, output of Table 4 as computed at any given level of
organization literally becomes the input for Table 1 for the next higher level of organization.
Thus, each level of management has the information and the analytical tools to make
technology assessments and technical design and management decisions pertaining to their
respective sub-networks; within the context of higher-level technical and financial constraints.
Tables of processing technologies, rather than tables of specific material flow rates, or
monetary costs, serve as the accounting system and language of communication between
levels of organization and between enterprises. These tables contain all the information in
46
Ecological and
Environmental Social & Cultural
Factors Factors
t t
Resource
Con straints
I
Economic
Q)-
_ I/)
r--- Objectives u;
.o8
<IS
c
0
~ Q)
0
0
Q)
1/)- .- c Q.
.~.s
E·- 'H 4 <lSI/)
.s:;Q)
00
C/)
Q)
"O~g x ·c 0
_c
«()«
-
Monetized wa.. <IS <IS
'---- Performance .2E
c ...
.s:;0
o't:
Q)Q)
1-0..
2
c
01/)
.- Q.
Processing 1/)0
Q)o
Network I-- 0-
'.
-~
<ISo
I/)
Q. .2 <IS
coO
0 1 .s:;'
.Q 0"0
Q)Q)
~
1-$
~ Processing
.0
-6 Technologies I--
Q)
$ Organizational level s
R.S. Kaplan, Advanced Management Accounting, Englewood Cliffs, N.J.: Prentice Hall, 1982
R.F. Veilleus and L.W. Petro, eds. Tool and Manufacturing Engineering Handbook,
Manufacturing Management. vol. 5, Dearborn, Michigan: Society of Manufacturing
Engineers, 1988.
A.K. Sethi and S.P. Sethi, "Flexibility in manufacturing: A survey," The International
Journal of Flexible Manufacturing Systems, vol. 2, 1990, pp. 289-328
D.W. Fogarty, J.H. Blackstone, Jr., T.R. Hoffmann, Production & Inventory Management,
Cincinnati, Ohio: South-Western Publishing Co., 1991
B.E. Koenig and R.L. Tummala, "Enterprise Models for the Design and Management of
Manufacturing Systems", loint US/Gennan Conference on New Directions for Operations
Research in Manufacturing, National Institute for Science and Technology I National Science
Foundation Conference, July 30 -31, 1991. in press
H.E. Koenig and R.L. Tummala, "Principles of ecosystem design and management," IEEE
Trans. Syst. Man Cybem., vol. 4, pp. 449-459, Sept. 1972.
R.L. Tummala and L.J. Connor, "Mass-energy based economic models," IEEE Trans.
Syst.Man Cybem., vol. SMC-3, No.6, pp. 548-555, Nov. 1973
E.C. Alocilja, "Process network theory," Proceedings ofthe 1990 IEEE Conference on Syst.
Man Cybernetics., Paper No. AOO71, Nov. 1990
R.L. Tummala and B.E. Koenig, "Classes of processes models and their characteristics useful
for the design of manufacturing systems," Proceedings ofthe 1991 IEEE Conference on Syst.
Man Cybernetics., Oct. 1991
B.E. Koenig, "Enterprise Models for the Design and Management ofManufacturing Systems"
Ph.D. Dissertation, Department of Electrical Engineering, Michigan State University, 1992.
Is Lean Production Really Lean?
The Design of a Lean Production System
by
Joachim Reese
Chair of Production Management
Department of Economics
University of Luneburg
0-2120 Luneburg, Federal Republic of Germany
1. The Problem
S
U
P
Design
order How
Product Deve lopment
Design
order
I ~
Know-
How
C
U
S
P T
L Material BAN Customer
Team A 0
...
Team B
---
order order
I Product M
Material supply E
E supply
i Product _
(seml-
R supply -- R
I finished)
I
I
3. System Design
{d I z[x(s)] ~ z(d)}. (1 )
min c b (2)
b
subject to
A x S b (3 )
x=d (4 )
x ~ o. (5)
Now the extended design model is (cf. also BITRAN and CHANG,
1987),
(7 )
subject to
X nt = d nt , n E F (M) , t =1, . . . , T (9 )
Vnt = Vn,t_l + Ynt - x nt ' n=l, ... ,N, t=l, ... ,T (13)
56
Xat , uat , Yat , Vat EN, n=1, •.. ,N , t=1, ••• ,T. (18)
The conditions (8) and (9) are the generalizations of (3) and
(4). (10) guarantees the availability of semi-finished products
for further production stages. With (11) production must not
exceed the number of KANBANs in the production cycle. (12) is
the equation for determining the KANBANs, which remain in the
system for the next period due to lack of current capacity.
Analogously, (13) and (14) determine the buffers at the end of
period t and the periodical demands, respectively. (15) to (17)
give the starting conditions, i.e. the orders, which initiate
the production. ( 18 ) corresponds to the non-nega ti vi ty con-
straints of the original problem. The objective function (7)
prescribes the minimization of the cost of current and permanent
assets. Figure 2 describes once more the KANBAN and product flow
within a stage.
container { v nt
•
buffer
production!
capacity \L..-___ xn.. ;,t_ _-.J
production unit
When the general design task is done, there remains the current
problem of controlling the periodical production process, In
periods t, where
(19)
respectively
subject to
(20)
(22)
58
(23)
: master r1em :
4. Organizational Impacts
Simple incentive schemes are time wage and piece wage . If the
unit wage is denoted by w for regular work and w· for overtime
work, the time wage function is given by
~l = w b + w' b'
= wAx + w· A (x t - x)
(24)
(w -w') Ax +w'Ax t
= (w - w·) b + w' Ad t'
marginal utility of this wage may become less than the marginal
utility of the effort, which is necessary for producing another
unit, the time wage is likewise not treated for stimulating
efforts in the desired manner, although it does not contradict
automatically to the central objective.
(29)
ments can be stated for cases, when the efforts are on the upper
level. The same is true for the incentive function. The evident
conclusion is that high efforts perform better for all partners.
The incentive scheme is again pareto optimal. The importance of
the team effort on the reward system ~3 is clear, when this part
is neglected in the calculations. These modified results are
given in Table 4 in brackets. The effort of the team would alter
towards the low level, although the firm is still interested in
a high effort.
(30)
(32)
subject to
The planning process starts with stage 2. There are six diffe-
66
= 50*10+150*40+100*20+110*5+80*15+120*20 (34)
= 12,650.
(stage)
1 3 2
1
2 . 1 3 2
(time) 10
.
20 30 40 50
(stage)
3 1 2
1
3 1 2
2
(time) 10 20 30 40 50
(35)
subject to
(36)
5. Conclusions
References
Abstract
Manufacturing cells arranged in series with work flow controlled using Kanbans
are considered. A number of approaches for approximating the performance of the
system are described. Numerical tests of the approximations indicate the conditions
under which they give excellent performance predictions, and also the type of im·
balances between the cells when their accuracy is not so good. The approximations
are relatively simple and provide insights into Kanban system behavior.
1 Introduction
Kanban systems for the control and coordination of production have attracted wide in-
terest in recent years (see [4] [6]). More recently there have been a number of papers
about modelling Kanban systems with a view to using the models to determine the ap-
propriate number of Kanbans and the impact of the number of Kanbans on performance
(see [3], [7], [2], [5]). This paper is also concerned with the analysis of Kanban controlled
production systems. Our goal is to describe a simple approach to approximating Kanban
system performance which at the same time helps develop insight about the strengths
and weaknesses of Kanban systems.
We consider a production system that consists of a number, m, of Kanban controlled
production units or cells arranged in series. Cell 1 is supplied by raw material and there
is always ample raw material available. The output product of cell i becomes the input
product to cell i + 1, i = 1, ... , m - 1. Customers require the output product of cell m.
The production activity in a cell could be fabrication, inspection and test, or transport. In
between cell i and cell i+ 1 there will be space to store the output of cell i, i = 1, ... ,m-l,
and after cell m there will be a final store containing finished product inventory waiting
'Supported by Natural Sciences and Engineering Research Council of Canada
72
customer demands. We will label store i the store after cell i, i = 1, ... , m, and store 0
will be the input raw material store for cell 1 (assumed to never be empty).
The performance aspect which we focus on in this paper is the service level provided
to customers, where by service level we mean either PND, the probability that a customer
demand is met with no delay, or E[DJ, the average delay in meeting a customer demand
(including those demands met immediately and which then have zero delay).
The management set parameters in a Kanban system are the number of Kanbans
associated with cell i, ki' i = 1, ... , m, and the container or lot size represented by a
Kanban. We will make the assumption that this lot size is identical at all cells, otherwise it
is possible that remnant inventory may accumulate in between cells. A further assumption
that will be made for analytical convenience is that the size of all demands is equal to
this lot size, so we will be able to take a unit of demand as being equal to one lot. This
assumption can be relaxed but at the price of analytical complexity that obscures insight.
Each cell will be assumed to have limited capacity so only one unit or lot can be
processed at a time. This means we can represent the production activity in each cell by
a single server. Again for analytical simplicity we will assume that the processing time
for a unit (lot) in cell i is exponential with parameter {ti, i = 1, ... , m. However, it is
straightforward to modify the analysis to consider multiple servers in parallel or series or
more general networks of servers.
2 Kanban Control
Assume that at time zero there is no unmet demand and no cell has units in process. Then
store i will contain ki units. With Kanban control the occurrence of a customer demand
at store m will trigger the movement of a cell m Kanban from its output store to its input
store, store m - 1, as soon as the customer's demand is met. On arrival at store m - 1
this Kanban will trigger the release of a lot to production in cell m which in turn triggers
the movement of a cell m - 1 Kanban back to store m - 2 and so on. Cell i Kanbans
circulate in a loop from store i to store i - I to production in cell i and eventually, when
processing is completed, back to store i. Note, however, that the cell i Kanbans wait at
store i until they are triggered by the arrival of a cell i + 1 Kanban, wait at store i - I
until a unit completes processing by cell i - I and is available for release to production
in cell i, wait for the limited processing resources in the cell and then processing itself
will take a finite time. Furthermore, note that the information about the occurrence of a
final demand does not get passed immediately back through the system to cell 1. If there
are no Kanbans (and associated inventory) in store i when a cell i + 1 Kanban arrives at
the store then there will be a delay in transmitting the information back to store i - I
until cell i completes processing a unit and delivers that unit and its associated Kanban
73
to store i.
It can be seen that a model of Kanban control has to describe all these delays. To do
so we develop a set of equations that describes the system dynamics, i.e. the movements
of Kanbans within the system. For n = 1,2, ... , let Dn be the time of occurrence of the
nth demand ; A~) be the time at which the nth cell i Kanban is triggered at store i and is
transmitted to store i - 1; R~), i = 1, . . . ,m, be the time at which the nth cell i Kanban
(and associated parts or raw material) is released to production in cell i; R~m+l) be the
time at which the nth customer demand is met from cell m; G~i), i = 1, .. . , m , be the
time at which the nth cell i Kanban (and the associated unit completes processing at cell
i and is delivered to store i; S~i), i = 1, . . . ,m, be the time required for processing the unit
accompanied by the n t h cell i Kanban on the production facility of cell i. For generality
we sometimes view the customers as forming another cell, cell m + 1. So we can write
A~m+l) == Dn.
From these times there are a number of quantities that can be determined:
~n = R~m+l) - Dn = the delay in meeting the nth customer demand, n = 1,2, ... ,
~~) = A~) - R~) = the delay of the nth cell i Kanban at store i - 1, i = 1, ... , m,
n = 1,2, . . .,
F~i) = GAi ) - R~) = the flow time of the nth cell i Kanban through the processing facility
at cell i including queueing time, i = 1, . . . , m, n = 1, 2, ...
h~) = A~) - A~+I) = the delay in information flow about the nth demand experienced at
= 1, ... ,m, n = 1,2, ....
store i, i
D I y we some t'Imes wn't e Un(m+J) =
ror genera l't - Un, n - 1, 2, . . ..
A A -
Dynamics of Kanban system A Kanban and its associated raw material and parts
can only be released to a cell for processing when there are parts available in the store.
Hence
R~) = A~), i = 1, ... , m + 1; n = 1,2, ... ,ki ;
and
R~i) = max {A~) , G~i~1L }, i = 1, . . . , m + 1; n = ki + 1, ... , (1)
where G~~ko == 0 for all n. Similarly, for a cell i Kanban at store i to be triggered there
has to be both a cell i + 1 Kanban arrive at the store and a cell i Kanban available. That
IS,
R (i+I)
n
= A(i)
- n'
.
Z=
1, .. . ,m+ 1;n= 1"2 .... (3)
74
and
8(i) A(i) _ A(i+I)
n n n
R(i+I) _ A(i+I)
n n
Since the processing in each cell has been assumed to be equivalent to a single server,
the dynamics of a cell will be given by
(5)
where C~i) == O.
Given the customer demand process Dn and the processing times S~i), i = 1, ... , m,
it is thus possible to determine the dynamics of Kanban movement from equations (1),
(2) and (5).
Note that ~~+I) > 0 implies that C~i~ki > A~+I). Next, let Kji) = L~=j ku and define
the following quantities
U,i)
T n-Kj = ~ F(u)
L...J
n-Ku' J =
. 1 .. 1
, ... ,z;z = , ... ,m
u=j
and
i
L~,i) = L 8~u+I), j = 1, ... , i; i = 1, ... , m
u=j
T~~1j is the total flow time of a job through cells j, j + 1, ... , i given it never has to wait
at any store while Ln(j, i) is the total time information about the nth demand at store i
takes to reach cell j.
Now substituting for ~~~ki into (6) one can show
Property of Delay It is clear from equation (7) that the delay is decreasing as the kj
increase for j = 1, ... , i.
75
If demands are Poisson T(n -k1 , k) will have an Erlang- kl distribution, however, we need
to find the distribution of the other quantities in the equation. In the case of a single
stage system as demands arrive they will enter the cell (i.e. they trigger Kanbans to enter
the cell) until the cell contains kl Kanbans. After this demands wait at store 1 until a free
Kanban becomes available. It follows that the queue of Kanbans in the cell plus demands
waiting at the store is equivalent to a single server queueing system, so if demands are
Poisson and the cell is equivalent to a single server with exponential processing times then
the combined queue behaves as if it is a M / M /1 queue. That is, in the cell itself we would
have that the probability there are n jobs is given by
while the probability of n jobs waiting for Kanbans at the store will be
q(n) pn+k(1_ p) n = 1, . ..
1- /+1 n =0 (9)
Note that the average number of jobs in process in the cell will be N = p(1 -l)/(I- p)
while the average number of jobs waiting at the store will be F,\E[Dj = l+1 /(1 - p).
Also PND = 1 - l. The distribution of the delay time of information about demands
coming to cell 1 can be shown to be
~(3)
n
= max{J(2)
n-k2
+ ~(3)
n-k2
_ T(3)(n _ k2 ' n) , O} (10)
Equation (10) suggests that we view the processing system as equivalent to a service
facility in which no more than k2 customers can be in service (and with the service time
76
of the nth customer JA ») and an external queue in which the nth customer waits for a
2
time Do~3) . If we knew KA2) = JA2) + Do~3) then we could use the basic result for delays in
a single stage system with an output store of size z, Don = max{Kn _ z - T(n - z , n), O}, to
find the service level parameters of interest.
Equivalent closed queue if all Kanbans active. As long as Do~3) > 0 then there
are no Kanbans waiting at store 2. This suggests that the processing system can be
considered as a closed queueing system consisting of the two production facilities 1 and 2
(where service is provided at cells 1 and 2), a split point A where a customer splits into
two customers (corresponding to the separation of the stage 2 Kanban from the order
tag conveying information to stage 1) and the merge point B where two customers are
combined into a single customer (corresponding to the combination of the stage 2 Kanban
and a part from stage 1). kl Kanbans circulate in stage 1 and k2 Kanbans circulate in
stage 2. This means that there are four queues in the system, one at each production
facility and the two queues waiting at the merge point B. Denote by NI(t) and N 2(t) the
queue lengths at the production facilities 1 and 2 (including any jobs in service), N[(t)
the number of stage 2 Kanbans waiting at point Band N["(t) the number of parts from
cell 1 waiting at B. Note that
NI(t) + N["(t) = kl
N2(t) + NUt) = k2
N[(t).N;"(t) = 0
To analyse the closed split and match queue further we will assume that each facility 1
and 2 is equivalent to a single server with service times having an exponential distribution
with parameters ttl and tt2 respectively. Define p(nl,n2,ni,ni") = limt ..... ooP{NI(t)
nl, N2(t) = n2, N[(t) = n l , N["(t) = ni"lnl + ni" = kl , n2 + nl = kd· Let Sk"k, =
{(nl,n2,n l ,ni") : 0:::; nl :::; kl,O:::; n2 :::; k2' O:::; n l
+ n l = k2}. Then as has been shown in [1]
kl , n2
1 ( 1 ) n, +nl" ( 1 ) n,+n;"
p(nl, n2, n~, n~) = G(k l , k2 ) ttl tt2
where
G(kl,k2) = L
k, k,
L
(1) n,
-
+k,-n, (
-
1) n,+k,-n,
G(kb k2 - 1)
(12)
G( k), k2 ) •
Furthermore, from the closed queue one can obtain the mean time E[JD] for a stage 2
Kanban to go from store 2 to store 1 to store 2 and also the distribution. Since there are
k2 Kanbans circulating in the loop the E[JD] will be given by
k2 k2 G( kI, k2 )
E[JD] == TH(k b k) (13)
2 G(kb k2 - 1)
Stage 2 equivalent closed queue if all Kanbans active. The simple equivalent
closed queue above represents both stages 1 and 2. However, there is an alternative
closed queue which represents stage 2 only and which models the circulation of stage
2 Kanbans . This closed queue has a server corresponding to cell 2 and another server,
denoted by lu, which represents the service of stage 2 Kanbans arriving at store 1, i.e.,
the merging of the Kanban with a part from stage 1. Now, if the Kanban arrives and finds
N{"(t-) > 0, (and hence Nr(t-) == 0) then the service time of this customer (Kanban)
will be zero while if a stage 2 Kanban arrives at store 1 at time t and N{"(t-) == 0 then
the service time of the customer (Kanban) at the head of queue lu will be determined by
the service process at stage 1 and will thus be exponential with parameter Ill. Now, if
N{"(t-) == 0 then it is possible for Nt(t-) to be zero while if Nr(t-) > 0 then N{"(t-)
must be zero. Define qlu(t) == P{N{"(t-) == OIN;(t-) == O} and qlu == limt-+ooqlu(t).
From equation (11) it is possible to obtain the queue length distributions at the instant
of an arrival at the split point A as the distribution p(nl' n2, n~, n;") in a system with the
number of customers circulating in loop 2 given by k2 - 1. Hence
(15)
where
nI == 0
nI == 1,2, ... ,k2
and
78
(17)
Equivalent closed queue if not all Kanbans active. If not all Kanbans are active,
i.e., D.~3) = 0, then again the system can be represented by a closed split and match
queue. The system consists of the two production facilities 1 and 2, the split point A
and the merge point B as above, but in addition there is a further server in the stage
2 loop where circulating customers (stage 2 Kanbans) receive service at a single server,
denoted by 2d, at rate A. Unfortunately, the addition of the extra server means that
this system no longer possesses a product form solution. However, suppose we consider
the effect of adding the additional server to the stage 2 equivalent closed queue. Let
n~ = limt-+oo Nf(t) where Nf(t) is the number of customers (stage 2 Kanbans) at server
2d and let Sk 2 = {(n2,ni:,n~): 0:::; n2:::; k2'0:::; ni: :::; k2'0:::; n~:::; k2,n2 + ni: + n~ = k2}.
Then it can be shown that the cyclic system possesses a product form solution.
(18)
where
ni: = 0
ni: = 1,2, ... , k2
and
2
"
G (k2) = Lk2 kL-n, (-1 )n, (-1 )k2-n,-n~ (l)n~
~ h(n
r
l )
n,=O n~=O III 112
From equation (18) it is possible to determine the throughput of the stage 2 equivalent
system, T H N D( kb k2 ) from
G"(k2 -1)
THND (k l ,k2 ) = G"(k2 ) (19)
The expected time for a Kanban to circulate around the system, E[TND(kb k2 )J = kdT H(k l , k2 )
However, to find E[JNDJ, the time from when a Kanban departs store 2 until its return,
it is necessary to subtract the expected time a Kanban is at store 2d, E[T2d J, i.e.,
(20)
and
Equivalent closed queue for stage 2 Kanbans. In this closed queue there are, as
above, three servers: a server 2 corresponding to processing at cell 2, server 1u corre-
sponding to the merging of a stage 2 Kanban with a part from stage 1, and server 2d
corresponding to the triggering of a stage 2 Kanban by an external demand. As above,
service at stage 2 is exponential with rate /12 and service at luis, when a Kanban ar-
rives at lu at time t, exponential with rate /11 if N{"(t-) = 0 and takes zero time if
N{"(t-) > o. But now service at 2d for a Kanban arriving at 2d at time t is exponen-
tial with parameter A if N2(t-) = 0, where N2(t-) is the number of requisition tags
from external customers waiting at store 2, and takes zero time if N2(t-) > o. Define
80
q2d(t) = P{N;(t-) = O/Nnt-) == O} and qu = liml ..... ex> qu(t). Then this equivalent closed
queue has a product form solution
where
nj" =0
nj" = 1, 2, . . . ,k2 ,
n~ = 0
n~ = 1, 2, . . . , k2
E
and
G'(k2) = kE'r (2.)k2-nr-n~ (2.)nr (~)n~ fl(n~)h(n~)
nr=o n~=O JL2 JLI
In this closed queue we require Aid in order to find qlu. We have
and
(23)
(25)
where
G:(k2) = t (2.)k2-nr (2.)nl
nr=o JL2 JLI
fl(nD .
Equations (22) , (23), (24) and (25) can then be solved to determine the qlu and qu.
81
PI
0.1 0.3 0.5 0.7 0.9
0.1 Approx 0.990 0.982 0.937 0.796 0.447
Sim 0.990 0.981 0.927 0.750 0.350
0.3 Approx 0.910 0.898 0.846 0.707 0.378
Sim 0.911 0.902 0.847 0.677 0.301
0.5 Approx 0.750 0.737 0.678 0.530 0.201
Sim 0.752 0.744 0.692 0.532 0.182
0.7 Approx 0.510 0.496 0.435 0.282 ***
Sim 0.515 0.507 0.454 0.300 ***
0.9 Approx 0.190 0.177 0.117
,.,.,. ,.,.,.
Sim 0.196 0.187 0.131 *** ***
Table 1: Comparison of approximation and simulation for PND for a Kanban system with
kl = kz = 2. (***: unstable)
p(n;' > 0)
1 - p(n~ = 0)
Using the stage 2 equivalent queue one obtains
k2
PND = 1- L p(kz - n;,n;,O) (26)
(27)
The expected delay E[D] can be found using Little's law from
00
Tables 1 and 2 compare the performance measures calculated using this approximation
for a two stage system with kl = k z = 2 for a variety of different values of PI and pz.
Note that the agreement is in general very good except when PI is large and pz is small.
82
PI
0.1 0.3 0.5 0.7 0.9
0.1 Approx 0.001 0.003 0.029 0.242 2.20
Sim 0.001 0.006 0.067 0.549 5.418
0.3 Approx 0.039 0.047 0.102 0.376 2.52
Sim 0.039 0.046 0.127 0.689 6.064
P2 0.5 Approx 0.251 0.276 0.419 1.02 6.73
Sim 0.251 0.266 0.402 1.23 10.5
0.7 Approx 1.14 1.22 1.68 3.90 ***
Sim 1.14 1.19 1.55 3.70 ***
0.9 Approx 7.30 7.97 13.49 ""PI'
***
Sim 6.94 7.45 11.4 *** ***
Table 2: Comparison of approximation and simulation for E[D] for a Kanban system with
kI = k2 = 2. (***: unstable)
We then assume that JND(t) = limt ..... ooP{J~2) > tl~~3) = O} is given by
where E[JNDJ is given by equation (20). Let Hk2 (t) = limn ..... ooP{T(n,n + k2) :::; t}.
Because of our assumption of a Poisson arrival process with parameter .x for demands
dHk2 (t) = .xk2tk2-Ie-Atdtl(k2 -I)!. Thus
Next, consider the case where ~~3) > O. Then, we require an initial approximation for
E[WJ = limn .....oo E[~~3)1~~3) > 0], the average time that customer requisitions spend
waiting in the queue at store 2 until they can trigger a stage 2 Kanban. Assuming that
job arrivals are Poisson with rate .x and service is exponential at rate TH(kt,k2) when
~~3) > 0, using standard results for a MIMl1 queue the average waiting time will be
given by
(31)
83
and
1:
with mean E[JD + W]. Thus
Ft.(t) = PND 1:0 JND(t + u)dHk2 (U) + (1 - PND ) 1:0 K(t + u)dHk2 (U) (34)
The integrals in the above equation can be readily evaluated.
E[~]
(35)
Table 3 shows the PND calculated using this approach (Approx2) and compares it with
simulation and the earlier approximation (Approxl). Note that the approximation is
generally worse than the first approximation. Note that for simplicity the approximation
assumed that JND and K have exponential distributions, but as shown by equation (45) J D
does not have an exponential distribution. Assuming W has an exponential distribution,
for kl = k2 = 2 it is possible to determine the distribution of K = W + JD and also
the distribution of JND . The resulting approximation for PND is also shown in table 3 as
Approx3. The resulting approximation tends to underestimate PND .
84
(36)
where
ni_l = 0
ni_l = 1,2, ... ,ki ,
85
nf = 0
h(nf) ={ ~id nf = 1,2 , .. . ,ki
and
To determine the /1i,/S , the /1id's and the q's it is necessary to determine the rate at which
products are delivered to store i from cell i and the rate at which Kanbans are delivered
to store i from store i + 1. Define Aid( ni) as the rate at which Kanbans are delivered
to store i from store i + 1 when there are ni stage i + 1 Kanbans at store i. Obviously
Aid(ki+1 ) = O. Then
where
Similarly, define Ai" (nf) as the rate at which products are delivered from cell i to store
i + 1 when there are nf stage i Kanbans at store i. Note Aiu(ki ) = O. Then
A ( P) = G: (ki -
IU n, G~ (k i
nfnf)
_
- 1) ni
P
= 0, ... , ki - 1 (38)
where
It follows that
/11" /11
/1iu .\;,,(0) i = 2, . . . ,m
/1id Aid(O) i=1, ... ,m-1
/1md A (39)
Since qi" = limt~oo p{Nr(t) = OIN[(t) = O} it can be found by analyzing the birth-
and-death process representing the change in the inventory level in store i. It follows
that
1
qi" = Ow A ()'
1 + "ki- 1 y=O iu v
i = 1, . .. , m (40)
L.."w=O Aid(O)W+l
(41)
The equations defining the q's, the Ai.. 'S, the Ai/S and hence the iLid'S and the iLiu'S
parameters can be solved using an iterative scheme.
The performance measures can then be found. Define Pm .. = AI Am .. (O). It can be
shown that
(43)
and
AE[D] = Pm.. (1 - PND) (44)
1- Pm ..
Preliminary computational results on three and four stage systems which are not
extremely imbalanced suggests that the approximation gives very good results for PND
(within .02) but the E[DJ approximation can be 10-15% in error. This is probably due
to the effective service times of Kanbans not being exponential.
dPnr,k2-nr(t)
dt = -(iLl + iL2)Pn].k2-nr(t)
+ iLIPnr+1 ,k2-nr-l(t), n; = 1, .. . , k2 - 1,
87
dPO,k2 (t)
dt
dPnr ,n2 (t)
dt
-(ttl + tt2)Pnr ,n2(t) + ttI Pnr+l,n2-I(t)
+ tt2Pn"n2+l(t), 1::; ni, 1 ::; n2 < k2 - ni
dPnr,o(t)
dt
dPO,n2(t)
dt
dFJD(t)
dt
The initial conditions are determined by the distribution of (n;:, n2) seen by the marked
Kanban on leaving store 2, i.e.
Let P:r,n2 be the Laplace transform of Pn"n2(t). Taking the Laplace transform of both
sides of the above equations and solving the equations gives
If a Kanban leaves n~ Kanbans behind at store 2 then the above distributions would
be modified with k2 replaced everywhere by k2 - n~.
In the case where all Kanbans are always active and qu is given by equation (14) then
the distribution of JD becomes
References
[1] J. A. Buzacott. Queueing models of Kanban and MRP controlled production systems.
Engineering Costs and Production Economics, 17:3-20, 1989.
[3] T. M. Kim. J.I.T. manufacturing systems: a periodic pull system. Int. J. Prod. Res.,
23(3):553-562, 1985.
[4] O. Kimura and H. Terada. Design and analysis of pull system: a method of multi-stage
production control. Int. J. Prod. Res., 19(3):241-253, 1981.
[5] D. Mitra and I. Mitrani. Analysis of a Kanban discipline for cell coordination in
production lines, 1. Management Science, 36(12):1548-1566, 1990.
[7] K. M. Rege. Approximate analysis of serial manufacturing lines with buffer control.
Information and Decision Technologies, 14(1):31-43, 1988.
Capacity Oriented Production Control
for a Job Shop Production
by
Karl-Werner Hansmann
Professor of Industrial Management
Universitiit der Bundeswehr Hamburg
D-2000 Hamburg 70, FRG
Modem production planning and control is based on computer aided information systems
called Manufacturing Resource Planning (MRP II) which deal with the main functions of
Practical experiences of the author with German business firms have shown that the
flow time and work-in-process inventories. The main reason for this is the fact that MRP
II systems plan the functions of the production process successively and not by a
simultaneous approach integrating the individual functions of Fig.1 as it should be. But this
global aim is hardly to be reached in practice because the tremendous volume of data
which have to be processed simultaneously still exceed the capacity of current main
frames .
90
Production Planning
Production Control
Order Release
Scheduling
As a fIrst step to simultaneous planning this paper presents an approach that integrates two
functions of production control: order release and scheduling. Based on the data of a real
world problem it can be demonstrated with a simulation model that the integration of order
release and scheduling results in lower mean flow time and tardiness compared with
The here presented method is called Capacity Oriented Production Control (COPC)
because it explicitly allows for the bottleneck machines on the shop-floor while
In the next section order release will be described and analyzed as a function of production
control. Subsequently the integration of order release and scheduling will be discussed.
As mentioned above a lot of manufacturing fIrms using MRP II systems complain about
high flow times and in-process inventories connected with a considerable tardiness of some
WIENDAHL (1987) designed an approach, called Load Oriented Order Release, which
In contrast to MRP II an order is not yet released to the shop-floor when the required
materials are available but only when it is certain that the order does not exceed the load
Step 1:
The "urgency" of the arriving orders is determined by subtracting the planned flow time
from the due date to get the starting date. Only those orders are urgent whose starting date
Step 2:
In this step the load limit of the work stations is determined. In order to preserve the work
stations from being idle it is intended to keep a certain level of in-process inventory in
front of each work station. This desired inventory level plus the capacity of the work
station yields the load limit. The ratio of the load limit to the capacity is called the load
percentage. This measure has the same numerical value for all work stations and serves
Step 3:
The third step consists in determining the capacity requirements of the urgent orders,
considering the load percentage calculated in step two. The capacity of a work station
required by an individual order is its processing time Pij multiplied by the probability that
this order will reach the work station in question during the planning period.
To calculate the probability Prjj we start from a load percentage of 200 % (that means
twice as much as capacity is available) for all work stations. Then the chance of a job just
93
passing work station 1 to be processed at work station 2 is 0.5 because half of the jobs -
on the average - have to wait in front of work station 2 due to the chosen inventory level.
The same job can be processed at work station 3 only if it passes work station 2
(probability =0.5) and reaches work station 3 without waiting in front of it (probability
=0.5) during the planning period. Thus the probability for being processed at work station
3 is 0.5 • 0.5 =0.25 (statistically independent events). The probability for reaching work
Consequently the load percentage determines the probability Prij by its reciprocal
Step 4:
After determining the expected capacity requirements for each order on each work station
An order is released if its expected capacity requirements do not exceed the load limit of
The method of Wiendahl has proved to be a suitable approach to shop-floor control and
has been implemented in about 50 manufacturing fIrms with good results (WIENDAHL
- The calculation of the expected capacity requirements with one single load percentage
seems to be too simple for a manufacturing process with very different kinds of work
stations.
94
- The load limit is not determined by an optimization procedure but arbitrarily chosen.
- The approach does not distinguish between bottleneck machines and non-bottleneck
machines.
In the next section the Wiendahl approach will be extended to a capacity oriented order
This approach has been developed by K. Kleeberg and the author for a job shop produc-
tion (HANSMANNIKLEEBERG 1989) and has also been extended to flexible manufactu-
2. Individt,lal load limits are determined for bottleneck and non-bottleneck machines
3. The probability that an order reaches a work station is not simply expressed by the
- the number of work stations to be passed before the work station in question and
j-I
T - E RW mk
G- j- I
k • i
Prmij = ----:::::T:----
n -
n
i)
if E RW mk ~ T
k = i
j-I
Prmij = 0, if E RW mk >T
k = i
= I, ... , n-I
J = i+l, ..., n
m = I, ... , M
i = I, ... , n
m = I, ... , M
with:
Pr = probability
m = job
M = number of urgent jobs
= work station where the order is at the moment
j = work station to be reached
n = number of work stations
T = Length of the planning period
RW mk = Remaining work (processing time) of the job m on work station k
The second term of the probability Prmij stands for the "risk" that an order has to wait in
front of a work station. As we do not know the actual waiting time we use the heuristic
rule that the number of work stations still to be passed increases the expected waiting time
and reduces the probability that the order reaches the work station j .
4. The orders are released to the shop-floor according to the following rule:
The orders whose expected capacity requirements do not exceed the load limits of the
This procedure of the capacity oriented order release results in clearly reduced flow time
are
- scheduling with a suitable combination of priority rules in connection with the optimal
load limits.
processing the orders with minimal cost in consideration of the due dates.
As the direct impact of sequences and schedules on the production cost is hardly
97
measurable in practice we need an operational objective function and choose the mean
flow time (MF!') of the orders as an indicator for capital tie-up cost which make up a
great deal of production cost. A suitable criterion for meeting the due dates is minimizing
approximation to the above mentioned global objective function (a determines the weight
with:
As the simulation model in section 4 will show the combined objective function (COF)
To determine the optimal load limits we have gradually varied the load percentage for all
work stations from 100 % to 500 % to find a load percentage which minimizes the
combined objective function COF. Fig. 2 shows that both the mean flow time (MF!') and
the mean tardiness (MT) are dependent on the load percentage. The priority rule used for
scheduling is a combination of WINQ GYork in Queue of the next operation of the job)
18 ------
16
0 14
a
y 12
S
10
4
100 150 200 250 300 350 400 450 500
Load Percentage
~ MFT MT -COF
Fig. 2 Relationship between Load Percentage and the components of the combined
objective function
Fig. 2 shows that the mean flow time (light grey curve) increases with a higher load
percentage but not monotonously because the points of the curve are averages of 30
simulation runs and thus contain a stochastic element.
99
The theoretical reason for the increasing mean flow time is that more orders are released
when the load limit is growing. More orders on the shop-floor often cause higher
in-process inventories and thus tend to increase the mean flow time.
The mean tardiness (lower dark grey curve) is initially going down with higher load limit
and subsequently begins to rise. That can be explained as follows: Additional orders
which are released beyond the 100 % load percentage are at least given a chance to be
finished by their due date. This positive effect on the mean tardiness is more than compen-
sated beyond 250 % load percentage by the increasing in-process inventory and mean flow
time. Consequently the mean tardiness begins to rise beyond that load limit.
The combined objective function COF takes both goals into consideration. We have chosen
the weight (X = 0.6 according to the decision of the manufacturing firm, to give a little
higher weight to the mean flow time than to the mean tardiness.
According to Fig. 2 the combined objective function COF (dark grey curve) reaches a
minimum value of 11 days at a load percentage of just under 200 %. The structure of
the curve shows that optimal load limits do exist on the shop-floor and can be determined
The simulation model approximates to the real manufacturing firm as closely as possible.
The shop-floor comprises ten shops each containing one group of equal work stations
which can be considered the stages of production. We know by information from capacity
100
planning that one shop is a bottleneck while the other shops have free capacity reserves.
The manufacturing firm carries out both job order production and job lot production. The
The planning period of production control is one week, that means five workdays with
one shift. The simulation period includes 104 weeks (= 2 years), the first 12 weeks being
The flow time of an customer order consists of the time for processing, transporting and
To calculate the mean tardiness only the actually tardy orders are taken into consideration.
The simulation runs were carried out on an mM compatible PC 80486/33 MHz. As one
single simulation run takes 30 minutes simulation had to be restricted to 30 runs which
The performance of the here presented capacity oriented production control (COPC) can
- The capacity oriented order release results in significantly lower values of the
- The integration of capacity oriented order release and scheduling greatly improves
Fig. 3 shows the direct comparison between Wiendahl's approach and the capacity oriented
35~ ___________________________
30
D
25
a
y
s
20
15
10~~~~__~~__~~__~~
100 150 200 250 300 350 400 450 500
Load Percentage
c=J COF(1)
Fig. 3 Comparison between Wiendahl's approach (1) and the capacity oriented order
release (2)
102
A look at Fig. 3 illustrates that the capacity oriented order release results in significantly
lower values of the objective function than Wiendabl's approach and this holds good for
aU load percentages. The reduction of mean flow time and tardiness makes up about 5
days i.e. 33 %. The structure of the light grey curve (Wiendabl) and the dark grey curve
(COOR) is similar (except the level) that we conclude the differences of the objective
The second comparison shall demonstrate the superiority of the capacity oriented produc-
tion control using different optimal load limits for bottleneck and non-bottleneck shops
over the traditional scheduling with priority rules.
Tab. 1 shows the values of the combined objective function, the mean flow time and the
mean tardiness including their standard deviations when production control is merely
conducted by scheduling without consideration of order release (that means all aniving
orders are released to the shop-floor immediately). The four priority rules are the best out
of a set of 25 rules tested which were also applied to the capacity oriented production
control shown in Tab. 2. (DO = Earliest Due Date; SL = Smallest Slack)
- The capacity oriented production control is clearly superior to scheduling with priority
rules because its combined objective function yields lower values with all priority rules
applied. The best rule combination WINQ + SPT reduces the objective function by
roughly 28 %.
- The optimal rule combination WINQ + SPT dominates all other rules as it leads to
both the shortest mean flow time and the shortest mean tardiness. This means that
suitably assembled combinations of rules are more effective than simple priority rules.
- The standard deviation of the mean flow time is largely diminished by the capacity
oriented production control. This holds true for the mean tardiness as well if WINQ +
SPT is used. Small deviations reduce the risk of production planning and control
substantially.
- The optimal load limits are 185 % in the bottleneck shop and 150 % in the non-bott-
leneck shops, which means relatively more orders are loaded in the bottleneck shop. This
seems sensible because an idle time of the bottleneck shop would strongly affect mean
flow time and mean tardiness and thus has to be avoided as much as possible.
104
It can be summarized that the capacity oriented production control presented here has
shown encouraging findings for the job shop production which could be confirmed in a
Thus the procedure can well contribute to the integration of important functions of
References
Abstract
Various production planning problems can be described and solved with Linear Pro-
gramming (LP) models. In manufacturing applications setup often plays an important
role. To solve a setup problem 0-1 variables must be introduced in the model, which
leads to an increase in the model size and computational effort. This paper discusses
several models to consider setup times in production planning. A decomposition meth-
odology that does not consider the integrality of all 0-1 variables at once, but succes-
sively, is outlined. Results for an application in the modeling of the IBM Sindelfingen
Multi-layer-ceramics (MLC) Punching area, are discussed .
1. Introduction
There is a broad body of literature on production planning systems. See for example
hierarchical approaches in [6-8]. Here, we restrict ourselves to production allocation to
machines and time periods in a single-level, multi-item capacitated production environ-
106
ment with start setups as well as setups that are partially dependent on production
sequence and independent of time periods in a flexible manufacturing system.
The number of time units that are required to perform a given setup is a function of the
machine, the family and the part type that is to be processed. If two consecutively proc-
essed parts belong to the same part type (and family, of course) then there is no setup
for the second part. If they belong to the same family but not to the same part type,
then a minor setup is necessary, otherwise it is a major setup. Assume that different
MGs may have different efficiencies in the processing of the same· part type. Then, the
processing time is a function of the part type and the MG.
Each part type requires a number of resources that mayor may not be available at a
given time. These resources include tools, manpower, robots and others. We distin-
guish the resources by their availability mode and their consumption mode. It results in
the following four resource types:
Note: Non-transferable resources that are not used at a given period cannot be used in
(transferred to) the next period, they are lost.
We allow the backlog of some part types to be strictly positive and upper bounded (i.e.,
it may not be required to satisfy the entire d(~mand of all part types). The production per
period, as well as the cumulated production up to the given period per part type may be
lower and upper bounded. There are also logical constraints related to the utilization of
the machines. Some examples are as follows: maximum number of machines where a
107
part type may be assigned at any period, maximum number of part types that one
machine can handle at any period, etc.
The goal consists of obtaining a feasible deployment of the MGs and resources that opti-
mizes some of the objectives stated below. The deployment of the resources is a func-
tion of the main unknown in the problem, that is, the production volume of each part
type that is assigned to each machine at each time period. The possible objective func-
tions are
The main difference between our approach and those published in the literature is that
we are interested on large scale instances, so optimality is not our main goal. We look
for practical solutions where the optimality gap, hopefully small, is also provided and the
computational effort is still affordable. On the other hand, we allow for a variety of deag-
gregated capacity constraints that are not frequent in the literature.
Finally, we are dealing with so-called start setups (i.e .• a fixed cost or machine utiliza-
tion is incurred if the production of an item is allocated for a given period~;_ see refer-
ences above , but our approach also deals with other (minor and major) machine setups.
This type of setups is partially dependent on the sequence of the parts and is inde-
pendent of the time periods on which the planning horizon is segmented. The
modelization and the so-called Fix-and-Relax algorithmic methodology that we propose
are new in the open literature. See the companion paper [4] for a detailed description
of the full model and the algorithmic framework.
In this work we focus on the comparison of different approaches for modelling the setup
requirements. The paper is organized as follows. Section 2 presents a base LP model
where the setup requirements are not considered. Section 3 discusses different
modelizations of the setup requirements. Section 4 outlines our Fix-and-Relax algo-
rithmic r:1ethodology. Section 5 reports on our computational experience with a large-
scale real-life problem. Finally, we offer some conclusions.
108
2. A Base lP Model
In this section we present the model for the production planning problem given above,
but setup requirements are not considered. First we introduce the notation.
P;.m, processing time required for producing one unit of part type i in MG m .
1. The workload assigned to a machine group does not require more time units than
the ava ilability for a specific period (1 .2)
2. The maximum allowed backlog for each part type is not violated (1 .3)-(1.4)
(1.1)
subject to:
I
mEM
X; ,m,t = d ;,t ViE I, tET (1 .3)
Table 1 shows a typical matrix Pim for the processing time in a job-shop environment
with parallel machines, and where a part type can be processed by more than one
mach ine.
Table 1: Processing Time Matrix
Machine groups
Solving the LP model (1.1)-(1 .5) leads to a solution as shown in table 2. From a setup
po int of view such a production plan is not very encouraging . Probably the LP solution
has generated unnecessary setups for the machines. The modelling approach that we
describe below avoids all unnecessary setups.
110
Periods
MG t~ONDAY TUESDAY WED DAY THURSDAY /I Setup
... . ..
11 4=2970 4= 32 4=2970 12=1091 4
12=1079
Total 45
3. Setup Approaches
The modelling of setup requirements leads to the introduction of 0-1 variables since we
have to detect if a setup is necessary or not. In fact this is a typical situation for the
usage of 0-1 variables. We compared 4 different cases with respect to the modeling
accuracy and resulting problem size.
1. One approach is to split the user defined periods into so-called micro-periods of
equal length (see figure 1). Per each micro-period we allow only one single part
type (A, B, or C). From the modelling point of view this approach is very easy to
handle, but it has some drawbacks. The major one is the estimation of the optimal
number of micro-periods. If this number is too large, the size of the 0-1 model will
explode, since the number of 0-1 variables is proportional to the number of micro-
periods (and machines and part types). If the number is too small, we may waste
capacity, since the production volumes do not fit exactly into the micro-periods. The
waste of capacity is especially high for cases with short processing times or small
production quantities.
111
Figure 1. Case 1. Two user periods split into 4 fixed length micro-periods. Only t part type
(setup and/or processing) per micro-period is allowed.
Figure 2. Case 2. Two user periods with up to 3 variable length micro-periods. Only t part type
(setup and/or processing) per micro-period is allowed.
3. An alternative is to stay with the user defined periods, but allow multiple part types.
A simple approach is to define always a setup for each part type per period (see
figure 3) . From the modeling point of view this is very easy to handle, but it creates
setups where in practice no setup is required (e.g., part types 8 and C in figure 3) .
This results in wasted capacity, too.
Figure 3. Case 3. User periods, multiple part types allowed per period and always setup for each
part type assigned to a period.
4. Our best approach allows a part type to be assigned to the same machine in two
consecutive periods without requiring machine setup for thE! second period. In
figure 4 the same production quantities are scheduled as in figure 3, but only one
setup is considered for part types Band C.
112
Figure 4. Case 4. User periods, multiple part types allowed per period and setup only when nec-
essary.
This approach (hereafter called detailed approach) requires more 0-1 variables than any
other, but it is very close to reality and the resulting model size is still acceptable.
Before we present the model for the detailed approach, we introduce the following addi-
tional notation.
Note: For the simplification, here we only consider minor setups, but it is easy to
extend the model to consider major setups, which are actually implemented (see [4]).
s;"", number of time units, that are required to perform a (minor) setup for any part type i
in any machine of MG m.
b;"",h 0-1 variable such that the value 1 means that part type i can be assigned to
machine m at period t, but it has not to be assigned and, otherwise, it is zero.
"';"",. 0-1 variable such that the value 1 means that a (minor) setup is required for part
type i in machine m at period t and, otherwise, it is zero.
Note: We can relax the integrality constraint for the variables ''';.m.• since any feasible
solution automatically satisfies this type of constraints .
U;"".h 0-1 variable such that the value 1 means that part type i is assigned to machine m
to be processed as the 'last' part type at period t and, otherwise, it is zero.
0-1 variable such that the value 1 means that two part types at least are assigned to
Zm,h
Now we are able to model the additional constraints (3.1 )-(3.9) to add to the basic LP
model (1.1)-(1.5):
Force b;,rn,. to have the value 1 whenever part type i is assigned to machine m and period
t: (Constraint (3.1) is the most frequent usage of 0-1 variables in production planning .)
Prevent violation of the reduced capacity because of setup time: (This constraint
replaces constraint (1.2) in the base LP modef.)
Identify t!;c part type that causes a (minor) partially sequence dependent setup in a
machine and a given period, if any:
~U
~ I,m, t= 1 Vm EM, t E T (SOS type 1) (3.4)
; E I
Note: Constraints (3.4) define the so-called special ordered sets (SOS) of type 1. One
member of a SOS may and must take the value 1 and the other members must take the
value zero. Constraints (3.5) define the so-called Variable Upper Bounds (VUB).
Define the number of part types that are assigned to a machine at a given period, such
that variable Zm .• will take the value 1 whenever more than one part type is assigned to
machine m and period t:
Prevent that a part type can be assigned the 'last' part type to be processed in a
machine at a given period, provided that the same part type was assigned the 'last' part
at the previous period and at least some other part type has also been assigned to the
machine at the current period:
The model above requires thousands of constraints, continuous and 0-1 variables for
real life cases: For example, a problem with 18 part types (in 7 families). 14 machines,
and 4 periods expands to a 0-1 model with 3691 constraints, 3385 continuous and 0-1
variables, 12537 elements, and 12950-1 variables with 43 SOS sets.
Solving this problem until optimality exceeds the tolerable time, even when using
mainframes and state of the art optimizers as OSLIVM [9]. It still takes around 6
minutes of CPU time to obtain the first integer solution in a IBM 3090-400E.
114
Given the large-scale nature of the problem. it is unrealistic to seek for the optimal sol-
ution in our environment. Instead of providing optimal solutions. we favor a decompos-
ition methodology that does not consider the integrality of all 0-1 variables at once. but
successively. Basically. it consists of analyzing the characteristics of the instance and
considering iteratively the integrality of some subset of variables. Here. the first iter-
ation optimizes the original model. where the integrality constraint of all variables is
relaxed. except the 0-1 variables that belong to the first time period. After solving the
subproblem associated with a given iteration. the 0-1 variables related to the given
period will be permanently fixed to the optimal solution for the subproblem except when
an infeasibility occurs in later periods. The optimal solution of the last subproblem
should lead to a near-optimal solution of the original problem.
The above approach can be interpreted as the following branch-and-bound scheme for
exploiting promising subtrees:
~ The order to branch the 0-1 variables is given by the periods sequence.
~ No nodes are created by branching on 0-1 variables that belong to period T while
nodes with fractional values for 0-1 variables that belong to period t are still in the
waiting list for T> t.
~ The nodes related to a given period are discarded once the best 0-1 solution is
obtained for that period. but the node with the incumbent solution.
The implementation logic for this approach can be described by the following frame-
work.
The number of 0-1 variables is reduced drastically since we can omit all con-
straints related to integer variables U; ,m t and Zm ,f'
• Fix minor (major) setup times to 0 for part types (families) selected to be
produced the 'last' one in previous period t - 1.
Note: Here the 'last' part type (family) is not forced to be the first one in the
current period. it is only encouraged.
• Solve MIP problem.
The constraints (3.4)-(3.9) detect the 'last' part type to be assigned to a given machine
and period. say m and t. respectively. In our period-by-period approach. a heuristic
decides the part type (and family. of course). say J (resp .• f). to be assigned the 'last'
115
one for machine m in period t. If i (resp., f) is the part type (resp., family) to be
assigned to machine m tile 'first ' one for period t + 1 then tile minor (resp., major) setup
is not necessary for period t + 1.
1. There is only one part type (say, 1) assigned to the machine and period. Then, by
definition , it is the 'last ' part type and f(l) is the 'last ' family.
2. There are two part types (say, J and 1) that have been assigned to the machine and
period, and 1 was assigned the 'last ' part for period t -1. Then, obviously, 1 is the
'last' part type for period t. (A similar mechanism works for selecting the 'last' part
family.)
3. Otherwise, let j denote the part family among all families remaining with the largest
major and minor setup. (Note that this setup can be avoided, provided that j is
selected the 'first' part family for period t + 1.)
4. Any way, let j denote the 'last' part family selected by our heuristic for machine m
and period t. Assume that there is still room to select the 'last' part type . It will be
the part type with the largest remaining workload . Alternatively, J can be the part
type with the largest minor setup to be avoided.
This approach has been implemented as the optimization kernel of an IBM internal deci-
sion support system so-called DACAPO (Demand Allocation for Capacity Optimization).
The tool has been designed in such a manner that the model generator and the algo-
rithm are completely transparent to the user. No knowledge in the field of mathemat-
ical programming is required to use the tool.
The user interface allows the parameter specification and start of the optimization run. It
gives access to the results, too. The results can be represented either in graphical or
numerical form. The parameters and results are stored in a relational database. There-
fore it is easy to exchange data with other applications and to build user defined reports.
According to the parameters the optimization kernel generates and solves the math-
ematical model using OSL as basic software.
The user interface and relational database are implemented on an IBM PS/2 using OS/2
EE 1.3. The optimization kernel is currently available on VM/XA and AIX/6000. The
implementation of all components was done with the programming language C.
116
User Interface
(ace. CUA) ..
OS/2 Present.
'~anager Optimization -
Kernel
'1
VM/XA
.. t
OS/2 Database
Manager
Figure 5. DACAPO components. The three major components o( DACAPO are user interface,
relational database, and optimization kernel.
5. Results
Table 3 gives the solution when setup restrictions are enforced. As expected the
number of necessary setups is reduced significaj,tly. Without modelling setup con-
stra ints the total number of setups was 45 (see table 2).
117
Periods
MG MONDAY TUESDAY ~IED DAY THURSDAY /I Setup
.. . ...
11 12=1066 12=1091 12= 663 4=2970 2
4=1098
Total 39
Finally. let us compare the period-by-period model (using our Fix-and-Relax approach)
with the global model (see Table 4).
Table 4: Model Comparison
The average size of the submodel solved per period (especially the number of 0-1 vari-
ables) is significantly smaller than the size of the global model. This results in 93.8
seconds of CPU time for all 4 submodel optimizations. compared with 362.3 seconds for
118
the global model. In both approaches, the optimization was stopped when the first
integer solution was found. The LP solution for the global model is 126264.1. It is a
lower bound for the optimal solution . The optimality gap of the first integer solution for
the global model is only 1.76% . The optimality gap of the solution for the period-by-
period approach is only 0.02% worse than the gap for the detailed model, but reached
much faster. Especially for practical problems it is more important to provide near-
optimal, but fast solutions instead of optimal ones.
6. Conclusion
A practical approach for resource allocation and single-level multi-period lotsizing pro-
duction planning and scheduling with setups has been proposed. This framework can
be applied to production planning as well as machine scheduling and lotsizing prob-
lems.
References
[1] Chand, S., and S. P. Sethi, .. A dynamic lot sizing model with learning in setups,"
Operations Research 38 ( 1990 ) 644-655.
[2] de Mata, R., .. On solving production scheduling problems with changeover costs
using Lagrangean relaxation," Working paper 89-12-04, The Wharton School, Uni-
versity of Pennsylvania, Philadelphia, 1989.
[5] Dzielinski, B. P., and R. E. Gomory, "Optimal programming of lot sizes, inventory
and lot size allocations," Management Science 11 ( 1965) 874-890.
119
[6J Escudero, L. F., "An inexact algorithm for part input sequencing and scheduling
with side constraints in FMS," International Journal of Flexible Manufacturing
Systems 1 ( 1989) 143-174.
[7J Graves, S. C., " Using Lagrangean techniques to solve hierarchical production
planning problems," Management Science 28 ( 1982) 260-275.
[8] Graves, S. C., "A tactical planning model for a shop job," Operations Research 34
( 1986) 522-533.
[9] IBM , Optimization Subroutine Library Guide and Reference, Kingston (NY). 1991 .
I BM Form SC23-0519
[11J Magnanti, T. l., and R. Vachani, "A strong cutting plane algorithm for production
scheduling with changeover costs," Operations Research 38 ( 1990) 456-473.
[12J Pocket, Y. •and l. A. Wolsey, "Solving multi-item lot sizing problems using strong
cutting planes," Management Science 37 ( 1991 ) 53-67.
[13] Trigeiro, W. W., L. J. Thomas, and J. O. McClain, "Capacitated lot sizing with
setup times, " Management Science 35 ( 1989) 353-366.
[14J Wolsey. L. A., "Incapacitated lot-sizing problems with start-up costs ," Operations
Research 37 ( 1989) 741-747.
INTEGRATED STATION LOCATION AND FLOW NETWORK
DESIGN FOR MANUFACTURING SYSTEMS LAYOUT
Dilip Chhajed
Depanment of Business Administtation
University of Dlinois at Urbana-Champaign
1206 South Sixth Street, Champaign, n.. 61820.
Timothy J. Lowe
~ntof~gementScience
University ofIowa, Iowa City,lA 52242.
Benoit Montreuil
Groupe de Recherche en Gestion de la Logistique
Department of Operations and Decision Systems
Laval University, Quebec, Canada GlK 7P4.
Abstract
In this paper the component approach to designing a detailed layout is considered. The component
approach has four distinct phases of layout design: (a) block layout, (b) input/output station location, (c)
flow network design, and (d) aisle netting-ouL We look at the problem of simultaneously designing the
station locations and flow network. Two different topologies are considered. Formulation and solution
procedures for these topologies are discussed.
1. Introduction
Recently, renewed interest in the ~ design of facilities has developed, in part, because of
increased global competition in manufacturing and an increased consciousness toward reducing
manufacturing costs. Tompkins and White (1984) suggest that about 20% to 50% of the total operating
expenses within manufacturing are attributed to material handling. Efficient facilities design can reduce
these costs by at least 10% to 30% and thus increase productivity. Facilities design involves three
interrelated components: structure, layout, and the determination of a (network) system to suppon material
121
flow interaction between facilities, e.g. material handling systems. For best results, various components
offacilities design must not be designed in isolation. However, at present, a decomposition approach is
usually taken, e.g. the material handling system (network) is determined aflcr the structure (size and
shape) and layout (orientation of facilities) has been determined.
Classical layout design approaches have primarily focused on laying out the block plan . Foulds
(1983) and Kusiak: and Heragu (1987) give comprehensive swveys of various research effons to develop
the block layout. Note that in the block plan, operational details such as circulation regions, aisle structure
and the location of departmental input/output stations are generally not modeled. Recently, several
researchers have come to recognize that considering aisle travel explicitly in the major layout design phase
provides significant potential for improvement in flow travel (via aisles) and space devoted to the aisle
system. O'Brien and Abdul Barr (1980) proposed a layout improvement algorithm named S-ZAKY
which computes the expected flow distance savings based on the location of the input/output stations. The
INTALA interactive layout software of Warnecke and Dangelmaier (1983), which uses a construction
approach, permit three internal configurations (shape with input/output locations) for each department
Instead of directly generating a layout with aisles using a myopic approach, Montreuil and Ratliff
(1988) and Montreuil (1987) have proposed a component approach to layout design where the components
are a) block plan, b) input/output station location, c) flow network design, and d) aisle netting-out (defmed
below). In this approach, initially a block plan is generated (Figure I). Given a block plan, departmental
input/output station locations can then be determined. All material flow between departments occurs
through these stations. Given the block layout and the location of input/output stations, an optimum flow
network must be designed. This network is the basic structure on which the flow of material and people
will take place. Finally, this network is transformed to a set of aisles and circulation areas (aisles are
netted-out).
The block design can be generated by using any of the classical approaches mentioned earlier (Foulds,
1983). A polynomially solvable model for optimally locating the input/output stations, when all the
departments are rectangular, is given in Montreuil and Ratliff (1988). Chhajed, Montreuil, and Lowe
(1991) have given a Lagrangian based heuristic to develop one type of flow network design. Montreuil
and Venkatadri (1988) have developed a comprehensive linear programming model generating a net layout
from an aggregate layout, coupled with a flow network.
All of the above papers tend to design one component at a time. It is clear that such a sequential
optimization approach could lead to a suboptimal overall design, but solving the overall problem as a
single integrated problem is a fonnidable task. However, an attempt to integrate as many of these
components as possible must be made in order to truly gain the benefits of optimization and to design a
system which is as close to ideal as possible. In this paper we present a step forward in the direction of
integration. The two components we have chosen to integrate are the station location and the flow network
design; we denote this problem as ISLAND (Integrated Station Location And flow Network Design).
Since there are a number of topologies possible for the flow network design, the same topologies are
possible for the ISLAND problem (Chhajed et al., 1991). Thus the ISLAND problem involvesdlOQsing
the location of a station for each department and designing a network which permits each flow between the
chosen stations subject to the topological requirements.
122
I J
(LA) (DR (LA) (DR
(PR) (PR) ~
(A ) (A! )
-
(S'I)
(S'I)
r- /PI \
(OR)
.,
ror
(OR)
(WR
(RE) (MI: (SH) ! /WE) (RE)
~ (SH) (WE) (WR
[LA]
[DR]
[PR]
(RE)
-I
.....~~
(<:In
' l L _ - I WR
We now discuss previous work related to our approach. Usher, Evans, and Wilhelm (1988)
consider simultaneous determination of flow paths and locations for load transfer stations within an
automated guided vehicle system Their two-phase heuristic first assumes the locations for the load
transfer points and solves for network design using the zero-one integer program formulation developed
by Gaskin and Tanchoco (1987). In the second phase, the location of load transfer points is improved by
solving a series of one-median problems. This process is repeated until no further improvement is found in
the total weighted distance traveled by loaded vehicles. The objective function in Usher, Evans, and
123
Wilhelm does not consider the network cost. Note that the phase 1 problem is in general difficult to solve
and Gaskin and Tanchoco did not give any special property of this formulation which could be exploited in
a solution procedure. Furthermore, their procedure is iterative and works in two phases, since only one
component is solved at a time.
In this paper we discuss two different topologies for the ISLAND problem. In Section 2 we
discuss the case where the flow network is not restricted to be a subnetwork of any prespecified network.
an
Such assumption is called afreeflow assumption. We show that the problem can be posed as a fixed
charge network design problem and suggest ways to solve the problem and generate lower bounds. In
Section 3 we assume that the flow network has to be a subset of a prespecified network. This prespecified
network, for example, may be the network defmed by the block layout. We present a path-based
formulation for this case and identify special cases for which the problem is relatively easy to solve.
Section 4 has some concluding remarks. In the Appendix we provide proofs of results stated in the paper.
2. Free Flow
In this section we consider the case when flows are permitted to occur anywhere (free flow)
through the building enclosing the departments. In this situation, the actual flow network which is to be
designed, may pass through the interior of some departments. Such an assumption is called afreeflow
assumption. The free flow assumption is )lseful during the design stage to obtain the best (unconstrained)
material handling network. Flow network design with a free flow assumption is considered in Chhajed,
Montreuil, and Lowe (1991). We also constrain the network to have only horizontal and vertical edges and
each station must be located on the boundary of its respective department. Figure I (c) shows an example
of such a network. We call the ISLAND problem with these assumptions, F-ISLAND. The objective is to
determine the station locations and the network so that sum of the flow cost and the network cost is
minimized.
2.1 Formulation
Let D be the set of departments with cardinality n. We assume that only one station per department
is to be located and thus the set of stations has one member corresponding to each department. Let F be a
set consisting of pairs of departments such that if (u,v) e F, then there is a flow between departments u
and v. We consider only undirected flows and a flow (u,v) is said to be in F if either (u,v) or (v,u) is in
the set F. Occasionally we will denote a generic flow (u,v) by the letter f.
The block layout is assumed to be given with each block (department contour) an isothetic simple
polygon. Free flow is assumed and only travel parallel to one of the axes is allowed. Given a set of station
locations and the flow network (to be determined), each flow is assume to take the shonest path on the
network. The flow cost for flow f is computed by taking the length of the path for the flow f and
124
multiplying it by the annual flow cost per unit length of flow f, which we denote by Or (also denoted as
Q(u,v) for flow (u,v». Without loss of generality we assume that the network cost per unit length is 1. We.
now define two graphs:
Definition: Given a block layout, the department contours (boundaries) can be thought of as a graph with
nodes at the points where contour lines intersect or make a 9()0 tum. We will call this graph the COf/lOUT
Graph and denote it by C. V(C) and E(C) represent the nodes and edges, respectively, of the contour
graph C. The graph formed by solid lines and solid nodes in Figure 2 is an example of Contour graph.
Definition: Given a set of points x on the plane a grid graph of a set x is defined as: Draw a horizontal and
a venicalline through each point of 7t. The intersection of each horizontal line and venicalline defines a
grid poinL Take the intersection of these lines with the smallest rectangle containing x with sides parallel
to the axes. The union of the grid points, the set x, the rectangle, and the collection of horizontal and
vertical lines contained in this rectangle is the grid graph, n(lt). Note that the contour graph is a subgraph
of n(V (C». The union of all edges and vertices in Figure 2 is a grid graph.
Let Nu denote the set of those nodes of n(V(C» that are on the boundary of department u. We
now show that there is an optimal solution to the F-ISLAND problem where the stations are located on the
nodes of the grid graph n(V(C».
lA
DR
PR PL AS
ST ..·
!P-- ···..·······11··············· ......•.... ...........................•.....
~
GR WR
MI SH WE
Theorem 1· There exists an optimal solution to the F-ISLAND problem in which the station of department
u belongs to Nu for all u e D, and the network connecting them is a subnetwork of n(V(C».
fr.QQf;. The proof of this theorem is given in the Appendix.«»
125
This Theorem is the key to the following formulation. We first note that some of the edges of the
grid graph can be eliminated without affecting the optimal solution. For example. the dotted edges not in
the block layout of Figure 2 can be eliminated. For simplicity we will continue to call the graph after
elimination of these edges as TI(V(C». We now formulate an optimization problem. To the graph
TI(V(C». for each department ue D. append a node nu and add arcs between no and each node in Nu. The
length of each appended arc is set to be '1'. a number at least as large as the sum of all the arcs in TI(V(C».
DenOIC by R the resulting graph. Create another graph H by making a copy of R and replacing each arc in
the copy of R by two directed arcs. directed in opposite directions and with length identical to the replaced
arc. For an arc ae E(R). the corresponding directed arcs in E(H) are denoted by a and a'.
For each flow f=(u,v)e F. arbitrarily designate nu as the source node and nv as the sink node for
flow f. For each fe F.let t>f be a column vector with -I in the position of the source node and +1 in the
position of the sink node and a 0 in all other positions corresponding to the nodes of H. Let the node-arc
incidence matrix ofH be M. We now have the following fixed-charge network design problem
(Balakrishnan, Magnanti, and Wong, 1989).
f f
(Fl) min r Caxa + r Qr( r CaY a + r Ca'Ya' ) - e (1)
aeE(R) feF aeE(H) a'eE(H)
SUbject to: Myf=»f V fe F (2)
f
Ya ~x. Vfe F,ae E(R) (3)
f
Ya' ~xa Vfe F,ae E(R) (3')
where Xa are the arc variables, y~ are the flow variables. and Ca is the length of arc a, e is a constant with
value 'PIDI + 2 'P l:teF Qt. Here constraints (2) are the flow balance equations. Constraints (3) and (3')
permit flow on an arc if and only if the arc is selected. Constraints (4) force an arc either to be in the
solution or out of the solution and (5) are the non-negativity constraints on the flow variables. In the
objective function the first term includes the network cost while the second term includes the flow cost
These two terms also include the fixed cost and the flow cost due to the artificial edges. We note that the
length of the appended arcs are such that in any optimal solution to (Fl), for every u eD, exactly one arc
of R, from among the set of arcs between nu and members of Nu• will be chosen, Thus the formulation
ensures that exactly one station is chosen for each department.
Since each artificial arc has a fIXed cost 'P, the totaljixed cost of selected artificial arcs is IDI'I'. The
totalflow cost on the selected artificial arcs is 2'1' rfeF Qt, since each flow uses two artificial arcs. Thus
the total cost contribution of the arcs in an optimal solution to (Fl) is e, and so e is subtracted in (1).
above.
Note that certain additional constraints on the path of a flow can be incorporated in (Fl). For
example. if certain flow should not pass through a set of departments, the corresponding flow variables
can be set to O.
126
We form a Lagrangian relaxation of (FI) by multiplying (3) and (3') by multipliers v! ' v!, and
The value ofxacan be set based on the sign of its coefficient, i.e., if (Ca -IfeF.V! -IfeFa'V~') is
~ 0, we set Xa to zero, otherwise set Xa to one.The remaining problem decomposes into IF! problems of the
f f f f
(FIRf) min I maYa + I ma,ya·
aeE(H) a'eE(H)
Subject to: Myf=bf
1. ~O, y~. ~O
where m! = Ca+v!. FlRf is a shortest path problem which can be computed in 0(IV(H)12) time. Thus,
with a fixed value of the multipliers, (FIR) can be solved in 0(1F1*IV(H)12) time.
Finally, we want to find the multipliers such that Z*l(vf) is maximized to get the tightest lower
bound. This is given by the dual problem:
Z*l = Max f Z*l(V f ).
v
(9)
The multipliers can be adjusted in moving from one iteration to the next following the subgradient
approach (Fisher, 1981). Alternatively, the dual ascent method of Balakrishnan et al, (1989) can be used
to adjust the multipliers.
An upper bound during each Lagrangian iteration (for a fixed value of the multipliers) can be
obtained by taking the network formed by those xa's which are set to 1 and adding to it arcs from
TI(V(C» so that there is a path for each flow. The dual ascent method of Balakrishnan et al, (l~9) can be
used to obtain a lower bound to (FI).
127
3. Contour Flow
We now consider the topology when the flow is restricted to travel along department contours or
along any other prespecified network. Again one station per department is to be located on the contour of
each depanment We call an ISLAND problem with such topology a C-ISLAND problem. As in section 2,
the total cost which we minimize consists of the cost of the network, which we assume to be linear in the
length of the network, and the flow cost which is proportional to the amount of flow times the distance
traveled.
3.1 Eonnulation
Let D be the set of departments and let C be the contour graph with nodes V(C) and arcs E(C). We
assume that there is one station per department Theorem 2 shows that the integrated problem with contour
flow has a solution in which all the stations are located at nodes of C.
Theorem 2· For the C-ISLAND problem in which each flow takes the shortest path along the contour
graph between the stations of the two departments defining the flow, there exists an optimal solution
where the stations are located at the nodes of C.
fmQt The proof is given in the Appendix.
By the virtue of Theorem 2, we can formulate the problem with only a finite set of points as
candidates for station locations. We now introduce the remainder of our notation. For every flow (u,v) e
F we flnd a shortest path, P~ , in C between node k e Nu and node I e Nv • To keep our notation simple
we assume that there is only one shortest path between any two such nodes of interest. Multiple shortest
paths can be easily incorporated within the framework of our model and solution methodology. Instead of
shortest paths, one can also proceed with any (finite) number of acceptable paths for each flow. Let ~ be
the length of path P~ multiplied by the cost of annual flow per unit length, between departments u and v,
and let Ca denote the (annualized) cost of arc a of E(C). P~~ is a discrete variable which takes on the value
1 if path P~ is chosen for flow between departments u and v, and 0 otherwise. Let ~a = 1 if P~ uses
arc a, 0 otherwise; Yuk = 1 if node k is selected for department u, 0 otherwise; and Xa = 1 if arc a is used, 0
otherwise. Here P~~, Yuk, and Xa are decision variables.
We now give our formulation, denoted as problem (I):
I.emmn 1 : For a relaxed version of problem (I), where each Xa and each ~ is a continuous variable
between zero and one, there exists an optimal solution to the relaxed problem where each Xa and each p~~
is integer.
ftQQf: For each u, let Yuk· be the y variable which has value 1 in the set {Yuk: ke Nu}. For department u
and v, the right hand side (RHS) of (12) is 1 if and only if k = Ie" and the RHS of (13) is 1 if and only if I
= 1°, otherwise the RHS is zero. Hence only P~~lo can be positive and all other pr.;, k'e Nu\ko, Ie Nv\lo
will be zero. In order to satisfy (11), we have P~~lo = 1. Since we are minimizing, and each Ca is positive,
from (15) all { Xa: ~~Io =1} will be 1, and all other xa's can be set to zero. «»
By the above Lemma, the xa's and P~'s can be relaxed to continuous variables between zero and
one. With this relaxation there will be Iue D INul integer variables in (I). The following properties may
help in reducing the problem size:
Property 1: For any (u,v)e F, if all the paths between departments u and v use some arc a, then arc a can
be flXed, i.e. we can set Xa = 1 .
Property 2: For any ue D and k e Nu if all shonest paths, originating at k, to every department v, where
(u,v) e F, pass through some node I e Nu, then node k of department u, along with all paths starting from
node k of department u can be dropped, i.e. set Nu +- Nu\k and P~~ +- 0 '1:1 v and '1:1 I e Nv •
We now show how the C-ISLAND problem can be formulated as a flow network design problem
(without station location). For the pwpose of this alternate formulation, we introduce, in the contour graph
C, a new node us· for each department u. We also introduce arcs (us·,k) '1:1 ke Nu each with a very large
identical cost (length), denoted by '1'. Let C denote this modified contour graph. We concatenate every
path P~~ with two additional links, (us·,k) and (vs·,I). Let the variable P~ now refer to this concatenated
path. Also ~ is set to 1 when a = (us·,k) or (vs·,I), and 0 for all other new arcs. Consider the
formulation.
:E :E P~ C! I \f (u,v) e F (17)
keNuleNv
P: ~ S xa \f (u,v)e F, ke Nu,le Nv, a e E(C') (18)
Xa, P: e {O,I}
In the above formulation the dummy station takes the role of the given station for a department.
Chhajed (1989) gives a dual ascent procedure to solve the formulation (I') (with no flow cost). We now
look at an alternate approach by forming a Lagrangian relaxation of formulation <no
If we relax (15) in <n by multiplying each such constraint by ~~ and adding the result to the
.
=mrn L ( Ca L L L u uv
kla )xa
aeE(C) (u,v)eF keNu leNv
+ L L L (s~+ :E e~ ~)p~r (19)
(u,v)eF keNuleNv aeE(C)
Subject to: (12), (13), (14), and (16).
Since there are no constraints involving x, the value of any Xa can be set based on the modified
coefficient. If (ca - L(u,v)e F :Eke Nu Lie Nv ~ ) < 0, then we set Xa to one, otherwise set Xa to
where~ =S:;+ 1: e~ ~ .
aeE(C)
Our interest is in finding the multipliers which solve the following problem:
maxu Z*(ll..'(u».
Problem (ll..'(u» is still a mixed integer programming problem which in the absence of special
structure will be difficult to solve. We next discuss some special cases which are easy to solve.
IT we choose one node in Nu for each depanment u and select, from the path set P, those paths
with both their end nodes in the set of nodes chosen, then a feasible solution to (ll..'(u» is obtained. The
value of the objective function of (ll,..'(u» corresponding to this feasible solution is given by summing the
modified path-cost, ~, for all the selected paths. This path-cost depends on the nodes selected for hmh
departments, thus suggesting an alternative formulation of (ll..'(u». Before describing this, we need some
definitions.
Definition: A flow graph G is a graph with a node for each department and an arc (u, v) e E(G) if and
only if (u, v) e F. Figure 3 has an example of a flow graph.
MI
The number
represents the
amount of flow
between pairs of
departments
Definition: Given a flow graph G with a set Nv (e.g. a candidate set of input/output points for department
131
v) associated with each vertex v e V(G). a G-Partite Graph, GO. is formed as follows: Corresponding to
each node v e V(G) we create a super-node in GO which contains INy I new nodes (vt: k = 1• ...•INyl}.
We will denote the node family for department v by av. Two nodes vt and Ul (wu) are connected in GO if
and only if arc (v.u) e E(G). Arc (vt.Ul) in GO is assigned weight~. Thus if (v.u) exists in G. nodes
of node-families u and v fonn a complete bi-partite subgraph of GO.
Given a G-partite graph GO. let S(GO) be an induced subgraph of GO with one node of each node-
family and Z(S(GO» be the sum of the weights on the arcs in S(GO). We now define a problem on the G-
partite graph.
(NSP) Node Selection Problem: Given a graph G and the corresponding G-partite graph. GO. with arc
weights ro. fmd an S(GO) such that Z(S(GO» is minimum. We will denote an optimum solution of NSP by
S*(GO).
Now we show that problem (n...'(u» is reducible to NSP.
Although NSP is NP-hard, certain special cases of NSP are solvable in polynomial time. These
special cases are characterized by the structure of the flow graph. When the flow graph is a k-tree. NSP
can be solved in polynomial time for a fixed k. A k-tree is recursively defined as: a complete graph on k
nodes (a k-clique) is a k-tree. Given a k-tree and a subgraph of the k-tree which is a k-clique, the graph
obtained by introducing a new venex and connecting it to every vertex of the k-clique is again a k-tree.
Polynomial algorithms to solve NSP when the flow graph is a 2-tree or a k-tree are given in Chhajed and
Lowe (1991) and Fernandez-Baca (1989). Series-parallel graphs (partial2-trees) are particularly
interesting because they are very easy to identify (Wald and Colbourn, 1983). Moreover every planar
graph can be edge partitioned into two outerplanar graphs, which are special series-parallel graphs (Heath,
1991). Another defmition of a series-parallel graph is a graph which can be reduced to a single edge by
repeated use of (i) replace a node of degree 2 and the edges adjacent to it by a single edge, (ii) replace two
parallel edges by a single edge, (iii) eliminate a node with degree one. In the next section, we will restrict
our discussion to series-parallel graphs.
In general the flow graph may not be a k-tree and thus even the relaxed sub-problem (n...'(u» will
be difficult to solve. Nevertheless, the results of the previous section may be exploited in an heuristic way.
132
In the rest of the section we will discuss only series-parallel graphs because of their simplicity and easy
characterization.
Given a flow graph G', we first select a maximal series-parallel subgraph of G', with V(G') =
V(G), and solve the subproblem for this restricted flow graph. Then we preform local improvement to get
a locally optimal solution to the (D..'(u» for flow graph G'. The multipliers are adjusted and the process
can be repeated. Algorithm SOLVE_C-ISLAND has the details.
ALGORI1HM SOLVE_C-ISLAND
Given: A flow graph G', flows, and a block layouL
Step 1: Develop formulation (1)
Step 2: Use Properties 1 and 2 to reduce the problem size
Step 3: Select a 'good' series-parallel graph G as subgraph of G'.
Step 4: Select a set of multipliers for constraints (15) and form problem (D..'(u».
Step 5: Set the values ofx variables and construct a G'-partite graph and G-partite graph. Note that the G-
partite graph will be a subgraph of the G'-partite graph.
Step 6: Solve the (NSP) on the G-partite graph.
Step 7: Using the nodes selected in Step 6, construct a feasible solution to (NSP) in G'-partite graph
which is an induced subgraph of G'-partite graph with one node of each color. Call it J.
Step 8: Pick a department u and for each ke Nu• compute the objective function value of G' which
corresponds to the solution ke Nu and all other nodes in J constant. IT the best solution, over all ke Nu• is
bener than the current solution, retain the new solution and set J to this new solution.
Step 9: Repeat Step 8 until no more improvement occurs.
Step 10: Construct an upper-bound to the original problem (I) (with flow graph G') by selecting all the
arcs in the paths selected in Step 9 and evaluating the objective function of (I) for these paths.
Step 11: IT the current solution is satisfactory then Stop. Else update the multipliers and go to Step 5.
In order to get a solution to (NSP) for a series-parallel graph G close to a solution to (NSP) on
G', it seems reasonable to have as many edges in G as possible (while maintaining G as series-parallel).
Furthennore, we may choose these edges so that the total flow represented by these edges is maximal.
Thus G must be a maximal (in terms of total flow weights) series-parallel graph. A series-parallel graph is
characterized by the absence of a complete graph on 4 nodes. Finding a maximal graph characterized by
the absence of certain sub-graphs is NP-hard (yannakiks, 1979). However we can heuristically select a
'good' series-parallel graph as follows:
Convert the graph G' to a complete graph Q by adding edges with zero flow. Since series-parallel
graphs are sub-graphs of a 2-tree. the maximal series-parallel sub-graph of a complete graph will be a 2-
tree. We generate a maxima12-tree in a manner similar to the recursive definition of a 2-tree. First we
initialize the 2-tree by selecting a triangle with vertices (x,y,z) such that the sum of the flows on arcs in the
set (x,y),(x,z),(y,z») is maximum. This is our initial2-tree, 2T. Now we give the recursive step. Given a
2-tree, 2T, for all edges (x,y)e E(2n, find a vertex s e V(Q)\v(2n such that the sum of the weights on
arcs (x,s),(y,s») is maximum. This vertex s along with the two edges (x,s) and (y,s) are added to 2T and
133
the recursion continues until all vertices of G are in 2T. For the flow graph in Figure 3, a 'good' 2-tree
generated by this procedure is shown in Figure 4. The zero length edges are not present in the original
graph. This graph represents a flow of 505 which is more than 82% of the total flow of 610.
4. Conclusion
In this paper we have considered the problem of designing detailed layout for which a component
approach is suggested. We concentrated on integrated design of the station locations and the flow network
design. Two topologies were considered and the problems were modeled as integer programs. Lagrangian
based solution procedures were proposed. For one topology, special cases were identified for which each
Lagrangian subproblem is easy to solve.
This paper is an attempt to apply optimization-based techniques to designing a detailed layout For
efficiencies in material handling, all components of the facilities must be carefully coordinated. We hope
that this paper will generate more interest on designing detailed layouts.
MI New edges
with zero flow
References
Balakrishnan, A., T. L. Magnanti, and R. T. Wong (1989), "A Dual-Ascent Procedure for Large-Scale
Uncapacitated Network Design," Operations Research, 37, 716-740.
Chhajed, D.(1989), "Manufacturing Systems Layout, Station Location, and Flow Network Design," Ph.
D. Thesis, Purdue University, West Lafayette, Indiana.
134
Chhajed, D., B. Monteuil and T. J. Lowe (1991), ''Flow NetwOIk Design for Manufacturing Systems
Layout," to appear in the Eumoean Journal of Operations t ~.
Chhajed, D. and T. J. Lowe (1991), "M-Median and M-Center Problems with Mutual Communication:
Solvable Special Cases," to appear in OJ>erations Research
Femandez-Baca, D. (1989),"Allocating Modules to Processors in a Distributed System," IEEE Trans.
Software En, 15,1427-1436.
Fisher, M L. (1981), "The Lagrangian Relaxation Method for Solving Integer Programs," Manaument
~27, 1-18.
Foulds, L. R.(1983), 'Techniques for Facilities Layout: Deciding which Pairs of Activities Should be
Adjacent," Mana~ement Science, 29, 1414-1426.
Francis, R. L. and J. A. White, "Facilitv Layout and Location: an Analytical Approach," Prentice-Hall,
(1974).
Gaskins, R. J. and J. M. A. Tanchoco (1987). ''Flow Path Design for Automated Guided Vehicle
Systems," International Journal of Production ReSearch. 25. 667-676
Heath, L. S. (1991), "Edge Coloring Planar Graphs with Two Outerplanar Subgraphs," Proc. of the 2nd
ACM-SIAM Symposium on Discrete Algorithms.
Kusiak, A. and S. S. Heragu (1987). "The Facility Layout Problem," EJll'Oj>ean Journal of Operations
Research. 29, 229-251
Montreuil, B. (1987), "Integrating Design of Cell Layout, InputlOutput Station Configuration. and flow
Network of Manufacturing Systems", in C. R. Liu. A. Requicha, and S. Chandrasekar (eds.). Intellj~ent
and Intewted Manufacturin~ Analysis and Synthesis, ASME Ped-Vol. 25, 315-326.
Montreuil. B and H. D. Ratliff (1988). "Optimizing the Location of InputlOutput Stations Within Facilities
Layout", En~neerin~ Costs and Production Economics, 14, 177-187.
Montreuil. Band U. Venkatadri (1988). "From Gross to Net Layouts: An Efficient Design Model",
Document No. 88-56. Operations and Decision Systems Department, Laval University, Quebec. Canada.
O'Brien. C. and S. E. Z. Abdul Barr (1980), "An Interactive Approach to Computer Aided Facility
Layout. " International Journal of Production Research. 18, 201-211.
Tompkins, J. A. and J. A. White, "Facilities Plannin~," John Wiley & Sons, (1984).
Usher, J. S., G. W. Evans, and M. Wilhelm (1988), "AGV Flow Path Design and Load Transfer Point
Location. "fiE Conference Proceedin~, 174-179.
Warnecke, H. J. and W. Dangelmaier (1983), "Progress in Computer Aided Plant Layout," Technical
Repon, Institute for Manufacturing Engineering and Automation - Fraunhofer, Stuttgan, Fed. Rep. of
Germany.
Wald, J. A. and C. J. Colbourn. (1983), "Steiner Trees. Panial2-Trees. and Minimum IFI Networks,"
Networks, 13, 159-167.
Yannakakis, M. (1979). 'The Effect of Connectivity Requirement on the Complexity of Maximum
Subgraph Problem," J of the ACM, 26, 618-630.
Appendix
Proof of Theorem 1.
Consider some arbitrary imbedded network R" which is a feasible solution to the F-ISLAND
problem. Since R" is feasible, for every ue D there exists some point ~ in R" on the boundary of
depanment u where the point ~ represents the station location for depanment u. Also, since R" is feasible.
there exists a path in R" between ~ and $v for every (u,v)eF. For every (u,v)eF,let P(u,v;R") be the set
135
of edges in a shortest path in R" between ~ and ~ and define R' as the subgraph of R" which is the union
of this collection of shonest paths. Clearly R' is also a feasible solution to the F-ISLAND problem, with
objective function value no larger than that of R".
We define the node-set ofR' as follows: Let S={~: ueD). and let M denote those points (distinct
from S) of R' which have degree 3 or more (note that M is a subset of the nodes of R"). The node-set
V(R') ofR' is taken to be (M)u{S). The edge set E(R') is defined by ((~.$q»). where ~ and $q are
consecutive members of V(R') in some simple path in R'.
Recalling that R' is an imbedded graph. for every edge (~.$q) . if the length of this edge is greater
than d($p.$q) (the rectilinear distance between the embedded points ~ and $q). then replace the edge with
an edge of length d($p,$q)' After replacement of all such edges. we denote the resulting graph by R. with
edge set E(R). Let P(u.v;R) denote the set of edges on a shonest path between ~ and~, (u.v) e F.
Again we assume that each edge of R is in some P(u.v;R). otherwise the edge is removed from R. With all
such edges removed (if any) we redefme the resulting graph to be R.
With Z(.) the objective function value of F-ISLAND, we note by construction that Z(R) ~ Z(R') ~
Z(R"). Funhermore. it is easy to verify that
We note that (AI) expresses Z(R) as a sum of weighted rectilinear distances between pairs of points in the
plane (imbedded nodes of R), where the weights correspond to unit construction costs (=1) along with the
sum of all flows using the corresponding edge in R.
We now construct an optimization problem for which the set of imbedded nodes of R is feasible.
and where Z(R) (via AI) is equal to the objective function value of this optimization problem evaluated at
the embedded nodes.
Since ~ is on the contour of department u for every ue D, then either ~ue N u• or ~u is on some
horizontal or vertical edge between two members, (Xul and <lu2' of Nu. Let D' cD be the set of
department indices where the latter holds, and S' the subset of vertices of S where $ue S' if and only if
ueD' .
Let 9 be a large number, and for each pe MuS. define a variable yp (a location in the plane). Using
the weights (wpq : p,qeMuS) from (AI). defme the following optimization problem (0):
sums in (A2) are zero, i.e., for ue S'S', d(fu,+u) =0 and for ue S', d(~u,«uI) + d(fu,au2) = d(«UI,<<U2)'
e is large enough so that in an optimal solution to (0), Yu* = fu, ue S'S', and d(yu*,au I ) +
In addition,
d(Yu*,au2) - d(aul'~) =0, ue S', i.e., Yu* will be on the horizontal or vertical line between au l and
«U2'
We also note that (0) is equivalent to a rectilinear multifacility location problem in which the
variables (Y.,. peMuS) are new facilities and the fIXed points, EF = (fu: ue S'S'}u(<<Uj: ue S', i=I,2)
are existing facilities. We now make use of the following lemma from Francis and White (1974):
Lemma AI: There exists a solution to the rectilinear multifacility location problem in which the new
facilities are located at the nodes of the grid graph defined by the existing facilities.«»
Letting TI' be the grid graph defined by the points in EF, we see that TI' is a subgraph ofTI(V(C»
and that there exists an optimal solution y* in (0) where each Yq* is located at a node of TI' (and hence a
node ofTI(V(C))). Furthennore, Zo(Y*) S Zo({~}) = Z(R).
Using the points Y*, it is now easy to connect each pair (Yp* ,yq*) where (~~q)e E(R) using
edges of TI' so that the length of the path between yp* and Yq* is equal to d(yp*,Yq*). The constructed
graph, R*, satisfies Z(R*) = Zo(y*).
In conclusion, we have shown that given any feasible solution, R", to F-ISLAND, there exists
another feasible solution, R*, where Z(R*) S Z(R"), and the nodes and edges of R* are in the grid graph
TI(V(C». Thus an optimal solution to F-ISLAND must satisfy the latter property.
This completes the proof of Theorem 1.«»
Proof of Theorem 2
Suppose we have a solution R in which there is at least one station, say u, which is not in V(C).
Let (b1,h2) be the arc of C on which u is located in R. At least one of the nodes bl or b2 must be in R. If
only one of the nodes bl or h2 is in R, then shifting the location of station u to this node in R will result in
a better solution. Now we consider the case when both bi and h2 are in R. If we move the location of
station u to any point on the arc between nodes bl and hl, only the flow component of the total cost of the
current solution will be affected. We now show that keeping aU other station locations fixed, we can move
u to one of the nodes (bl,h2) without increasing the flow component of the total cost
Let ~ be the length of the arc (bl,hl), and for an arbitrary v such that (u,v) e F, let dbl(v) denote
the shonest distance on R from node bl to station v. Similarly we define db2(V). The shonest distance
from station u (located on arc (bl,b2» to station v on R will be either through node bl or node b2 and is
given by du(v) = min (dbl(v) +x, db2(v) +~-x} where x is the distance between nodes bl and u on the arc
(bl,hl). The cost of flows associated with node u is given by Zu =Iv:(u,v)E F Q(u,v)Ciu(v) where Q(u,v) is the
flow cost per unit length of the flow between stations u and v. We now make the location of station u a
variable, thus making x a variable, and constrain it to be on arc (bl,h2). With x as variable, the distance
function du(v) is a concave function of x since it is minimum of two linear functions. Zu also becomes a
concave function of x since it is the sum of positively weighted concave functions. Moreover, there exists
at least one minimum of a concave function at an extreme point. This implies that at least one minimum of
137
Zu as a function of x will occur at an end point, i.e. either at x=O or x=j3. This minimum will certainly be
no more than the value of Zu with the current location of u. Thus station u can be relocated to a node
without increasing the flow cost This relocation does not change the network cost and thus the total cost
after relocation is no more than the total cost before relocation of station u.
Such a process can be repeated sequentially for all those stations not located at nodes of C; finally
obtaining a solution satisfying the Theorem with a solution value no larger than the initial solution. This
completes the proof of Theorem 2.0
Using Optimization Model to Control Workpiece Rigidity and Deformation
in Workholding to Achieve Precision Machining!
Amy J. C. Trappey
Parag Gupta
Department of Industrial and Manufacturing Systems Engineering
Iowa State University
Ames, Iowa SOOII, USA
C. Richard Liu
School of Industrial Engineering
Purdue University
West Lafayette, Indiana 47907, USA
Abstract
1• Background
Several verification approaches have been developed in the past. A brief literature review
of each approach is described as are some issues that were not addressed and will be discussed in
this paper. First, the kinematic modeling approach is developed by Asada and By (1985). In this
model, the characteristics of the workholding, such as the deterministic position, accessibility,
detachability, and complete restriction, are formulated as geometric constraints. The constraints are
structured in terms of the boundary Jacobian matrix and the fixture displacement vector. Asada
and By solely consider the relationship between the workpiece boundary and the fixture elements,
the possible force impact of the machining process is not included in the workholding analysis.
Further more, due to the need of the boundary Jacobian matrix, the workpiece boundary domain
are restricted to differentiable equations.
Screw theory (Ohwovoriol and Roth, 1981) is applied by Chou, Chandru, and Barash
(1987) to model the fixturing equilibrium problem for a prismatic workpiece. A linear
programming model is used to solve the optimal clamping force magnitudes given fixturing and
cutting wrenches. There are some issues that were not emphasized by Chou et al. First, it is
presumed that all of the unit clamping and locating wrenches are under a friction free condition. In
contrast, the locating wrenches only occur dynamically to counter balance the clamping wrenches
with respect to the clamping force magnitudes and directions as well as the friction coefficient.
However, most of previous researches do not consider the frictional effect. Due to the simplified
fixturing force direction definition, only prismatic workpiece fixturing can be verified.
The naive kinematic approach (Shoham, 1985) is applied by Mani and Wilson (1988) to
construct the constraints and to ensure the validity of the fixture configuration. The counter
clockwise and the clockwise rotational triangles are used to model and prevent the rotational
movement. Although this approach is rather easy to implement in a knowledge based expert
system, the application domain is limited to a 2!-D prismatic workpiece. The friction factor
between the workpiece and the fixture is not considered, i.e., a friction free surface is assumed.
Further, the counter acting concept is not modeled in the analysis so the system may be too
restrictive in some situations. The force magnitude is not defined for each force; therefore, the
allowable fixturing force limits are not considered. In the next section the theory of workholding
verification model is presented. The mechanical and geometrical constraints of the workholding
configuration are discussed in detail.
This research treats the analytical model as the combination of several constraints which
cannot be violated by any workholding element. These mechanical and geometrical constraints are
the theoretical bases of the workholding verification.
140
2.1. Equilibrium
The effective force and moment resultants that occur on the workpiece have to be zero
(Malvern, 1976) to ensure the stability of the workpiece. A free body diagram is applied to
represent all possible forces acting on the workpiece from time to time. Either during the
workholding process along (without any effective outside force) or during the machining process
(with outside effective force), it is necessary to maintain the eqUilibrium of the 3-D noncoplanar,
nonconcurrent, and nonparallel force system. The three force equilibrium equations with respect to
X, Y, and Z directions are
(1)
and the three moment equilibrium equations about X, Y, and Z axes are
can be applied to verify the workpiece stability for the most general case. If the equilibrium system
is a parallel force system. e.g.• along the Z axis. only forces in the Z direction and moments about
the X and Y axes need to be considered:
(3)
If the equilibrium system is a 2-D coplanar force system. e.g.• on the Xp-YP plane (the fixturing
plane of the base plate in fixture design). only forces in the X and Y directions and moments about
Z axis need to be considered (Higdon and Stiles. 1968):
(4)
For the completeness of the system. the geometrical constraint for force directions has to be
modeled as a verification condition. Assuming the workholding operation is a grasping (not
magnetic pulling) action. the force vector-(Fx.i • Fy.i • Fz.i ) has to be directed toward the
workpiece. For instance. the workpiece boundary face has a surface normal with direction cosines
Ix. my. and nz. Then the force vector constraint is
(5)
141
This constraint is even applicable to the machining force direction, when the machining process
creates the force impact toward the workpiece.
According to the coefficient of the static friction (J.1.) between the workpiece surface and the
contacting holding element, the magnitude of the frictional force element (IF~) has to be less than
the fractional normal force magnitude, i.e., J.1.1 Fn I (Malvern, 1976). Therefore, if there is no (or
little) friction between the workpiece and the holding element, the fixturing force direction is nearly
perpendicular to the boundary face (this is implicitly assumed by most of the previous research as
shown in the examples of the previous section). If friction exists as it does in most of machining
cases, the fixturing force has to be analyzed as the components of the force, the frictional force and
the normal force. The proportional constraint of the frictional force and the normal force is
formulated regarding the frictional coefficient. The fixturing force (F) acting on a workpiece at any
point can be divided into normal force component (Po) and frictional force component (FC), i.e.,
I Fj2 =I~l + IFR. Fo is nothing but a dot product of fixturing force and unit surface normal vector
(N) or Fn = IF·NI. The ratio of magnitudes of the frictional force (IFf!) and normal force (IFni)
should be less than the coefficient of friction to avoid slippage. This can be expressed
mathematically as
J.1.<
(6)
Further, the system allows for frictional (J.1. >0) as well as frictionless (J.1. =0) conditions.
The weight of a workpiece has to be considered as one of the force elements in the
workholding force system. Vertical supports can be applied to hold the workpiece against the
gravitational attraction of the earth (Hoffman, 1985) and create the counter acting forces to balance
the weight of the workpiece. The vertical supports (usually three supports) have to be located in
such a way that the center of gravity of a workpiece must be inside the supporting polygonal region
defined by the vertical supporting points.
It is essential to know the stress and strain developed in the workpiece due to fixturing and
cutting forces in order to know the deformation in the workpiece. If Fx.j, Fy.i, and Fz.i are the
force components in the x, y, and z directions and Ax, Ay, and Az are the normalized equivalent
142
areas in the x, y, and z directions, by using the spatial occupancy enumeration approach the
workpiece can be discretely represented and, then, the normalized equivalent areas in x, y, and z
directions can be computed as follows.
r2 L L (Xmax.jk - Xmin.jk)
Ar..= 'ltj 'ltk
(Xmax - Xmin) (7)
r2 L L (Ymax.jk - Ymin.jk)
At= 'ltj'ltk
(8)
(Ymax - Ymin)
r2 L L (Zmax.jk - Zrnin.jk)
At= 'ltj'ltk
(Zrnax - Zmin) (9)
where xmax.jk and Xmin.jk are the maximum and minimum x values at cell address jk while Xmax
and Xmin are the overall maximum and minimum x values of the workpiece. The Yand z notations
are interpreted the same way as the x's. Thus, the compression stresses in the x, Y, and z
directions are derived as
Ifv is the Poisson's ratio and E is the elastic modulus, the strains in the x, y, and z directions are
n n n
L O"x.i L Oy.i L Oz.i
~=_i=I +vi=I +v.o.;i=~1_ (11)
E E E
n n
L Oy.i L Oz.i
i-I +v-'----'i-"---'I~_ (12)
E E
(13)
Following the discussion of fixturing criteria above, we can generally represent the
flXturing procedure in a nonlinear optimization model. The fixturing configuration, the allowable
143
maximum holding force limits, and the machining force are given through a user interface. If a
configuration is valid, the nonlinear model computes the unknown fixturing forces that produce
minimum workpiece deformation and ensure workholding rigidity. The model is summarized as
follows.
o The objective function is to minimize the deformation (described in Section 2.5) caused by all
the forces, which is mathematically expressed as
Min. {[Ex (Xmax - "min)f + [fy (Ymax - Ymin)f + [ez (7max - Zmin)f}1/2 (14)
(a) Zero resultants of total forces and moments as discussed in Section 2.1.
(b) A force can be represented in three force elements with respect to the X, Y, and Z axes.
Thus, the sum of the squares of X, Y, and Z force elements is equivalent to the square
of the force magnitude. In order to ensure that there is no yielding due to localized
stress, there should be a limitation on the maximum amount of force acting on a locator
or a clamp. No yielding in turn would ensure the applicability of Coulomb's law of
friction. If Fmax.i is the maximum force which is allowed then the constraint is:
(c) The force directions are constrained toward the workpiece according to the assumption
defined in Section 2.2.
(17)
(d) The frictional force magnitude (IFfjl) is limited by the fractional normal force
magnitude (1.1. IFnjl). (Ff.i and Fn.i are functions of Fx.i, Fy.i. and Fz.iJ
1 0 0 0
0 0 0
0 0 0 0 1
C 6X3 =
0 0 -Zl -Zn Yn
Zl Zn 0 0 -X n
-y 1 -Yn Xl Xn 0
Equation (15) represents three force equilibrium equations and three moment equilibrium
equations. In the next section, a numerical example is discussed to demonstrate the use of this
model for a fixture design verification purpose.
4• Numerical Example
The quadratic verification model described in the previous section is coded by using a
nonlinear programming package GINO. A numerical example (shown in Figure 1) is given for a
workpiece configured with three vertical supports, three horizontal locators, one vertical clamp,
and one horizontal clamp for fixturing. The fixture configuration data are listed in Table 1.
The friction coefficient for the contact of the workpiece and the fixture element is 1/3
(Higdon and Stiles, 1968). The maximum allowable locating force which a locator can take is
conservatively set to be 500 pounds (lbs.), and the maximum allowable clamping force which a
clamp can take is set to be 350 lbs. (Colbert, 1985). The workpiece weighs 30 lbs. The center of
weight of the workpiece is at the point (3.5, 3.5, 2.5). The maximum cutting force is at (4, 7, 5),
and the maximum cutting force elements are (-200 lbs., -200 lbs., -200 lbs.) with respect to the X,
Y, and Z directions.
The model is employed to check the feasibility of the fixture design. The complete results
are shown in Table 2. These forces ensure the rigidity of the workpiece and in addition under the
given constraints produce a minimum deformation (as defined by the objective function) of 22
micro-inches.
The complete resultant of the force system acting on the workpiece is zero. The results
demonstrate that the workpiece is completely restricted, the fixture elements are assigned to the
right locations, and the allowable force magnitudes and directions are verifiably counter-acted.
145
Cutter
5. Conclusion
This research establishes a verification procedure that can be applied with the computer-
aided workholding interface to check the correctness of the workholding configuration in places
such as fixture design or robot hand grasping. Moreover, it can minimize deformation to meet low
tolerance band-width required for precision parts. The model can be further embedded into the
automatic fixture design system (Trappey and Liu, 1990) and used as an analytical tool to
determine the proper fixture positions. The direction of future research is to develop a complete
automatic workholding design system utilizing heuristic decision rules as well as the mechanical
and geometrical knowledge developed in this paper.
6. References
Asada, H., and By, A.B., 1985, "Kinematics of workpart fixturing," IEEE Con! on Robotics and
Automation, pp. 337-345.
Chou, Y.C., Chandru, V., and Barash, M.M., 1987, "A mathematical approach to automatic
design of fixtures: Analysis and synthesis," Proceedings, ASME Winter Annual Meeting, Boston,
Mass., pp. 11-27.
Colbert, J.L., (Major Prof: DeVries, W.), 1985, "Workholding technology in flexible
manufacturing and the design of a modular fixturing system," M .S. Thesis, Rensselaer
Polytechnic Institute, Troy, NY.
Higdon, A., and Stiles, W.B., 1968, Engineering Mechanics, 3rd Edition, Prentice-Hall, Inc.,
Englewood Cliffs, New Jersey.
Hoffman, E.G., 1985, Jig and Fixture Design, Second Edition, Delmar Publishers Inc., Albany,
NY.
147
Malvern, L.E., 1976, Engineering Mechanics, Volume I: Statics, Prentice-Hall, Inc., Englewood
Cliffs, New Jersey.
Mani, M. , and Wilson, W.R.D., 1988, "Automated design of workholding fixtures using
kinematic constraint synthesis," Proceedings, 19th North American Mfg. Research Conference,
SME, University of Illinois, Urbana, Illinois, pp. 437-444.
Ohwovoriol, M.S., and Roth, B., 1981, "An extension of screw theory," Journal of Mechanical
Design, Vol. 103, pp. 725-735.
Shoham, Y., 1985, "Naive kinematics," Proceedings, International Joint Conference on Artificial
Intelligence, pp. 436-442.
Trappey, J.C., and Liu, C.R., 1990, "Automatic generation of configuration for fixturing an
arbitrary workpiece using projective spatial occupancy enumeration approach," Proceedings,
Symposium on Advances in Integrated Product Design & Manufacturing, ASME Winter Annual
Meeting, Dallas, TX, November 25-30, pp. 191-202.
7. Appendix
by
Abstract
Machine vision has the potential to significantly impact both quality and
productivity in computer integrated manufacturing, due to its versatili-
ty, flexibility and relative speed. Unfortunately, algorithmic development
has not kept pace with advances in vision hardware technology, particu-
larly in the areas of analysis and decision making. The specific subject
of this investigation is the development of machine vision algorithms for
the dimensional checking, pose estimation, and overall shape verification
for general polygonal objects. Algorithmically, the image boundary da-
ta is partitioned into n segments, and then the best-fitting polygon is
found using a non-ordinary least-squares technique. The algorithm is
well-suited for on-line implementation in an automated environment due
to its flexibility and demonstrated speed.
1. Introduction
inspectors are employed to check each others work (Schaffer 1984) . Ma-
chine vision is often preferable to comparable automated contact systems
(e.g., a coordinate measuring machine), due to factors such as its greater
relative speed and inherent nondestructive nature. In addition, an in-
tegrated machine vision system not only has the capability to identify
a part and subsequently qualify (or classify) it, but can provide timely
process feedback as well.
Machine vision systems are well-suited for data acquisition from prod-
ucts with complex and diverse geometric features, as they are less re-
stricted (than are contact measuring systems) by the configuration of
the part. However, the analysis of these complicated shapes and subse-
quent decision processes are not straightforward. There are two general
methodologies for shape analysis and decision making: referential and
non-referential (design-rule) methods. Essentially, referential methods
"match" the features of an item's captured image with that of an ideal
stored image; a common example is the well-known template matching
method. Non-referential methods, on the other hand, employ a paramet-
ric approach; that is, certain parameters are estimated from the image
and compared with ideal values. These parameters are selected such that
they completely describe the geometric properties (of the ideal shape)
and their spatial relationships.
utilizes all the extracted edge points for the shape matching, instead of
using only the vertex points; that is, it preserves all the available infor-
mation from the input image. Hence, the edge-based shape model is to
describe boundary contours by a set of cyclic ordered edges, expressing
each edge by a set of correlated parameters. Using the edge-based model,
the subsequent contour fitting procedure has two significant advantages:
1) it is more precise and yields a global optimal solution with respect to
the available contour pixels, and 2) it can provide more functions for the
image analysis, such as dimensional checking, pose determination, and
detection of the edge flaws.
DH(P, Q) = DH(Q, P)
= max{ d(p, Q), d(q, P) I pEP, and q E Q}, (1)
Dc(P,Q) = Dc(Q,P)
L d2 (p,Q) + L d2 (q,P), (2)
pEV(P) qEV(Q)
where V(P) (resp. V(Q)) denotes the set of vertices of polygon P (resp.
Q). Koch and Kashyap (1989) used the mean of squares of the Euclidean
distances from each vertex of a polygon (fragments) to the corresponding
vertex of the other polygon (fragments):
DK(P,Q) = DK(Q,P)
= !:.
n
t
i=l
{(Xi(P) - Xi(Q))2 + (Yi(P) - Yi(Q))2}, (3)
154
where n is the total number of vertices of P (resp. Q), and (Xi(P), Yi(P))
are the coordinates of the ith vertex of P (resp. Q). Many other distance
functions have been developed for the analysis of polygonal shapes, such
as the L2 distance between the turning functions of the two polygons
(Arkin et al. 1991), the sum of squares of the distances between each
pair of corresponding points along the polygonal arcs (Kamgar-parsi et
al. 1991), etc.
2. Segmentation
(4)
in which
(6)
(7)
and
Sk n Sl = 0, \;f (k, I), k =1= l. (8)
In Eqs. (4-5), m is the total number of boundary data points, and mi is
the number of points in Si-the subset of boundary data approximated
by the ith segment. Eqs. (6-7) indicate that the union of all the subsets
of data is equal to the set of all boundary data, and Eq. (8) shows that
the subsets are mutually exclusive.
Let E z (a, b) denote the integral square error of a segment with end-points
a and b, and let Eoo( a, b) represent the maximum deviation between the
data and the segment which connects the two end-points of the data set.
Step 1. The initial segments are obtained by equally dividing the data
set S into n subsets Si, i = 1,2"", n. Let the first point of
Si, denoted as Ui, i = 1,2"", n, represent the break point of
segment i.
Step 2. For i = 1,2"", n, compute EZ(Ui, Ui+l - 1). Choose the seg-
ment with the maximum Ez among all segments; this segment
will be designated with a "k". Let v represent the point having
maximum deviation error Eoo(Uk,Uk+l -1).
3. Shape Analysis
(10)
In the first step, since the first vertex of the polygon is set to the origin,
and the orientation angle is zero, the coordinates of the remaining vertices
of the polygon, (Xi, Yi), i = 2,3"", n, are expressed as a function of
II and (Ki, ai), for i = 1,2"", n, as summarized in Lemma 1. The
prehIninary model is then derived in Lemma 2 based on the equations of
the vertices. In the second step, the shape model described in terms of
the underlying parameters is obtained and summarized in Theorem 1.
Lemma 1 (Ventura and Chen 1992). Given that (XllYl) = (0,0) and
81 = 0, the coordinates of each vertex of the polygon, (Xi, Yi), 2 :s: i :s: n,
can be obtained as follows:
i-I
xi=IlLKjCOSPj, i=2,3,···,n, (12)
j=l
and
i-I
Yi = II LKj sinpj, i = 2,3, ··· ,n, (13)
j=l
where
i
Pi =L f3j + 7r /2, i = 2,3, .. . , n, (14)
j=2
and
PI = 7r/2, (15)
in which Pi is the inclined angle of Li with respect to the X-axis.
and
Since Pj is a function of i3i, and i3i is a function of ai, the derived vertices
(Xi, Yi), i = 2,3" . " n, are functions of 11 and (Ki' ai), i = 1,2", " n. 0
The next step of the modelling process is to derive the normal distance
and normal angle for each edge using the information about the vertices.
Lemma 2 (Ventura and Chen 1992). Given (Xi, Yi), i = 1,2·· " n, the
preliminary model of the polygon can be represented by the following
system of equations:
where
2 ",i-I. . ",i-l
I -1 cos PiL.;j=I K jsmpj - smpicosPiL.;j=IKjCOSPj (17)
0i = tan . 2 ",i-l . ",i-I.'
sm Pi L.;j=l Kj COSPj - smpi COSPi L.;j=1 Kj smpj
d~ = Ci1l, (18)
and
i-I i-I
Ci = [( sin 2Pi L Kj COSPj - sin Pi cos Pi L Kj sinpj)2
j=l j=l
1/2
+ ( cos 2Pi L L
i-I i-I
Kj sin Pj - sin Pi cos Pi Kj cos pj) 2] .(19)
j=1 j=1
Proof. Given the two end points of a segment L i , (Xi, Yi) and
(Xi+ 1, Yi+ I), the intersection between the segment and its normal line
160
and
I I (Yi+l - Yi)
x · = _yo
t t (Xi+l - Xi)
i-I i-I
= -II ( cos 2 Pi L "'j sin Pj - sin Pi cos Pi L "'j cos pj) tan Pi,
j=1 j=1
i-I i-I
= II (sin 2Pi L "'j COSPj - sin Pi cos Pi L "'j sinpj), i = 1,2,···, n.
j=1 j=l
The normal distances and normal angles can be derived based on (x~, yi).
o
It should be noted that d~ is a function of only the scale variable II, and 8~
is a constant. Therefore, the preliminary model has only one parameter
h; that is:
Li : X cos8~ +Y sin8~ = d~
=Ci11, i=1,2,···,n. (20)
where p:-T, }-T) are the coordinates of the edge points after the object is
rotated by an angle ()l counterclockwise, and translated by a distance of
(xl , yd·
Proof. The translation and rotation of the coordinates of the preliminary
Model (20) can be specified below:
I
Xi ,j = Xi ,j cos ( ) I ' ()I
i + Yi,j sm i, V (i,j), (23)
and
I ()I . ()I
Yij = Yi ,j cos i - Xi ,j sm i, V (i ,j), (24)
where ()i is computed from Eq. (17). Therefore, Model (21) is simplified
to
where (XI, yl) represent the edge points after the rotation.
where
Ci,j = I(x~,j - Xl) cos 01 + (Y:,j - yd sin 01 - Ci id. (27)
The error Ci,j is the normal distance between the data point (x~,j' yi,j)
and the fitted straight line L i . Estimates for the four parameters of the
regression model are obtained by minimizing the sum of squares of the
errors:
The Newton method (Mathews 1987) has 'been employed to solve the
proposed least squares Problem (28). This particular method was chosen
because it generally converges faster (quadratically) than alternative pro-
cedures, such as the steepest ascent, conjugate gradient, or quasi-Newton
methods. The Newton method includes the initialization step and the
iterative step. The initialization step is to compute a good starting solu-
tion which is crucial to the subsequent computational effort. The starting
solution is found in the following manner: 1) the initial scale variable l~
is estimated by computing the distance between the two end points of
Sl1 2) the initial position (x~, y~) is set to the intersection of Li and L~,
which are the independent least squares lines for the points in subsets Sl
and Sn, respectively, and 3) the initial orientation angle (e~) is estimated
by computing the normal angle of Li. Each iterative step incorporates a
second-order Taylor polynomial and, as such, requires the computation
of both the gradient ([G]) and the Hessian matrix ([H]) at the current
iterate. The descent direction for the quadratic approximation is found
by premultiplying the gradient (i.e., the steepest descent direction) with
163
the inverse of the Hessian matrix. Thus, the estimators are updated in
the following manner:
(29)
where
(30)
The algorithm is terminated when the relative error norm of the gradient
satisfies a predetermined stopping criterion; that is, when
(31)
4. An Example
A profile of a spindle was used to test the proposed algorithm. The edge
points were generated equally spaced along a defect-free polygonal con-
tour. Then, the points were perturbed by adding a normally distributed
noise along the normal direction of the object contour. The coordinates
of each edge point, (Xi,j,Yi,j), were updated as follows:
(32)
and
(33)
where f(€) is the magnitude function of the error, and ()i is the normal
angle along the edge. After adding the noise, all the sampled points were
rounded into the nearest integer so that the data resembles the error due
to the spatial resolution of the image plane. The magnitude function of
the error is
f(€) = aN(O, 1), (34)
where N(O, 1) is the standardized normally distributed random variable
with mean zero and variance one, and a is the variance (magnitude factor)
of the noise. The set of generated data is shown in Figure l(a), where
a = 3, n = 12 and m = 203.
164
5. Conclusions
A new method for the analysis of general polygonal objects has been pro-
posed. This procedure includes data segmentation and shape analysis.
The shape analysis consists of two steps: shape modelling and matching
algorithm. The shape modelling step is to describe a defect-free reference
shape in terms of a set of edge primitives. The primitives are represented
in a parametric form, as opposed to the structural description. Based on
the shape model, the matching algorithm uses the least-squares criterion
to find the best fitting between a set of scene data and the set of primi-
tives. The developed algorithm is well suited for on-line implementation
in an automated environment due to its speed and accuracy.
References
500 500
400 400
300 300
200 200
100 100
O ~,--~~--------~~ O+-~~~~~~~~
o 100 200 300 400 500 o 100 200 300 400 500
(a) (b)
o 5 10 15
Iteration
Janez Dekleva
Matja~ Gaberc
Ljubljana University
Faculty of Mechanical Engineering
Murnikova 2, 61000 Ljubljana
Slovenia
1. Introduction
On the other hand, the operat i on of the FMS symbol i zes the
concurrent flow of parts within the FMS, which all compete for
the same set of final resources. Out of this concurrent competi-
tion a classical deadlock situation may occur .
in Figure 1 .
. ...
.
............................. .............................. ,
b) WS TV NC TV WS~
"
VU
Net
NC2
tIC3
IIC4
UC
1\1
8 8.5 t 1.5
k-th processing
circuit
<k+l)-th processing
circuit
These rules take into account the following facts . The movement
of individual parts within the system, 'i.e. among resources, is
guided by corresponding routings. Only minor changes may be made
(to these movements) when non-ava i 1ab i 1 i ty of some resou rces
requires detours to the waiting stations. The movement within the
177
4. Case Study
IV. LEVEL
I. LEVEL
B
VAR£HOUS£
FMS
needed for the movement of parts, pallets and jigs from / ~o ~r.e
RI R2 R3
M4 M6 148 "1\ "12 Ml3 H15
t t
MHS i
C3 Ct2 3 C7 4
M5 H7 M9 HIO HI4 HI6
TV ::::::~::::::
........
C2 C4 C6
The ratio of the average through-put time and the average net
processing time equals 1.65. In order to interpret the calculated
number, the average through-put time has to be explained. This
is obtained by adding the appropriate waiting times to the net
processing times of individual parts. (Added waiting times are
the lowest estimates and they can not be omitted.) By doing this
we obtained an estimated value of 1.62 which is close enough to
the above calculated ratio of 1.65.
5. Conclusions
6. References
[1] Oek 1 eva J.: Non Oe 1 ay-Rev is i ted, Modern Product jon Concepts 1
Theory and Applications, FB.ndel G., Zapfel G. (Eds.), pp.
601-616, Springer-Verlag, Berlin, 1991.
Sanjay Joshi
&
Jeffrey S. Smith
Richard A. Wysk
Abstract
Explicit formal models, theorems and abstractions form a large segment of the science base
in many fields. These models are considered as necessary precursors to the development of pragmatic
knowledge and tools, and provide the basic understanding of generic issues related to various classes
of problems. The need for a solid science base in manufacturing has been articulated by several
authors . One area of manufacturing that could benefit significantly from the development of formal
models is the control of flexible manufacturing cells. Applications of formal models and abstractions
could further the science and understanding of the control of manufacturing cells. The development
of formal models often leads to the discovery of ambiguities, omissions, and contradictions, the formal
model may lead to semi-automated (or even automated) system development methods, the formal
model can be verified for correctness by mathematical methods, a formally verified subsystem can be
incorporated into a large system with greater confidence that it behaves as specified, and different
designs can be compared. Two approaches to the development of formal models namely the use of
context free grammars for control and a new set of formal models called Message-based Part State
Graphs (MPSG) will be presented. It is shown that, through the use of these models, a significant
amount of the shop floor control software can be automatically generated based on a high level
description of the system.
185
Introduction
Explicit formal models, theorems and abstractions form a large segment of the science base
in many fields. These models are considered as necessary precursors to the development of pragmatic
knowledge and tools, and provide the basic understanding of generic issues related to various classes
of problems. The need for a solid science base in manufacturing has been articulated by several
authors [Suh 1984, Sohlenius 1984]. One area of manufacturing that could benefit significantly from
the development of formal models is the control of flexible manufacturing cells. A formal model of
a system is an unambiguous description of the system presented in an implementation-independent
language with precisely defined syntax and semantics. Applications of formal models and
abstractions could further the science and understanding of the control of manufacturing cells. The
following are other benefits of a formal framework [Sharbach 1984, Ostroff, 1990]:
provides the vehicles for unambiguous communication of design decisions, and is supported
by the expressive power of good formal languages which improve conciseness.
the formal model may lead to semi-automated (or even automated) tools for system
development, simulation, verification, and implementations of specifications, and testing of
implementations.
a formally verified subsystem can be incorporated into a large system with greater
confidence that it behaves as specified, and
Formal methods and grammars have been used recently in the development of various aspects
of manufacturing system theory. Wu, et al (1986) apply grammars to the cell formation problem,
using a syntactic pattern recognition approach. Williams and Upton [1989] examine the use of
stochastic grammars for the measurement of flexibility. Graham and Saridis [1982] describe the
186
application of formal grammars to the control of a small robot, incorporating feedback and learning
into their scheme. More importantly their approach recognizes the usefulness of formal languages in
modeling the hierarchical nature of complex control systems. The use of syntactic models in
manufacturing processing and control is also presented by Upton and Barash [1988]. Tam [1989]
presents an approach using linguistic models to develop models for flow line production. The model
is used to check production feasibility. Petri nets have also been applied to the design, testing and
development of manufacturing control systems [Narahari and Viswanadham, 1985], Merabet [1985],
Kasturia et al. [1988], Xou et. al [1989]. Bruno and Marchetto [1987] have developed extended petri
nets called PROT net (PROcess Translatable net) where the basic structure of the processes and
synchronization can be generated automatically from the net, via translation into Ada program
structures which will provide a rapid prototype of the system.
Several references on the use of formal models for automatic generation of software and
compilers can be found in the computer literature [Aho et aI1985]. The use of formal models of the
factory floor as a precursor for software generation has been discussed by Naylor and Maletz [1986]
and Naylor and Volz [1987]. Unfortunately, methods for systematically extending their formal models
into running software have not yet evolved. One problem with their approach is that scheduling forms
a large component of control, making the task more difficult.
Chaar [1990] extends the model of Naylor and Volz by developing a methodology for
implementing real-time control software for FMS. This methodology is based on a component-
oriented rule-based specification language. Chaar uses the modeling formalism of Naylor and Volz
to model the softwarelhardware components of the manufacturing system and the part process plans
as a set of first-order logic-based rules. These rules are then coded in the specification language which
can be converted to executable code. Although some possibilities for automating this conversion are
mentioned, none are described. Instead, the conversion is done manually by the software engineer.
However, Chaar does present an interesting method for generating a cyclic schedule for the
manufacturing system. An example implementation for a prismatic machining cell is presented in
[Hadj-Alouane, 1990]. A detailed description of the implementation of a material handling system
as a softwarelhardware component is given in [Hadj-Alouane, 1988].
Biemans and Blonk [1987] present a formal specification technique based on LOTOS (Language
for Temporal Ordering of Specifications) for specifying CIM systems such as transport systems and
work cells. Other authors [Maimon and Fisher, 1988] have developed rapid software prototyping
systems that provide only for the structural specifications of cell control software, still demanding
187
Brooks et al. (1990] examine the use of fonnal models for implementing and verifying media
access control (MAC) protocols. They support the use of fonnal description languages which can be
automatically or semi-automatically converted into running code. Their specification language, LIFP
(language for implementing fast protocols), is based on the state machine model. Ostroff (1990]
presents an overview of the use of temporal logic for control of real-time discrete event systems.
Architecture
A shop floor control architecture serves as a blueprint for the development and implementation
of a shop floor control system. Therefore, a control architecture should completely and
unambiguously describe the structure of a system as well as the relationships between the system
inputs and the system outputs. Although there have been several shop floor control architectures
described in the literature, these are not well suited for use as a basis for software development. This
is because these architectures (1) are ambiguous, and (2) lack sufficient detail. In other words, these
architectures are not defined fonnally, but rather, they are described in prose.
We use a three level hierarchical control architecture in which each level has been fonnally
defined (Smith et aI., 1992]. This architecture is an extension of the "sealeable" architecture presented
by Joshi et al. (1990]. A similar architecture is described by Jones and Saleh (1990]. The three levels
in this architecture are the equipment level, the workstation level, and the shop level (see Figure 1).
The following paragraphs provide an introduction to the architecture.
The equipment level is the lowest level in the hierarchy. It represents a logical view of a
machine (complete with its machine level controller) and an equipment level controller. An equipment
level controller has responsibility for the piece of machinery under its control. To this end it makes
decisions regarding local part sequencing, keeps track of part locations, and is responsible for
monitoring the operation of the device. Shop floor equipment has been partitioned into four classes.
Material processors (MP) autonomously process parts in some way according to a set of processing
instructions. NC machines, inspection devices, and assembly devices are examples of material
processors. Material handlers (MH) load and unload parts from other equipment. Industrial robots
and pick and place machines are examples of material handlers. Material transporters (MT) transport
parts from one location to another within the shop. The distinction between MH equipment and MT
equipment is that MH equipment performs intra-workstation material movement and MT equipment
performs inter-workstation material movement. Examples of material transport devices include AGVs,
conveyors, and fork trucks. Automated storage (AS) devices store parts, raw materials, tools, and
fixtures. Automated storage and retrieval systems (AS/RS) are examples of automated storage
equipment.
The workstation level is the second level in the control hierarchy. A workstation is made up of
one or more pieces of equipment under the control of a workstation level controller. Workstations
are defined using the physical layout of the equipment and are generally configured so that multiple
material processing devices can share the services of a single material handling device. The
workstation level has been partitioned into processing workstations, transport workstations, and storage
workstations. A processing workstation contains one or more material processors along with
(optionally) a set of material handlers and buffer storage units. A storage workstation contains one
or more automated storage devices along with (optionally) a set of material handlers. A transport
workstation contains one or more material transport devices along with (optionally) a set of material
handlers. Additionally, the Resource Manager is a special workstation level entity which provides
centralized access to shared resources.
The shop level is the highest level in the control hierarchy. The shop controller is responsible
for controlling the activities of the workstations and the Resource Manager. The shop level is also
responsible for interacting with the user (e.g. accepting orders and order/part status requests).
The functionality of the controllers at each level has been partitioned into planning, scheduling,
and execution activities. Planning determines which controller tasks will be performed. Scheduling
sets start and end times for the planned tasks. Execution is responsible for performing the scheduled
189
Feedback
Feedback
Feedback
tasks (i.e., interacting with the subordinate systems). Table 1 shows examples of the planning,
scheduling, and execution tasks for the equipment, workstation, and shop levels. During system
operation, scheduling depends on planning, execution depends on scheduling, and the physical system
depends on execution. (see Figure 2). During system development, however, the dependencies are
reversed (see Figure 2). Execution depends on the physical system (or a model of the physical
system) and planning and scheduling depend on execution. Additionally, planning and scheduling also
depend on the production requirements. In the target environment, the production requirements change
much more frequently than the physical system. Consequently, the planning and scheduling modules
of a controller will require modification much more frequently than the execution module.
Furthermore, since the execution module is dependent only on the physical system, it is conjectured
that the execution software can be automatically generated based on a formal model of the physical
system.
Fonnal Models
We present two formal models of the execution portion of shop floor controllers. These fonnal
models are used as bases for the automatic generation of the shop floor controllers (the execution
module of the shop floor controllers). The first approach uses context free grammars to model the
control problems for each controller. This approach is based on a system state space model. The
second approach uses a new model called a message-based part state graph (MPSG). This approach
is based on a part state model rather than a system state model.
190
!
illustrated in Figure 3. The automatic code
generation process begins with the user creating an
informal definition of the system specifications, Parser
Generation
describing the basic inputs, outputs, and
~
relationships, for the system processes in
application specific terms. This is then converted
Automatic
into a formal system specification. The formal Code Generation
Table 1. Planning, scheduling, and execution activities for each level in the SFCS control
architecture.
Wkstn. Determining the part Determining the start/finish Interacting with the
routes through the times for each part on each equipment level
workstation (e.g. processing machine in the controllers to assign and
selection of processing workstation. remove parts and to
equipment). Includes synchronize the activities
replanning in response of the devices (e.g. as
to machine breakdowns. required when using a
robot to load a part on a
machine tool).
Shop Determining part routes Determining the start/finish Interacting with the
through the shop. times for part batches at workstation controllers
Splitting part orders into each workstation. and the Resource Manager
batches to match to deliver/pick-up parts.
material transport and
workstation capacity
constraints.
There are three distinct processing protocols associated with the dialogue in Table 2. The first
is a workstation processing protocol, which includes events associated with the workstation controller
(events 1,3,4,6,7,9, 10). The second is the machine tool processing protocol which includes all
events associated with the machine tool equipment controller (events 4, 5, 6, 10). The last protocol
192
is the robot processing protocol which includes all events associated with the robot (events 1, 2, 3,
7, 8, 9). The individual controllers are responsible for implementing the associated processing
protocols. A new formal model of the processing protocol called a message-based part state graph
(MPSG) has been developed. The MPSG model can be used to automatically generate the execution
portion of a controller based on the processing protocol (Smith, 1992).
An MPSG describes the behavior of a controller from the parts' point of view. An MPSG is a
deterministic finite automaton which has been modified in two ways. First, the MPSG accepts input
from two separate streams. The first stream accepts incoming messages from other controllers. The
second stream is the list of tasks specified by the controller's scheduler. Second, the transition
function has been modified so that the controller tasks can be performed during state transitions. This
is accomplished by introducing a set of controller actions and a corresponding controller action
transition function.
physical preconditions for controller actions, partitioned so that for each a E A there is a
corresponding Pu E P, where Pu is a boolean valued function which returns either true or false. The
individual Pu are evaluated using the physical configuration and the system status. b: Q x l: -.
Q is a state transition function (next state function). y: Q x (l:o U ~r) -. A is a controller action
transition function.
In a standard DFA the input symbols are read from a single stream (e.g. a source code file). In
a MPSG, however, the input symbols are read from two different streams: the controller
communications module, and the task list. The communications module receives incoming messages
from other controllers in the system. The task list is the communications medium between the
execution module and the planning and scheduling modules within the controller. As described above,
the input alphabet (l:) consists of the partitioned set of controller events. ~J is the set of valid input
messages which are received from other controllers. For example, in the machine tool' controller, the
grasp part event specified in Table 4.1 is an input message received from the workstation controller.
l:o is the set of valid output messages which are sent to other controllers in the shop. Output
messages are specified by the scheduler placing an output message task on the task list. l:r is the set
of controller tasks. Controller tasks are executable functions which implement the controller actions
or perform database updates. Controller tasks are specified by the scheduler placing the tasks on the
task list.
The set of controller actions A, is a set of executable functions which perform the controller
actions. For example, the a E A which corresponds to the grasp part task as used above, is an
executable function which closes the machine tool 's part fixture. The implementation of these
functions will be device specific. The controller task transition function y, maps state-task pairs (Q
x (l:O U l:r)) onto A. The interpretation of the controller action transition function,
is that the MPSG M, in state q and scanning the event b, executes function a. Upon successful
completion of a, M undergoes a state transition specified by b(q, b).
The feasibility of many controller tasks depends on the current system status. For example,
putting a part on a fixture is only feasible if there is no other part currently on the fixture (assuming
a single part fixture) . The physical preconditions are used to verify the system status prior to
executing controller tasks. P is a set of physical preconditions which is partitioned according to the
194
set A such that, associated with each controller action a there is a physical precondition, Pa which
is a boolean valued function that must evaluate to true in order for the corresponding controller action
a to be called. For example, if the controller task is to start (cycle _start) the machine tool, the
following physical precondition must hold:
If this conditions does not evaluate to true, a cycle start can not be sent to the machine tool, and the
specified task is not consumed by M and no state change occurs. Furthermore, the controller action
must also successfully execute in order for the task to be removed and a state change (identified by
b) to occur. Therefore, given a MPSG M is state q, scanning task b, the following pseudocode
represents the controller operation.
Verifying the successful execution of the controller task facilitates error recovery when an unexpected
event occurs. For example, if a robot drops a part during a move task, the task will not successfully
complete (assuming that the robot can detect that the part has been dropped). The last valid state will
correspond to the most recently completed action or message. Optionally, M could transition to an
error state based on the message received from the robot.
Figure 4 shows the transition diagram and the corresponding formal representation of an example
MPSG. Note that the set P of physical preconditions is not included in this example. The events in
this example have been prepended with 'i_' for incoming messages, '0_' for outgoing messages, and
't_' for controller tasks. This example gives a simplified view of processing a part on a MP class
machine. The part is loaded by receiving a load message from the workstation controller and by
subsequently executing a load task. Once loaded, the machine is started by executing a start task.
195
i load i error
0 i unload
3 5 6
t start i finish o_done
qo = °
F = {4, 8}
l: = (l:( U l:o U l:T ) where:
l:( = {Uoad, i_finish, i_error, i_unload}
l:o = {o_done}
l:T = {tJoad, t_start, t_release}
/) : Qx L -- Q y : Q x(Lo U L T ) -- A
At some time in the future, the machine will either report that it has finished processing (finish
message) or will report that an error has occurred (error message). If the machine successfully
finishes processing, the controller sends a done message to the workstation signifying that processing
has been completed on the part. Finally, the part is unloaded by receiving an unload message and
subsequently executing an unload task.
In order to generate an equipment controller based on this MPSG, a mechanism to send and
receive messages and the set of controller task functions (A) would be required. Furthermore, the set
of physical preconditions (P) would have to be defined and the corresponding boolean functions
provided. MPSG provide enormous flexibility in controller development and modification. For
example, to add an elementary error recovery function to the controller, a new output message
transition could be added to the MPSG. This transition would send a processing error message to the
workstation and transition to state 6. To make this modification, the following line would be added
to the transition table in Figure 4:
Additionally, state 6 would replace state 4 in F, the executable function errorO would be added to A,
°
and the output message _error would be added to kO' This modification would allow the part to
be removed from the machine tool if an error was detected (e.g. the tool breaks, or the part is
damaged).
Figure 5 shows how the MPSG Builder is used to automatically generate the C++ code for a
shop floor controller. The input file (input.m)
is a textual description of the MPSG. The
output from the MPSG builder includes the
implementation of the transition functions
(MPSG.cpp), the header file (MPSG.h), and
the task action file (MPSG.a). The task action
file contains the function prototypes for the
controller actions and the physical
precondition functions. These functions are
implementation specific and must be
developed for each individual MPSG.
A set of MPSG for generic controllers has also been developed. This set includes MPSG for
generic MP, MH, MT, and AS class equipment, processing, storage, and transport workstation, and
shop controllers (Smith, 1992). These MPSG include the implementation of the majority of the
controller tasks and the physical precondition functions. If the generic MPSG can be used, the user
only needs to supply the device specific controller action functions (e.g. the device specific routines
to close a robot gripper, move the arm, etc. or the routines to download an NC file to an NC machine
tool). Furthermore, the generic MPSG can by modified by adding or removing arcs, and the MPSG
Builder can be used to regenerate the transition functions.
A shop floor control system for a full -scale flexible manufacturing system at the Pennsylvania
State University's Computer Integrated Manufacturing Laboratory has been implemented using both
of the techniques described in this paper. This FMS includes three processing workstations, a storage
workstation, and a transport workstation (see Figure 6). The primary distinction between the CFG
approach and the MPSG approach is that, in the CFG approach, the system states are modeled and,
in the MPSG approach, the part states are modeled. Modeling part states rather than system states
Storage Workstation
Rotational Machining
Workstation
Material
Transport
Cart Horizon V
Vertical Mill
~
IBM 7535 D Part Inverter
Material
Transport
Prismatic Machining
Cart
U
Fanuc Ml·L
Daewoo
Puma
Turning
Center
Workstation Buffer
Material
AssemblY
~
Transport
Cart Q Workstation
Material
Transport
Cart
IBM 7545
Cartrac Unit Conveyor
Transport System
appears to eliminate the state space explosion problems associated with modeling system states [Smith,
1992]. Since both the CFG approach and the MPSG approach deal with the development of only the
execution portion of the shop floor controllers, work dealing with the development of planning and
scheduling systems which work with the execution systems is currently under way.
Acknowledgements
This work was partially supported through National Science Foundation (NSF) awards DDM-
9009270 and DDM-9158042, both awarded to Dr. Sanjay Joshi.
References
Biemans, F., and Blonk, P., "On the Formal Specification and Verification of CIM Architectures Using
LOTOS," Computers in Industry 7, pp. 491-504, 1986.
Brooks, C. A., "A Method for Specifying, Implementing, and Verifying Media Access Protocols,"
IEEE Control Systems Magazine, Vol. 10, No.4, pp. 87-94, June 1990.
Bruno, G. and Marchetto, "Process Translatable Petri Nets for the Rapid Prototyping of Control
Systems," IEEE Transactions on Software Engineering, Vol. SE-12, No.2, pp. 346-357, 1987.
Chaar,1. K., A Methodology for Developing Real-Time Control Software for Efficient and Dependable
Manufacturing Systems, Ph.D. Thesis, University of Michigan, 1990.
Graham, 1.H., and Saridis, G.N., "Linguistic Decision Structures for Hierarchical Systems," IEEE
Transactions on Systems, Man and Cybernetics, SMC-12, pp. 325-333, 1982.
Hadj-AIouane, N. B., Chaar, 1., Naylor, A., and Volz, R. A., Material Handling Systems as Software
Components: An Implementation, Technical Paper, Center for Research on Integrated Manufacturing,
The University of Michigan, May 1988.
Hadj-Alouane, N. B., Chaar, J .• and Naylor, A., The Design and Implementation of the Control
Software of the Prismatic Machining Cell, Technical Paper. Center for Research on Integrated
Manufacturing, The University of Michigan, March 1990.
Jones, A. and Saleh, A., "A MuIti-level/MuIti-layer Architecture for Intelligent Shopfloor Control,"
International Journal of Computer Integrated Manufacturing, Vol. 3, No.1, 1992, pp. 60-70.
Joshi, S. B, Mettala, E. G., and Wysk, R. A., CIMGEN - A Computer Aided Software Engineering
Tool for Development of FMS Control Software, lIE Transactions, Vol 24, No. 3, 1992, pp. 84-97.
Joshi, S. B., Wysk. R. A., and Jones, A., A Scaleable Architecture for CIM Shop Floor Control,
Proceedings of CIMCON '90, A. Jones Ed .• National Institute of Standards and Technology, May
1990, pp. 21-33.
Kasturia. E .• DiCesare, P. and Desrochers. A.. "Real Time Control of Multilevel Manufacturing
Systems Using Colored Petri Nets," Proceedings of IEEE International Conference on Robotics and
Automation, pp. 1114-1119, 1988.
199
Maimon, O.Z., and Fisher, E.L., "An Object-based Representation method for a Manufacturing Cell
Controller," Arti/iciallntelligence in Engineering, Vol. 3,No. I, 1988.
Merabet, A.A., "Synchronization of Operations in a Flexible Manufacturing Cell: The Petri Net
Approach," Journal of Manufacturing Systems, Vol. 5, No.3, pp. 161-196, 1985 .
Narahari, Y. and Viswanadham, N., "A Petri Net Approach to the Modeling and Analysis of Flexible
Manufacturing Systems," Annals of Operations Research, Vol. 3, pp. 449-472,1985.
Naylor, A.W., and Volz, R.A., "Design ofIntegrated Manufacturing System Control Software," IEEE
Trans on Systems , Man, and Cybernetics, Vol. SMC-17, No.6, pp. 881-897, NovlDec 1987.
Ostroff,1. S., "A Logic for Real-Time Discrete Event Processes," IEEE Control Systems Magazine,
Vol. 10, No.4, pp. 95-102, June 1990.
Sharbach, P. "Formal Methods and the Specification and Design of Computer Integrated
Manufacturing Systems," Proceedings or the International Conference on the Development of Flexible
Automation Systems, July 1984.
Smith, J. S., A Formal Design and Development Methodology for Shop Floor Control in Computer
Integrated Manufacturing, Ph.D. Thesis, The Pennsylvania State University, 1992.
Smith,1. S., Hoberecht W. C, and Joshi, S. B., "A Shop Floor Control Architecture for Computer
Integrated Manufacturing," Working Paper Series, Department of Industrial and Management Systems
Engineering, The Pennsylvania State University, 1992.
Sohlenius, G., "Scientific and Structural Base of Manufacturing," Robotics and Computer Integrated
Manufacturing, Vol. I, No. 3/4, pp. 389-396, 1984.
Suh, N. P., "Development of the Science Base for the Manufacturing Field Through the Axiomatic
Approach," Robotics and Computer Integrated Manufacturing, Vol. I, No. 3/4, pp. 397-415, 1984.
Upton, D.M. and Barash, M.M., "A Grammatical Approach to Routing Flexibility in Large
Manufacturing Systems," Journal of Manufacturing Systems, vol. 7, pp. 209-221, 1988.
Wiliams, DJ. and Upton, D.M., "Syntactic Models of Manufacturing Processing and Control,"
International Journal of Computer Integrated Manufacturing, vol. 2, no. 4, pp. 229-237, 1989.
Wu, H.L., Venugopal, R., and Barash, M.M., "Design of a Cellular Manufacturing System: A
Syntactic Pattern Recognition Approach," Journal of Manufacturing Systems, vol. 5, pp. 81-87, 1986.
200
Xou, Mo, DiCesare, F. and Desrochers, Ao, "A Top-down Approach to Systematic Synthesis of Petri
Net Models for Manufacturing Systems," Proceedings of IEEE International Conference on Robotics
and Automation, ppo 534-539, 19890
Candidate Rule Selection to Develop Intelligent Scheduling Aids for
Flexible Manufacturing Systems (FMS)
by
Abstract
1. Introduction
In the past two decades, manufacturing systems have moved toward more and more
automated production, a larger variety of products, and smaller lot sizes. To efficiently and
effectively control such manufacturing systems, intelligent, computer-based decision aids are
needed. The approaches to develop such aids include optimization (YIH and THESEN 1991),
rule-based systems (THESEN and LEI 1986, THESEN et al. 1987, YIH 1988, 1990b), genetic
202
algorithm (AYTUG et al. 1992), neural networks (CHRYSSOLOURIS et al. 1990, 1991, WANG
and YIH 1992), and their hybrids (YIH 1990a, 1992, YIH et al. 1991, 1992). Typically,
decisions (such schedules) are generated from the knowledge contained in a knowledge base.
The ftrst step in developing the required knowledge base is knowledge acquisition. This itself
is a two step process: get the knowledge from knowledge sources and store that knowledge in
a digital form. Much work has been done in the area of knowledge acquisition, such as
protocol analysis, interactive editing, and so on (WATERMAN and NEWELL 1971, NISBETI
and WILSON 1977, BAINBRIDGE 1979, GEVARTER 1983, HAWKINS 1983, ERICSSON and
SIMON 1984, HART 1985). In most cases, knowledge sources are "human experts" who
describe or explain the process of decision making. There are two problems with this
approach. First, "domain experts" cannot accurately describe the process of decision making.
Second, "experts" do not exist for every domain. We assert that scheduling falls into the latter
category. Because of this, we often resort to a "computer-based expert" to help us analyze the
impact of scheduling rules on system performance - discrete-event simulation. In this
approach, simulation results can be used to form the knowledge base through inductive
learning processes. However, with more than 100 commonly used heuristic rules, it is
impractical to study all the rules and their combinations through simulation.
To shorten the lead time for developing intelligent scheduling aids, it is imperative that the
knowledge acquisition process be quick and easily reftned as new knowledge becomes
available. In addition, this process must fit into an overall framework for real-time
scheduling. We adopt the three phase framework described in (JONES and RABELO 1992). In
phase one, a small set of candidate scheduling heuristics is selected based on a quick analysis
of the "system". In phase two, a more detailed analysis of the selected rules is performed
using discrete-event simulation. In phase three, a genetic algorithm is used to improve the
schedules from phase two. We propose a fourth phase which employs inductive learning
techniques to "learn" from those decisions. During the inductive learning process, decisions
that perform well will be added to the knowledge base, thereby increasing the "intelligence"
of the scheduler. The goal is to eventually develop an automated, real-time scheduler.
In this paper, we will concentrate on phase one and phase four, that is, the initial rule
selection and inductive learning. The remainder of this paper is organized as follows. A brief
review of the generic framework of JONES and RABELO (1992) is presented in next section.
In section three, the framework of rule selection and improvement is proposed. Section four
describes the development of the rule selectors. Section ftve discusses the learning algorithm
that is used in phase four. This is followed by a summary and references.
203
This research is built upon the generic framework of intelligent controller proposed by
(DAVIS et al. 1991) as shown in Figure 1. This framework has its foundations in (ALBUS et
al. 1989, JONES and MCLEAN 1985, JONES and SALEH 1990). It performs four production
management functions: assessment, optimization, execution, and monitoring.
Problem
formulDtion
Selected
The Assessment Function (AF) formulates the planning and scheduling problems facing the
controller based on three sets of inputs. (These can be thought of as optimization problems,
although they are not solved using formal mathematical programming techniques.) The first
set is specified by the supervisor and includes assigned tasks, priorities, due dates, and any
other constraints or performance measures. The second set is the feedback from the
Monitoring Function (MF) that describe the current system state and the projected system
response with current control rules. The third input comes from the Optimization Function
(OF) indicating the current status of its attempts to generate "feasible/optimal" solutions. The
204
AF specifies the perfonnance criteria for each optimization problem to be considered by the
OF. In addition, the AF constructs constraints to be imposed as part of those optimization
problems.
The Optimization Function is responsible for selecting a run-time production plan and
scheduling rule. The production plan is selected from those feasible process plans passed
down by the Assessment Function. In general, there are no a priori limitations on the choice
of scheduling rules, but the framework allows for this if it is desirable. The selection is made
which optimizes the current set of perfonnance measures. In addition, the Optimization
Function must deal with violations of the scheduled start/finish times and any other
constraints imposed by the Assessment Function. In this paper, we concentrate on a method
for implementing the Optimization Function which we describe in the next section.
The Execution Function implements the decision rules selected by the Optimization Function.
Currently, it is envisioned to work as follows. Using the current state of the system, it does a
single pass simulation using the selected production plan and scheduling rule to compute the
starting and finishing times for each task. These become the "due dates" which are passed
down to subordinates. In addition, when minor deviations from these times are envisioned by
the subordinates, it can try to restore feasibility using techniques such as perturbation analysis
or match-up scheduling (JONES and SALEH 1990).
Lastly, the Monitoring Function updates the system state using feedback from subordinates,
and evaluates proposed subordinate responses against the current set of imposed (from the
Assessment Function) and computed (by the Optimization Function) constraints. During error
recovery, the Monitoring Function acts as an expediter. That is, the Monitoring Function
determines when violations occur, their severity, and who should deal with them.
The remainder of this paper describes a strategy for implementing the scheduling perfonn~
by the Optimization Function.
The learning-based framework consists of four phases as shown in Figure 2. Phase one deals
with initial candidate rule selection. Phase two conducts simulation based on the selected rule
candidates. Phase three analyzes the results from simulation, and applies Genetic Algorithm
(GA) for further improvement. These are described in detail in JONES and RABELO (1992).
We have added a phase four in which knowledge is extracted from the resulting schedules by
205
an inductive learning algorithm. The outcome is then used to improve future invocations of
phase one. This paper focuses on the initial selection of candidate rules and the learning
process.
After receiving the production constraints and performance criteria from the Assessment
Function, an initial candidate rule selector will be activated. Based on the desired system
performance, the rule selector will select candidates that are more likely to fulfill the
requirement and pass them to the simulation phase.
Desired Production
Heuristic Rules Requirements
Candidate Rule
Selector
Resulted Schedule
Inductiue Learning
The simulation phase uses the candidates selected in the first phase and any additional
constraints from the Assessment Function to generate feasible schedules. These simulations
are initialized to the current state of the system. The performance of each schedule is
evaluated against the imposed criteria. Those schedules performing well based on the criteria
will be selected as the basis for further improvement in the third phase.
Phase three is responsible for improving the quality of schedules when possible. This phase is
needed because it is very unlikely to have a single scheduling heuristic that can optimize all
the objectives (some of which can be negatively correlated) simultaneously. In this phase,
206
new schedules are generated based on those good schedules passed from the second phase by
using Genetic Algorithms (GA). Among those schedules generated, good ones will be
"genetically altered" to generate new and better schedules. This process of regeneration
iterates until no significant improvement is found. This is the schedule that gets implemented
by the Execution Function.
At the conclusion of the improvement phase, one "good" schedule has been generated for the
current system and performance measures. We would like to learn from this experience to
avoid a repeat of the process the next time similar conditions arise. However, we cannot
easily derive a simple "strategy" form which to generate this schedule (like FIFO, SPT etc.)
because the schedule is a complex combination of such rules. There are, then, two questions
to be answered. How do we determine the relationship between the schedule we derived and
the circurpstances which led to that schedule? How do we efficiently represent this
information for later use?
To extract the scheduling strategy, we propose to use an inductive learning algorithm- Irace-
I!riven Knowledge Acquisition (TDKA) (YIH 1988, 1990b). This algorithm results in the
representation of the strategy as a rule base. The result will be a new, albeit somewhat
complicated, heuristic which can be placed in the knowledge base and which can be used the
next time the candidate rule selection module is invoked.
In the following sections, we will discuss the development of the rule selector in the first
phase and the learning algorithm used in the phase four.
In JONES and RABELO (1992), the authors propose to use a (possibly more than one) neural
network to perform the initial selection of candidate rules. This neural network has three
inputs: scheduling rules, system configuration, and performance measures. The output of the
network is the matching score assigned to each heuristic rule. Those rules with higher scores
will be selected as rule candidates for further simulation study and probably improvement.
Neural networks, also called connectionist or distributed parallel processing, have been
studied for many years in an attempt to mirror the learning and prediction abilities of human
beings. Neural network models are distinguished by network topology, node characteristics,
and training or learning rules. An example of a three-layer feed-forward neural network is
shown in Figure 3.
207
Input Layer
Hidden Layer
Through exposure to "training patterns", neural networks attempt to capture the salient
information. PARKER (1985) and RUMELHART et al. (1986) showed how to learn by using
back-propagation. WERBOS (1974) developed the back-propagation training algorithm in his
doctoral dissertation, but his work was unknown for almost 10 years. Back-propagation
applies the gradient-descent technique in the feed-forward network to change a collection of
weights so that the cost function can be minimized. The cost function, which is only
dependent on weights and training patterns, is defined by:
After the network propagates the input values to the output layer, the error between the
desired output and actual output will be "back-propagated" to the previous layer. In the
hidden layers, the error for each node is computed by the weighted sum of errors in the next
layer's nodes. In a three-layered network, the next layer means the output layer. If the
activation function is sigmoid, the weights are modified according to
(2)
or
(3)
where Wij is weight from node i to node j, 11 is the learning rate, Xj is the output of
node j, Tj is the target value of node j, 8k is the error function of node k.
208
If j is in the output layer, relation (2) is used, relation (3) is for the nodes in the hidden layers.
The weights can be updated to reduce the cost function at each step. The back-propagation
has been successfully applied in many situations. But, we note that the problem of training a
three-layer neural network is NP-complete (BLUM and RIVEST 1988, JUDD 1987).
PTIMH Ratio
SPT
Average
Tardiness
LIFO
Maximal
Tardiness
Maximal
Waiting Time
To train the neural network for candidate rule selection, we need to collect training data set
from simulation studies. Three factors will be used to describe the system configuration:
processing time variation, congestion level, and ratio of processing times and material
handling (PT/MH). The performance measures for production requirements will be selected
from related literatures. An example of the rule selector network is shown in Figure 4. The
jobs in the system will be randomly generated to be scheduled through the system on a real-
time basis. Simulation will be conducted based on fractional factorial designs. The values of
performance measures will be compared with those of First-In-First-Out (FIFO) rule and the
ratio values will be used as inputs to the network. The output values of the rule candidate
selector will be the matching score of each heuristic rule. A threshold will be set by the user
to select the promising rule candidates for further improvement.
209
For instance, using the simulation results listed in Table 1, the indices of four performance
measures are (1.4, 1.79,0.9, 1.67) and (1.1, 2.14, 1.04,3.54) for SPT and LIFO respectively.
Similar simulation studies could be conducted based on different levels of processing time
variance, congestion level, and PT/MH ratio for a given rule by using fractional factorial
design.
The matching score (M-score) of rule k compared with the performances of rule r is
calculated by the following formula.
T able 2 Trammg
.. d ata f or ru e se ector network
Input Vector Output Vector
(1.0,0.7, 10.0, 1.0, 1.0, 1.0, 1.0) (400,214, 18,299)
(1.0,0.7, 10.0, 1.4, 1.79,0.9, 1.67) (390,400,164,356)
(1.0,0.7,10.0,1.1,2.14,1.04,3.54) (400,370,400,391)
(1.0,0.7, 10.0,0.24,0.86, 1.13, 1.88) (310, 191,20,400)
210
Trace-driven knowledge acquisition (TDKA) (YIH 1988, 1990b) is a method that extracts
knowledge from a trace of the effect of decisions instead statements or explanations of
decisions. There are three steps in the process of trace-driven knowledge acquisition: data
collection, data analysis, and rule evaluation. An overview of the model of trace-driven
knowledge acquisition is given in Figure 5.
In step one, data is collected through simulation, historical records, human inputs, actual
physical experiments, etc. In the proposed framework, the data (trace) is simply the schedule
generated from the Genetic Algorithm. In step two, the trace is analyzed to determine
whether or not any production rules (If ... Then ... ) are embedded in the trace. In step three,
simulation is used to compare the performance of the resulting rules with the trace (the
schedule). The process returns to step two to refine the rules if the resulted rules do not
perform as well as the original schedule.
The core of the TDKA lies in the step two- data analysis. There are two types of rules
involved -- decision rules and class assignment rules. If the state space is viewed as a hyper
plane, class assignment rules draw the boundaries on the hyper plane to define the areas of
classes as shown in Figure 6. For each class, a single decision rule is used to determine what
to do next. The resulting scheduling rules are in the form of
"If [state E class i] then apply Ri* "
211
State Space
R2
Figure 6. State space hyper plane(Rm is the decision rule applied in class m)
In data analysis, the records collected are used to define classes and to select a single rule for
each class. The rule formation algorithm can be described by three steps as follows. (The
terms used in the algorithm are defined in Appendix A.)
I. Initialize
Detennine state variables Vi (i=1,2, ...,Ny )
Detennine decision rules Rj (i=1,2, ...,Nr)
Set initial value for L
Detennine initial classes Cj (i=1,2, ... ,Nc)
Detennine initial class assignment function F
Initialize class frequency counter Yj(i=1,2, ... ,Nc)
Initialize rule frequency counter Zik (i=1,2, ...,Nc, k=1,2, ... ,Nr)
Obtain a trace (Sj, aj) G=1,2, ...,Ns)
II. Determine the decision rules used by the user.
For each record (Sj, aj)
A. Determine what class Sj belongs to.
F(S-) = i
B. Find all decision rules RK that yield ajfrom Sj-
RK(Sj) = Aj S.t. aj E Aj
C. Update class and rule frequency counters.
Yj =Yj + 1
Zjk = Zik + 1 for all k E K
III. Evaluate the decision rules in each class.
For each class Cj
A. Determine the score for each decision rule.
Zik
X ik = Y. for k=1,2, ... ,Nr
1
B. Select the decision rule Rk* with the highest score.
Xik* = maxk {Xik}
C. Check whether the selected decision rule satisfies the minimal score
requirement.
If Xjk* ~ L then goto step Ill.G
212
°°
E. Reset class and rulejrequency counters.
Yi =
Zuc =
for i=I,2, ... ,Nc
for i=I,2, ... ,Nc, k=I,2, ... ,Nr
F. Goto step II.
G. Form the scheduling rulejor this class.
If [SjE Ci] then apply Rk*
H. Stop.
This iterative process will stop whenever the rule formation is completed. That is, the state
space has been properly divided into several classes and a single decision rule is selected for
each class. If the performance of the extracted rules is worse than the trace, then it is
necessary to return to data analysis and refine the rules by rising the value of acceptance level
(L). Otherwise, the process stops.
For example, consider a flowshop problem in a cell with five workstations and one material
handling robot (Figure 7). Individual workstations have no buffers. There is, however, one
input and one output buffer for the cell. The robot is responsible for transporting jobs from
the input buffer to workstations sequentially and eventually to the output buffer. Jobs arrive
the cell randomly and the batch size is one. The problem is to select the job from the input
buffer or from the workstations for transportation and process so that certain production
requirements are fulfilled. If we represent the schedule by the identification number of the
workstation, a schedule of 3 -> 5 -> 2 -> 1 -> ° -> 4 means that the robot will transport the
°
job in workstation 3 to workstation 4, and then from workstation 5 to 6, etc. In this
representation, stands for the input buffer and 6 the output buffer. If the resulting schedule
from Genetic Algorithm is 3 -> 5 -> 2 -> 1 -> °-> 4, we can obtain the trace from simulation
in the following format.
(R, W_0, W_1, RPT_l, W _2, RPT_2, W _3, RPT_3, W _4, RPT_4, W _5, RPT_5) ---> Action
213
where
°
R: current location of robot, range = {0... 6} where is the input buffer, 6 is the output
buffer, and the others are the respective workstation numbers
W _0 : feasibility of new entry
°
= 1 if new entry is feasible
= otherwise
W _i : current workstation status (for i = 1,2,... ,5)
=0 if empty
= job identification number if occupied by a job
RP'Ci : (for i = 1,2, ... ,5)
°
= remaining process time if the workstation is occupied by a job
= otherwise
Action: the identification number of the workstation where the job will be selected for
transportation next.
Workstation
Robot 1 1#411
m I/O
Buffer
Figure 7. A five-workstation cell
Each record in the trace will vote for the rules that could yield the same decision as in the
schedule. Of course, the feasibility of the movement will also be considered. In other works,
if the workstation can process one job at a time, due to no buffer among workstations, the job
on workstation #2 cannot be moved to #3 until #3 is empty. The first record, (2,0, 124, 12,
123,0, 122,0,0,0, 120,30), there are only two feasible movements: #3 to #4 and #5 to #6.
214
Based on the schedule, the job on workstation #3 is selected for transportation and this record
will vote for the rules such as, SPT (Shortest Processing Time), CB (Closest to the I/O
Buffer), and CR (Closest to the Robot), etc. The fifth record will vote for the rules such as
CB, CR, FR (Farthest from the Robot), and N (New job first). The summary of votes is listed
in the following table.
where LPT =Longest Processing Time; FB =Farthest from the I/O Buffer
We start with one class, called Class 1. If we are satisfied with the accuracy of 83.33%, we
may arbitrarily choose CB or CR and form the following rule.
"If [state E Class 1] then apply CB" (1)
If we would like to obtain higher accuracy, the variable W_5 can be used to split Class 1 to
Class 11 and 12 where Class 11 includes the states with W_5=0, and Class 12 has the
remainder. The following class assignment rules will be formed.
"If [W_5 *" 0] then state E Class II" (2)
"If [W_5 = 0] then state E Class 12" (3)
After splitting into two classes, the voting process repeats within each class. The results are
listed in Tables 4 and 5. The following two rules could be formed with 100% accuracy. The
process stops and the rule base contains four rules: (2), (3), (4), and (5).
6. Remarks
In this paper, we proposed a strategy for implementing rule selection and inductive learning
for an intelligent scheduling aid for FMSs. Trace Driven Knowledge Acquisition and neural
networks were proposed Currently, the proposed framework is under implementation. We
will be able to verify the feasibility of the framework in the near future.
Reference
ALBUS, J., MCCAIN, H. and LUMIA, R., "NASA/NBS Standard Reference Mode for
Telerobot Control System Architecture," NIST Technical Note 1235, National Institute
of Standards and Technology, Gaithersburg, MD, April 1989.
AYTUG, H., KOElll.ER, G. J. and SNOWDON, J. L., "Genetic Learning of Dynamic Scheduling
within a Simulation Environment," Workshop on Learning Approaches to Scheduling,
Gainsville, FL, January 17-18, 1992.
BAINBRIDGE, L., "Verbal Reports As Evidence of the Process Operator's Knowledge,"
International Journal of Man-Machine Studies, 11,411-436,1979.
BLUM, A., and RIVEST, R. L., "Training a 3-Node Neural Network is NP-complete,"
Advances in Neural Information Processing Systems I, ed. by D. S. Touretzky, San
Mateo: Morgan Kaufmann, 494-501,1988.
CHRYSSOLOURIS, G., LEE, M. and DOMROESE, M., "The Use of Neural Networks in
Determining Operational Policies for Manufacturing Systems," Journal of
Manufacturing Systems 10,166-175,1991.
CHRYSSOLOURIS, G., LEE, M., PIERCE, J. and DOMROESE, M., "Neural Networks for Design
of Manufacturing Systems, " Manufacturing Review 3, 187-194, 1990.
DAVIS, W., JONES, A. and SALEH, A., "A generic architecture for intelligent control
systems," Computer Integrated Manufacturing Systems, to appear.
ERICSSON, K. A. and SIMON, H. A., Protocol Analysis: Verbal reports as Data
,Massachusetts MA: The MIT Press, 1984.
GEVARTER, W. B., "Expert Systems: Limited But Powerful," IEEE Spectrum, Aug., 39-45,
1983.
HART, A., "The Role of Induction in Knowledge Elicitation," Expert Systems, 2, 1,24-28,
1985.
HAWKINS, D., "An Analysis of Expert Thinking," International Journal of Man-Machine
Studies, 18, 1-47, 1983.
216
JONES, A. and MCLEAN, C., "A Production Control Module for the AMRF," Proceedings of
the International Symposium on Computers in Engineering, Boston, MA, August 1985.
JONES, A. and RABELO, L., "Real-Time Decision Making Using Neural Networks,
Simulation, and Genetic Algorithm," Proceedings of the International FAIM'92
Conference, Fairfax, VA, 1992.
JONES, A. and SALEH, A., "A Multi-levellMulti-layer Architecture for Intelligent Shop Floor
Control," I nternational Journal of Computerlntegrated Manufacturing Special Issue on
Intelligent Control, 3,1,60-70, 1990.
JuDD, J. S., "Learning in Networks is Hard," Proceedings of the First International
Conference on Neural Networks (San Diego 1987), II, New York: IEEE, 685-692,
1987.
NISBETI', R. E. and WILSON, T. D., "Telling More Than We Can Know: Verbal Reports on
Mental Processes," Psychological Review, 84, 231-259, 1977.
PARKER, D. B., "Learning Logic," Technical Report TR-47, Center for Computational
Research in Economics and Management Science, Massachusetts Institute of
Technology, Cambridge, MA, 1985.
RUMELHART, D. E., HINTON, G. E. and WILLIAMS, R. J., "Leaming Internal Representations
by Error Propagation," in Parallel Distributed Processing, 1, Cambridge, MA: MIT
Press, 318-362, 1986. •
THESEN, A. and LEI, L., "An Expert System for Scheduling Robots in a Flexible
Electroplating System with Dynamically Changing Workloads," Proceedings of the
Second ORSAITIMS Conference on FMS: Operations Research Models and
Applications, edited by K. E. Stecke and R. Suri (Amsterdam: Elsevier), 555-566, 1986.
THESEN, A., LEI, L. and YIH, Y. "Knowledge Acquisition Methods for Expert Scheduling
Systems," Proceedings of the 1987 Winter Simulation Conference, 709-714, December,
1987.
WANG, J. and YIH, Y. "Using Neural Networks to Select Control Strategy For Automated
Storage and Retrieval Systems (AS/RS)," Technical Report, School of Industrial
Engineering, Purdue University, West Lafayette, IN, 1992.
WATERMAN, D. A. and NEWELL, A., "Protocol Analysis as a Task for Artificial
Intelligence," Artificial Intelligence, 2, 285-318, 1971.
WERBOS, P., Beyond Regression: New Tools for Prediction and Analysis in the Behavioral
Sciences. Ph.D. Thesis, Harvard University, Cambridge, MA, 1974.
YIH, Y., Trace Driven Knowledge Acquisition for Expert Scheduling System, Ph.D.
dissertation, University of Wisconsin-Madison, December, 1988.
YIH, Y. "Learning Scheduling Rules for FMS from the Optimal Policy of User-Based Semi-
Markov Decision Processes," The Fourth International Conference on Expert Systems
in Production and Operations Management, Hilton Head Island, South Carolina, 175-
183, May 14-16, 1990a.
YIH, Y., "Trace-Driven Knowledge Acquisition (TDKA) for Rule-Based Real-Time
Scheduling Systems," Journal of Intelligent Manufacturing, 1,4,217-230, 1990b.
YIH, Y., "Leaming Real-Time Scheduling Rules from Optimal Policy of Semi-Markov
Decision Processes," International Journal of Computer Integrated Manufacturing, to
appear, 1992.
YIH, Y., LIANG, T. P. and MOSKOWITZ, H. "A Hybrid Approach for Crane Scheduling
Problems," Proceedings of Artificial Neural Networks in Engineering (ANNIE)
Conference, St. Louis, MO, 867-872, November 10-13, 1991.
YIH, Y., LIANG, T. P. and MOSKOWITZ, H. "Robot Scheduling in A Circuit Board Production
Line- A Hybrid OR/ANN Approach", lIE Transactions, to appear, 1992.
YIH, Y. and THESEN, A., "Semi-Markov Decision Models for Real-Time Scheduling,"
International Journal of Production Research, 29, 11,2331-2346, 1991.
217
(1) ~ «Sj, aj), j=I,2, ...,Ns) - Records contains the data recorded during the problem-
solving process. Each record describes a system state (Sj) and the action taken by the
subject (aj). For instance, if the system state is defined as a vector of robot location,
status of machine#1 and status of machine#2, and the action is defined as the index of
machine to be served next, record «1,1 ,0), 2) indicates that machine#2 is selected and
that the system state is (1,1 ,0).
(2) ~ - The trace is a sequence of records collected from the subject during the problem-
solving process in phase one.
(3) State Variable (Vj, i=I ,2,... ,N v ) - State variables are the variables defined in the state
vector, e.g. robot location, machine status.
(4) Decision Rule (Rj, i=1,2,... ,Nr ) - Decision rules are the rules to select the alternative based
on the rank order of state variables, e.g. closest to the output first, shortest remaining
process time first. Each decision rule Rj will yield a set of possible actions (Aj) from a
system state (Sj), that is, Rj(Sj) = Aj.
(5) Class (Cj, i=I,2, ... ,Nc) - A class is a subset of the state space. For any Cj and Cj, if i~j then
CjrlCj = 0 . The union of all classes is the state space.
(6) Class Assignment Rule - Class assignment rules are rules defining the areas of classes,
e.g. If [robot location=2] then SjE C2.
(7) Class Assignment Function (F) - The class assignment function computes a class index
from a system state, e.g. (F(Sj)=i) ~ (SjE Cj).
(8) ~ (Xi]c, i=1,2,... ,Nc, k= 1,2,... ,Nr ) - «F(Sj)=i) and (Rk(Sj)=Aj) S.t. ajE Aj) ~ (Sj,aj) can
be explained by Rk in Cj. The score (Xjk) is the percentage of records which can be
explained by decision rule Rk in Cj.
(9) Acceptance Level (L) - The acceptance level is the percentage indicating the minimal
score that a rule must have before it is accepted as the rule that explains the subject's
decision.
(10) Critical Level (D*jj*' i = 1,2, ... , Nc, j*E (I ,2, ... ,Nv }) - The critical level (D*ij*) is the
value of a state variable Vj* used to split class Cj into two classes, Cil and Cj2. A
member of Cj will be classified into Cjl if Vj* is below D*ij*, and will be classified into
Cj2 if!j* is above or equal to D*jj*'
(11) Class Frequency Counter (Yj,i=I ,2,... ,Nc) - The class frequency counter keeps track of
the number of records (Sj,aj) with SjE Cj.
(12) Rule Frequency Counter (Zjk, i=1,2,...,Nc, k=1,2, ... ,Nr ) - The rule frequency counter
(Zjk) keeps track of the number of records (Sj,aj) which can be explained by Rkand
SjECj.
Tool Blocking in Flexible Manufacturing Systems
Ulrich A.W. Tetzlaff
George Mason University
Department of Decision Sciences & MIS
Fairfax, Virginia 22030-4444
Abstract
An analytical procedure to evaluate the performance of a Flexible Manufacturing
System (FMS) with a separate tool transportation system is presented. Of particular
interest is the tool blocking time, which is defined as the time a machine is idle
because it has to wait for the required tools. In order to evaluate this time, both
systems of the FMS, the parts transportation system and the tool transportation
system, are modelled as two interacting closed queueing networks.
1 Introduction
Flexible manufacturing systems obtain to a large extent their flexibility through Comput-
erized Numerical Controlled Machines (CNC machines), which are capable of manufac-
turing different part types. This ability is due to a computerized controlled tool exchange
mechanism as well as to an efficiently working tool supply system. They enable the per-
formance of a large variety of different operations at one single machine. Sometimes up to
100 or more different tools are stored locally at the machines. Because the part mix in the
system can change or the tools are worn down or broken, the local tool storage must be
supplied with new tools. For the designer of a flexible manufacturing system the question
arises as to how to specify this tool supply system in order to deliver the necessary tools
in time without acting as a bottleneck on the performance of the whole system. Thus,
the system should be designed in such a way that a CNC machine does not need to stop
processing because the required tool is not yet available, i.e. without tool blocking.
Previous work considered only the influence of the tool blocking time on the perfor-
mance of a FMS in the form of a single, constant parameter. Thus, important design
issues involved with an automated centralized tool supply system were neglected (see
Vinod and Solberg, 1984, Vinod and Altiok, 1986, Widmer and Solot, 1990).
219
2 Problem Description
The flexible manufacturing system under consideration consists of M -1 machine groups.
Each group m consists of one or several identical machines Sm. These machines can be
either CNC machines, load/unload stations, or washing machines, etc. Of this set of
M - 1 machine groups, only a subset $ of S machine groups is required to be supplied
with tools in order to operate. For this subset $, the number of machines Sm is equal to
one at each group. The tool transportation system T M (TT System) with one or several
transportation vehicles STM provides only those m E $ machine groups with tools. The
parts transportation system M (PT System) comprises one or several automated guided
vehicles (AGVs) SM supplying the machines with parts.
There is a fixed number of pallets N circulating in the system. Without loss of
generality it IS assumed that there is only one part on each pallet. There are furthermore
a total of L tool types available for the system and the number of different tool types
at a specific station m E $ is given by Lm . The number of identical tools of type I at
station m is Kim. Each type has an expected lifetime of WI. The average time between
tool breakages is exponentially distributed with mean a.
There are two different types of tool supply orders delivered to the TT System by each
machine group m E $. The first type, called a production supply order, is sent to the
control system of the TT System rm time units (with rm 2:: 0) before the actual operation
with the required tool(s) starts. A production supply order is issued in case of part mix
changes or when a tool has been already used for the length of its expected lifetime. The
second type, called a breakage supply order, is issued in case of tool breakage. Since the
exact point in time for a tool breakage cannot be forseen, this order is issued at the same
time when the actual requirement arises, i.e. when the breakage is detected. For each
operation of type 0 with tool type I at station m the operating time tmol is required.
Notation:
a mean time between tool breakages
em number of tool types at station m which are exchanged
per transportation sequence of the tool supply system
d~ total tool blocking time for all tool breakages during a part's visit
at station m
tm tool blocking time caused by each tool breakage at station m
d~m delay at breakage-station m within the TT System T representing
the intermediate time between tool requests due to breakage
~ tool blocking time at station m related to a production supply order
4m delay at production supply station m within the TT System representing
the intermediate time between tool requests caused by production
supply orders
9m average number of tools to be exchanged at station m if the
220
3 The Model
To evaluate the performance of our flexible manufacturing system a model consisting
of two interacting closed queueing networks is used (see Fig.I). One queueing network
models the PT System which supplies the CNC machines with parts, the other queueing
network models the TT System which supplies the CNC machines with the required tools.
221
PT System TT System
VTL
I e;:~up I
JProa-.~
Mill
~ Mill
rrrii ns
sy.t.
for
T
too Is
"
3.1 PT System
The PT System is modelled as a central server queueing network model with one customer
class. The machine groups are modelled as queueing stations and the transportation sys-
tem acts as the central server. The machine groups, i.e. stations m f¢ S are modelled
as single stage stations with an exponentially distributed mean processing time t~. The
remaining stations m E S requiring tool supply are approximated by a three stage queue-
ing station as shown in Fig.2. Below, these three stage stations and their parameters are
described.
222
The first stage is reached with probability p.:. when a tool supply is required for the
next part to be processed and a production supply order must be issued. The machine is
idle during the tool blocking time d!:. when the station is waiting for the fullfillment of the
production supply order. The second stage of the station consists of the approximated
mean operating time tm at station m. The third stage is reached with probability of p~
in case of tool breakage(s) during the processing of a part. The tool blocking time d~ is
the total blocking time for tool breakage(s) during a part's visit at station m.
The probability p.:. for a production supply order consists of the probability F'!n for a
tool supply order caused by a part mix change and the probability p::; for replacement of
a tool at the end of its expected lifetime WI. For both of the latter probabilities, rough
approximations are given in the following .
~ =~ VmES (2)
m nmCm
The probability p::; is approximated by the following expression:
223
,,/~
W L- wlKlm U S (
Pm= LmCm Vm vmE . 3)
It captures the probability that during a visit of an average part with the operating
time lm' a production supply order is required. The total processing time performed wi th
one tool type, i.e.
(4)
is divided by the available tool performance time w/K/m of tool type I at station m.
However, as there are Lm tool types at one station, this term exists with multiplicity Lm.
An average value is given by the summation over all tool types I and dividing it by the
number of tool types Lm. Thus the expression
(5)
gives the average probability of a tool supply of a single tool per operation. To obtain
the probability ~ of a production supply request per visit, one has to include the ratio
of the average number of operations per visit Vm to the number of tools exchanged per
request Cm, resulting in the formula in equation (3). Note that ~ can be greater than
one, if more than one tool is required per visit and the number of tools exchanged per
request Cm is smaller than this demand. Here an increase of Cm to at least the number
of tools requested per visit is necessary.
The probability P~ is obtained by modelling the tool breakage(s) by a two-stage Coxian
distribution (see Altiok and Stidham 1983). The approximate average operating time tm
is given by
(6)
and the total tool blocking time for breakage d~ by
The probability density function fm(t) for a three-stage station has the following form:
(9)
In order to obtain the mean processing time t~ , the Laplace-Stieltjes transform .em (s)
of the probaqility density function fm(t) is derived.
( 10)
(11 )
The mean processing time t~ for a part staying at a station of type m E S is then
given by:
t*m = ds
(12)
3.2 TT System
To estimate the tool blocking times ~ and d~, a second queueing network is used mod-
elling the TT System. It consists of 2S stations which act as pure delay stations without
any queue. Thus, there are two stations corresponding to each station m E S of the PT
System, one for each type of supply order. Furthermore, it consists of a central server
which models the tool transportation system. This server has a queue with STM servers,
i.e. vehicles . Within the TT System 2S classes of customers circulate. Thus, the TT
System is modelled as a multi-class queueing network. Each customer class has only one
customer which represents a tool supply order for one of the 2S stations of the PT Sys-
tem. An order can be either at the queue of the central server, being processed by the
225
central server or at one of the 2S delay stations. If the order is at the queue of the tool
transportation system, it is waiting for a transportation vehicle in order to be completed
by delivering tools to one of the 2S stations. Thus, the tool blocking times d:;' and d~
can be estimated by the queueing times qtm in case of production supply orders or by
the queueing times q~m in case of breakage supply orders at the central server, and the
tool transportation time tTm to one of the two delay stations m of the network. It follows
that the the tool blocking time for breakage is:
(14)
If the fact is taken into consideration that the control system is capable of placing the
production supply order for the tools before they are actually required with preorder time
rm, the tool blocking time of the production supply order is:
(16)
This is the throughput time of a single pallet through the system less the tool blocking
time d:;', since, by definition, no tool blocking takes place for a production supply order
at station m during dTm when no order is issued. Note, however, that it may happen
at other stations i =f m. Thus, here the mean times ti are used. If there is more than
one palJet in the system the given term in (16) is divided by N. Since a tool supply is
necessary only every liP!. times per visit, multiplication with this factor is done to obtain
the intermediate time between tool requests dtm for production supply orders:
"1m ES (18)
The Algorithm:
STEP 1: Analyze the PT System with a single class closed queueing network model
of the Jackson type. Use the exponential approximation approach of
Vinod and Altiok (1986). In order to estimate the mean processing times
t:, "1m E S based on (13) use (I), (15) with frm = 0, (8) with tm = tTm,
(6), and (7).
STEP 2: Analyze the TT System with a multi class closed queueing network model.
There are 2S customer classes circulating, each one consisting of a single
customer. In order to evaluate the delays by equations (17) and (18) at
the 2S delay stations use the last results of the PT System.
227
1 - p~(n+l) = (19)
(20)
STEP 4: Perform STEP 2 and STEP 3 until the differences between the queue-
ing times of two successive iterations are less than a given value E, i.e.
b (n+l) _ qb (n) < E
qTm qP (n+l) _ qP (n) < E Vm with E being a small
Tm - , Tm Tm-
number and E > o.
4 Example
4.1 Input Data
The above algorithm is demonstrated by an example based on real life data. It considers
a FMS consisting of one load/unload station (l/u station), one vertical turret lathe (vti),
one milling machine (mill), one transportation vehicle for parts (transp. parts) and one
for tools (transp. tools) (see Table I).
Four different part types can be manufactured on the system (part1, part2, part3,
part4). The production ratios between the part types are partl : part2 : part3 : part 4
= 0.2 : 0.2 : 0.4 : 0.2. There are four pallets circulating in the system, i.e. N = 4. Three
different tool types are in the system (L = 3) to perform the required operations. Each
tool has a life time of WI = 1000 minutes VI. The mean time between tool breakages is
a = 3000 minutes.
The set S of machines which requires tool supplies consists of S = {vtl, mill}. The
transportation vehicle can transfer one tool at a time, i.e. em
= 1 Vm. Furthermore,
Table I provides the number of tools Kim of each type which is available at a station,
the preorder time r m , the average number of tools to be exchanged if the part mix in the
system changes grn, and the average number of part visits to a station between part mix
changes n rn .
Table II-IV give the process plans for each part type with the operating times of the
required operations and the required tools.
The throughput of the system without blocking is 1.898 10- 4 parts/minute. With tool
blocking, the algorithm evaluated a decrease in throughput by roughly 6% to 1.790 10- 3
parts/minute. The result by computer simulation is 1.857 10- 3 . A comparison of some
important parameters in Table VI underlines the accuracy of the model.
231
5 Conclusions
The presented model allows to evaluate the system performance of a FMS with a sepa-
rated, automated tool supply system. The tool blocking times, i.e. the times a machine
is idle because it is waiting for the required tooling, and their relationship to important
design parameters are modelled. Two different types of blocking times are considered:
those due to changes in the part mix and "normal" usage and those due to tool break-
age. The design parameters considered include the number of transportation vehicles, the
232
transportation times to machines, possible preorder times, and the number of tools to be
transported to a machine per tool supply order.
References
Altiok, T. and Stidham, S. (1983) "The Allocation of Interstage Buffer Capacities in
Production Lines," IIE Transactions, Vo1.15, No.4, pp.292-299.
Gordon, W.J. and Newell, G.F. (1967) "Closed Queueing Systems with Exponential
Servers," Operations Research, Vo1.15, No.2, pp.254-265.
Shalev-Oren, S., Seidman, A., Schweitzer, P.J. (1985) "Analysis of Flexible Manufacturing
Systems with Priority Scheduling: PMVA," Annals of Operations Research, Vol.3 ,
pp.115-139.
Solberg, J.J. (1977) "A Mathematical Model of Computerized Manufacturing Systems,"
Proc. 4th Intern. Conf. on Production Research, Tokyo, pp.1265-1275.
Vinod, B. and Altiok, T. (1986) "Approximating Unreliable Queueing Networks Under
the Assumption of Exponentiality," J . Opl. Res. Soc., Vo1.37, No.3, pp.309-316.
Vinod, B. and Solberg, J.J. (1984) " Performance Models for Unreliable Flexible Manu-
facturing Systems," OMEGA, Vo1.12, No.3, pp.299-308.
Widmer, M. and Solot, P. (1990) "Do not forget the breakdown and the maintenance
operations in FMS design problems," International Journal of Production Research,
Vo1.28, No.2, pp.421-430.
Yao, D.D. and Buzacott, J.A. (1986) "The exponentialization approach to flexible man-
ufacturing system models with general processing times," European Journal of Oper-
ational Research, Vo1.24, No.3, pp.410-416.
III. PPC and CIM
ARCHITECTURAL FRAMEWORK FOR INTEGRATED PRODUCTION
CONTROL SYSTEMS
1. Introduction
First, an information system is broken down into individual views, which are
then described independently, and thus with less redundancy.
236
2nd Phase
Requirements
definition
3rd Phase
Design
specification
Operation
Implementation and
description maintenance
Initially , in the first two steps, each component is represented solely from the
conceptual viewpoint without implementation restrictions. Thereafter, the
factual content is further specified in the framework of the design specification
and in the implementation stage it is implemented using specific data processing
techniques. Only in the third and fourth phase information technology resource
considerations do have an effect.
equire-
..--L_-:mc:.:.;:.en:..:.:t:.::.s--=d=-=e.:..:;fin:. :.:i.:.:io::.:n~....:::........
.t Organization view
Design specification
Implementation description
Requirements
definition
Requirements definition
Design
Design specification specification
3.1. Functions
A function can be defined as an operation carried out on an object with the aim
of supporting one or more goals. Functions can be described at various levels of
granularity which can be further broken down according to the level of detail of
the analysis.
The main functions of a Leitstand system are [5]:
3.2. Organization
Organization units are the units responsible for the tasks to be supported by the
information system. Normally, organization structures are represented by
organizational charts. Another possibility is the definition of planning levels to
regulate planning and decision responsibilities. The organizational view for the
use of connected Leitstand systems on two different planning and control levels
is shown in figure 4.
242
NC-
program-
ming
Plant
buffer
Plant
Tool
buffer
Production Production
area A area 8
Parts
production Area
buffer
Here each production area (parts production, assembly) has its own Leitstand for
planning and production monitoring. A Master-Leitstand is responsible for the
coordination of the area specific, decentralized Leitstand systems; it is related to
NC-programming and different inventory control systems.
3.3. Data
Data structures, that describe mainly static and structural aspects, may origin
both from physlcal and logical objects of the manufacturing system [6]_ They
include personnel, materials, machines, tools, transportation devices as well as
data about the order spectrum such as type of order, quantities to be produced,
due-dates of orders, bill-of-materials and work schedules.
For modelling of data structures, an extended version of the well-known ERM-
approach [7] is utilized. This modelling technique is commonly used in the
databased design phase to depict conceptual schemas of the data base in a
graphical, user-oriented manner. Major modelling constructs are the entity- and
relationship type. The concept of an entity type denotes an abstract or real world
object that is distinguishable and carries meaning in itself. An entity type is
243
O,n O,n
O,n
O, n
OPERAllON DISTURBANCE
lYPE
O,n
RESOURCE
O,n
O,n
3.4. Control
The task of the control modelling is to reunite the separately considered views
(function, organization, and . data). In addition, dynamic aspects of the
information architecture are considered, since the linking up of the views allows
the description of changes of state and hence the dynamic behaviour of the
system. To model the control view, either pairwise relationships between the
architectural blocks (function-organization, function-data, data-organization) can
be considered, or all three views can be linked together.
The control view of a Leitstand system is exemplified by the link between
functions and organization. In the function level model shown in figure 6, the
main functions are allocated to the organizational units responsible.
NC-
program-
.....
0nI0< _ . arrong
ming
-
Aeprooerutlon 01...,.,.
""'"
~lunctlons
Gtop/IfcII_kNolions
...
PIamil; PIaIww>g
S""""*'O ,_Ion pion SITOOIhInQ .............. plan
Ro........-y_ R.Ie ........-y_
Procl.c:IIon .."..,.,. ProGIabn coni.,.
~ ......uor. s.. _ .......1ons
Grap/Qj
~
Production
area B
4. Concluding Remarks
Literature
[1] See Scheer, A.-W.: Architektur integrierter Informationssysteme, Berlin et al. 1991, S.
1 If.
[2] See Olle, T.W., Hagelstein, J., MacDonald, I.G. et al.: Information Systems 1988, p.
43.
[3] See for example the 12 stage model in: Olle, T. W., Hagelstein, 1., MacDonald, I.G. et
al.: Information Systems 1988, p. 37.
[4] See Hars, A.,Scheer, A.-W.: Entwicklungsstand von Leitstanden, in VDI-Z
132(1990)3, pp. 20-26; Adelsberger, H.: Ein Vergleich von Leitstanden, in: Mertens,
P., Wiendahl, H.-P., Wildemann, H. (Ed.): Proceedings of PPS im Wandel, Mtinchen
1990, pp. 363-380; a detailed report about the main Leitstand systems can be found in:
Hemmerich, G. et al.: Fertigungsleitstand-Report der Fa. Ploenzke Informatik,
Wiesbaden 1990; another overview is given by: Hoff, H., Liebrand, T.: Elektronische
Leitstlinde - Auswah1 und Einflihrung elektronischer Leitstande, eine Marktstudie, in:
FBIE 39(1990)6, pp. 208-287.
[5] See Kurbel, K., Meynert, 1.: Flexibilitat in der Fertigung durch Einsatz eines
elektronischen Leitstands, in: ZwF 83(1988)12, pp. 58 If; Schmidt, G., Frenzel, B.:
Anforderungen an Leitstande flir die flexible Fertigung, in: CIM Management
6(1990)4, p. 34; Kruppke, H.: Problematik bei der organisatorischen und technischen
Integration von Fertigungsleitstlinden in die Untemehmenspraxis, in: Scheer, A.-W.
(Ed.): Fertigungssteuerung - Expertenwissen flir die Praxis, Mlinchen, Wien 1991, pp.
279f.
[6] See Zell, M.: Datenmanagement simulationsgestiitzter Entscheidungsprozesse am
Beispiel der Fertigungssteuerung, in: Scheer, A.-W. (Ed.) Veroffentlichungen des
Instituts flir Wirtschaftsinformatik, Heft 72, Saarbrucken 1990, p. 5.
[7] See Chen, P.S.: The Entity-Relationship Model - Towards a Unified View of Data, in:
ACM Transactions on Database Systems, 1(1976)1, pp. 12f.
A New Conceptual Framework for
Hierarchically Integrated PPS-Systems
by
Christoph Schneeweiss
Chair of Operations Research
Faculty of Business Administration
University of Mannheim
Schloss, D-6800 Mannheim 1
1. Introduction
work order
planning level
job .hop
control level
(1) Requirements planning for components, (2) lot sizing, and (3) de-
termination of lead times. Typically, lot sizing is performed only for
single products not taking into account capacity constraints and stocha-
stic elements. Only subsequently the CRP-module performs some kind
of post-optimal calculation to balance demand and supply of capacity. In
addition, lead times are only taken to be rough estimates which do not
explicitly consider capacities, lot sizes, and possible stochastics.
In principle a production planning and scheduling problem could be sol-
ved in using a stochastic dynamic programming (DP) approach. The
first stages of such an approach would build up production facilities and
capacities which would then be used for the short term production and
scheduling task. This creates a hierarchical structure which, in using
the backward recursion procedure of DP, leads to an optimal solution
(SCHNEEWEISS). Obviously, however, such a calculation can only be
performed for extremely simple systems. Therefore, various approxima-
tions have been suggested. Depending on the nature of the production
system the following three approaches may be considered (s. Fig. 2).
1) The traditional PPS-system approach,
2) the deterministic lot sizing approach, and
3) the stationary queueing theoretical approach (QT-Approach).
Stochastic
DP
Traditional
PPS
Deterministic
Approach aT-Approach
(2) The second way to approximate the original stochastic DP- model is a
deterministic approach (s. Fig. 2) . One reduces the stochastic DP
to a deterministic DP resulting in a capacitated multi-product multi-
stage and multi-period deterministic production-inventory problem.
It is well known, that such an approach is again only possible for
very simple situations. In fact, only for the non-capacitated multi-
stage case and for the capacitated one-stage case are results available
(e.g. AXSATER et al.) . Assuming, however, that this problem could
be solved, then, of course, lead times could be replaced by setup
dates. As is always the case with inventory problems, lot sizes and
setup dates are calculated simultaneously. Since lot sizes depend
on capacities and capacities have usually to be determined well in
advance to setup dates, the multi-stage lot sizing approach is only
reasonable in completely deterministic situations. If, however, at the
point of time when capacities can still be changed, one is not sure of
the dates of future setups, deterministic multi-stage lot sizing is only
of limited value. Of course, one can try to use a rather course time
grid, e.g. weeks, but then the coupling to the short term scheduling
level with its refined time scale is rather difficult. Hence, in non-stable
situations multi-stage lot sizing cannot be recommended.
249
then decides upon the production lot sizes and the dates of release. With
these dates the short term production scheduling can then dispatch the
individual lots according to a specific due date rule.
m(i)
Ti= L Tim (1)
m=1
with
(2)
being the throughput time at stage (or work station) m . Tim is the sum
of lead time W m , manufacturing time Mim and setup time Sim ' Lead
time W m is given by the mean waiting time at work station m which
particularly depends on the lot sizes Qim(m = 1, ... , m(i)) , i = 1, . . . , N
of all products at each station:
Hence, our main concern is to determine lot sizes such that the through-
put time be minimum.
Adopting a JIT-attitude, no inventories other than those built up by the
waiting lines in front of a work station will be allowed. Hence, for a .
product i one has Qi = Qim Vm and the total throughput time is given
by
m(i)
Ti = L T im(Ql, ... ,QN)' (3)
m=1
Feed-
beck Adaptation to the stationary
control multi-stage situation
non-stationary deterministic
non-capacitated multi-staAe model Phase II
Considering the two phases one realizes that the optimal stochastic DP-
problem shown in Fig. 2 is split up mainly into two simpler problems:
Phase I copes with stochastics and capacities, whereas Phase II takes into
account the non-stationary character of a real world production system.
This hierarchical separation is not only done because of computational
convenience, it also reflects the different information status of the phases.
Thus Phase I may be considered to be still 2 months in advance of the
release date. Hence stochastics plays a dominant role. Because of the
comparatively short time range it can even be described to be stationary.
(Note, that seasonal fluctuations are coped with at the medium term
level, s. Fig. 1). Phase II, on the other hand, often is far nearer to the
release date so that demand or at least forecasts of demand are well known
and non-stationarity outweights stochastic fluctuations. Fig. 4 shows the
time scale of planning levels we typically have in mind.
Planning hori~on
~-_·"·/Vm""·-II-------+----mL>=.:::::>=.:<:~>""".:~=:::::::=:i::::=:m=::<:i." , =:w:md
Release
Medium Phase 1 Phase II
date
term
planning
Let us start with the one-stage-case (step A) which, in Step B (Sec. 3.2),
will then be extended to a complete network.
Starting point will be an M/M/1 queueing model for which, in Sec. 3.1.1,
well known analytic results will be derived. The next Section 3.1.2 will
then extend the results to M/G/1- and G/G/1-models and finally, Sec.
3.1.3, gives some useful statistical results for the multi-stage case discus-
sed in step B.
D : Capacity demand
C : Capacity supply
(both measured in processed units per planning period)
Q Lot size (units per lot)
S : Setup time (time per lot)
Derived quantities:
254
Production coefficient ._ 1
q .-(5
Arrival processing time per lot - !i
M -C
Mean setup and processing time T=S+M
Mean production rate J.L=~
,._ D
Mean rate of lots A.- Q
Service rate .- .:lp. -_ DS
P .- Q
+ DC
Degree of capacity utilisation by
setups PS .-
·-
DS
Q
Degree of capacity utilisation by
pure processing Pp .-
.-
D
C
(5)
D+ In
Q* C Vc S (6)
- 1 ( D)·
(5 1- C
Hence, the mean optimal processing time per lot M* = !f- can be ex-
pressed as
M* = pp + vfji; S. (7)
1- pp
Consequently, substituting Q* in (5) the optimal lead time W* is a func-
tion of M*. Furthermore, since M* depends on PP' optimal lead time is
a function of capacity utilisation by pure processing
(8)
w·(/)p )
-
50~ 55~ 60~ 65~ 70~ 75~ 80~ 85~ 90~
Pp f f
course, these limits are quite arbitrary and depend on the lead times
which management deems to be acceptable.
In fact, because of pp = g, Fig. 5 shows the optimal relationship between
lead time and capacity supply C. Since C is determined by medium
term production planning, Fig. 5 exhibits the reaction of the short term
operative level with respect to medium term capacity planning. Hence,
within a multi-criterion decision procedure capacity supply has to be
outweighted against the length of lead time.
Having derived analytical results for the MIMI1 model we will now pre-
sent simulation results for more general models with general distributi-
ons G having variation coefficient smaller than 1. These distributions are
approximated by Gamma-distributions. Figure 6 exhibits the following
important facts:
256
Lead time W
200,----------------------------------------,
100
OL-L-~~~~_L_L~~~~~L_~~~~_L_L~
~ U U U 8 U ru ~ ~ ~
Mean processing time M
So far we considered only the single product case. The main idea, ho-
wever, is to interprete M* as the general mean processing time for N
different kinds of products. Hence, the optimal lot size Qi of product
257
type i is taken to be
Qr = M* ,(i = 1, ... , N)
qi
(9)
with qi denoting production time per unit. Taking Qi, garantees that
each product type is produced "in its lead time minimum" , showing again
the high priority we are giving to its optimum and hence to the JIT-
principle. Of course, for different product types, lot sizes Qi and the
number of setups may differ.
Moving to the more realistic case (step B) of more than one bottleneck,
however, it is no longer possible to fix Qi by (9). In fact, it will be
necessary to harmonize the individual optimal lot sizes Qi at different
bottlenecks resulting in lot sizes Qf!. Consequently, qiQf! (i = 1, .. . , N)
fluctuate about M*. Hence it is of importance to study the influence
of this fluctuation on optimal lead time W*. Fig. 7 shows the typical
result. It is comforting to recognize that for all values of PP' as long as
VCM ::; 0.5, W* does only insignificantly depend on VCM, with VCM
being the variation coefficient of processing time M.
The results in Fig. 7 are of similar importance than those in Fig. 6. They
will subsequently be used within several test calculations.
Let us now consider the multi-stage case of having more than one bott-
leneck. Typically, for each work station m we will now have specific lead
time-optimal lot sizes, and hence Qim =1= Qiml' Persuing a pure JIT-
attitude we shall try to harmonize lot sizes without any WIP other than
that waiting for processing in front of a machine. In Sec. 3.3 we then
present an illustrating example which summarizes the whole procedure
of Phase 1.
For a serial structure a harmonisation of lots Qim can be achieved by
258
w·
.9 .8 .7 .8 .5 .4 .3 .2 .1
VC M
m=l
2:= IQim - Qf I ~ mw'Vi
Q;
with dim and dim describing positive and negative limits for the "har-
monized lot size" Q~ to deviate from Qim ' Instead of the symmetric
criterion (10) one could also use the non-symmetric criterion
m(i)
with
259
In choosing aim and f3im appropriately one can take into account the
non-symmetric feature of the minima as shown in Fig. 6.
Optimizing (10) or (11) results in an optimal harmonized lot size Qf1*.
For a complete symmetric harmonisation, taking e.g. as a criterion
2::~i (Qim - Qf1)2, one simply obtains the arithmetic mean
m(i)
H* 1 ~ * (12)
Qi = m(i) ~ Qim'
m=l
Having calculated Q{l* one has now to check whether the new lot size
still implies minimal lead times. Of course, such a test calculation could
be incorporated in the above minimization models. Since one of the test
criteria is non-linear (s. equ. (16) below) this would imply, however, the
solution of a non-linear model.
Test calculation
(14)
N
- 1 ~H
M m := J( ~ni . M im (15)
i=l
260
with
K
]{:= 2: n fi
i=l
we have now to make sure that M m does not deviate too much from M* ,
i.e. M ~ M* (s. Fig. 6). Similarly, we calculate the variance
(16)
and must check whether ~m :::; 0.5, at which point (s. Fig. 7) the variance
of processing time is acceptably smalL
If the test fails then at least two measures may be taken: .
(1) Adapt the parameters in the above optimization problems.
(2) Adapt capacities. This adaptation is along with the ideas of a JIT-
attitude. Only if we accept additional WIP one would turn to diffe-
rent lot sizes at different bottlenecks.
products
1 2 3 4 5
Di 1000 1000 500 440 400
qil 0.05 - 0.2 0.15 0.1
qi2 0.04 0.07 0.1 - 0.2
machines. Taking into account the dates of Table lone obtains a manu-
facturing demand for machine 1 of Dl = 1000·0.05 + 500 ·0.2 + 440·
0.15 + 400·0.1 = 256h resulting in
Dl 256
PPI = Cl = 320 = 80% and M; = 12.8h.
Analogously one obtains M; = 9.6h. Hence, the product specific lot sizes
are Qim = q:m M:'n. For i = 1 and m = 1 this results in Qil = ~~o~ = 256
units. The first 2 columns of Table 2 give the results for all products.
-H*
product Qil Qi2 Q{l* n!f
t Qi
1 256 240 248 4 250
2 - 137 137 7 143
3 64 96 80 6 84
4 85 - 85 5 88
5 128 48 88 5 80
Applying the simple arithmetic mean (equ. (12)) one obtains the harmo-
nized lot sizes in column 3 of Table 2. These lot sizes are not yet those
that can be used in practice, since it seems to be reasonable to produce
a certain (integer) number of lots during the planning horizon. Hence,
the number of lots is given by equ. (13) resulting in the figures shown in
column 4 of Table 2. As a consequence one obtains adjusted lot sizes (s.
equ. (14)) as shown in the last column of Table 2.
Finally, a test calculation has to be performed. For each product and each
machine we calculate the processing times yielding the values given in
Table 3. This results in mean values (equ. (15)) and standard deviations
(equ. (16)) as also shown in Table 3
262
-H*
product Qi n·, Mil Mi2
1 250 4 12.5 h 10.0 h
2 143 7 - 10.0 h
3 84 6 16.8 h 8.4 h
4 88 5 13.2 h -
5 89 5 8.0 h 16.0 h
number of lots 20
Mm 12.8 h 10.9 h
Sm 3.3 h 2.8 h
VC M 0.26h 0.26h
As we know from equs. (1) and (2) the optimal total throughput time is
given by
m(i)
T; = 2: (W~ + Mim + Sim), (17)
m=l
263
and hence, denoting the lot-finishing date (due date) by tf, the release
date tf is given by
(18)
Though the optimal lot processing time M:nis almost the same for all
kinds of queueing models, this is not the case for the lead time (s. Fig.
6). Therefore, in calculating W:n we do not use equ. (5), but the well
known Pollaczyk-Khinchin formula
Lead time
50r-------------------------------------~
40
30
20
10
weeks
1 2 3 4 5 6 7 8 L:
demand 130 70 110 120 190 130 180 70 1000
Qt 250 - 250 - 250 - 250 - 1000
stock 120 50 190 70 130 0 70 0 630
Qt 200 - 230 - 320 - 250 - 1000
stock 70 0 120 0 130 0 80 0 400
Table 4: Non-stationary adaptation
Of course, an adaptation of lot sizes to non-stationarities should not in-
crease optimal lead times. Hence, a test calculation has to be performed.
265
Having calculated lot size adaptations and release dates for each work
order we may now enter the short term scheduling module. Let us assume
that for each work order i due dates are known. As mentioned earlier,
it seems to be reasonable to use a due date criterion. Hence, for each
work station m let us use a priority rule giving priority to that work
order i which has the highest delay Dim . This delay can be calculated as
follows. Before entering workstation m the remaining throughput time
RTim is given by
m(i)
which, with T NOW being the actual scheduling time, results in the delay
(21)
Comparing the 6im-dispatching rule with other priority rules like the
well-known FIFO-rule or the shortest processing-rule one obtains promi-
sing results (s. HAFNER). This holds particularly for criteria like the
"percentage of delayed orders" , the "variation coefficient of delays" , and
the "maximum delay" .
Often in practice a due date is not given. Instead a reordering point or
a safety stock for finished goods has to be taken into account. In that
case one would have to forecast a due date or use a 6RISK-rule as shown
in SCHNEEWEISSjSCHROEDER. With this rule, that work order is
given highest priority for which the probability of being out of stock is
greatest.
266
I
medium term planning
determination of
stationary capacities
stochastic.
optimal lot.iua and Phase I
throughput time.
(stationary ca.e)
- relea.e date.
adapted size of lots
(non-stationary cue)
Phue II
With these lots and throughput times we were then able to use as a short
term scheduling rule a simple delay rule. More complicated rules, taking
into account, e.g., capacities turn out to be not necessary since capacity
adaptations have already been considered on a higher level (s. Fig. 9).
The QT-Approach, as it was presented in the main body of the paper,
used a markovian Jackson-Net approximation to calculate optimal lot
267
sizes. The pertaining lead times, however, were then calculated for more
realistic distributions. All calculations were restricted to realistic serial
production structures. Non-serial structures, however, can also be taken
into account (HAFNER).
One of the nicest features of the presented approach are the interfaces of
the work order planning module (Phases I and II) with the higher and
lower modules. With respect to the medium term planning module there
is no abrupt disaggregation of the medium term quantities of finished
goods to individual items. Instead, only general lot processing times
are calculated taking into consideration the capacities determined at the
medium term production planning stage and the stationary stochastics
of the short term scheduling stage (s. lower feedback arrow in Fig. 9). On
the other hand, with respect to short term scheduling taking forecasts (s.
feeback arrow in Fig. 9), non-stationarity is smoothly introduced by the
adaptation procedure of Phase I.
In fact, Phases I and II describe two different hierarchical planning levels.
Phase I, in calculating setup frequencies, is mainly concerned with aiding
to adapt capacities on the medium term planning level (see upward arrow
in Fig. 9). Hence, the calculation of this phase should only be done e.g.
every three months. Having the setup frequencies one may then in Phase
II, adapt lot sizes (Q --* Q) much more frequently, which, in fact, has
to be done, if one applies the proposed QT-Approach within a rolling
horizon regime.
268
References
Abstract
The development of production plans for the CIM hierarchy directs the firm's
manufacturing activities over an extended time horizon. All of the subordinate CIM functions
(e.g. production scheduling, material and capacity requirements planning, purchasing, and
others) are impacted by this plan. The fIrst step in the development of a production plan is the
specifIcation of an appropriate planning horizon--a complex task that is plagued with numerous
uncertainties. To address this task, this paper views the production planning problem as a two-
point boundary value problem where boundary conditions must be specifIed at both the
beginning and at the end of the planning horizon. A diffIculty arises in the specifIcation of the
ending boundary conditions since they are generally unknown. Furthermore, an incorrect
specification can have a significant, perhaps detrimental, effect upon the quality of the
developed plan. An additional requirement for the planning horizon is that it be of suitable
duration to permit an effective integration of production planning with the other CIM functions.
The reported research addresses the uncertainties in specifying the boundary conditions.
An integrated solution approach that employs both Monte Carlo simulation and mathematical
programming is used to consider the inherent uncertainties associated with the production
planning problem. For the considered computational examples, it is shown that the
specifIcation of boundary conditions do effect the quality of the derived production plan.
Furthermore, the results also suggest that planning epochs exist. The observation of planning
epochs implies that a variable length planning horizon, rather than a constant length horizon,
should be employed within the context of a rolling horizon implementation of production
planning. Using this approach, the planning would be performed to the end of the current
epoch where boundary conditions can be specifIed with greater accuracy. Finally, the issue of
establishing the length of an epoch is discussed.
271
1. Introduction
Since finished product demands vary over time and often demonstrate seasonal
variation, production planning (PP) over an extended horizon becomes essential in preventing
myopic resource allocations. The considered planning horizons are typically subdivided into
discrete time units, commonly known as production periods. PP is then performed for each of
these production periods so that production resources are efficiently allocated, given the
realized and anticipated product demands.
A hierarchical production planning (HPP) approach (see Bitran and Hax, 1977; Bitran,
Haas, and Hax, 1981 and 1982) has been predominantly advocated for modeling PP decisions.
HPP decomposes the overall PP problem into a series of decision levels and corresponding
subproblems. At the highest or aggregate production planning (APP) level, products and
resources are typically aggregated into common groups. Often, a planning horizon of a year or
more with monthly planning periods is commonly employed in planning for the aggregate
product groups. At the lowest or the detailed production planning (DPP) level, planning
horizons of a week or two with daily planning periods are considered as more frequent and
specific production decisions must be made. The eventual outcome of the HPP process is a
master production schedule (MPS) that specifies the quantities and timings for producing
various end products.
The importance of an "integrated systems approach" in providing more robust computer-
integrated manufacturing (elM) systems is widely recognized by researchers and practitioners.
To achieve higher levels of integration, more manufacturing functions must be eventually
addressed by elM systems. The incorporation of PP into the elM decision-making and
control hierarchies appears to be especially important as the developed production plans will
direct the manufacturing activities over the extended time horizons. As a result, the efficiency of
all subordinate elM functions, such as production scheduling, are ultimately impacted by these
plans. If existing HPP frameworks are to be incorporated into elM systems in an effective
manner, these hierarchical models must be significantly enhanced (see Davis, Thompson,
White, 1990; and Davis, Thompson, White, 1991). Specifically, improved methods must be
developed for considering interactions among hierarchical decision levels, integrating the
associated decision making and control, dealing with the high level of uncertainty in the
planning environment, and determining the most appropriate planning horizons for the various
PP decision levels. While all of these issues are very important, this paper focuses on the issue
of specifying the appropriate planning horizons for the HPP decision levels, which is
necessarily the first step in the development of a production plan. The specification of the
planning horizon length will directly influence the planned production quantities for the final
products during each included production period. It will also affect the computational efficiency
272
of the modeling as the number of decision variables increases with each additional production
period included in the planning horizon.
While planning horizon studies have been performed for both the PP and the lot sizing
problems (see Baker and Peterson, 1979; Bookbinder and Hng, 1986; Carlson et aI., 1982;
Chung, et al., 1988; Kunreuther and Morton, 1973, 1974; McClain and Thomas, 1977; Miller,
1979; Nagasawa, et al., 1982, 1985; Sastri and Feiring, 1989; and Sridharan, et al., 1987),
these investigations have made one or more of the following restrictive assumptions: (1) a
deterministic planning environment, (2) a single finished product, or (3) unconstrained
production capacity. The relaxation of one or more of these assumptions can have a significant
impact on the planning horizon. In practice, the most likely PP scenario would require the
relaxation of all these assumptions. As a result, the objectives of this study were to examine
planning horizon behavior within an uncertain, multiple product, and a capacitated PP
environment. The objectives further included the identification of methods that could be
employed to specify planning horizons for this type of production environment.
In pursuing these objectives. section 2 defines planning horizons and discusses their
delineation on the basis of conceptual arguments and constraints within the production
environment. In section 3, an integrated solution approach, employing both Monte Carlo
simulation and linear programming, is presented as it was used to experimentally investigate the
consequences of various planning horizon specifications for a few computational examples.
Computational results are then presented and discussed in section 4 with reference to planning
horizon specifications. The summary and conclusions are provided in section 5 and include
suggestions for specifying planning horizons and areas for future research. Finally, the
Appendix provides the data used in the computational examples of this study.
(Pt), as defined here, would normally be a function of the available personnel and equipment,
where "t" again refers to the production period.
Therefore, the initial and final boundary conditions required for the two-point boundary
value problem can be formally stated as follows:
With respect to the initial conditions [1], it is reasonable to assume that they are known or can
be specified with near certainty. On the other hand, the final boundary conditions [2] are
generally not known with certainty and may be very difficult to estimate.
Given that the final boundary conditions cannot be specified with certainty, selecting an
appropriate planning horizon is an important issue. Planning horizons which are too short lead
to inefficient production quotas and planning horizons which are too long result in
computational inefficiencies and difficulties. The minimum appropriate planning horizon length
(T*) might be defined as the length of time into the future for which planning must be
performed so that production quotas for the current production period are not significantly
different from those obtained when planning is performed using successively longer horizons.
That is, a planning horizon length of T* is indicated when it provides roughly the same
production quotas for the current production period as planning horizons of length T*+ 1
through T*+oo, where T*+ 1 and T*+oo indicate the addition of "1" through an infinite number
of production periods, respectively. The underlying observation is that once the planning
horizon becomes of sufficient length, the production quotas for current period become relatively
independent of the final boundary conditions. The existence of T*, commonly referred to as
the strong planning horizon, has been reported by Wagner and Whitin (1958) , Eppen et al.
(1968), Pekelman (1975), and Chung et al. (1988). Please note, however, that in some
instances the existence of production constraints, such as procurement lead time, may require
the consideration of a planning horizon longer than T*. If this occurs, the longer of these two
planning horizon lengths would be employed.
If we assume strong planning horizons exist for all PP problems, then the resolution of
the planning horizon issue largely becomes a process of determining methods for efficiently
finding T*. For a few extreme PP scenarios, the identification of T* appears to be trivial. For
example, T* would be a single production period if finished product demand can always be
satisfied in the period in which it occurs without using inventory. On the other hand, if product
demand is expected to continually overtax production capacity and there will never be an
opportunity to inventory finished products, T* would again be a single production period. In
more realistic production environments, where inventory use or production capacity changes are
274
Units of
Demand/ - - Cumulative Demand
Production
- - Cumulative Production
8000
7000
~rs: Planning I ~;~;:d
I
6000 Planning
~yce .,:... •
5000
4000
3000
2000
1000 ~----------"= Regenerative Points
o
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Production
Period
An integrated solution approach was employed in this planning horizon study. This
integrated solution approach combined linear programming with Monte Carlo simulation (see
Figure 2) to assess the consequences of uncertainty and capacity constraints while examining
the effects of different planning horizon lengths.
The modeled PP scenario for this study was a three-resource, three-product, fixed
workforce linear program (LP). This is the same linear programming structure that was
previously used by Thompson and Davis (1990) for modeling PP, but it is repeated here to
provide a complete presentation of the work (see equations [3] through [10] below).
Maximize:
NT NT NT MT
L L
n=l 1=1
SntSnt - L L
n=l t=l
XntXnt - L L
n=l 1=1
intInt - L L
m=l 1=1
OmtOmt [3]
subject to:
In,t-1 + Xnt - Int - r nt Bn,t-1 + Bnt = d nt [4]
[5]
L
n=l
PnmtXnt - Omt ~ emt [6]
[7]
[8]
N
L I nt ~ q ~otal [9]
n=l
[10]
Where n = 1, ...,N; m=I, ... ,M; t=l, ... , T (N=3; M=3; T=2, 3, ... , 39) and the remaining
LP notation is as follows:
Construct LP Structure
No
Regarding the above LP notation, the decision variables and coefficients (constants) are
denoted by upper and lower case letters, respectively. The specific data, statistical distributions,
and sampling procedures used in constructing the randomly sampled LPs are described in the
Appendix. Randomly sampled LPs were solved by using XMP FORTRAN subroutines (see
Marsten, 1981).
In reference to the experimental procedures, the effects of planning horizon length were
mainly examined in terms of the first period production quantities (Xn 1's). The reason for
focusing on the Xn 1's is that within the typical rolling horizon approach, only the production
quotas (quantities) of the upcoming or current production period are actually employed. The
production quotas for the subsequent production period are planned at the end of the current
period by moving the planning horizon ahead one period and then replanning when the end of
the current period is realized. In this manner, planning is based upon the most up-to-date
forecasts, which are maintained for a constant T production periods into the future. When the
Xnl's define the production plan, as is the case in rolling horizon implementation, they become
the principal concern with respect to specifying a planning horizon.
While studying planning horizon behavior, cyclic product demand patterns were
employed. To consider the effect of planning for X n l 's at different points within the demand
cycle, four computational scenarios were investigated. In Figure 3, these scenarios are labeled
as Base 1, Base 2 , Base 3, and Base 4 Demand. For each of these four demand scenarios,
planning horizon lengths of 2 to 39 production periods were systematically examined. Note that
1000 randomly sampled LPs were solved for each planning horizon length. Overall, 152,000
278
LPs were generated and solved using the integrated solution approach. The size of these LPs
range from 30 decision variables and 32 structural constraints (the 2 period problem) to 585
decision variables and 624 structural constraints (the 39 period problem). The computational
results provided by these optimal LP solutions will now be summarized and discussed.
4. Computational Results
To examine relationships between planning horizons and the selected Xn l's, two
approaches were employed. The first approach was to graphically study the behavior of Xn l's
with regard to planning horizon length and also net inventory. The second approach attempted
to distinguish the appropriate planning horizon len~th by statistically comparing the means of
the Xnl's. More specifically, an attempt was made to identify a T* that had Xnl's that were
statistically equivalent to those of T*+ 1 through T*+oo (see Figure 4).
When the means of Xn l's and planning horizon length were graphed, the results
suggested that Xn l's do eventually stabilize or reach a steady state value. It was further
observed that the total first period production quantity (XNO stabilized with the Xn l's of the
individual products (see Figure 5). For instance, all Xnl's of the Base 1 Demand appeared to
stabilize once the planning horizon length became 8 production periods or greater. Similar
behavior was observed for the other three base demands, but the stabilization point was
dependent on the specific base demand scenario (see Figure 6). As an example, the XNl of the
Base 2 Demand appeared to become stable once the planning horizon length reached 4
production periods. The observation that planning horizon length varies with the location of the
first production period in the overall demand cycle has also been reported by Chung et al.
(1988). Another important observation with reference to Figure 6 is that the Base 3 and Base 4
Demand scenarios seem to be relatively stable from the start. These two base demands appear
to be approaching special planning circumstances in which a planning horizon of only a single
production period may be sufficient. In the case of the Base 3 Demand, the first production
period is at highest point on the total demand cycle. As a result, the production capacity would
generally be for meeting total product demand for that period and the opportunity to build
inventory would rarely occur. Similarly, Base 4 Demand also results in a tight relationship
between demand and production capacity in the first production period.
To investigate the relationship between net inventory and the stabilization point (SP) of
the XN1's, average net inventory was computed for the 1000 optimally solved LPs of each base
demand in which a planning horizon of 39 production periods was employed. The reasoning
behind these computations was to try to estimate points where the net inventory would likely be
279
~ 2500
·2
::::> 2000
.s
"d 1500
§
e 1000
o 500
o1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
Production Period
3000
l!l 2S00
·2
::::> 2000
.s
"d 1500
§
e 1000
Q 500
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
Production Period
3000
l!l 2500
8 2000
.s 1500
"8
ro 1000
5
Q SOD
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
Production Period
Figure 3 -- Average Product Demands Illustrated over 26 Production Periods for the
Four Scenarios.
280
T
Xu
, ,
T
X2,1 Planning Horizon of
T Production Periods
T
X3 ,1
t2 p~~
I I
II .-
1 3 4 T
XT+l
1,1
, , , , ,II ,
XT+l Planning Horizon of
2,1
T+1 Production Periods
XT+l
3,1
~
1 2 3 4 5 T+l
Hypotheses Tested:
-T -T+I
1. Xu = XI,I
-T
2. X2,l =-T+I
X 2,l
3• -T -T+I
X3,l = X3,l
3 3
-T
~
4. 4J Xn,l = 4J -T+I
~
Xn,l
n=l n=l
Xnl in
--..
Units
1400
--~--~---- ..... -,----...,------................-----~-."...,..---,,-- ....---..
1200 - Product 1
Base 1 Demand Product 2
1000 - -- Product 3
800
. . . . . . " . · .. _ - _ . . . . oo _ • • • • - ,, _ _ _ _ _ - " ' - - . - - _ . - . - . . . . . . . . . . . . . . . . . . . - .. - . - - - - - -. . . - - - . . . . . . . . . . . . . , , - - _ . - . " - . - . . . - • • • _ - , - - _. . . . - _ .
600
400
XNl in
Units
2800
Base 1 Demand
2600
2400
2200
2000
XN1 in
Units
2800
2600
2200
2000
1800
2 345678 91011121314151617181920212223 242526 27282930313233343536373839
Planning Horizon Length in Production Periods
~1in
Units
2800
2600
2400
Base 3 Demand
2200
2000
1800
2 3 4 5 6 7 8 9 10 1112 13 14 1516 17 181920 21 22 23 24 25 262728 293031323334 3536373839
Planning Horizon Length in Production Periods
XN1 in
Units
2800
2600
Base 4 Demand
2400
-
2200
2000
1800
2345678 9 10 111213 1415 1617181920212223 24 25262728 29 3031323334 3536 37 3839
Planning Horizon Length in Production Periods
zero if an infinite planning horizon was considered. While a 39 period horizon is far less than
an infinite one. XN l's generally stabilized in planning horizons of 8 periods or less. and
therefore. it is expected that the zero net inventory points of the optimally solved 39 period
problems would approximate the corresponding points from optimally solved problems with
infinite planning horizons. Recall. the significance of these zero net inventory points is that
they should indicate the decoupling points in planning. and thus. delineate planning epochs.
In Figure 7. the net inventory is shown as a function of the production periods for the
four base demands. Note in the cases of Base 1 and Base 2 Demands. the stabilization points
for the XN1 's and the first zero point for net inventory appear to occur in the same production
period (see Figures 5(b). 6. and 7). For the Base 3 and Base 4 Demands. the net zero inventory
point appears to be different than the stabilization point for the XNl 'so However. as discussed
above. the Base 3 and Base 4 Demand scenarios represent special planning circumstances where
the first period demand often exceeds capacity and backordering occurs. Furthermore. it is
difficult to clearly distinguish the stabilization point from the data presented in Figure 6.
Regardless of planning horizon length. the relatively differences in the means of XN 1's were
small (less than 3%) for the Base 3 and Base 4 Demands.
As discussed above. the means for the first period production quantities were also
statistically compared at 0.01 and 0.05 (type I errors) levels of significance. As indicated in
Figure 4. the purpose of these comparisons was to explore the possibility of identifying
stabilization points through statistical procedures. During subsequent comparisons. the mean of
each stabilization point (X~l) was identified graphically (see Figures 5(b) and 6). These means
were then systematically compared to the means beyond the stabilization points
(X~/ t : t=1 ..... ,39-sp). In both sets of comparisons, statistical differences in the means
were evident well after the stabilization points. For example. in the case of Base 4 Demand.
there was sufficient statistical evidence to suggest that ~1 and ~1 were different at both a 0,01
and 0.05 level of significance. The same result occurred when Xf(l and X&'i were compared as
well as for many other comparisons made for the Base 4 Demand. Similar statistical results
were also observed for the Base 2. Base 3. and Base 4 Demands. These outcomes were
somewhat surprising as the relative difference in these means beyond the stabilization points
were generally small (less than 5%). More importantly. though. these results suggest that it
may be difficult (or even impossible) to identify a planning horizon of length T* that provides
the same Xnl's (statistically) as planning horizons of length T*+ 1 through T*+oo.
284
Netlnv,
1200
1000
800
600
400
200
o
-200
-400
-600
-800
1 23 4 5 6 7 8 9 101112131415161718192021222324252627282930313233343536373839
Production Period
Netlnv,
1200
1000
::::~~~~:~:ii~~p$!:---··-- ---... ------... -----... -----... -----... ------... -----.
800
600
400
200
o
-200
-400
-600
-800
23 45 6 7 8 9101112131415161718192021222324252627282930313233343536373839
Production Period
Netlnv,
1200
1000
800
600
400
200
o
-200
-400
-600
-800
123 456 7 8 9101112131415161718192021222324252627282930313233343536373839
Production Period
Net lnv,
1200
1000
-----····-::::::-::$~~~:ii~iQ~it<i==-=::::::-::::=::::==:===::::: ... -----.... ----
800
600
400
200
o
-200
-400
-600
-800 -+-r-1r-t--t--t-,_"_,_"_,_,_,_"_,_"_,_"_,_,_"_"_,_, I I I I I I I I I I
23 4 5 6 7 8 9 101112131415161718192021222324252627282930313233343536373839
Production Period
Figure 7 -- Net Inventory for the Four Base Demands Over a 39 Period Planning Horizon,
285
6. References
Baker, G. R, and Peterson, D. W., "An Analytic Framework for Evaluating Rolling
Schedules," Management Science, Vol. 25, 1979, pp. 341-351.
Bitran, G. R., Haas, E. A., and Hax, A. C., "Hierarchical Production Planning: A
Two-Stage Systems," Operations Research, Vol. 30, 1982, pp. 232-251.
Britran, G. R., and Hax, A C., "On the Design of Hierarchical Production Planning
Systems," Decision Sciences, Vol.8, 1977, pp. 38-55.
Bookbinder, J. H., and H'ng, B. T., "Rolling Horizon Production Planning for
Probabilistic Time-Varying Demands," International Journal of Production
Research, Vol. 24, 1986, pp. 1439-1458.
Chung, C., Chen, I., and Cheng G. L. Y.,"Planning Horizons for Multi-Item
Hierarchical Production Scheduling Problems: A Heuristic Search Procedure,"
European Journal of Operational Research, Vol. 37, 1988, pp. 368-377.
Davis, W. J., Thompson, S. D. , and White, L. R., "Decision Making and Control
Schema for Production Planning in CIM Systems", Joint US/German Conference on
New Directions for Operations Research in Manufacturing, National Institute of
Standards and Technology, Gaithersburg, MD, 1991 (in press).
Eppen, G.D., Gould, F.J., and Pashigian, B.P., "Extensions of the Planning Horizon
Theorem in the Dynamic Lot Size Model," Management Science, Vol. 15, 1968, pp.
268-277.
Kunreuther, H. c., and Morton, T. E., "Planning Horizons for Production Smoothing
with Deterministic Demands - I. All Demand Met from Regular Production,"
Management Science, Vol. 20, 1973, pp. 110-125.
Kunreuther, H. C., and Morton, T. E., "General Planning Horizons for Production
Smoothing with Deterministic Demands - II. Extensions to Overtime, Undertime, and
Backlogging," Management Science," Vol. 20, 1974, pp. 1037-1046.
McClain, J. 0., and Thomas, J., "Horizon Effects in Aggregate Production Planning
with Seasonal Demand," Management Science, Vol. 23,1977, pp. 728-736.
287
Nagasawa, H., Nishiyama, N., and Hitomi, K., "Decision Analysis for Detennining
the Optimum Planning Horizon in Aggregate Production Planning," International
Journal of Production Research, Vol. 20, 1982, pp. 243-254.
Nagasawa, H., Nishiyama, N., and Hitomi, K., "Decision Analysis for Detennining
the Optimum Planning Horizon in Aggregate Production Planning. Part 2: Difference
Between Planning Horizons in Weekly and in Monthly Schedulings," International
Journal of Production Research, Vol. 23, 1985, pp. 423-436.
Pekelman, D., "Production Smoothing with Fluctuating Price," Management
Science, Vol. 21, 1975, pp. 576-590.
Sastri, T., and Feiring, B. R., "Sequential Optimization and Revision of Production
Plans Over Time," Computers in Industrial Engineering, Vol. 17, 1989, pp.
372-377.
Sridharan, V., Berry, W. L., and Udayabhanu, V., "Freezing the Master Production
Schedule Under Rolling Planning Horizons," Management Science, Vol. 33, 1987,
pp.I137-1149.
Thompson, S. D., and Davis, W. J., "An Integrated Approach for Modeling
Uncertainty in Aggregate Production Planning," IEEE Transactions on Systems,
Man, and Cybernetics, Vol. 20, 1990, pp. 1000-1012.
Wagner, H.M., and Whitin, T.M., "Dynamic Version of the Economic Lot Size
Model," Management Science, Vol. 5, 1958, pp. 89-96.
During the implementation of the integrated solution approach, the limits on inventory
(qnt and q~otal), were modeled as being deterministic. The qnt values were set at 1000 while the
value given to each q~otal was 3000. The remaining coefficients (constants) in the LP structure
(equations [3] through [10]) were treated as random variables. The data and randomly sampling
procedures used to generate values for these random variables will now be discussed.
First period (t=l) cost coefficients for the objective function (sn1, Xn1, in1, and omI)
were randomly sampled from uniform distributions. Their upper and lower unifonn
distribution limits are given in Table 1. To model trends in cost, the values of the cost
coefficients for subsequent periods (t ~ 2) were determined using a sequence of generalized
Bernoulli trials. This process involved using the value of the cost coefficient from the previous
period and a randomly sampled change coefficient (see Table 2). The process is summarized by
the recursive relationship,
(c. coeff.l nt = (c. coeff.ln t-1 + (.-1) (c. coeff.)n,t-1, n=l, ... ,3; t=2, ... ,T [11]
288
The retention of backorders from period to period (rnt) was simply modeled with a
uniform distribution. The upper and lower limits of this distribution are also listed in Table 1.
Table 1. Uniform Distribution Limits for Selling Price (Snt), Production Cost (Xnt), Inventory
Holding Cost (int), Backorder Retention (rnt), and Overtime Cost (omt) .
Change
Coefficient Percent Change (Associated Probability)
~f, -2.00 (0.40) 0.00 (0.20) 2.00 (0.40)
01, 0.00 (0.20) 2.00 (0.40) 3.00 (0.40)
OJ, -2.00 (0.40) -1.00 (0.40) 0.00 (0.20)
~~, -2.00 (0.40) 0.00 (0.20) 2.00 (0.40)
~, 0.00 (0.20) 1.00 (0.40) 2.00 (0.40)
Of, -2.00 (0.40) 0.00 (0.20) 2.00 (0.40)
~i. -1.00 (0.35) 0.00 (0.30) 1.00 (0.35)
~, -2.00 (0.35) -1.00 (0.35) 0.00 (0.30)
~i, 0.00 (0.20) 2.00 (0.40) 3.00 (0.40)
~?, -1.00 (0.25) 0.00 (0.50) 1.00 (0.25)
~, 0.00 (0.50) 1.00 (0.25) 2.00 (0.25)
~, 0.00 (0.60) 1.00 (0.30) 2.00 (0.10)
Table 2. Change Coefficients and Associated Probabilities for Selling Price, Production Cost,
Inventory Cost, and Overtime Cost.
Resource capacity coefficients (cmt and Omt) were modeled as being normally
distributed. The means and standard deviations for these coefficients are given in Table 3. The
289
consumption rates of the resources (Pnmt) by the products were also modeled with normal
distributions. The means and standard deviations for these consumption rates are provided in
Table 4.
Table 3. Means and Standard Deviations of Regular Time and Overtime Time
Resource Capacities.
LP
Coefficient Mean Std. Dev.
Pllt 0.2 0.010
P12t 0.4 0.020
P13t 0.0 0.000
P2lt 0.2 0.010
P22t 0.1 0.005
P23t 0.2 0.010
P31t 0.0 0.000
P32t 0.3 0.015
P33t 0.2 0.010
Table 4. Means and Standard Deviations for Product Consumption of Resource Capacities.
The demand for each product during each period (dnt) was modeled with a normal
distribution. Table 5 gives the means and standard deviations for the first 13 periods of the
base product demand. Note that when longer planning horizons were examined, the means and
standard deviations of the first 13 periods were simply repeated, starting with the first
production period.
Finally, note that the initial and final conditions for inventory and backorders (In,O,
In,T, Bn,O, and Bn,T) were set at zero for the computational experiments.
290
Abstract
1 Introd uction
A real-time lot-sizing heuristic is developed for a high volume manufacturing system subject
to significant, random setup times. This heuristic allocates random excess available capacity
to future production while fulfilling current requirements. It is motivated by the scheduling
requirements of a medical device manufacturer. The facility consists of a multiple stage process
with a long and short term bottleneck (Goldratt, 1986) at the first stage (Stage One) where
machines have setup times which are significant and of random durations. Burman and Gershwin
(1992) suggests a two-step process for scheduling one of these machines which focuses first on lot-
sequencing and then separately on lot sizing. It is assumed that the first step of this process has
been completed and that a given part type sequence called the L list must be adhered to in the
current week of production. The amount of each part type to produce must be determined while
maintaining this established sequence. By making too little, an opportunity for reducing setup
time requirements in a future week may be lost. By making too much, present requirements
may be jeopardized.
decomposition of the system. Each level in the hierarchy deals with decision making at different
time scales which may be modeled separately (Figure 1).
In this paper, we concentrate on the lowest level of the hierarchy (lot sizing). The proposed
heuristic avoids the complexity often encountered in more common combinatorial optimization
approaches to such discrete event problems (Baker and Scudder, 1990). Dynamic lot sizing
may also be approached as a variation of the Economic Lot Sizing Problem (Elmaghraby, 1978;
Wagner and Whitin, 1958). These approaches analyze aggregate dynamics based on average
values for production rates and setup times. Lot sizes are adjusted based on weekly demand and
capacity fluctuations. This overlooks the details required for responding to short term random
events, as we do in this paper. Others treat the problem deterministically (Trigeiro, 1989) or as
a queueing system (Shioyama and Kise, 1989). These methods are frequently restrictive, tend
to be more descriptive rather than prescriptive and are not practical in real time.
The goal of our work is to develop a policy which is based on a real problem and can be
implemented. Recent literature reviews of production research identify practical research as a
domain which has been neglected (Graves, 1981; Rodammer and White, 1988; Burman, 1992a).
Paper Summary Section 2 provides a list of key definitions for the paper. Section 3 details
the manufacturing environment. Section 4 develops the dynamic program which is used to
characterize the optimal controller and provides an example problem. Section 5 discusses the
results of numerical experiments and the heuristic development. Section 6 compares the heuristic
with other controllers and current manufacturing practices. A list of future research directions
and summary remarks are provided in the Conclusion in Section 7.
295
2 Definitions
The concepts of machine setup, lot sequencing, lot sizing and closed loop feedback are
essential to understanding this paper.
A setup is a change in the machine configuration. The setup time is the time required to
switch machine configurations between the production of two different part types. Stage One
has setup times which are significant and of random durations.
A lot is a number of parts, all of the same part type, made contiguously within a production
schedule. Lot sequencing is the determination of the order of setup changes. Lot sizing is
the determination of the amount of each part type to produce. Burman and Gershwin (1992)
suggests a combined two-step scheduling process which focuses first on lot-sequencing and then
separately on lot sizing for our problem. Lot sizing is often complicated by random production
times, variable demand, machine failures and random setup times. In this paper, it is assumed
that the only randomness in the system is the duration of setup times.
The system state is the critical information required to make a control decision. Closed loop
feedback control specifies the action to be taken at every moment as a function of the system
state. Figure 2 illustrates a feedback cycle: the system state is determined ( e.g., how much time
is left in the week, remaining demand requirements, etc.); a control action is implemented based
on a measurement of the system and a feedback law; the system state changes in reaction to the
control and the environment; and the cycle is repeated. The system state in our problem is the
current time, the number of projected lot requirements completed and the number of completed
setups. The control action is to build more within the current configuration or to set up to
another configuration.
I
Evolution of
System State Measurement
Due to Control of the System
Action and the State
Environment
Action Based on System
t State and Feedback
Control Policy
3 System Description
This paper concentrates on the development of an algorithm for the control of one machine
with significant and random setup times. Every Monday morning, demand for a number of
different part types is provided which must be scheduled to be produced for delivery by Friday
evening of that same week. It is assumed that the number of hours available for production is
fixed. In establishing the weekly demand, management makes certain that the maximum amount
of time required for production and setups is less than the number of hours available, for a given
level of confidence. Orders required by the end of the current week are frozen (Sridharan and
Berry, 1990) and may not be altered. Projections for the following week are provided at the
same time. These projections rarely differ from the actual orders. Current demand must be
completed by the end of the week with a high level ofreliability.
System conditions are such that enough raw material upstream and enough buffer space and
capacity downstream exist so that Stage One is almost never blocked or starved. Therefore,
Stage One is both a long term and short term system bottleneck (Goldratt, 1986) and the focus
of our work. The cost of multiple tooling prohibits the production of any part type on more
than one machine. We thus suggest that the entire system be scheduled by controlling each of
the first stage machines independently by the same efficient algorithm.
The system must have excess short term capacity to account for variability. This excess
time may be used to create inventory. In this facility, inventory has a very low cost, little
obsolescence, and requires little space. Although management limits inventory to the level of
projected demand, its low cost and the excess short term capacity in the long term system
bottleneck (Stage One) suggests a limited build-ahead policy. This assumption opposes current
thinking such as Just-in- Time (Golhar and Stamm, 1991).
Combining orders of identical part types from consecutive weeks reduces the average time
required for setups. This reduction of setup time allows greater demands on the system. The
objective of our control policy is to minimize the number of setups required in the future by
efficiently allocating excess capacity in the current period. This must be accomplished without
jeopardizing the c~mpletion of the current week's requirements.
4 Model Development
The purpose of the control policy is to minimize the number of required future setups while
meeting current production requirements. It is assumed that a sequence of part types is provided
in the £ list. Burman (1992b) proves that under realistic assumptions regarding setup times, if C-
is an optimal sequence of setups (with respect to minimizing total setup time), any subsequence
297
of this sequence is also optimal. This lot-sizing algoritlun determines the size of each lot in real
time, while maintaining the part type sequence dictated by the L list.
The system is modeled as dynamic program (Section 4.1) and an example is detailed (Section
4.2).
Setups are the only random events in our system and there is a countable number of them.
Since decisions are only required upon the completion of random events, a discrete dynamic
progranuning model indexed to setup completions is formulated. Upon the completion of each
setup, the system may produce only the current requirements and immediately set up for another
part type; or produce the next week's requirements in addition to the current requirements and
then change setups (Figure 3).
System Parameters
T = The amount of time (in hours) available each week for production
and setups.
Cim = Production time for current demand (Cn or projected demand for the
following week (C;) for Part Type i.
System State The system state contains all the relevant information for deciding whether
to switch machine configurations or continue production of the lame part type. Due to the
enforcement of the established sequence of setups, the index i of the most recently completed
setup and the index i of the part type currently being produced are one and the same. Therefore,
the system state, upon the completion of a setup i only consists of current time (Ti) and the
number offuture lots completed (R;):
Control Function The control function is a mapping from the system state to a control
action. The control actions are to build inventory or to switch setups:
Objective Function The goal of the dynamic program is to develop a control policy which
results in a good system performance. System performance can be measured in terms of the
number of future lots completed and whether all current requirements are met. The objective
function is designed to reward a good system performance by increasing linearly with the number
of future lots completed (Ri) and decreasing quadratically with the number of current jobs not
completed by the end of the week (J"). There is no precise economic interpretation of the cost
function. Therefore, different coefficients (PI and P2 ) were tested to determine which provided
a policy which best met the above objectives (Section 5.1). The objective function is:
if Ti+I 2: T and Ti :5 T
(5)
otherwise
where
r _
-
{N -+
N
i
1-i
if T-Ti 2: ei
if T-Tj < ei
System Dynamics The random variable tj represents the amount of time between decision
points as a function of system state, the environment and the control action. H the control
action is to build an extra job, ti is the time to produce the present requirement (ei) plus the
time required to produce a second job (en plus the length of the random setup time (5).
The reward for each job built ahead is 1. Therefore, the accumulated reward is governed by:
(7)
299
Then:
(8)
General Program Formulation Since the objective function has a non-zero value only at
the end of the week (5), the cost-to-go function (J) at T; is written as an expectation (E;) of
the objective function value at the last decision point (iO) of the week. Then:
Cost-to-Go Function
J;"(T;,R;) = maxEdg;.(T;.,R;.)] where iO = max[k: Tic < T] and J.' = J.';, .. . ,J.';. (9)
I'
subject to (8).
4.2 An Example
T = 100 Hours.
N = 10.
em = 5 Hours. m = 1,2 i = 1 to 10.
0.5 for S = 2.5
1
P(S) = 0.5 for S = 5
0 otherwise.
5 Heuristic Derivation
In this section, the characteristics of the control policy generated by the dynamic program-
ming algorithm (Bertsekas, 1987) are described. Numerous values for PI and P2 are tested
(Section 5.1). Based on these characteristics, a heuristic is recommended (Section 5.2).
300
An analytical expression has not been found for the cost-to-go function in (9). Numerical
experiments have been conducted to determine the control policy associated with each system
state, for different PI and P2 • After numerous tests, it was concluded that the best results were
obtained when PI and P2 were both set to 1 and consequently these values are used in all further
experiments. In addition, it was observed that variations in R had no effect on the control policy.
Therefore, R is not accounted for when partitioning the state space to identify control actions.
Different shadings of the remaining state space in Figure 4 represent different control actions
associated with each possible system state (i.e., light grey represents a build more action, dark
grey a switch setup action and white is an indifference region between the two policies). Since
the value of the cost-to-go function is insensitive to the control action for system states in the
indifference region, we decided to chose the build more option for all such points.
Figure 4 also indicates to always build more when Ti is between 8 and 18. The model
determines that there is not enough time to complete an another job. To maximize the cost-to-
go function, the controller builds extra inventory, treating incomplete jobs as unavoidable. In
practice, one would switch setups to minimize the amount of unfulfilled current requirements.
It is assumed that the existence of this region is an end effect due to the nature of discrete finite
horizon dynamic programming modeling and that to switch setups is a better decision.
By eliminating the indifference region and the anomalous build more region, a threshold
policy represented by the threshold IJpprozimlJtion (Figure 4) is suggested. For every number of
jobs (11-i) left in the system, there is an associated time ai. If more time than ai is left in the
week, build inventory; otherwise, do not .
...o
- 100
T~e
90 80 70 ~ 50 4(1 30
Left Within The Week (T ~,)
20 10 0
In actual practice, business conditions may vary from week to week (e.g. anticipated future ca-
pacity shortages, lack of available overtime, inventory shortages, etc.). Variability in conditions
may alter the objective function, resulting in a shifted threshold. For more aggressive strate-
gies, where inventory is maximized at the expense of the completion of current requirements,
the threshold curve moves down and to the right. For more conservative strategies, where the
completion of current requirements takes precedence, the threshold moves up and to the left.
In addition to the threshold approzimation of the optimal control policy when the penalty co-
efficients are 1, three other thresholds are represented in Figure 5. These are the aggressive
threshold, the certainty equivalence (GEG) threshold and the conservative threshold.
The risk-taker's or aggressive threshold (Figure 5) is the rightmost feasible threshold, given
our assumptions. If all future setup times are known to be the smallest value of S, this would
be the threshold boundary. Any decision to produce extra inventory when the system is in a
state to the right of this line guarantees that the week's requirements cannot be built. The
conservative threshold (Figure 5) is the leftmost feasible threshold, given our assumptions. If
all future setup times were known to be the largest value of S, this would be the threshold
boundary. A decision to produce extra inventory when the system is in a state to the left of
this line could never jeopardize current production. A third threshold exists between these two
extremes which accounts for all future events based on their expected amount of time, labeled
the GEG Threshold in Figure 5. This threshold is used commonly in certainty equivalence
controllers (Bertsekas , 1987).
The threshold approzimation starts close to, but below the conservative threshold and ap-
'rIuwbold -A"'"
IAppromaatioD
~
~ ~
1\ ~~"/
UCoaoenadn I
\
....
-A ~~ A._lye
l r
Threshold
A~ .. /
~ ~ ~ -fTlireellold
A ~. ~
~ V..
... ro/
M~EC
TIIresholdII- ~
';'
10 h I I
~ ~ ~ ~ ~ ~ ~ ~ ~ 0
OJ!.:ilM Le~t WitlUn 'rh. Week (OJ!.)
1
proaches it as the week progresses. Therefore, the conservative threshold is suggested as the
heuristic because it is very easy to calculate.
In the previous section, a heuristic is suggested which is believed to effectively schedule the
facility. In this section, the heuristic is tested. A number of policies are described to be simulated
(Section 6.1). This is followed by a description of the simulation methodology (Section 6.2) and
a summary of the results (Section 6.3).
Heuristic Our heuristic is a closed loop feedback back policy using the conservative threshold
as described in Section 5.2.
Certainty Equivalence Controller (CEC) Section 5.2 also describes an expected value
threshold line between the conservative and aggressive extremes. The certainty equivalence
controller (CEC) uses this threshold.
Open Loop Policies Open loop policies are policies in which the system state has no effect
on the control action. Casual observations indicate a number of open loop policies are used in
industry: the open loop aggressive policy, the open loop conservative policy, and the open loop
expected value policy.
Open Loop Aggressive Schedulers frequently realize that combining setups has advantages.
The machine needs fewer setups, which is an unpleasant task. Over time, capacity is increased
and more can get done. They establish an open loop policy in which the control decision is
to always build inventory. Unfortunately, the results of such a policy are that the current.
requirements are 'never completed. Such a policy is unacceptable in the due date framework
assumed in this paper and is therefore not examined further.
Open Loop Conservative Some machine operators are overly concerned with not completing
the required work. They only produce the current requirements until they are completely done,
If excess time exists at the end of the week, then the machine may be set up to build inventory.
This is a common practice in factories. Unfortunately, the time required to do extra setups at
the end of the week may substantially reduce capacity. By using excess capacity as it becomes
available, extra setups are avoided.
303
Open Loop Expected Value The open loop ezpected value controller calculates the expected
value of the duration of events in the system. For our example, the expected setup time is 3.75
hours. 10 setups require, on average, 37.5 hours and 50 hours are required for for current
production. This takes a total of 87.5 hours to complete. The scheduler plans two extra jobs
for the week in the available 12.5 hours, leaving enough leeway for more than than the expected
number of large setups. This is the open loop counterpart of the CEC. Unfortunately, this policy
only allows for a maximum of two extra jobs in the week, potentially resulting in lost inventory
opportunities. In addition, tests showed this method frequently resulted in current production
requirements not being completed. Therefore, this policy is also not examined any further.
Cost-to-go functions do not provide a clear picture of the resulting events when they are
employed to generate control policies. Simulations often provide a good picture of what actually
happens when a control policy is applied. Given the limited number of random events, it is
feasible to generate all 210 different random event sequences (10 setups, each with two possible
durations). Each controller is applied to each sequence of events to determine its performance.
By applying the probability of each sequence to the results, probability distributions of the
outcomes from the use of any controller can be obtained.
Four control options are tested: a) the optimal controller with PI and P2 equal to 1, b) a
certainty equivalence controller, c) the heuristic controller and d) the open loop conservative
policy. For each controller, the expected value and variance of the number of jobs completed is
provided. In addition, the percentage of weeks in which all current jobs are not completed and
the percentage of weeks in which 0 through 6 extra jobs are completed is provided (Table 2).
There are three important results from our tests. First, the heuristic performed identically to
the optimal controller. Second, it performed significantly better than its open loop conservative
counterpart. Finally, the performance of the expected value controller was poor.
The expected number of reduced future setups is 2.25 for the optimal controller and the
heuristic. Also in both cases, all current requirements were always met. This is because, in
our example, even slightly aggressive action resulted in a substantial number of weeks with
incomplete current requirements. Therefore, a conservative policy is required to meet the due
date constraint.
The fact that both policies yielded the same results should not be so surprising. A careful
examination of Figure 4 indicates that the conservative threshold lies within the indifference
304
Controller 0 1 2 3 4 5 6
Optimal Controller 0.0 1.1 16.1 45.1 32.2 5.4 0.1 0.0
Open Loop Conservative 0.0 11.3 69.3 19.2 0.1 0.0 0.0 0.0
region. This does not prove that both should be the same but provides some intuition for the
results.
The heuristic performed significantly better than both open loop policies. Both the conser-
vative open loop controller and the heuristic managed to always complete present requirements.
However, the heuristic completed an average of 2.25 extra jobs, while the open policy completed
only LOS.
The expected. value scheduler performed poorly. This point is emphasized because many
current schedulers and software packages use expected value methods for scheduling. The re-
sults of these tests may begin to explain why these schedulers perform so poorly in practice in
environments with random events.
7 Conclusion
We began by looking at a machine with random, significant setups times. The objective
was to schedule the machine in real time in response to random events. The problem was
305
formulated as a dynamic program with the simplifying asswnption that there was no other
randomness in the system other than setup times. An example was presented for analysis, from
which a threshold-type approximation was obtained from the partitioned state space. From this
approximation, a heuristic which is easy to calculate was suggested. Nwnerical simulations were
conducted which compared the heuristic with other policies, including the optimal policy. The
results showed that the heuristic performed very well and that feedback is a feasible way of
dealing with system randomness.
One direction for further research involves modifying the dynamic program to incorporate
machine failures and production rate variability. We hope the results of this extension will
also provide a threshold-type policy. If so, the simplicity of the solution structure would be
easily implementable. We would like to look at more examples and cost functions, as well as
incorporate phenomena such as variable-sized lots and demand levels at different percentages of
capacity. We would like to do more work on determining which future requirements to produce,
with different objective functions and setup time distributions. We are also in the process of
preparing an implementation and would like to compare its performance with previous facility
performance.
References
[1] K. Baker and G. Scudder. Sequencing with earliness and tardiness penalties: A review.
Operations Research, volwne 38{No. l):pages 22-36, (January-February) 1990.
[2] D. Bertsekas. Dynamic Programming: Deterministic and Stochastic Models. Prentice Hall,
New Jersey, USA, 1987.
[3] M. Burman. Recent trends in production research. Technical report, in preparation, MIT,
1992a.
[4] M. Burman. Scheduling a medical device manufacturing system. Master's thesis , in prepa-
ration, MIT, 1992b.
[5] M. Burman and S. Gershwin. An algorithm for the scheduling of setups and production
to meet due dates. In IEEE International Conference on Robotics and A utomation, Nice,
France, 1992.
[6] S. Elmaghraby. The economic-lot scheduling problem (ELSP): Review and extensions.
Management Science, volwne 24(No. 6):pages 587-597, 1978.
[7] S. Gershwin. Manufacturing systems engineering. Textbook in preparation, 1993.
[8] E. Goldratt and J. Cox. The Goal, A Process of Ongoing Improvement. North River Press,
Inc., New York, 1986.
[9] D. Golhar and C. Stamm. The just-in-time philosophy: A literature review. International
Journal of Production Research, volwne 29(No. 4):pages 657-676, 1991.
[10] S. Graves. A review of production scheduling. Operations Research, volwne 29{No. 4):pages
646-675, (July-August) 1981.
[11] F. Rodammer and K. White, Jr. A recent survey of production scheduling. IEEE Transac-
tions on Systems , Man and Cybernetics, 18(6):pages 841-851, (November-December) 1988.
306
1. Introduction
The problem considered here is closely related to project scheduling (cf. [6,7, 15]) in
the following way: Each product corresponds to a project, i.e. we are dealing with
multi-project scheduling [11]. Production uses renewable resources and consumes
nonrenewable resources [15]. The manufacturing of each product requires the assembly
of parts. Each part requires a number (and sequence) of operations to be done speCified
by a process plan. Here we consider the case where alternative process plans are
available for each part, one of which has to be chosen. The part level in production
scheduling corresponds to the job level in project scheduling and process plans are
shortly denoted as modes [8] . For the sake of shortness we will use the words mode
and job here, too . Like in project scheduling we use the general concept of temporal
constraints [2] in order to model the partial order of jobs as well as the time windows
of products.
Our focus here is not on the operations, but on the part level, i.e. we simultaneously
have to choose one mode per job and the sequence of jobs. Thus we are not dealing
with shortterm (operational), but with mediumterm scheduling. This approach seems
to be adequate in manufacturing situations (such as small batch machine tool assembly
[8]) where on the operational level a lot of work has to be performed manually.
308
AI. P products have to be manufactured; p (=I, ... ,P) denotes a specific product.
Product p has the release date ,z and the deadline a'; w := [,z , .{I denotes
p p p p p
the manufacturing time window of product p.
A2. Product p consists out of J partially ordered jobs. 1'. (S .) denotes the set of jobs
P J J
immediately preceeding (succeeding) job j. An arc interrelates dependent jobs h
and j E Sh . W.l.o.g. we assume that each product has one unique source (start
job) and one unique sink (end job).
A3. We assume one additional (super-) source (j=I) and one additional (super-) sink
(j=J). Furthermore jobs are labeled consecutively, i.e.
p
j = 1,2, ..., J 1+1, J 1+2, ... , E J +2;
p=l p
thus the job number (index) j identifies the related project exactly.
A4. Temporal constraints between jobs hand j E Sh are modeled via arc weights
(Th~n, Thj) , 1
where Th n denotes the minimum finish-to-start lag and ThjX
denotes the maximum start-to-finish lag between dependent jobs hand j . It is
1
assumed that Th n = - 00 (ThjX = (0) is associated with the case, where only the
309
maximum (minimum) lag exists. Note that Th~n < 0 enables us to model schedule-
overlapping of dependent jobs.
A5. The time windows of the products are modeled as follows based on the temporal
constraints introduced in A4: We generate additional arcs from the unique source
j=l to the start job h (with 'Ph = ¢) of each product p with the arc weights
(Tf~n = ,zp , Tf~x = (0). Furthermore we introduce additional arcs from the job
j=l to the end job i (with s.
I
= ¢) of each product p with the arc weights
( ".min
, 1i
= - 00 ".max
' ' 1i
= Up)'
-/\
A6 . Job j may be processed based on one of the modes m = 1, .. .,M .. We consider the
J
nonpreemptive case, i.e. each job, once initiated in a specific mode, has to be
finished without preemption. Referring to preemptive scheduling preemptions can
only take place at points of time specified a priori. Note that nonpreemptive
scheduling implies that modes must not be changed.
A7. Scheduling job j in mode m takes d. time units (mode dependent deterministic
Jffi
duration).
A8. There exists a set of 1. renewable resources (=machines, etc.), where resource r E 1.
is available with /'i,P resource units per period; scheduling job j in mode muses
r
resource r E )/ is available with /'i,v resource units in total; scheduling job j in mode
r
m consumes k~ units.
Jffir
Besides the temporal constraints introduced in A4 there exist six additional ones
(start-to-start, finish-to-finish ; minimum and maximum in all cases; cf. [2]) . Per arc
at most one out of the four minimum (maximum) time lags has to be specified. In order
to save additional symbols we restrict to using only (Th~n, Thr), the temporal
constraints which are supposed to be most important for modeling our make-to-order
production scheduling problem.
Definition
(a) A schedule)l := {(j,m,t) I j = 1, ... ,J} is a set of triplets, which assigns to each
job j a mode m and a completion time t.
(b) A schedule )I is called time-feasible, if the starting and completion times of all
jobs fulfill the temporal constraints.
Now we are going to consider the problem of establishing feasible time bounds. We will
use the following additional symbols:
ES. the critical path g,arliest .§.tart time of job j
J
EF . the critical path g,arliest finish time of job j
J
LF . the critical path latest finish time of job j
J
LS. the critical path latest .§.tart time of job j
J
Unlike in the single-mode case it is not possible to derive the digraph of temporal
constraints by some simple equivalent transformations [2] of all given temporal
constraints to just one type (e.g. finish-to-start time lags). This is due to the mode
dependent job durations d. rendering the "real" job duration not as a simple input
Jm
data but as the consequence of a decision.
Lower and upper bounds for the earliest and latest start and finish times of the jobs
may be derived using the minimum job durations b. . := min {d .
J Jm
Im= 1, .. . ,M .}, the
J
temporal constraints 7~~n only and omitting the maximum time lags 7~jX.
earliest finish time of the end job of one of the projects exceeds the projects deadline
definitely no time-feasible schedule exists at all.
Does there exist a feasible solution to the set of equations (1) - (6) ?
M . LF.
J J
E E X jmt 1 (V j) (1)
m=l t=EF.
J
Mh LFh M. LF.
J J
E E t· x + rm~n < E E (t-d. )x. t (V j and h E 1'.) (2)
m= 1 t=EF h hmt hJ m=l t=EF . Jm Jm J
J
J M. LF.
J v J
E E k. E x. (V r E JI) (4)
·-1 m-
J- -1 Jmr t-EF
- j Jmt
312
J M. t+d . -1
J Jm
E E k~ E XJ.mt < ~ (VrElandt) (5)
j=l m=l JIm q=t
The feasibility problem requires the determination of a vector x which is feasible with
respect to the following constraints: (1) requires completion of each job j in exactly one
of the available modes within the interval [EF., LF.]. (2) and (3) state precedence
J J
relations between dependent jobs with minimum and maximum temporal constraints,
respectively. (4) and (5) allow only nonrenewable and renewable resource-feasible
schedules, respectively. To sum it all up (1) - (6) define via linear constraints with
binary variables time-resource-feasible schedules.
Solving (1)- (6) with general purpose (0-1 programming) software necessitates to store
and manipulate a large number of 0-1 variables and constraints. In order to avoid this
we are now going to present an integer programming formulation which needs less
variables.
Based on the idea introduced in [17], i.e. a conceptual integer programming formula-
tion of the single-mode case, our scheduling problem may be reformulated as follows :
M.
J
E x.
Jm = 1 (V j) (7)
m=l
M.
J
y~ + . x.
E dJm Jm = yf
J
(V j) (10)
J m=l
J
M.
J v
E E k~ x. 5 K,
r
(V r E JI) (11)
JIm Jm
j=l m=l
313
M.
E EJ k~ x. < ,,/ (V r E 1, and t) (12)
jEA ID=l JIDr JID r
t
Here At denotes the set of jobs active (i.e. using renewable resources) in period t.
ll~
J
= {ES J. ,... , LS.}J denotes the set of possible (integer) start periods , llf
J
=
{EF . , ... , LF.} denotes the set of possible (integer) finish periods. x. is a binary
J J JID
variable denoting whether mode m is assigned to job j (x. = 1) or not (x . = 0).
JID JID
6. A PROLOG-Based Implementation
Recently, efficient search via "intelligent" backtracking has attracted much attention
in the artificial intelligence literature [4, 5, 13, 14]. The main emphasis is on static
(before starting variable instantiation) and dynamic (during variable instantiation)
search tree reduction techniques. Loosely speaking, a constraint (hyper-) graph is
constructed, in which one node is associated with one variable and edges correspond to
constraints. The aim is to produce an arc- and path--consistent [10] constraint graph
via making implicit constraints explicit .
314
for I in 1. .J do
sum (X[I,1 .. I[I]],1);
In addition using
the nonrenewable resource constraints (11) may be coded via the following CHARME-
subroutine:
Note that Req is an array defined locally in order to accumulate the consumption of
nonrenewable resources (induced by the actual instantiation of variables). In order to
use scalyrod correctly the two-dimensional arrays NRR and X have to be redimen-
sioned. For simplicitity the maximum number of modes has been set equal to 5.
315
7. Computational Results
j s.J M.
J
m d.
Jffi k~ffil k~Jffi 2 k~Jffi 1 k~Jffi 2
f---"
1 {2} 1 1 0 0 0 0 0
2 {3, 4} 2 1 12 1 1 6 5
2 10 1 1 8 3
3 {5} 1 1 11 4 3 2 5
4 {6} 2 1 21 6 1 7 1
2 16 4 3 2 1
5 {6} 1 1 9 2 2 2 2
6 {7} 1 1 1 3 3 3 3
7 ¢ 1 1 0 0 0 0 0
P 1
,z 4 (=rmin)
p 1,2
dp 35 (=rmax)
1,6
(r~~n = 0 and r~jX = w otherwise)
Table 2 provides time-resource-feasible schedules .J{ for the instances J7; the following
remarks should be made:
316
J7/1 Neither renewable nor nonrenewable resources are scarce. Job j=4 has
slack, i.e. four alternative schedules with (4,2,15), (4,2,16), (4,2,17) or
(4,2,18) exist.
J7/2 Due to lack of nonrenewable resource 1, mode 2 is no more assignable to
job 2. Once more job j=4 has slack and four alternative schedules with
(4,2,15), (4,2,16), (4,2,17) or (4,2,18) exist.
J7/3 Jobs 3 and 4 must not be processed in parallel due to lack of renewable
resources, i.e. job 4 has to be delayed. Three alternative schedules based on
(4,2,26), (4,2,27), (4,2,28) exist .
J7/4 Due to T~i4, = 12 the schedule provided in table 2 for J7/3 is no more
time-feasible. Thus only three time-resource-feasible schedules )( exist
based on (4,2,26), (4,2,27), (4,2,28).
A larger problem instance with P=2 and J=12 is provided in table 3. The precedence
relations between jobs 2 to 6 are identical with the ones of jobs 2 to 6 in J7.
Table 4 provides one time-resource-feasible schedule )( for instance J12. Instance J12
has 31 alternative time-resource-feasible schedules )( based on other start times of jobs
4 and 7 to 11. All the i = 1, 2, ... , 32 time-resource-feasible schedules )( for instance
J12 may be found in table 5, where only the triplets (j,m,t) for the jobs 4 and 7 to 11
are reproduced. The sequence (i = 1, 2, ..., 32) of schedules listed in table 5 corresponds
317
to the sequence in which they have been generated by CHARME. Thus we are able to
look at the variable instantiation and backtracking process of the inference engine in
some detail. Entries of succeeding schedules which have changed have been underlined.
1 {2, 7} 1 1 0 0 0 0 0
2 {3, 4} 2 1 10 1 1 6 5
2 10 1 1 8 3
3 {5} 1 1 11 4 3 2 5
4 {6} 2 1 21 6 1 7 1
2 6 4 3 2 1
5 {6} 1 1 9 4 2 2 2
6 {12} 1 1 1 3 3 3 3
7 {8, 9} 1 1 5 3 4 5 4
8 {10} 1 1 6 3 2 2 2
9 {10} 1 1 8 3 3 3 1
10 ill} 1 1 2 3 6 8 3
11 {12} 1 1 13 5 3 6 3
12 ¢ 1 1 0 0 0 0 0
P 1 2
,z 4 (=rmin
1, 2
) 2 (=rmin)
1,7
p
dp 35 (=rmax ) 1,6
48 (=rmax )
I,ll
The computational times required on a 80486 PC with 33 Mhz are as follows : The
generation of all time-resource-feasible schedules ){ for the instances J7 and J12
required some milliseconds and one second of CPU-time, respectively. Note that the
CPU-time required depends upon some factors , among which characteristics of a
specific instance as well as details of a specific implementation seem to be most
important. Experiments have to be made in order do get more insight.
8. Future Work
References
[1] Ahn, J. and A. Kusiak, "Scheduling with alternative process plans", in: Fandel,
G. and G. Ziipfel (Eds.): Modern production concepts, Berlin 1991, pp. 387-403.
[2] Bartusch, M; R.H. Mohring and F.J. Radermacher, "Scheduling project networks
with resource constraints and time windows", Annals of Operations Research,
Vol. 16 (1988), pp. 201-240.
[3] BULL, Artificial Intelligence, Charme VI, Users Guide and Reference Manual,
Bull S.A., Cedoc-Dilog 1990.
[4] Dechter, R., "Enhancement schemes for constraint processing: Backjumping,
learning, and cutset decomposition" , Artificial Intelligence, Vol. 41 (1989/90), pp.
273-312.
[5] Dechter, R. and J. Pearl, "Network-based heuristics for constraint satisfaction
problems", Artificial Intelligence, Vol. 34 (1988), pp. 1-38.
[6] Domschke, W. and A. Drexl, "Kapazitatsplanung in Netzwerken - Ein Uberblick
uber neuere Modelle und Verfahren" , OR Spektrum, Vol. 13 (1991), pp. 63-76.
[7] Drexl, A. and J . Grunewald, "Nonpreemptive multi-mode resource-constrained
project scheduling", to appear in lIE Transactions (1992) .
[8] Drexl, A. and R. Kolisch, "Production scheduling in small batch machine tool
assembly", in preparation (1992).
320
1. Introduction
To illustrate the system's operation, consider the following scenario: (1) Given
the production requirements for a day, a schedule is produced "off-line" in advance of
execution, (2) the plan is released to the shop-floor for its execution, (3) as unforeseen
disruptions occur or new information becomes available, "on-line" rescheduling and
control is required to adjust the off-line schedule such that the performance is
maximized. This operation mode continues until all the jobs are completed (i.e., the
end of the planning horizon). This research assumes job-shop as the production
configuration, and the completion time of all jobs (i.e., the makespan) as the objective.
Previous approaches to the problem can be classified into four groups: (1) match-
up scheduling, (2) complete rescheduling, (3) stochastic scheduling, and (4) dynamic
dispatching. In match-up scheduling, a transient schedule is computed after the
occurrence of a disruption. After a finite amount of time this transient schedule will
match-up with the off-line schedule. In complete rescheduling, a new schedule is
generated every time a disruption occurs. In stochastic scheduling, the decision
considers only the jobs to be processed at that time given all the information available
up to that moment. Finally, in dynamic dispatching, the decision on which job to
process after a disruption is usually determined by myopic rules or heuristics. Among
these approaches, only match-up scheduling considers the off-line schedule, and only
stochastic scheduling makes explicit use of (stochastic) information concerning future
disruptions.
The approach in this research is to consider two subproblems: (1) off-line robust
scheduling, and (2) on-line rescheduling and control. In the first subproblem, a schedule
is defined to be robust if it can maintain good performance in the event of unforeseen
disruptions. Further, this should be achievable using only minor adjustments in the
sequence in order to minimize the impact on the rest of the system. Research issues
include the definition of measures of robustness and the generation of robust schedules.
In order to compute M(S), the control policy used to recover the system from a
random disruption must be specified. It is assumed that the sequence specified by the
initial schedule remains unchanged. It is also assumed that job preemption is not
allowed. This control policy entails a "right-shifting" of the schedule so that the
disrupted operation must restart its processing immediately after the disruption period.
There are two advantages for using this control policy. First, it is simple and its
implementation requires minimal computation. Second, the right-shift policy is
optimum when the deviation from the initial schedule is defined as the sequence
difference from the initial schedule (i.e., minimal disruption to the planning function).
follows.
Definition 1. Let r be a real valued weight in the interval (0,1). The robustness
of a schedule S, R(S), is defined as R(S) = r*E[M(S)] + (1- r)*E[c(S)].
One problem with Definition 1 is that the expected values are difficult to
determine analytically except for a special case in which only a single disruption is
considered in the planning horizon. If more than one disruption is considered, the
problem soon becomes intractable. This is because in job shops it is impractical to
assume independence between successive disruptions. Our approach to the problem is
to develop measures that are strongly correlated with the expected delay and makespan.
Although this approach will result in an approximation of the true robustness value, the
measures are easy to compute and are applicable to a variety of cases present in real
situations.
The slack of operation i, si' is the maximum amount of delay that can take place
during the processing of operation i without incurring an increase in makespan. From
several candidate measures evaluated, the average slack, s, showed good (linear)
correlation with expected delay for a variety of job-shop problems tested. This result
makes intuitive sense because a sequence that contains large amounts of slack-time has
the tendency to "absorb" disruptions without delay. Thus, s is selected as the
surrogate measure of expected delay. Letting Nf denote the set of operations that are to
be processed on fallible machines, this measure is computed as follows,
(2.3)
In this case the correlation is negative, i.e. the larger s the smaller the expected delay.
From the study in the previous section,8 showed good correlation with expected
delay. By Definition 1, schedule robustness is a linear combination of E[6(S)] and
E[M(S)]. Since direct computation of these expected values is intractable for multiple
disruptions and since simulation is too computationally expensive, a linear combination
of the surrogate measures 8 and Mo -8 is rather used here for search purposes.
start-times and render the off-line schedule obsolete. Obsolescence also results from
new information not available when prescribing the schedule. The on-line methodology
developed here allows the updating of static off-line schedules in dynamic environments.
This is accomplished using a look-ahead analysis which explicitly incorporates new
information and information concerning future disturbances.
Past research on this problem can be broadly classified into two groups. One
line of research proposes job dispatching, where sequencing decisions take place
dynamically in order to account for disruptions as they occur. Another line of research
proposes control strategies which guide recovery of the system from disruptions giving
consideration to a pre-computed schedule. YAMAMOTO-NOF (1985) propose to
reschedule every time a machine breakdown occurs. BEAN-BIRGE (1986) and BEAN
et al. (1991) propose to "match-up" with the original schedule after a transient period in
which the disruption is compensated for. SALEH (1988) and ODREY-WILSON (1989),
use a cyclic static schedule generated off-line. An on-line controller recovers the
systrem during non-steady state periods caused by disruptions. The recovery entails
minimizing inventory and match-up to the next steady-state loading period. ROUNDY
et. al. (1989) use pricing functions obtained from solving a precomputed deterministic
problem to guide dynamic dispatching decisions. WU et al. (1991) consider a
formulation which explicitly considers the costs associated with rescheduling jobs before
and after their original start times.
The approach used in this paper falls in the class of methods that give
consideration to the off-line schedule. The control problem entails resequencing to
minimize the expected value of a bi-criterion objective function. One criterion is
makespan, and the other is deviation from the off-line, precomputed schedule. The
consideration of schedule deviation is important when the schedule serves as the basis
for other planning functions such as tooling and raw-material delivery.
In this paper, the on-line control problem is treated as a game where the
controller plays against "nature." This view of the problem originates challenging sub-
problems and a number of opportunities for the integration of techniques from
operations research, artificial intelligence, and stochastic control. Some of the
techniques incorporated here include sequencing, heuristic search, variance reduction,
and discrete event dynamic system (DEDS) models.
We consider a job shop where machines are prone to failure. Each job has a
deterministic processing time, and job preemptions are not allowed. A pre-computed
makespan schedule is released to the shop at time zero and random machine disruptions
328
are destined to occur while processing jobs. As time proceeds, new information about
gradually becomes available to the controller. The objective is to utilize this
information to adjust the schedule such that its expected performance is optimized.
The above control problem can be viewed as a game played against nature. As
game moves, the controller proposes alternative ways to alter the schedule. In return,
nature places stochastic events on the schedule such as machine disruptions. Like most
games, it is intractable to evaluate the entire game tree. Alternatively, the best policies
among those available, are determined for the next N disruptions through an N-step
lookahead.
AN-step lookahead of the game is thus defined where k indexes the decision
epochs. State variable xk represents the schedule at k, the control sk is a recovery
schedule that the controller proposes from k to k+l, the random disturbance dk is
nature's move which represents an instance of the next disruption to occur between k
and k + 1. dk is a random variable defined on Ok with probability mass function
Pk(d k ). A disruption is a period of time in which a machine is interrupted from
operation. This may be caused, for instance, by a machine breakdown, or temporary
energy shortage.
A new event is defined every time control is applied. The controller takes action
when significant new information becomes available. For instance, when a disruption
occurs, or when the system reliability falls below a given threshold.
decision node. Consider a sub-tree consisting of only one arc emanating from each
decision node, and all the arcs emanating from chance nodes. This sub-tree can be
viewed as a simulation of the job-shop under a projected set of disruptions given a
policy II (i.e., a sequence of control actions). The whole tree thus provides an N-step
evaluation of alternative control policies based on the information on hand about future
disruptions. The DEDS model can be viewed as a "recursive simulation" of the job-
shop guided by the proposed controller.
CHANCE NODE
gm(.), m = 1, ... , IMI. It is assumed that machines fail independently, and that the
parameters of the disruption duration distributions remain unchanged during the
planning horizon. This information is then used to compute the probability of having
the next disruption on machine m in a specific time interval.
It is known that the job shop scheduling problem can be decomposed into single
machine scheduling problems with ready-times, due-dates (Adams et al., 1988). LEON-
WU (1992) develop a branch-and-bound procedure that solves the scheduling problem
with ready-times , due-dates, and vacations to minimize maximum lateness. Tests on
1400 problems indicate that the optimal solution can be found in less than 100 nodes.
Further, a heuristic is developed that obtains the optimal solution for about 30% of the
problems tested.
Let na denote the branching degree of the decision nodes. H can be summarized
as follows: (1) sample na instances of the "next" disruption, (2) determine na new
sequences using the branch-and-bound algorithm treating the disruptions as vacations,
(3) associate each new sequence with an arc emanating from the decision node under
consideration. Procedure H addresses several important issues at the same time:
(3) since the sequences on non-disrupted machines remain unchanged, the overall
schedule deviation C (a component of the objective function Z) is expected to be low.
Furthermore, in H, the larger na is, the more alternatives will be generated and
the better performance expected. However, the size of the state space grows as an
exponential of na. As a result, the value of na must be determined empirically before
implementation such that alternatives of sufficient quality and diversity can be
generated within computational limits.
Recall that the objective function for the N-step lookahead is the expected value
of the linear combination Z(O) defined in equation (3.2). Based on Z, the expected cost
Vk(~) of a control sk at state xk can be computed based on the following backward
recursIOn.
(3.3a)
where,
i
Where Pk(d k ) is the probability associated with stratum i and V*k+l(.) is the
cost-to-go at state Xk+l. The cost-to-go at the last state xN is V N = Z(e). The
backward recursion simply states that at a decision point the controller applies the
control heuristic which has a minimal expected cost in the remaining steps.
The game tree cannot be solved using an ordinary (backward) dynamic
programming (DP) algorithm. This is due to the fact that a state xk is defined as the
333
schedule before the kth disruption and state Xk+l remains unknown until xk' dk and sk
are generated. Applying a forward, enumerative algorithm, on the other hand, may
encounter serious dimensionality problems. Consider an N-step game tree with na
control alternatives and ns samples at each step k, the number of possible trajectories
will be (na x nb)N. More importantly, since each node in the tree is associated with a
complete job shop schedule (a conjunctive graph), much memory is needed for the
nodes actually generated. A solution is to use an implicit enumeration method which
generates new nodes only when absolutely necessary. This strategy is common in the
search of game trees and AND/OR trees, a generalized game tree (Pearl, 1984). WU-
LEON (1991) develop an implicit enumeration algorithm for AND/OR tree containing
probabilistic nodes. The algorithm is extended from the AO* algorithm of deterministic
AND lOR trees (Nilsson, 1980). Experimental evidence suggests that with a lower
bound within 50% accuracy (from the true value), the algorithm explores (on average)
30% of the tree before terminating with the optimal solution.
The efficiency of the implicit enumeration algorithm clearly relies on the quality
of lower and upper bounds. In addition, a set of "{-optimal" solutions are generated
during the search to increase the pruning power.
Bounds. Simple bounds for Z(O)=r.M+(l-r).C are proposed for the case when
r=1. The lower bound for a sequence sk associated with a chance node is set equal to
its makespan. The lower bound for a sequence xk associated with a decision node is set
equal to the preemptive makespan that results when dk_1 interrupts sk_1'
The upper bound is determined by the minimum of the best solution found so far
and a function defined as follows: a function of the maximum operation duration d max ,
the maximum disruption length Amax, and the remaining disruptions Nr within the N-
step lookahead horizon. We simply add (dmax+Amax)*Nr to the makespan of the
schedule associated with the node.
4. EXPERIMENTAL RESULTS
Different aspects of the proposed off-line and on-line methodologies are tested in
four sets of experiments. Experiment 1 studies the effect of the number of look ahead
334
steps and the monitoring frequency. Experiment 2 compares the control methodology
with "total rescheduling" and "right-shift" control policies under different levels of
information uncertainty. Experiment 3 considers the effect of providing the controller
with imperfect, or wrong information. Finally, Experiment 4 studies the effect of using
"robust" off-line schedules.
Experimental results suggest that the proposed controller obtains slightly better
expected makespan performance and significantly less impact on the system when
compared with a controller using the "total-rescheduling" policy. The latter is true
whether the off-line schedule is "robust" or not. However, better performance is
obtained (less expected makespan and less variability of the makespan) when "robust"
schedules are used.
ACKNOWLEDGEMENT
REFERENCES
ADAMS, J., Balas, E. and Zazwack. D., 1988, The Shifting Bottleneck Procedure for
Job Shop Scheduling, Management Science, 34(3), pp. 391-40l.
BALAS, E. , 1968, Project Scheduling with Resource Constraints, Proc. of the NATO
Conference in Applications of Mathematical Programming, Cambridge, England, pp. 24-
28.
BEAN, J. and J. Birge, "Match-Up Real-Time Scheduling," Proceeding of a Symposium
on Real-Time Optimization in Automated Manufacturing Facilities, NBS Publication
724, National Bureau of Standards, 1986, pp. 197-212.
BEAN, J.C., J.R. Birge, J. Mittenthal and C.E. Noon, 1991, Matchup Scheduling With
Multiple Resources, Release Dates and Disruptions, Operations Research, 39(3), pp.
470-483.
BIRGE, J.R., 1985, Decomposition and Partitioning Methods for Multistage Stochastic
Linear Programs, Operations Research, 33(5), pp. 989-1007.
DANTZIG, George B., 1989, Decomposition Techniques for Large-Scale Electric Power
Systems Planning Under Uncertainty, Impacts of Recent Computer Advances on
Operation Research, Elsevier Science Publishing Co., Inc., R. Sharda, B. L. Golden, E.
Wasil, O. Balsi, W. Stewart, editors.
GITTINS, J. C. and K. D. Glazebrook, "On Bayesian Models In Stochastic Scheduling,"
Journal of Applied Probabilities, Vol. 14, 1977, pp. 556-565.
GITTINS, J. C, "Bandit Processes and Dynamic Allocation Indices," J. R. Statist. Soc.
335
Stefan Vo6
.Absttact
This paper coosiders the two-stage hybrid-flowshop scheduling problem with
sequence-dependent setup times where the objective is to minimize the makespan. In
comparison to the familiar two-machine flowshop problem we are given two stages
instead of two machines each containing a given number of parallel machines. This
problem combines hybrid-flowshop scheduling and the consideration of sequence-
dependent setup times. In a first part we &l1'Vey the existing literature on the respective
problems.
1. Introduction
The outline of this paper is as follows. First we present a review of the existing literature
for both problems as described above with special emphasis on the restriction of two stages.
Then some necessary definitions are given resulting in a more precise formulation of the
two-stage hybrid-flows hop problem with sequence-dependent setup times. Subsequently we
restrict ourselves to the problem with identical parallel machines at the first and exactly
one machine at the second stage. Some heuristic algorithms and improvement procedures
are considered, respectively. In addition, we investigate tabu search as a recent technique
for guiding improvement procedures to overcome local optimality.
Computational experiments are undertaken to analyze the algorithms with respect to solu-
tion quality. For the two-machine flowshop problem with sequence-dependent setup times
one of our proposed heuristics clearly outperforms the best known heuristics from the
literature with respect to solution quality. Finally ideas for further research are given.
2. Literature Review
In a flowshop problem each of n jobs must be processed through m stages in the same
order, and each job is processed exactly once at each stage. Usually, there is exactly one
machine at each stage. The most common objective of flowshop scheduling (and the one
used throughout this paper) is that of minimizing the makespan, i.e., the maximum com-
pletion time C max . Equivalently, Cmax is the flow time of that job which is completed last
and therefore the time required to complete all n jobs. For an interesting thoughtprovoking
survey of" the lessons of flows hop scheduling research" see Dudek et al. (1992).
The most pioneering work on flowshop problems is that of Johnson (1954), considering the
case of exactly two machines. He proposed an exact algorithm (with running time
O(n log n» and showed that for this special case an optimal schedule exists such that the
processing order on all the machines is identical (furtheron a schedule with an identical
processing order on all machines is referred to as a permutation schedule). In general,
however, most versions of flowshop scheduling are NP-hard.
Most prevalent future directions in flows hop research might be in the fields of flexible
manufacturing systems as well as in applications in the chemical process industry. This
leads to more general problems involving hybrid- or flexible flowshops as well as
consideration of sequence-dependent setup times.
338
2.1 Hybrid-Flowshop
In Gupta (1988) it is shown that the two-stage hybrid-flowshop problem is NP-hard even if .
one of the stages contains only one machine. This complexity result is quite obvious since
scheduling two identical parallel machines to minimize the makespan is NP-hard by itself.
This result gives solid motivation for dealing with the problem when there is only one
machine at either of the two stages. Early references in this respect are Rao (1970), Mittal
and Bagga (1973) and Murthy (1974). Gupta (1988) gives a heuristic for the problem with
only one machine at stage 2 as well as an algorithm which minimizes the number of ma-
chines at the first stage used by a given schedule. Similar algorithms for the case of exactly
one machine at the first stage are presented in Gupta and Tunc (1991). Narasimhan and
Panwalker (1984) propose a heuristic algorithm for the case of one machine at stage 1 and
two machines at stage 2 with a modified objective considering idle times of the machines.
A branch and bound procedure for the general hybrid-flowshop problem is given by Brah
and Hunsucker (1991), who generalize the machine and job based lower bounds known for
the entire flowshop problem. A no-wait version of the general problem, i.e., a variation
where each job, once started, has to be processed without interruption until it is completed,
has been treated by Salvador (1973). For this problem, where no in-process inventory is
allowed between the stages, the author proposes a branch and bound algorithm and reports
a real world application for the production of nylon in a polymerization process with seven
stages.
While the overall objective in hybrid-flowshops usually means minimization of the make-
339
span, additional secondary objectives may be followed. Examples are the minimization of
the number of machines used at any stage (see, e.g., Gupta (1988» or the minimization of
queueing (see, e.g., Wittrock (1988». Furthermore, Langston (1987) considers additional
interstage transportation planning in a two-stage system.
Gupta and Darrow (1986) show the NP-hardness of the two-machine flowshop scheduling
problem with sequence-dependent setup times. Again, this complexity result is a quite
obvious one, since scheduling a single machine with sequence-dependent setup times to
minimize the makespan is NP-hard by its relationship to the well-known traveling
salesman problem. The same idea applies to permutation schedules as well as the cases
where sequence-dependent setup times appear only at one of the two machines. Corwin and
Esogbue (1974) as well as Bellman et al. (1982) describe dynamic programming algorithms
for the latter cases.
Note that, opposite to Johnson's (1954) two-machine flowshop problem, in the case of
sequence-dependent setup times there need not be an optimal solution which is a
permutation schedule, i.e., passing may give some decrease in the objective function value.
Heuristic procedures for determining permutation schedules as well as lower bounds based
on the solution of some traveling salesman problems are developed by Gupta and Darrow
(1985, 1986). A neighbourhood search technique is proposed by the same authors, too.
Independently, a similar approach has been followed by Simons (1992) who gives heuristics
for the m-machine flowshop problem with sequence-dependent setup times. A mixed
integer linear programming formulation is presented by Srikar and Ghosh (1986) and
corrected by Stafford and Tseng (1990).
Let J = {l,2, ... ,n} be a set of n jobs to be processed at two stages, first at stage 1 and
then at stage 2. Let t .(i) be the processing time of job i at stage j. Because of the
J
340
Given m 1 (ml ~l) identical parallel machines at stage 1 and ~ (here we choose ~=l)
identical parallel machines at stage 2 the objective is to minimize the makespan C .
max
With respect to the above mentioned complexity results in the sequel we restrict ourselves
to the problem with exactly one machine at the second stage. Given a schedule Sits
makespan may be defined as T(S). With slight modifications to the well-known
symbolism of machine scheduling the problem may be stated as follows:
F2(Pm1,1) I cj(i,k) ~O, m(i)=2 I Cmax
where m(i) gives the number of operations of each job which will be processed following
the assumptions of a (hybrid-) flowshop. In short, we consider the two-stage hybrid-flow-
shop problem with sequence-dependent setup times while minimizing the makespan or the
maximum completion time, respectively.
4. Heuristic Algorithms
In the following several heuristic algorithms will be investigated. There are numerous
possibilities to evaluate heuristics, e.g. by using a decomposition or a simultaneous
approach. In this study our proceeding will be to give five algorithms which may assume
341
exactly one machine at both stages (Le., m 1 = m2 = 1). Then resulting schedules will be
modified according to the availability of m1 identical parallel machines at stage 1.
• 1st phase: Calculate an ordered list of all jobs (e.g. by using a heuristic for the
two-machine flows hop problem with sequence-dependent setup times)
• 2nd phase: Determine a machine assignment for all jobs according to the ordered list
of the first phase (e.g. by using a heuristic for scheduling identical parallel machines)
Referring to Johnson's (1954) famous two-machine flowshop algorithm Gupta and Darrow
(1985) developed two algorithms for determining permutation schedules for the two-
machine flowshop problem with sequence-dependent setup times. These algorithms may be
adapted to find initial feasible schedules for our problem. The general outline of the first
algorithm is as follows.
Gupta - Darrow 1
Step 1 Let S be a schedule with n empty places. Define 1) and kr to be the leftmost and the
rightmost index for an empty place in S, Le., kJ : = 1 and kr : = n. 1 and r denote the
leftmost and the rightmost job in S (initially I : = r : = 0).
Step 2 Repeat
Define for all unscheduled jobs i:
A(i) : = c/l,i) + t1 (i) - c2(1,i)
B(i) : = t 2(i)
C1(i) : = c1(l,i) + t1 (i)
C2(i) : = tli) + cli,r)
Find unscheduled jobs i* and j* according to minimize A(i) and B(j) for all
unscheduled jobs i and j, respectively.
ifA(i*) <B(j*) then placei*onpositionkl'l:=i*,I):=kJ+1 endif
if A(i*) = B(j*) then
if i* t j* then
if min {Cl(i*), C2(j*)} ~ min {Cl(j*), C2(i*)}
then place i* on position kl' I : = i*, kJ : = kJ+ 1
else place j* on position k,r r:= j*, kr := kr -1 endif
else
342
if C1(i*) ~ C2(i*)
then place i* on position~, 1: = i*, ~ := ~+1
else place i* on position k,r r:= i*, kr := kr -1 endif
endif
endif
if A(i*) > B(j*) then place j* on position k,r r := j*, kr := kr -1 endif
until ~ = kr .
Step 3 Insert the last unscheduled job at position k) in S.
Based on some relationships with the traveling salesman problem we may develop a third
heuristic for our problem. In principle this so-called Insertion-Method proceeds as follows:
Randomly choose a yet unscheduled job and place this job such that the increase of the
new schedule length is minimum.
The temporal distance between processing two jobs in succession is fixed by the largest
setup time between them either at stage 1 or at stage 2, i.e., the distance d(i,j) between
two jobs i and j is described as d(i,j) := max {c1(i,j), cli,j)}.
Insertion-Method
Step 1 Select jobs i* and j* (i* *j*) such that d(i*, j*) minimizes d(i,j) for all jobs
i, j e{1, ... ,n}, i*j. Define an initial schedule as S = {i*, j*}, k:= 2.
Step 2 Repea.t
Insert an arbitrary yet unscheduled job j from J in S such that this insertion
causes the smallest increase of the makespan T(S). (The placement of j in Swill
be checked for all k+ 1 possible places).
k:= k+1
until k = n.
In the following a new so-called Setup-Method will be described The main orientation for
choosing the jobs is their setup time with respect to the last scheduled job. The first
scheduled job (called job i*) will be chosen in a way which minimizes the idle time at
stage 2. This idle time is determined while job i* is processed at stage 1 and only the setup
343
Setup-Method
By observing the mode of working and the results of this algorithm one will recognize that
in general the more jobs are scheduled the worse are the setup times which have to be
accepted because the number of unscheduled jobs decreases. Therefore we use an algorithm
which tries to overcome this disadvantage by scheduling a certain number of jobs by
complete enumeration. Given this number as nenum, then Step 2 will be repeated until
k] =n - nenum + 1 is reached and a third step will be added:
Step 3 Schedule the remaining nenum jobs by complete enumeration on the places
n - nenum + 1, ... , n (while considering the last scheduled job 1).
In our implementation below nenum equals 7 (Setup-Method 7), considering a reasonable
tradeoff with computation times.
All algorithms described above will be used to find initial schedules without considering
more than one machine at stage 1. The makespan of these schedules will be computed by
an algorithm of Gupta (1988) which tries to minimize the number of machines in use at
stage 1, too. The main aspect of this algorithm, however, is to assign the jobs to specific
machines at stage 1.
344
Assignment
In order to minimize the makespan all heuristics will be combined with this algorithm
Assignment.
5. Improvement Procedures
All algorithms described in the previous section may be used to compute feasible solutions.
In the sequel improvement procedures are proposed which start with a feasible schedule
and seek to improve this schedule via a sequence of interchanges. The following definition
of a neighbourhood will be used. Let S be a schedule, e.g. as determined according to the
initial phase of any algorithm of section 4.1. Its makespan T(S) is the objective function
value after having applied Assignment. When exchanging two jobs this is done with respect
to S resulting in a schedule S I. The corresponding change in the objective function is
computed by re-applying Assignment for S I and comparing the resulting makespan T(S I)
with T(S). Three improvement procedures using this neighbourhood definition will be
described.
The first algorithm is a simplified neighbourhood search technique adapted from Gupta and
Darrow (1985). It may be characterized as a 2-optimal exchange procedure.
2-opt Method
Starting with an initial feasible schedule given by one of the algorithms above at the end S
hopefully contains an improved schedule. The crucial assumption of the 2-opt Method is
that whenever an improvement is possible it will be realized, but no restart will be made.
However, this is compensated by a running time known in advance.
The following algorithm tries to overcome this disadvantage by computing in each iteration
the best possible exchange of any two jobs and restarting whenever an improvement is
realized. That is, for this algorithm called Steepest Descent the number of iterations is not
known in advance.
Steepest Descent
Step 1 Choose an initial schedule S with a makespan T(S).
Step 2 Repeat
S' : = S
*
For all i,j = 1, ... ,n (i j) do
get a new schedule S" with makespan T(S") from S by exchanging the jobs on
positions i and j
if T(S") < T(S') then S' : = S"
endfor
if T(S') < T(S) then S: = S' endif
until no improved schedule S' is found.
Steepest Descent proceeds in a greedy fashion and stops whenever in one iteration no
improvement is possible by exchanging any two jobs. If no improvement is possible the
current best solution, however, may be a local optimum. This leads to a "Steepest Descent
Mildest Ascent" procedure which allows for some deteriorations to leave local optima. To
avoid returning into a local optimum already encountered we use the ideas of a tabu list
(this idea is based on the static tabu search algorithm which was adapted by Widmer and
Hertz (1989) for the entire flowshop problem, cf. Glover (1989».
The tabu list contains a number of jobs and their places which led to previous solutions.
The time the jobs rest in the tabu list depends on its size. That is, with every new entry of
jobs in the list, it will be updated by probably throwing away the oldest existing entry.
With the size of the tabu list, too, the possibility of leaving a local minimum is fixed.
Besides the computational effort of the algorithm increases with this value. However, a
tabu list which is too small may lead to circles. Referring to Widmer and Hertz (1989) we
fixed the size to seven entries, i.e., the tabu list contains at most seven prohibited
combinations of jobs and places. (It could also be reasonable to vary the size of the tabu list
346
according to the problem size, i.e., the number of jobs). The computation time of the
algorithm as well as the depth of a local optimum which could be left depends on a variable
called nbmax. With this variable the maximum number of iterations without improving the
current best solution is fixed. Here nbmax will be set to n (the number of jobs). This results
in the following algorithm.
Tabu Search
Step 1 Choose an initial schedule S with a makespan T(S). Fix the length of the tabu list.
nbmax := n, nbiter:= 0, BI := 0, SI := S (T(S') = T(S) )
Step 2 Repea.t
nbiter : = nbiter+ 1
Search for the two jobs (for all jobs i,j = 1, ... ,n, ij:j) whose interchange (with
respect to their places in S I) leads to a schedule S" giving the largest improve-
ment of T(S") against T(S I) (or the smallest deterioration, respectively) while
not considering those changes which lead to combinations of jobs and places
included in the tabu list.
S I : = S", update the tabu list
if T(S I) < T(S) then S: = S I, BI : = nbiter endif
until nbiter - BI = nbmax .
It may be recognized that with every improvement BI will be set to the value of nbiter,
i.e., the difference of nbiter and BI will be zero and the algorithm continues. Otherwise,
e.g. caused by successive deteriorations, the difference between BI and nbiter will increase
until it is equal to nbmax and the algorithm stops.
6. Computational Results
The proposed algorithms are tested while varying the number of machines at stage 1 as
well as the number of jobs. We will report results for the cases when there are one, two or
five machines at stage 1 and the number of jobs is 10, 20, 30, 40, and 50, respectively. Each
possible combination is tested over a sample of 50 randomly generated problem instances.
The processing times are drawn from a uniform distribution in the interval [1,50] and the
setup times in the interval [1,5]. To have a more transparent presentation a second set of
test problems is considered with the same assumptions but a modified rate of processing
over setup times, i.e., the setup times are drawn from the interval [1,25]. All algorithms are
programmed in Turbo Pascal Version 5.5 and run on an IBM AT Pc.
For computing the relative deviation of an algorithm for each problem the best result
(lowest makespan obtained while running all twenty combinations, i.e., all five heuristics
347
itself and combined with either of the three improvement procedures) is taken as the refer-
ence. For problem x the relative deviation of the solution of algorithm y is computed as:
U)
~
350
for all initial feasible solutions. With respect to solution quality in most cases the
Setup-Method (or Setup-Method 7) combined with Tabu Search should be applied,
however, by observing the tradeoff with the computation time. For m l = 1 a combination
of Tabu Search with the Insertion-Method could be recommended.
Additional computational testing gives nearly the same results (e.g. if we have the same
proportion of processing times over setup times: processing times out of [1,100] and setup
times out of [1,10]).
7. Conclusions
An open question remains with respect to lower bounds. These apparently need to be deve-
loped and a branch and bound algorithm for the exact solution of the problem should be
investigated. In addition, an obvious problem generalization motivated by real-world
applications where buffer restrictions have to be observed between the stages should be
considered.
References
T.S. Arthanari and K.G. Ramamurthy (1970). "A branch and bound algorithm for
sequencing n jobs on m parallel processors", Opsearch 7, 147-156.
T.S. Arthanari and K.G. Ramamurthy (1971). "An extension of two machine sequencing
problem", Opsearch 8, 10-22.
R. Bellman, A.O. Esogbue and I. Nabeshima (1982). Mathematical Aspects of Scheduling
& Applications, Pergamon Press, Oxford et al.
S.A. Brah and J.L. Hunsucker (1991). "Branch and bound algorithm for the flow shop with
multiple processors", Eur. J. Oper. Res. 51, 88-99.
B.D. Corwin and A.O. Esogbue (1974). "Two machine flow shop scheduling problems with
sequence dependent setup times: a dynamic programming approach", Nav. Res. Log.
Q. 21, 515-524.
W. Domschke, P. Forst and S. VoB (1992). "Tabu search techniques for the quadratic
semi-assignment problem", in: G. Fandel, T. Gulledge and A. Jones (Eds.) New
Directions for Operations Research in Manufacturing, Springer, Berlin et al.
R.A. Dudek, S.S. Panwalkar and M.L. Smith (1992). "The lessons of flowshop scheduling
research", Operations Research 40, 7-13.
351
P.J. Egbelu (1991). "Batch production time in a multi-stage system with material-handling
consideration", Int. J. of Production Research 29,695-712.
F. Glover (1989). "Tabu search - part I", ORSA J. Computing 1, 190-204.
J .N.D. Gupta (1988). "Two-stage, hybrid flow-shop scheduling problem", J. Oper. Res.
Soc. 39, 359-364.
J.N.D. Gupta and W.P. Darrow (1985). "Approximate schedules for the two-machine
flowshop with sequence dependent setup tImes", Indian J. Management and Systems 1,
6-11.
J.N.D. Gupta and W.P. Darrow (1986). "The two-machine sequence dependent flowshop",
Eul. J. Oper. Res. 24, 439-446.
J.N.D. Gupta and E.A. Tunc (1991). "Schedules for a two-stage hybrid flowshop with
parallel machines at the second stage", Int. J. of Production Research 29, 1489-1502.
S.M. Johnson (1954). "Optimal two- and three-stage production schedules with setup times
included", Nav. Res. Log. Q. 1,61-68.
S. Kochhar and RJ.T. Morris (1987). "Heuristic methods for flexible flow line scheduling",
J. of. Manufacturing 6, 299-314.
M.A. Langston (1987). "Interstage transportation planning in the deterministic flow-shop
environment", Operations Research 35, 556-564.
B.S. Mittal and P.c. Bagga (1973). "Two machine sequencing problem with parallel
machines", Opsearch 10, 50-61.
RN. Murthy (1974). "On two machine sequencing with parallel processors", Opsearch 11,
42-44.
S.L. Narasimhan and P.M. Mangiameli (1987). "A comparison of sequencing rules for a
two-stage hybrid flowshop" , Decision Sciences 18, 250-265.
S.L. Narasimhan and S.S. Panwalker (1984). "Scheduling in a two-stage manufacturing
process", Int. J. of Production Research 22, 555-564.
RJ. Paul (1979). "A production scheduling problem in the glass-container industry",
Operations Research 27, 290-302.
T.B.K. Rao (1970). "Sequencing in the order A, B with multiplicity of machines for a
single operation", Opsearch 7, 135-144.
M.S. Salvador (1973). "A solution to a special case of flow shop scheduling problems",
Lecture Notes in Econ. and Math. Systems 86, 83-91
RW. Schmenner (1990). Production / Operations Management: Concepts and Situations,
4th ed., Macmillan, New York.
A.K. Sethi and S.P. Sethi (1990). "Flexibility in manufacturing: a survey", The Int. J. of
Flexible Manufacturing Systems 2, 289-328.
H.D. Sherali, S.C. Sarin and M.S. Kodialam (1990). "Models and algorithms for a
two-stage production process" , Prod. Planning and Control 1, 27-39.
J.Y. Simons (1992). "Heuristics in flow shop scheduling with sequence dependent setup
times", Omega 20, 215-225.
B.N. Srikar and S. Ghosh (1986). "A MILP model for the n-job, m-stage flowshop with
sequence dependent setup times" , Int. J. of Production Research 24, 1459-1474.
C. Sriskandarajah and P. Ladet (1986), "Some no-wait shops scheduling problems:
complexity aspects", Eur. J. Opel. Res. 24, 424-438.
C. Sriskandarajah and S.P. Sethi (1989). "Scheduling algorithms for flexible flowshops:
worst case and average case performance", Eur. J. Oper. Res. 43, 143-160.
352
E.F. Stafford and F.T. Tseng (1990). "On the Srikar-Ghosh MILP model for the n xm
SDST floshop problem", Int. J. of Production Research 28, 1817-1830.
E. Uskup and S.B. Smith (1975). " A branch-and-bound algorithm for two-stage
production-sequencing problems", Operations Research 23, 118-136.
M. Widmer and A. Hertz (1989). "A new heuristic method for the flow shop sequencing
problem", Eur. J. Oper. Res. 41, 186-193.
R.J. Wittrock (1985). "Scheduling algorithms for flexible flow lines", IBM J. Res. Develop.
29, 401-412.
R.J. Wittrock (1988). "An adaptable scheduling algorithm for flexible flow lines",
Operations Research 36, 445-453.
SHOP·FLOOR SCHEDULING AND CONTROL:
A SYSTEMS APPROACH
C. Dennis Pegden
Systems Modeling Corporation
and
Alben L. Jones
National Institute for Standards and Technology
Abstract
In this paper, we defme the architectural requirements and an overall control schema that we feel
fits the complexity of the problem. The architectural elements include defmitions of the following
architectures: functional, control, data, computer, communication and factory. The definitions and
interactions of these architectures along with a view for automated shop-floor control is discussed. An
architecture for shop-floor control along with the application environment to implement such a system
is also presented.
BACKGROUND
Integration is one of the most imponant problems facing U.S. manufacturers today. While it is still
354
believed that Computer Integrated Manufacturing (CIM) can have a major positive impact on U.S.
productivity, it is far from commonplace in our factories. A major problem is the difficulty involved
in integrating products (software and hardware) together with information (internal and external) into a
smooth running system. The reason is that these products are typically supplied by a variety of vendors
who do not provide the necessary "integration hooks". That is, the' products from one vendor are not
meant to be (and in some cases are impossible to be) integrated with products from a different vendor.
The hooks referred to here fall into two categories: functional and control. Consider the example of
computer aided process planning (CAPP) and scheduling. Clearly, integration of these is essential in
every factory. There are, in fact, numerous products available today which claim to perform these two
functions. However, no two CAPP systems perform exactly the same functions, and the situation is
worse for scheduling systems. Furthermore, the input/output and control requirements can vary
dramatically from one product to another. This includes software (content and format), hardware
(communication protocols and capabilities), and database content and representation. Consequently, it
is almost impossible to integrate an arbitrary CAPP system with an arbitrary scheduling system. The
same situation exists for almost all manufacturing functions. To make matters worse, each user
invariably requires some special feature or option. This increases development and maintenance costs
and exacerbates the integration problem.
The underlying integration problem is both architectural and technological in nature. Without a detailed
architecture, vendors do not know what functionality and interfaces to provide in their products and what
technologies to use to build those products. Consequently, they provide a range of both. In terms of
the earlier example, this means that vendors provide several different products all claiming to do process
planning. In reality, these products can have vastly different capabilities using a Witle variety of
technologies at varying costs.
Without an architecture, users do not know what to expect from a given product They are left to tind
the one that meets their own definitions, objectives, and costs. As for integration, they typically have
four choices: go where they went before; pay handsomely for specific integration tools; do it themselves;
or ignore it Invariably, they do not have the resources for option number three. Consequently, closed-
systems and islands-of-automation continue to exist with neither vendors' incentive nor users' where-
with-all to change our current dilemma.
METHODOLOGY
The control of CIM systems continues to be a difficult applications problem for both industrial and
computer engineers. The complexity of a manufacturing system continues to perplex researchers
355
involved with the scheduling and control issues. The data requirements also strain the communication
and computing networks used to control these systems. Our basic approach to control a complex eIM
system is similar to the approach taken by many people involved with nondeterministic systems -- that
of closed loop simulation. This approach was fIrst described by DarEI and Wysk [DarEI & Wysk 1980]
and then later in Wu and Wysk [WU & Wysk 1989]. The approach is illustrated in Figure 1. As the
fIgure shows, a model of the system is used to simulate the system's performance before a specifIc
control is implemented. This approach looks to have tremendous potential, but by itself provides no
specifIc answers. A schedule or set of schedules needs to fIrst be created for the model of the system.
These schedules then need to be evaluated for a variety of characteristics (performance, deadlocking,
local phenomena, etc.). The model of the system usually represents a parallel manufacturing system
environment that can be used to test strategies rather than to solve problems. The strategies for control
need to be developed so that they can be applied to the model. Furthermore the model needs to be
effIcient enough so that the strategies can be evaluated promptly without slowing the system operation
while decisions are being made.
ACTUAL
Key to developing this type of control system is to distribute the control as well as to generate robust
schedules. Robust means that the schedule remains close to optimal (relative to some perfonnance
measure(s» over a realistic range of uncertainties. This means that the schedule is rigorous enough to
absorb minor perturbations.
Control is distributed using a hierarchical shop floor control system (SFCS) containing three levels: cell,
workstation and equipment. The equipment to be controlled includes: NC machining centers, robot
systems, AGYs, or any other computer controlled manufacturing equipment and related tooling resources.
The cell controller periodically receives a list of jobs, with associated due dates from a Master
Production Scheduler. For each job, a process plan is retrieved from a database. The SFCS then
determines the sequence of activities necessary to execute that process plan. This involves the selection
of specific process routing activities, scheduling of all activities at both the cell and workstation levels,
coordinating those activities across the equipment, monitoring activities, job tracking, and some error
recovery.
Error recovery in this context means dealing with the impact of delays. This is a two step process:
determine the impact on the current schedule and update the schedule. The flfst step requires a robust
data structure for the schedule which allows one to determine the "ripple effect" of a delay on the delay
on the current start and finish times. Based on this analysis, the recovery can be a quick fix (in which
a few times get revised), a major rescheduling, anellor a major replanning.
When most people refer to a manufacturing architecture, they really refer to a number of architectures.
For our discussion when we use "architecture" without a qualifler, it is our global manUfacturing
architecture. We see manufacturing systems consisting of the following architectures:
1) Factory Architecture
2) Functional Architecture
3) Control Architecture
4) Communication Architecture
5) Information System Architecture
A factory architecture would consist of all the information concerning the physical factory. The
architecture is most closely aligned with what we associate to a "building architecture". Factory
architectures are normally represented using a standard layout drawing scheme, popUlated with
manufacturing equipment. The factory architecture forms the basis of much of the definition for the
control system, and needs to be qualified with modifiers such as: reach, capacities (spatial and load),
intersections, etc.; and other attributes that form constraints for the control system.
357
A functional architecture is a partitioning of activities that occur in a system as they relate to the
production requirements (process. move. etc.). Although different manufacturing facilities perform vastly
different operations. the generic underlining functions are the same.
The control architecture considers all other architectures and embodies a set of procedures and messages
that are required to plan for. schedule and present (execute) the tasks defined in the functional
architecture.
The communication architecture defines how entities in the system can "listen" and "talk" with other
entities. The information system architecture consists of the communication architecture as well as the
computational and data storage resources within the system.
The three level hierarchical shop floor functional architecture. which contains cells. workstations. and
equipment as proposed in [Jones. Barlaneyer. & Davis. 1989. Joshi. Wysk & Jones. 1990. and Jones &
Saleh] is used as our functional architecture. One crucial property of the functional architecture is that
each module performs the same tasks: planning. scheduling. and execution. See Figure 2. This
functional architecture significantly can simplify software development. Key to reusable software
development is developing strategies to address the distributed elM control and the scheduling problem
[Davis & Jones. 1989. Davis & Jones. 1988 and Chang. Wu & Storer]. We believe that these strategies
are highly compatible and that the resulting approaches can be expanded to address the distributed
planning problem.
PLANNING
SCHEDUUNG SHOP FLOOR
EXECUTION
PLANNING
SCHEDUUNG WORKSTATION
EXECUTION
THE SYSTEM
Our approach will be illustrated using a hierarchical shop floor control system (SFCS) containing three
functional levels shown in Figure 2: cell, worlcstation and equipment
Architecture
We believe that a "systems approach" to this problem is essential to achieve the level of integration that
is required for CIM. A primary component of any system theory is the definition of the state of the
system. For any complex system like manufacturing, the deflnition of the system state could involve
thousands of variables, some discrete, some continuous, many stochastic. As the system evolves in time,
those variables take on many different values. The goal is to define a set of decision rules which govern
the way in which that evolution takes place. These rules can be generated "off-line" or "on-line", and
are invoked to "control" how and when the system changes.
The mathematical/computational problems involved in developing such rules for large systems are well
known. Decomposition, in one form or another, is a recognized technique for addressing these problems.
We believe that the two primary decomposition theories, temporal and spatial, are fundamental to this
problem. Temporal decomposition attempts to deal with the fact that the events which cause changes
in one or more state variable occur at "lots of different frequencies". This also implies that the rules
used to control the magnitude of those changes must also be determined at different frequencies. Spatial
decomposition attempts to deal with the large-scale optimization problems of planning and scheduling
whose solution yields the rules we mentioned above. Goal-directed and price directed methods are
typically used to decompose each problem (decision space) into a series of well-defined, solvable
subproblems. The hierarchical Slructure shown in Figure 2, is based on the simultaneous application of
both of these decomposition theories and forms the functional architectural basis for the remainder of
this paper. As shown in the figure, each controller performs three main functions planning, scheduling,
and execution.
Planning is responsible for selecting/updating the process plan and lower level configuration to be used
in producing assigned jobs and generating revised completion times for those jobs. Cell level process
plans contain routing summaries for each job. Each workstation plan contains the operations to be done
and the information necessary to generate part programs or their equivalent We view equipment level
process plans as the control program required to actually generate a machine. This information is
typically encoded in RS494 format. At each level, scheduling is responsible for evaluating candidate
process plans and generating/updating expected start and finish times (the schedule) for the activities in
the selected plan. Execution is responsible for interfacing with all subordinates and other applications.
It initiates start-up and shutdown, issues commands to perform assigned activities, uses feedback to
359
We emphasize that these functions are executed at different frequencies within the same level and across
separate levels. Developing analysis tools to determine those frequencies will be an important part of
the proposed research on the architecture. Those tools will attempt to balance the coordination required
by the cell controller against the independent scheduling of the workstation controllers that arises from
the temporaVspatial decomposition.
Planning
This function determines the best set of processing instruCtions among several candidates that appear
in the process plan file and configures control of the "virtual cells" and "virtual workstations" to be used
to produce a product. The selection is based upon an analysis to predict the impact that each candidate
will have on capacity, potential bottlenecks, and other system performance measures. Process plans are
typically viewed as graphs. Each node in the graph can be expanded at lower levels as the planning
detail increases. Planning is illustrated in Table 1.
Scheduling
Current approaches to scheduling are inadequate for the type of distributed scheduling that we feel is
required for flexible systems. They typically do not: include the complex constraints arising from
material handling and tool management; allow multi-criteria optimization; provide for the coordination
of distributed schedulers across hierarchical levels; and do not condition the decision upon the current
state of the system.
Our schema for scheduling is illustrated in Figure 1. The key feature of the schema is that these rules
and procedures are fIrst previewed using a simulation of the system in order to determine how well they
perform. This generic framework for scheduling is applicable at both the cell and workstation levels
[Davis & Jones, 1989]. The concurrent simulation is initialized to the true system state and run to
forecast the behavior of the system for a selected set of scheduling alternatives and performance criteria.
The cell controller generates start and fInish times which become constraints for the workstation level
schedulers who, in tum, do their own independent scheduling. This work extends the concepts
developed in the Multi-Pass Expert Control System (MPECS) [WU & Wysk, 1989]. MPECS uses an
expert system to detennine the set of potential scheduling rules or procedures at the cell level and
evaluates those rules using discrete event simulation. A neural network is being tested to determine if
it can provide the rule base for scheduling.
The key to developing this type of distributed system lies in the generation of "robust schedules".
Table 1. Taxonomy or the Planning Function in Shop Floor Control. (.0)
~
Level Plan A~:1Cd Route Methodology Goals Characteristics Information needed
Decompose a
shop level plan I) A task has alternative I) Order (ordec
into machine, tooling, and number, pan milt,
workstation filtturing resources quantity, due date)
PI P2 workslation2 level plans such 2) Task precedence 2) Process plan file
S.... ~ , _................. (AND/OR ",ph) 3) Shop
~ ,... ~""""'~h 3)T""".""",,,,_ ~r.""""'.k
1'3 ~ ~ serialization workstation is pans are grouped 4) Workstation
~ ~ (modified bIIanced and 4) Tasks with common staws
T T : line material tooling/fIX turing 5) Machining data
ks . 1 balancing handling time resources are grouped handbook
wor lallon problem) number of 5) Physical machining
workstation constraints
level plans) is 6) Current workstation
minimized workload is considered
Robust means that the schedule remains close to optimal (relative to some performance measure(s» over
a realistic range of uncertainties. This means that the schedule is rigorous enough to absorb minor
perturbations. This will limit the number of "reschedulings" that must be done when something goes
wrong.
Execution
Execution provides the mechanisms for carrying out the actions and manages the actual flow of
information/parts between the computer/machines. This requires a system capable of generating,
maintaining, and integrating error-free, run-time software to control the system.
Concepts from formal language and automata theory have been used already to demonstrate this
capability at the workstation level [Hopcroft & Ullman, 1979; Mettala, Joshi, & Wysk, 1989; and Naylor
& Volz, 1987]. We view each module as a layered parser. The highest layer parser is an automatically
constructed push down automata which interprets command/feedback inputs, and activates the appropriate
actions. Examples include the movement of parts in the system, consultation of schedulers, and
preparation of reports. The next layer is the Synchronization layer which is activated upon recognition
of grammatical constructs reserved for synchronization of machine interactions. A good example is the
synchronization required when a robot holding a part in a machine fixture requests that the machine
grasp the part. Error actions are executed upon recognition of error conditions and implemented via the
use of the error parser. This same concept can be expanded to the cell level where parsers and
associated context-free grammars will be generated automatically from the description of the cell.
URP CUPS)
Facility Model
Custom interface
Part 1 _ QtJ-- St.at.ue }
~ Dul dlle _ report.lna to/from MRP
[No standards exist]
~ SHOP
Part 1_ St.at.ue
reporUna
Due dale __
WORKSTATION
EQUIPMENT
MMS ,..-_--,
SYSTEM COMPONENTS
Part Representation
Automatic generation of shop floor control software requires considerable reasoning about the
relationships between the desired finished part requirements. the capabilities of the shop facilities and
equipment, as well as the initial and intermediate part forms. The development of a product description
scheme and the reasoning mechanisms that can perform such evaluations is critical to the success of any
control system. Understanding the finished part requirements. and those of the intermediate stages that
the part must go through is a critical capability for a flexible cell control system. For example. if the
system is to have the capability to modify the process plan (operations and/or routing summary). it must
be able to (on-demand) reinterpret the part requirements without human intervention. Even for less
drastic decisions. such as those associated with allocation of material handling resources. dynamic job
priority reassignment. or determination of the impact of a device failure requires the capability to reason
about the part in the context of the manufacturing process. In addition. adding the capability to the
363
control software to diagnose part quality problems and to take corrective actions requires the ability to
reason about the changes to a part that result from complex interactions between the part and the many
different processes which have been applied to the part.
Previous attempts to hard code an understanding of part requirements and manufacturing capabilities by
means of a group technology scheme has resulted in impressive if limited success. These attempts
substantiate the value of imbuing the system with such an understanding. Their failures however, point
to the need for the system to be able to generate such an understanding on-demand.
A part description representation scheme that is sufficiently robust as to allow the construction of the
associated reasoning mechanism itself is required. In the development of the description representation
scheme one of the key factors is the ability to seamlessly integrate the many descriptions of a part with
the many models of that part. This amounts to the integration of facts that must be true of the resulting
part with models prescribing constraints that must be satisfied by such a part. Such a representation
scheme must be able to support both the extraction of descriptions from models (e.g., recognition of a
feature) as well as generation of models from descriptions and existing models (e.g., to allow the
generation of a stress model for the evaluation of a derived fixturing concept).
Process Planning
Process plans play an important role in the definition of any control structure, as well as in defining
alternative sequences of operations that must be known by the planning and scheduling modules. The
need for an alternative manifests itself in two important ways:
(i) it provides dynamic schedules with various alternatives available at any instant, and
(ii) the process of creating control software to implement the scheduling actions requires that alternatives
be known priori, so that control software can provide for the necessary links in the control architecture.
A process plan representation is required that is capable of representing all multi-level interactions and
possible precedence that occur among the planning and processing decisions. An AND/OR precedence
graph based representation is proposed as a compact representation of the process plan [Mettala and
Joshi, 1989]. The hierarchical nature of eIM control makes the graph representation even more
attractive. Table 1 shows the use of hierarchical AND/OR graphs to represent different levels of process
planning required. The process plan decomposition parallels that of the control architecture, and thus
ensures that the routing alternatives are provided for decision making at an appropriate level of detail
suitable for each level in the architecture. Details on what information needs to be represented at each
node of the graph needs to be determined for successful implementation. At the equipment level, each
364
task will be structured to represent a unit processing element. These elements are assembled to produce
as efficient of process plan as possible. The plan is then poned to the equipment using MMS
specifications.
A "formal model structure" for process planning has been proposed [Hoberecht, Joshi & Wysk 1991].
This structure is of a generic nature and captures the essence of process planning. It will be used to
store process planning knowledge and generate new and/or alternative process plans. The formal model
uses a directed graph (formal automata model) to describe process planning decision making. Industry
experts can create the initial graph to be used in the planning.
In our view, on-line planning means selecting from several candidates each with its own set of resources
and precedence relations among those resources. This of course implies the existence of process plans
that contain these candidates. Furthermore, there must be alternatives at each level of the hierarchy.
System deadlocks have been ignored in most scheduling studies, which typically assume infinite
capacities and few limits on physical constraints imposed by material handling equipment Conventional
implementations of FMS systems allocate large amounts of storage space to avoid deadlocking, and rely
on creating batches of pans using linear flow characteristics which results in inefficient use of resources
and major loss in flexibility of systems. The deadlock system to be used in each controller is described
in [Wysk, Yang & Joshi, 1991].
how do we develop a system capable of generating run time software to control the system?
The development of software for CIM systems is characterized by the need to carefully model machines
on the factory floor, interacting of parts on those machines as specified by a process plan, specific data
updates that occur within computers constituting the control sys~em, and, finally, to specify the
interaction between the control commands and models that characterize the computer control system.
To focus on automatic software generation, equivalence of fonnal models of the manufacturing system
and of software must be achieved. Loosely speaking, analogous techniques have been used in compiler
construction, but in order to apply those techniques to manufacturing control systems, strict equivalence
of the properties of manufacturing systems, and the corresponding messages and formal models used to
control the system must be shown.
Several authors [Naylor and Volz 1987, Biemans and Blonk, 1986, Naylor and Maletz, 1986] have
developed formal descriptive models of the factory floor with the intent of supporting software
generation, but have not shown methods for systematically extending their fonnal models into running
software. Other authors have developed rapid software prototyping systems [Maimon and Fisher, 1988]
that provide only for the structural specification of cell level control software, still demanding enormous
development of hand crafted code to realize effective systems. In order to overcome the current
impediments to the adoption of CIM technologies by small to medium firms, we believe that reliable,
affordable factory floor level control software generators deserve consideration.
Early work in this area has focused on the development of automatic generation of control software
(called CIMGEN [Joshi, Mettala and Wysk, 1991]) for a two level hierarchical system. The overall
approach taken here was based on the idea that each controller can be modelled as a context free
grammar, and control is exercised as a by product of recognition of manufacturing system commands.
The key to the system is the semantic actions associated with the productions in the grammar. The
semantic actions are executed as the result of the parsing process and provide all the control activities
such as book keeping, message composition and transmission, etc. CIMGEN currently does not interface
with a scheduling system, but hooks are provided for future interface.
Scheduling in our proposed architecture will be performed hierarchically. Based on the input to the cell
366
CIO CofllTOlk,
.
!'
----------------Wo~~Co~ --~
r Plannlnl
Fundioa
r-------------------~-----SdMdutinIFu~ioa------
p.nrouainp
processin, times
I'C.!OW'Ce requirements
,_.... - - - - - - - - - - - - - - - - - - .. Prep••--rocessc>rl
~~---~
... ----------- -,I
I
I
---
I
orr-line
Neural I
•_
•
Traininl
Propwnminl Network I
I
I
revise
U'ainin, (rulel.ruJe2) I
Jet
I
I I
• I
Data quety: move(O,LI,u)? Deadl....... I
Mulli-pass uu. I
analyzer Simulator Detection
, answer Module I
I t t
II
I
___'_'__-_-__- ~~!l
I L ______ ~
~
----------------------j .= r----~-J
I1
Eqllipmelll CofllTOlk,
level scheduler, the cell will generate start and finish times which become constraints for workstation
level schedulers, who in turn do their own scheduling. A generic framework for such scheduling has
been developed which is applicable to both cell and work station levels [Davis and Jones, 1988]. This
approach will be extended and linked to the multipass scheduling concept.
Multi-pass scheduling is an approach to resolving factory scheduling problems and has shown promise
recently. DarEI and Wysk [1980] and Nof and Gurecki [1981] have shown significant throughput
improvements can be made using a simulation model to determine the future course for a manufacturing
system. Essentially the procedure works as follows. A simulation model of the system is resident on
the system control computer. At each decision point, a deterministic simulation is run to see what
control policy (from a series of rule based policies) impacts the current system most favorably. This
control policy is then chosen and the appropriate control response is signaled for execution on the
system.
One unfortunate drawback of this procedure is that FMS's are not static (the types of parts, demand,
tooling, etc. change over time). Each time the specifics change, the simulation model must be rewritten
or updated which has to be done manually. Although the benefits can be significant, the implementation
costs can be quite expensive.
The key to the development of this type of distributed scheduling lies in the generation of "robust"
schedules. Robust in this context means that the schedules remain close to optimal (relative to some
performance measures) over a realistic range of uncertainties. This means that the schedule is rigorous
enough to absorb minor perturbations.
Simulation Model
The major function of the simulation model is to evaluate alternative control policies. The simulation
model queries the current databases and determines the future system status by making a pass of
deterministic simulation according to a rule(s) defined in the rule module. The system performance
predicted by each pass of simulation is a measure of closeness to an objective function from the higher
level factory control system. Thus, at the end of all passes of the simulation, the best schedule is then
applied to the physical manufacturing system. The simulation model will operate on parts only currently
available to the system (exogenous activities will not be permitted). This creates a deterministic system
that can be easily analyzed.
An important issue that must be considered is the length of the simulation window, that determines how
long a simulation should look ahead. Intuitively, this value is critical to overall perfonnance of the
368
multipass scheduling mechanism. Detennination of the most desirable simulation window based on its
effect on perfonnance of the scheduling mechanism. computational burden on the system and other
factors that will arise is critical.
The error recovery module interfaces with the cell and workstation controller. and is invoked when errors
are detected. The "hooks" in the cell control and workstation control software. to which the error
module will connect. are created by the automatic control software generation process during the stage
of software generation. The interactions are controlled via error semantic actions which interface to the
error recovery module. Other interfaces include the deadlock detection module to ensure that the error
recovery process does not result in creation of system deadlocks, and MPECS to detennine scheduling
or error recovery actions and to simulate the actions of the various alternative error recovery actions
possible.
Several error recovery and handling procedures have been developed by researchers in areas of computer
science, robotics. electrical engineering in the domain of fault tolerant computing. electronic circuit
design. etc., but very little work has focused on FMS. The various approaches suggested include
emergency stop approach. use of redundant systems. software contingency control. fixed recovery
strategies. among others. These provide some ideas for error handling, but need more research to adapt
or develop new economic strategies for FMS.
Error recovery techniques will also have to be developed in an hierarchical manner for each module of
planning scheduling execution at various levels.
of a delay on the delay of all other relevant start and finish times. Based on this analysis, the recovery
can be a quick fix (in which few times are revised), a major rescheduling, and/or a major replanning.
New methods such as penurbation analysis or match up scheduling will be investigated.
Conclusions
Integration continues to be one of the most important problems facing U.S. manufacturers. While it is
still believed that Computer Integrated Manufacturing (CIM) can have a major positive impact on U.S.
productivity. it is far from commonplace in our factories. A major problem is the difficulty involved
in integrating products (software and hardware) together with information (internal and external) into a
smooth running system. The reason is that these products are typically supplied by a variety of vendors
who do not provide the necessary "integration hooks". In this paper, we have illustrated that the
integration hooks referred to here fall into two categories: functional and control and that several
architectures work concurrently in a CIM environment. Clearly, integration of these is essential in every
factory.
The underlying engineering integration problem is both architectural and technological in nature.
Without a detailed architecture, system supplies do not know what functionality and interfaces to provide
in their products and what technologies to use to build those products. Consequently, they provide a
range of both without an architecture, users do not know what to expect from a given product They
are left to find the one that meets their own defmitions, objectives, and costs. Closed-systems and
islands-of-automation continue to exist with neither vendors' incentive nor users' where-with-all to
change our current dilemma.
This paper overviews these topics, and presents a general structure to pursue CIM shop-floor control.
The key here is the development of an integrated view of computer INTEGRA TED manufacturing.
Also inherent in the paper is that several technological issues still require resolution. The closed loop
simulation control approach provides a tractable approach to scheduling of very flexible systems. The
frequency used to evoke this procedure, the application of intelligent scheduling rules, the analysis of
the simulation response and the application of deadlock resolution are all issues that need to be resolved
before this approach will bear fruit.
370
REFERENCES
Chang, P., Wu, S., and Storer, R., • A One-Machine Rescheduling Heuristic with Efficiency and Stability
as Criteria", Lehigh University working paper.
Chang, T. C., Wysk, R. A. and Wang, H. P., Computer-Aided Manufacturing, Prentice-Hall, Englewood
Cliffs, NJ, 1991.
DarEI, E. and Wysk, R.A., "Job Shop Scheduling-A Systematic Approach", Journal of Manufacturing
Systems, Vol. I, No. I, 1980.
Davis, W. and Jones, A., "Issues in Real-Time Simulation for Hexible Manufacturing Systems",
Proceedings of the European Simulation Multiconference, Rome, Italy, June 7-9, 1989.
Davis, W. and Jones, A., "A Functional Approach to Designing Architectures for Computer Integrated
Manufacturing", Systems, Man, and Cybernetics special issue on Manufacturing, Vol. 19, No.2,
164-174, March, 1989.
Davis, W. and Jones, A., "A Real-Time Production Scheduler for a Stochastic Manufacturing
Environment", International Journal of Computer Integrated Manufacturing, Vol. I, No.2, 101-112,
1988.
Gurecki, R. and Nof, S.Y., "Decision Support for a Computerized Manufacturing System", The Optimum
Planning of Computerized Manufacturing Systems, NSF Report No. APR74-15256, No. 14, 1979.
Hoberecht, W., Joshi, S., and Wysk, R.A., "A Fonnal Model for Process Planning", Proceedings llE
Research Conference, Chicago, IL, May 1992.
Hopcroft, J. and Ullman, J., Introduction to Automata Theory, Languages, and Computation, Reading,
MA,1979.
Jones, A. and Saleh, A., "A Multi-levellMulti-layer Architecture for Intelligent Shop Hoor Control",
International Journal of Computer Integrated Manufacturing special issue on Intelligent Control,
to appear.
Jones, A., Barlaneyer, E., and Davis, W., "Issues in the Design and Implementation of a System
Architecture for Computer Integrated Manufacturing", International Journal of Computer Integrated
Manufacturing special issue on CIM architecture, Vol 2, No.3, 1989.
Joshi, S., Wysk, R.A., and Jones, A., "A Scaleable Factory Architecture", Proceedings US/Germany
Conference on Operations Research in Manufacturing, 1990.
Mettala, E., Joshi, S., and Wysk, R., "CIMGEN - A Case Tool for CIM Development", Proceedings of
the FMS Conference, Boston, MA, August, 1989.
Naylor, A. and Volz, R., "Design of Integrated Manufacturing System Control Software", IEEE
Transactions on Systems, Man, and Cybernetics, Vol. 17, No.6, 1987.
Wu, S. and Leon, V., "A Search Algorithm for AND/OR Graphs Containing Chance Arcs", Artificial
Intelligence (to appear).
Wu, S. and Wysk, R., "An Application of Discrete Event Simulation to On-line Control and Scheduling
in Hexible Manufacturing", International Journal of Production Research, Vol. 27, No.9, 1989.
Wysk, R. A., Yang, N. and Joshi, S., "A Procedure for Deadlock Detection in FMSs", IEEE Transactions
on Robotics and Automation. Vol. 7. No. 6.00 853-859, Dec. 1991.
Spatially-oriented Production Planning and Scheduling
Uwe Petersen
Siemens AG, Corporate Production and Logistics Dept.
Otto-Hahn-Ring 6
1. Introduction
The present paper deals with the temporal location of manufacturing orders in limited pro-
duction areas. Such nesting problems are chiefly encountered in large-scale construction pro-
jects, e.g. in the shipbuilding industry. If the available assembly area is a potential bottle-
neck, the dimensions of large-scale orders have to be considered. In view of the increasing
automation of production, the proper utilization of assembly halls involves both the schedul-
ing of production orders and their spatial positioning.
The combination of scheduling and cutting stock gives rise to complexities, no simultaneous
computer algorithms having been developed to date. The purpose of the present study is to
describe and verify a new computer-aided procedure that closes this gap in production man-
agement. A large number of different models will be examined and the results evaluated.
Decision-making support for spatially-oriented capacity loading and scheduling can only be
presented by using heuristic simulation. Linear or mixed-integer programming models are not
available for these facility layout problems.
Order-sequencing strategies have therefore to take account of spatial as well as temporal as-
pects. Furthermore, the demands and aims of an industrial user in production planning have to
be considered by integrating knowledge-based capacity loading rules. The decision support
system proposed includes an efficient assignment algorithm, a graphical user interface for the
presentation of planning results, and a relational database for the storage of information. The
procedure is implemented on a Pc.
The dynamic layout heuristic is based on a discretization of space and time, freely combin-
able priority rules, and a flexible strategy of assignment. The particular quality of this ap-
proach consists in a substantial flexibility, so that items of any shape can be processed. Fi-
372
nally, the results of the simulation studies carried out will be summarized and, in addition, the
practical applicability of the procedure will be shown.
The conventional capacity planning problem consists in finding a schedule for n orders,
which have to be produced on m machines, so that at least one target criterion is optimized
(HOITSCH, 1985). Traditional planning approaches just take account of the time and quan-
tity aspects, while disregarding the spatial dimensions that determine capacity. Available pro-
duction area represents in many cases a bottle-neck for customer-oriented manufacturers en-
gaged in job production. Spatial dimensions should not be disregarded for this reason.
The existence of production programs is of fundamental importance for all job-shop schedul-
ing problems. Typically, manufacturers of large-scale products have a fixed amount of un-
filled orders for the coming planning period. Short-term modifications of the production
program only occur in isolated instances. To implement the program it is necessary to arrange
production orders according to logical and temporal requirements.
Currently available MRP systems are generally based on successive planning concepts and
frequently reveal an inadequate harmonization of program/quantity planning and scheduling
(ZAPFELI MISSBAUER, 1988 and KURBEU MEYNERT, 1988). It is mainly quantities
and times that are planned, to the exclusion of the workshop area. In capacity scheduling,
without exception, it is only the limitations on resources that are taken into account. The spa-
tial dimensions of manufacturing orders and means of production are disregarded, so that the
planning of parts-nesting is not possible using existing software systems.
In principle, computer-aided production planning and control is only possible with the aid of
optimizing or heuristic procedures. Heuristics are always chosen if an exact solution of the
optimization problems involved using appropriate self-contained mathematical models is
either impossible or too costly. To achieve a feasible solution to a planning problem at all,
people make do with a less than optimum result.
Considering scheduling heuristics, priority rules are the most widespread. These rules make
possible an assignment of items to productive units according to predetermined criteria. Pri-
ority rules are heuristic decision-making rules, derived largely from the objectives of produc-
tion process planning on the basis of plausibility considerations. They assign a priority to the
orders to be considered in the planning period, thus permitting the orders to be sorted in order
of importance, and allow preferential nesting according to available capacities. A motivation
is the need for a fast heuristic that could achieve "good" layouts (ISRANII SANDERS, 1985).
This means that, in the field of production, an instrument for the control of parts-nesting in
production areas is available. Individual investigations, however, have to find an answer to
the question, which criteria are particularly suitable. An adaptive learning heuristic can help
manufacturing planners to define combined priority rules.
Scientific research has not yet come up with efficient procedures for solving spatially-ori-
ented dynamic parts-nesting problems (SCHLAUCH! LEY, 1988 and KUHNLE/
SCHLAUCH, 1989). Innovations in this field are overdue, however, as there are various user
groups that could be helped. Practical applications exist principally for engineering compa-
nies whose production operations are conducted at internal building sites. The shipbuilding
industry is a good example of this.
This planning problem boils down to finding spatially and temporally optimized assignments
of a set of objects to a set of locations. At the start of a nesting process the initial spatial as-
signments of specific parts derived from previous periods has to be considered.
~ c.>
ciQ ' ~
....... Operation Layout
Scheduling Planning
~
""
""
~
2
5'
;:s
~
~
$::>
....
t;j Spatial Intema! Conl:>anY
;!s capacity
~ Scheduling Assignment Location Location
"" Loadng
~. Planning Planning Planning
s·
So
~
8;::
~
~
~
""g. Quadratic
lhrougll>ut Capacity Machine Job
'"~ Scheduling Scheduling Loading Sequencing Parts-nesting Spatial C&P Problems IIAssignment
in production dimensions only Other Problem
~ dmensions
§ areas
I:l..
Spatial + terrporal
dimension
;::
f...
~
[
s·
()<)
Cutting Bin-Packing
Problem Problem
375
Parts-nesting differs from job-shop scheduling through its combination of temporal and spa-
tial considerations. Dynamical locations in areas combines temporal dimensions of traditional
capacity planning with spatial dimension of cutting and packing problems (see fig. I).
The superficial notion that parts-nesting can be understood as a cutting problem and thus be
solved by using available software does not bear closer examination. Cutting software is lim-
ited in most cases to manipulating two-dimensional shapes. Furthermore, the size of the
problem is narrowed down, target criteria are not transferable and many restrictions cannot be
modeled. Not only the spatial dimensions, but above all the time taken by items-nesting has to
be regarded.
In contrast to cutting and packing problems (C & P problems) on the one hand and conven-
tional sequencing problems on the other, spatial and dynamic parts-nesting basically consti-
tutes a four-dimensional problem, since the time dimension has to be considered in addition
to the three space coordinates.
At first, however, the shape of the part is represented only two-dimensionally. When objects
are projected onto their ground space, only three dimensions (including time) remain relevant.
Discrete measurements of distance are made possible by the use of exactly scanned objects
and planning areas, which are particularly easy to handle on a computer. Finally, it should be
mentioned that parts-nesting is considered to be deterministic having fixed data constella-
tions.
The actual nesting procedure thus contains a dynamic C & P problem. The outlines of the
object have to be located in different areas while minimizing trim loss. A planning strategy
arises out of priority and scheduling rules. Apart from minimizing trim loss, target criteria
should include shortening throughput times and delivery delays and maximizing capacity
utilization. Relevant restrictions for nested objects include the various temporal parameters
(i.e. throughput time , the earliest possible and the latest permissible starting time), production
value, height, weight, and outline dimensions. Examples of area restrictions are height,
ground bearing or crane lifting capacity, surface area and a specific location value (e.g. the
book value of an assembly shop).
The modeling of spatial objects using relational databases is no simple task. Shapes have to
be easy to store and quickly retrievable. The computer-internal representation of the spatial
form of an item generally involves breaking down complex shapes into easy-to-handle geo-
metrical elements such as volume, area, border and point (SPUR! IMAM! ARMBRUST/
HAIPTER! LOSKE, 1989).
Optimized nestings of manufacturing orders have to contain verification and analysis of po-
tential collisions. Object administration must be realistic and take account of form and quan-
376
tity if it is to be adequate to practical requirements. For this reason, not only simple and
regular outlines such as rectangles and triangles, but any and all shapes have to be considered.
In one planning section about 50 to 500 different objects have to be administered. This task
can only be mastered effectively by scanning the geometrical structures (with the aid of dis-
crete locus and time coordinates). The sharpness of scanning in relation to unit of length can
be adjusted on a case-to-case basis and may - theoretically at least - vary on a scale ranging
from micrometers to kilometers. Whether standardized dimensions (mm, m or km) or seldom
used units (such as 0,5 dm or 250 m) are selected has no algorithmic significance.
Heuristic plans of parts-nesting are based on given target-dates. Throughput and buffer times
are still frequently derived (e.g. in shipbuilding) from the general technical drawing, which is
prepared immediately upon receipt of the order and only gradually assumes detailed form,
depending on urgency. This entails uncertainty with regard to data collection. Finally, the ca-
pacity scheduling of the previous planning period has to be taken into account (rolling plans).
These object-nestings represent an initial surface utilization selection for the following plan-
ning period.
Before a search for locations can start, items and planning areas have to be sorted according
to specified sequencing rules. A queue can only be sorted when the planning strategy and
system parameters are fixed and the relevant queries to the database answered. The search for
a location is largely dependent on the scheduling and assigning strategy adopted. System pa-
rameters that can be varied are
place for an object is found , this location must be reserved. Then it is the tum of the next ob-
ject.
For a successful location search covering area but not confirmable in throughput time, the
planning process must be continued with a shifted object (while retaining all other parameter
settings). At first shifting follows the width (y-coordinate), then the length of a location area
(x-coordinate). At the end of the planning procedure the human planner can either call up the
graphical nesting results or restart the algorithm with modified parameters.
The area-covering loading logarithm is the most important part of the procedure. Depending
on the degree of surface area utilization, this module will be called several hundred or even a
thousand times for a single item. The program flow is illustrated in fig . 2.
A collision of several items will be recognized by bitwise logical AND operations for the
item and area columns involved. These AND operations can be executed in the computer
registers and are thus extremely fast. It is worth mentioning that INTELs 80386 requires only
two processor states for an AND operation (MORSEl ISAACSONI ALBERT, 1987). A
16 MHz 80386 can perform about 8 million comparisons per second provided, of course, that
the instructions have been loaded and decoded and the operands located in registers.
If all columns of an item and a corresponding area have been compared without a collision
being detected, this item could be placed on the location found for the current day. But the
search requires several million AND operations if a large number of attempts have failed be-
fore nesting is successful. For an item measuring 50 x 10 units of length and three planning
areas measuring 180 x 30, for example, a figure of 50 · 20 · 130 · 20·3 =7.8 million opera-
tions have to be executed for a single orientation on a production time of 20 days. This un-
derlines the significance of a hardware-oriented implementation.
The functioning of a bitwise logical AND operation is shown in fig. 3. The result of this op-
eration is one only if both the first operand and the second operand are one (that is to say
TRUE). In the other three possible cases the result is zero (or FALSE). In consequence, if
neither or only one operand shows the state TRUE, the result of the AND operation is
FALSE. An operand with TRUE content now represents an occupied element of an area and
FALSE an unoccupied one. Hence, if the result of an AND operation is TRUE, both operands
collide. The result FALSE shows on the other hand that the elements involved do not collide.
378
[ Start
J
1
1 Initialization of variables 1
,.....
1
no
,.... yes
2
no
yes
I Set counter of item column to zero I
no y~<
1 Increment column counter and pointer of item and area columns I
.....
3f
yes
~I A place is found I V
:<Y
no
1
no W 6
,,~
\.r
~
yes
7 End
'L
t
no
no
yes 8
0 0 0
0 1 0
1 0 0
1 1 1
1010101010101010101010101010101010101010101010101010101010101010 I
The first example produces zero, i.e. the operands do not collide
101010101010101011 10101010101010101010101010101010101010101010101
The second example does not produce zero, i.e. the operands collide
A 32-bit CPU register can execute 32 AND operations simultaneously with a single assembler
command. For this reason, it is possible to recognize a potential collision between a whole
item column and an area column in a single 32-bit register comparison.
The algorithm for an area-covering location search executes successively register operations
in the direction of item length (with area origin constant), area width and, finally, area length.
The length of the part is taken into consideration by a column-counter, the area width by a y-
coordinate-counter, and area length by an x-coordinate-counter.
380
In the course of the procedure an object must therefore be shifted along the y-axis at first, if
the location search was unsuccessful. These leftward shiftings of an item can be implemented
very fast using assembler statements (left-shift or register rotating commands, see fig. 4).
INTELs 80386 requires three processor states (SHL command) for left-shifting (MORSEl
ISAACSONI ALBERT, 1987). The entire location search and collision check is thus re-
stricted to the assembler commands of a computer CPU. Shifting operations along the y-axis
can be optimized by shifting not the entire object, but only the item-column causing the col-
lision. A new collision check, embracing the total length of the part, does not restart until the
moment when a free place is found for the shifted column (or the edge of the area is reached
and shifting has to take place along the x-axis).
After incrementing the x-coordinate-counter, the part has to be shifted back to the right or a
previously saved copy has to be loaded again. Repeated right-shifting in the author's experi-
ence takes up more time on average than reloading a copy of the original object. For this rea-
son, the second alternative has been chosen.
The quality of the algorithm used has been verified by a large number of different simulation
studies. The parameters of the nesting procedure consist of planning period, production pro-
gram and operating area (including initial nestings). In addition, planning strategy is deter-
mined by priority rules for the objects and areas as well as by a scheduling strategy (rule for
the resolution of conflicts). In the course of various simulation experiments, several simple
and combined priority rules were examined. The output of the planning results is presented
by way of example in fig. 5. Here the quality of the procedure can be clearly seen.
Computer-aided parts-nesting with CALPLAN requires so little CPU time, that even a re-
peated, iterative planning process can be completed within an acceptable period (for concrete
specifications, see PETERSEN, 1992).
381
12~_ _~~~~~~~
oL-________~2===~L_____________~~
Day: 265
Day: no
Day· "27.
))ay: :! 0
Day: 2 5
Day: 2 9
A comprehensive analysis of the results of simulations for variants of the production program
shows that
On the whole, elementary priority rules should be used if preference is to be given to individ-
ual quality components. In any case elementary rules bring about a wide fluctuations in use-
fulness with regard to the objectives set. Although acceptable results may be attained for
some target criteria, markedly worse solutions have to be registered concerning other quality
yardsticks. For example, the rule "shortest-operation-time-first" makes possible a high degree
of area utilization, but cannot at the same time minimize delays in delivery (or a maximiza-
tion of just-in-time delivery). This result has also been documented by HOSS (1965).
Priority rules combined additively or multiplicatively should be chosen, if several aims have
to be fulfilled to an equal extent concurrently. The additively and multiplicatively combined
rules examined showed very homogeneous results, neither excellent nor very bad solutions
being registered. The choice of a given rule should be governed by the quality of solution re-
quired for the elementary components. This means that only the most successful components
should be combined. Additive and/or multiplicative components are especially suited for use
in alternative object priority rules.
A priority rule should always be combined alternatively if not only several quality criteria
have to be considered, but a different part handling according to specific object characteristics
is also necessary. Thus distinguishing between cases helps in the classification of planning
parts. The simulation studies carried out showed that, in addition to a comparatively stable
solution quality, the best results are attainable with alternative rules. The suitability of alter-
natively combined priority rules has to be verified on a case-to-case basis before they can be
applied to real problems. Fine calibration is not feasible without an evaluation of the existing
production program. Hence the requirement that company-specific conditions be taken into
account, as they have a decisive influence on the effectiveness of priority rules in achieving
target criteria (HAHN, 1989).
The specification of individual cases should be oriented toward the premises of the decision-
making party. For example, if forward scheduling is desired, the earliest possible starting time
383
has to be considered and not the latest feasible time. The relevance of the planned starting
date is also confirmed in the technical literature. Sometimes it is regarded as the most impor-
tant assignment priority criterion (HESS-KINZER, 1976). Alternatively combined object
priority rules in turn should use those components that gained the best results in previous
simulations.
In general, it should be remembered that elementary item priority rules cannot optimize
scheduling (VOl, 1974). On the contrary, a rule should be combined alternatively within a
sequence and should not contain too many (e.g. not more than three) components.
Variations of the area priority rule generally yield no significant improvement in results.
Their importance can, however, be increased if the rule is not to have global, but object-
specific application. On the other hand, the suitability of a scheduling strategy depends on the
constellation of data in each case. If due dates have to be considered first, a strategy which
modifies nesting time last should be chosen.
The greatest influence of computer-aided parts-nesting arises from object priority rules. The
effectiveness of CALPLAN in meeting targets was up to 25% higher than in the case of less
successful order selection strategies (refering to the examined simulation experiments). By
means of a learning adaptive approach it is possible to increase the quality of results using
automation. In successively improved rule combinations, only those components should be
chosen which have already reached good results when not combined. Alternatively combined
priority rules generally yield the best results.
Real planning process have to offer the user additional options. At first it is desirable that a
decentralized database can be filled easily with the relevant production program. For this rea-
son, it is necessary not only to improve the user interface, but to establish a connection to the
company-wide database.
A second point of view concerns the possibility of executing not only complete new plans,
but also incremental modified (manual) plans. Net-change planning has the advantage that
satisfactory intermediate planning states need not be called in question completely. Instead,
individual relocations can be started at specific times. Furthermore, important items can be
nested manually in advance. Other situations no doubt will require execution of a new overall
plan in the future . A variant involving weekly new planning and a daily net-change, for ex-
ample, would seem to be appropriate.
384
A final aspect of the further development of CALPLAN is related to the way of scheduling
orders. With a view to nesting flexibility, backward scheduling should be offered in addition
to conventional forward scheduling. Retrograde scheduling attempts to achieve a schedule ac-
cording to estimated due dates on the basis of priority numbers (ADAM, 1988).
To recapitulate, it should be pointed out that the importance of short-term control components
will undoubtedly increase as new developments in MRP systems occur. Besides creating
autonomous decentralized decision-making fields, graphical visualized simulation becomes
more essential to support production control (ZELLI SCHEER, 1990). Spatial production
planning and scheduling in particular can be improved substantially using graphical process
visualization.
The procedure presented here fills a gap in the field of production control. Efficient solutions
to this problem yield considerable advantages for a company. Only such an approach can en-
sure that bottle-necks are recognized, that available surface area is used economically and
that, consequently, shorter lead times are achieved. The risks of delayed delivery are gener-
ally directly measurable for individual production companies through the fixing of contract
penalties. Shorter throughput times mean reductions in the amount of tied capital and in the
use of intermediate storage areas on reallocations for purposes other than originally intended.
Finally, they ensure more economical manufacturing.
Literature
ADAM, D.: Retrograde Terminierung: Ein Verfahren zur Fertigungssteuerung bei diskonti-
nuierlichem Materialfluss oder vernetzter Fertigung, in: Schriften zur Unternehmens-
fUhrung, Bd. 39, Wiesbaden 1988, pp. 90 + 92.
HAHN, D.: Produktionsprozessp1anung, -steuerung und -kontrolle - Grundkonzept und Be-
sonderheiten bei spezifischen Produktionstypen, in: Hahn, D'/ Lassmann, G. (Hrsg.):
Produktionswirtschaft - Controlling industrieller Produktion, Bd. 2: Produktionspro-
zesse: Grundlegung zur Produktionsplanung, -steuerung und -kontrolle und Beispiele
aus der Wirtschaftspraxis, Teil VI: Prozesswirtschaft - Grundlegung, Heidelberg 1989,
p.81.
HESS-KINZER, D.: Produktionsplanung und -steuerung mit EDV, Stuttgart-Wiesbaden
1976, p. 190.
HOITSCH, H.-J.: Produktionswirtschaft, Mlinchen 1985, p. 239.
HOSS, K.: Fertigungsablaufplanung mittels operationsanalytischer Methoden, Wlirzburg-
Wien 1965, p. 168.
ISRANI, S.S./ SANDERS, J.L.: Performance testing of rectangular parts-nesting heuristics,
in: International Journal of Production Research, Vol. 23, 1985, Nr. 3, p. 438.
KUHNLE, H.I SCHLAUCH, R.: Termin- und Kapazitiitsplanung bei Anlagenmontage, in:
Die Maschine, Internationale Zeitschrift fUr Fertigungstechnik und Konstruktion, 1989,
Nr. 4, pp. 76 - 80.
385
KURBEL, K.! MEYNERT, J.: Flexibilitat in der Fertigungssteuerung durch Einsatz eines
elektronischen Leitstandes, in: Zeitschrift fUr wirtschaftliche Fertigung und Automa-
tisierung, 83. Jg., 1988, Nr. 12, p. 581.
MORSE, S.P.! ISAACSON, EJ.! ALBERT, DJ.: The 80386/387 Architecture, New York-
Chichester u.a., 1987, pp. 276 + 283.
PETERSEN, U.: Produktions- und Ablaufplanung unter Beriicksichtigung der Montage-
flachenbelegung, to appear in: Betriebswirtschaftliche Forschung zur Untemehmens-
fUhrung, Bd. 25, Wiesbaden, 1992.
SCHLAUCH, R.! LEY, W.: Flachenorientierte Termin- und Kapazitatsplanung in der Anla-
genmontage, in: Zeitschrift fUr wirtschaftliche Fertigung und Automatisierung, 83. Jg.,
1988, Nr. 5, pp. 223 - 227.
SPUR, G./ IMAM, M'/ ARMBRUST, P./ HAIPTER, J./ LOSKE, B.: Baugruppenmodelle als
Basis der Montage- und Layoutplanung, in: Zeitschrift fUr wirtschaftliche Fertigung
und Automatisierung, 84. Jg., 1989, Nr. 5, p. 234.
VOl (Hrsg.): EDV bei der PPS, Bd. 2: Fertigungsterminplanung und -steuerung, VOI-
Taschenbuch T23, 2. Aufl., Diisseldorf 1974, p. 100.
ZAPFEL, G./ MISSBAUER, H.: Traditionelle Systeme der Produktionsplanung und
-steuerung in der Fertigungsindustrie, in: Wirtschaftswissenschaftliches Studium, 17.
Jg., 1988, Nr. 2, p. 77.
ZELL, M'/ SCHEER, A.-W.: Datenstruktur einer graphikunterstiitzten Simulations umgebung
fUr die dezentrale Fertigungssteuerung, in: Reuter, A. (Hrsg.): GI - 20. Jahrestagung II,
Informatik-Fachberichte Bd. 258, Berlin-Heidelberg 1990, p. 27.
v. Lot-Sizing and Inventory Control
MODELS FOR INTEGRATED INVENTORY CONTROL BY EDI
FOR A SINGLE SUPPLIER AND MULTIPLE BUYERS
1. Introduction
2. Notation
T1. * = J[2A./D.h.]
111
(1 )
N
TRCv(Tv ) = S/Tv + (DTH/2) (l-D/P) + E (A + c.)/T.*. (3)
i=l 1 1
N
TRCv(Tv *) = j[2DSH(1-D/P)] + E (A+c.)j(D.h./2A.). (5)
i=l 1 1 1 1
Thus, adding (2) and (5), we obtain the joint total relevant
cost per time unit resulting from individual optimization
N
j[2DSH(1-D/P)]+ E(A+c.+2A.)j(D.h./2A.).
i=l 1 1 1 1 t6)
T
:........
BUYER 2
T
I...:
~~:.
O~··
ffi~
>..J
:.
'.
·~I
~ D, :
.'
•
'.
Z· . ' .
: .: .1. . : .: T : .1 : ::
. . . . . . ' , I
' .
: .: . '
.,: :. ::
SUPPLIER
T
TIME~
FIGURE I: Inventory Time Plots for a Single Supplier and Three Buyers Under
Common Cycle Replenishment Policy (Modell)
396
N N 2
(S +.E Ci)/T + (HT/2P).E Di (8 )
1=1 1=1
From (7) and (8) the total system cost per time unit is
N N
JTRC(T) = (S +.E Ci)/T + (T/2)[(H/P).E Di 2 + E Dihi' (9)
1=1 1=1
It can be easily shown that (9) is strictly convex in T and the
jointly optimal common cycle time, T*, obtained from the first
order optimality condition, is given by
N N N
T* = J[2(S + E c.)/{(H/P) E 0. 2 + E D.h.}]. (10)
i=l 1 i=l 1 i=l 1 1
substituting (10) into (9) yields the minimum joint total rele-
vant cost resulting from the adoption of a common cycle time by
all the parties, i.e.
N N 2 N
JTRC(T*) J[2(S + E Ci){(H/P) E Di + E D.h.}]. (11 )
i=l i=l i=l 1 1
(12)
BUYER 1
~
. .
BUYER 2:
T
01( »:
SUPPLIER:
KT
TIME~
AGURE 2: Inventory Time Plots for a Single Supplier and Two Buyers Under
Common Cycle Replenishment (K = 3) with Joint Shipment (Model 2)
399
From (7) and (13), the joint total relevant (i.e. system) cost
per time unit can be expressed as
N
JTRC(K,T) = (S/K+C)/T + (T/2)[DH{D(2-K)/P+K-1} + E D.h.]. (14)
i=l ~ ~
N
T** = J[2(S/K+C)/{DH(D(2-K)/P+K-1) + E D.h.}]. (15)
i=l ~ ~
N
K*(K*-l) ~ S[(l/DH) . E Di h i +2D/P-1]/[C(1-D/P)] ~ K*(K*+l). (17)
~=1
400
N
S 5 [2C(1-D/P]/[(1/DH).E Dihi + 2D/P - 1]
~=1
N
S ' = (T ,2/2) [HD 2/P + E D.h.] - C. (18)
o 0 i=l ~ ~
6. Numerical Illustration
Using (10), the optimal common cycle time for model 1, T*, is
found to be 0.1351 year. As a result, the three buyers' and the
supplier's TRC values are, respectively, $337.65, $1350.59,
$243.11 and $2363.09 per year, yielding a total system cost of
$4294.44 per year (representing approximately a 30% savings
over independently derived individually optimal policies). Note
that the adoption of this integrated policy substantially redu-
ces the costs incurred by all the parties except for buyer 2,
for which the TRC value, in fact, increases. This occurs
because the condition stated in Proposition 4.1 is violated for
the buyer in question Le. 0.1351 > 2(0.0548). Nevertheless,
through a side payment or some similar scheme, the 30% savings
in total system costs may be shared by all the parties involved
402
7. Conclusions
References
1 Introduction
are incurred at the end of every period on backorders and excess inventory respectively.
The procurement and allocation decisions are made to minimize the expected total costs.
The rest of the paper is organized as follows. Section 2 deals with the notation and
problem formulation. The optimal allocation policy is described in Section 3. The ordering
problem is addressed in Section 4 and the conclusions are in Section 5.
N = number of products,
i = index of products, .
Every period the following events occur in that order. The state of the system is
observed and an order tv for the component is placed on the external supplier.The order
placed L periods earlier is received. The allocation of the component to the products is
then made. Dem ands for that period for the products occur at the retailers. Holding
costs for excess inventory and penalty costs for backlogged demands for the products are
then assessed.
The problem can be stated as follows . Given the work in process and finished product
inventory of each product and the common component stock available, decide the quan-
tities to be released to each product. Using the notation described earlier, with the time
indices supressed, the problem can be formulated as follows.
Vi ~ 0, i = 1, .. . ,N (7)
Problems of this form have been discussed earlier in literature (Luss and Gupta, 1975
and Zipkin, 1980). The problem described above is convex since the constraints are linear
and the Hessian, H of the objective function is a diagnol matrix with positive diagnol
elements (Hii = (pi + hdfJ·+l(Yi + Vi)) and hence is positive definite. The allocation
quantities, Vi can be obtained by solving the first order Kuhn-Tucker conditions given
below.
where A is the lagrange multiplier associated with the constraint in equation (6) and Ai, i =
1,2, ... , N are the lagrange multipliers associated with the nonnegativity constraints on
the release quantities.
From the first order conditions it can can seen that Ai = 0 when Zi > O. Let I =
{i : Ai = O}, i.e., I is the set of retailer indices to which positive quantities are shipped.
Define
(12)
The solution of the first order Kuhn-Tucker conditions yeilds the following allocation
policy.
409
Vi = Si - Yi, i = 1, ... ,N
• Case 2 ;r < L;:'l Ui(Si - yd
V=(F 1i +1 t 1 (Pi+).)_y iEI
I I Pi + hi "
where the lagrange multiplier). is chosen to satisfy LiEf UiVi = x.
Thus the allocation policy is characterized by the critical numbers Si associated with
the products. When there is sufficient stock of the common component the product
inventories are raised to their respective critical numbers. This is shown in case 1. When
there is not enough stock of the component to release up to the critical numbers, the
available stock is allocated among the products and this is done as described in case 2.
The ordering problem concerns the determination of the quantity U of the common com-
ponent ordered under the optimal allocation policy discussed in the previous section. The
quantity to be ordered in period 0 is determined to minimize the expected value of the
sum of the holding cost of the common component in the Vh period and the holding and
penalty costs due to product i in the period L + li for i = 1,2, ... , N. Let s be the the
total system inventory after the order has been placed, i.e, s = w + z. The cost func-
tion consists of two terms, ea.ch representing a different case which occurs with a certain
probability. The first is the cost incurred when the release upto levels for the products
are achieved in period L. This happens when V S; s - L~l UiSi which occurs with a
probability of Fv{s - L;:'1 U;Si). The cost incurred in this case is
N N
ho(s - /lv - L: UiS;) + E{L: hi(Si - d~i+1)+ + Pi(d~i+1 - Si)+}
i=l i=l
The second term is for the case when the relese upto levels cannot be met and therefore
the available stock of the component is divided among the products. The cost incurred
in this situation is given by
(13)
where
N
L:1Ii(Vi + Yi) = s - V (14)
;=1
410
Vi 2: 0, i = 1, . .. ,N (15)
Note that C is a function of 8 - V and the ViS, the product inventories. The ViS are
random variables with distributions hard to compute. So we make an approximation to
eliminate the dependence of C on the ViS. This is done by relaxing the nonnegativity
constraints on the release quantities Vi. A similar approximation has been addressed in
Fredergruen and Zipkin (1984). The approximation is also analogous to the equal fractile
assumption in Eppen and Schrage (1981). Under this approximation C is a function of
8 - Valone and is given by
where
N
L Ui(Vi + Vi) = 8 - V
i=1
Let .\(8 - V) be the value of the lagrange multiplier for the equality constraint at the
optimal solution. Therefore,
dCjd8 = .\(8 - V) (16)
The lagrange multiplier .\(8- V) equals ho when 8 - V = 'L~1 Ui5i and .\(8- V) = -Pmax
when V 2: 8 where Pmax is the maximum of PhPZ,'" ,PN. For values of V in between the
two, .\ is an decreasing function of V.
The cost function, g(8) can be written by combining the two terms as follows .
N N N
g(8) = FV(8 - L ui5i )[ho(8 -I.tv - L ui5i ) + E{L hi(5i - d~·+I)+ + Pi(d~·+I - 5i )+}J
i=1 i=1 i=1
+ fv:s-'L:'..t u.s. C(8 - V)dFv(V) (17)
The single cycle cost function g( 8) is thus a function of one variable s, which is the
total inventory in the system after the external order is placed. The quantity to be ordered
is obtained by minimizing g(8) with respect to w. We now show that (Lemma 1) g(8) is
convex in 8 which implies that the optimal policy has an order up to structure. The value
of 8 which makes the first derivative of g( 8) equal to 0 is the order upto level 50.
5 Conclusions
We address the problem where a single component is assembled into various products with
lead times for product assembly and component procurement. Optimal policies for the
allocation of the component to the products and the procurement of the component are
described. The optimal allocation policy is characterized by critical numbers associated
with each product. The policy is to release up to these critical numbers if there is sufficient
stock of the common component available; otherwise the available stock is allocated among
the products as described in the paper. The procurement problem can be reduced to a
Newsboy problem with zero lead time under certain approximations. The order up to
level for the component procurement is obtained by solving an implicit equation.
References
K. J. Arrow, S. Karlin and H. Scarf, Studies in the Mathematical Theory of Inventory and
P1'Oduction, Standford University Pl'ess, 1958.
H. Luss and S.K. Gupta, "Allocation of Effort Resources among Competing Activities,"
Operations Research, Vol. 23, pp. 360-366, 1975.
P. Zipkin, "Simple Ra.nking Methods for Allocation of One Resource," Management Sci-
ence, Vo1.26, No.1, pp. 34-43, 1980.
Valuation of Leadtime Reduction in Multi-Stage
Production Systems
by
Karl Inderfurth
Faculty of Economics
University of Bielefeld
D-4800 Bielefeld 1
Germany
Abstract
1. Introduction
There are yet some approaches that tackle this problem for specific investment situa-
tions as, for instance, presented by Moerman (1988)"or Fine and Freund (1990) . In this
paper we will focus on the problem of how the benefits of any leadtime reduction project,
that may affect leadtimes anywhere in the manufacturing systems, can be valuated in
terms of its corresponding effects on customer service and operating costs. Corbey (1990)
has broadly desrcibed these effects in a more qualitative way. Here we will analyze conse-
quences of leadtime reductions quantitatively using an Operations Research approach to
414
determine its implications on safety stocks and work-in-process in the whole prmluction
system. Lot size effects of leadtime reduction are not taken into account following the
arguments by Corbey (1990) that a direct lot size impact in the econonomic valuation of
lead time investment is quite negligable.
Measuring the influence of leadtime reduction on customer service is quite difficult be-
cause there are at least two dimensions of service performance that have to be taken into
consideration, service time and service level. Now, while changes in leadtimes directly
will change the delivery time to customers in a make-to-order situation, in make-to-stock
systems there just will be an impact on the degree of customer service levels. Thus, as
shown in figure 1, the relevant type of service effect depends on the location of the custo-
mer order decoupling point (codp) in the total production system (see Wouters 1991).
Whereas the service time effect goes hand in hand with the lead time variation and the-
refore is easy to calculate, the service level effect in an multi-stage setting is very much
harder to evaluate.
At first the effect of leadtime reduction on service and cost is investigated for the or-
dinary one-stage production/inventory system. This is done because this system is the
basic element of the more complicated multi-stage systems and can be evaluated in an
easy manner using traditional inventory theory.
415
Throughout this paper it is assumed that we work under periodic inventory control with
d
a lot-for-Iot ordering philosophy. Both, demand per period and leadtime periods ~ are
allowed to be stochastic. They are mutually independent and i.i.d. random variables - at
least approximately - described by normal distributions with mean and variance {ti, O"~}
d
for and {X, O"U for ~. The ordering policy has to guarantee a predetermined customer
service level 0: which is defined as the probability of not going out of stock during re-
plenishment time. Cost is charged to inventory holding with h being the cost per unit
of stock. In determining expected stocks and costs for a single-stage system we have to
differ between the case of deterministic and stochastic leadtimes.
In the deterministic LT-case (0",\ = 0) we know from basic inventory theory that
safety stocks (sst) have to be
(1)
meaning that both inventory categories and hereby total stocks and inventory holding
cost depend on the LT length i It is evident that leadtime reduction leads to decreasing
stocks and cost, in linear terms for work-in-process and progressive for safety stocks.
In the stochastic LT-case (0",\ > 0) two different planning situations must be consi-
dered. For a single production stage which is part of an internal production and supply
chain the stochastic leadtime ~ is converted into a deterministic leadtime \ for reasons of
integrated multi-level production planning as we know from MRP systems. Usually this
fixed planned lead time ~ is set in such a way that it will be sufficient in a reasonable
percentage 7r of all cases, thus being
(3)
(4)
and
(5)
Here stocks and cost depend on both LT-length (X) and LT-variability (u.x). It can
be seen that a leadtime reduction in terms of decreased LT-variability is connected with
reduced stocks in a linear way for work-in-process and in a slightly progressive way for
buffer-inventory.
pst = d· A
We see that with flexible leadtimes a reduction of LT-variability will not decrease work-
in-process. It just will result in degressively decreasing safety stocks.
Whatever the planning situation may be, it is evident from (1) to (6) that with sto-
chastic leadtimes total holding costs H = h . (sst + pst)" in a simple way depend on
LT-parameters X and U.x on the one side and on service level 0: on the other
(7)
From this equation we can evaluate the impact of leadtime and its possible reductions on
the two performance criteria cost and service.
417
In this planning situation safety stock optimization depends on the way of integrating
safety stocks in the inventory control and reordering process. In multi-stage systems for
material coordination under uncertainty a base-stock control policy is recommended (see
Silver, Peterson 1985). From inventory theory we know that - assuming a lot-for-lot or-
dering situation - this kind of policy is optimal for serial production structures (Clark,
Scarf 1960) as well as for convergent systems (Rosling 1989) and divergent ones (Langen-
hoff, Zijm 1990), represented by an echelon order-up-to-S policy. According to this policy
local safety stocks at each production level are determined.
The size of these safety stocks depends on external customers service levels on the one
and on internal supply conditions on the other hand. For fulfilling internal production
orders within the planned leadtime facing uncertainty in requirements each production
stage mainly will operate with safety stocks according to a prespecificed internal service
level which has to guarantee availability of products even for unexpected demand up to a
reasonable amount. In case of extraordinary requirements it will be assumed - reflecting
to arguments introduced by Simpson (1958) and broadly discussed by Graves (1988) - that
operating flexibility in the production system is high enough to enable a complete supply
of succeeding production stages by ot.her means than by safety stocks. Based on this kind
of total reliability of the internal supply process the problem of safety stock allocation
concentrates on the question how the total replenishment times of all final-stage products
in a multi-stage system have to be divided into local replenishment times at different
stock points determining adjoined safety stocks which will guarantee desired internal or
external service levels. At first we will describe the problem formally for the elementary
multi-stage case of a serial production system.
a single successor.
Stock holding is assumed to be possible for each product in the chain connected with
specific unit holding costs hi depending on the value of product i (i = 1, 2, 3). End-item
customer demand per period d3 is normally distributed with mean d3 and variance 0'33'
The properties of the stochastic lead times also are described by their means and varian-
ces characterizing X; as (expected) LT-Iength and O'~; as LT-variability parameters. In
periodic review situations final-stage leadtime mean X3 additionly contains the length of
the review period. Assuming - without loss of generality - a 1:1 input-output-relation at
each processing stage, under the base-stock control policy as discussed the internal requi-
rements per period for intermediate products also are normally distributed with means
d; = d3 and variances O'~; = O'J3 (i = 1, 2). The required customer service is described
by a service level 0'3 , whereas for internal supply - possibly different - service levels 0';
(i = 1, 2) are postulated. Safety stock optimization now means to determine product
specific replenishment times Ti for building up protective stocks in such a way that all
given service levels are satisfied and total inventory holding costs are minimized. For
the probelm formulation we have to differ between the case of strictly deterministic and
stochastic leadtimes.
In the deterministic LT-case (O'A; = 0), with X; being product specific leadtimes that
are known with certainty, safety stocks ssti for all products i depend on the respective
replenishment period T; analogously to formulation (1) in the single-stage case
sst; = q; . O'd; vn
• with q; = cf>-l (O'j) (8)
Thus expected safety stock holding costs are
Using T; as decision variables in this w.ay the safet)t stock optimization problem in serial
system with deterministic leadtimes (sstopjsd) can be fomulated according to the ap-
proach of Simpson (1958) :
419
L Ci·.;r:
3
H"t = i=l =} min!
Restrictions < 1 > and < 2 > mean that replenishment times for safety stock protection
at intermediate levels may not exceed cumulative leadtimes while at the end-item level,
as shown in < 3 >, the sum of replenishment times must be equal to the total leadtime
for the whole process to guarantee immediate satisfaction of customer according the pre-
specified customer service level. The non-negativity conditions are self-evident.
It is easy to show that sstop/sd is a concave minimization problem forcing the opti-
mal solution to be restricted to the extreme points of the linear polyhedron < 1 > to
< 4 >, thereby meaning
i
T;" € {O , L Aj - TLd (10)
j=l
This solution property reduces the set of relevant Ti-combinations by far and can be
used to develop a very efficient dynamic programming solution procedure (see Inderfurth,
1991). It is evident that as result of the optimization the total stock holding costs depend
on ailleadtimes Xi (i = 1, 2, 3) .
~i = Xi + ki . (J)i (11)
only having impact on the restrictions of the optimization problem. For the final custo-
merside stage a flexible leadtime ~J has to be considered lea,9.ing to a TJ-dependent safety
stock according to the stochastic leadtime condition in (6)
(13)
420
Using replenishment time T3 in that way means that it has to be identified as expected
covered leadtime which accordingly has to restricted by the expected LT-Iength in the
restriction set.
Thus the appropriate reformulation of the safety stock optimization problem in serial
structures with stochastic leadtimes (sstop/ss) leads to
2
H .. t = ;=1
L: c;' JT; + C3 . '/"'(3 . T3 + 63 => min!
Now, sstop/ss also turns out to be a concave minimization problem with the same be-
nefits from the extreme point solution property as problem sstop/sd.
It can be seen that in the general stochastic LT-case safety stock costs depend on both
the expectations and the variances of all single lead times. The same is not completely
true for the expected pipeline stock costs Hp• t in serial systems which in extension of the
single stage considerations in (5) and (1) are given by
2
H p• t = Lh;.J;.(~;+k;.o);) + h3·J3·~3 (14)
;=1
showing dependency on all lead time parameters except the variance of the final-stage
leadtime.
In practice of multi-stage production simple serial structure are seldom found. Most
manufacturing processes are of an assembly type whereas many chemical processes and
a lot of distribution processes which often follow production stages have an abo res cent
structure. From that point of view it is important that the safety stock optimization
approach demonstrated for the serial multi-stage case can be extended to divergent pro-
duction systems (see Inderfurth 1991a) as well as to convergent ones (see Inderfurth 1992).
Also mixed multi-stage systems can be dealt with as will be demonstrated for the 3-stage
system depicted in figure 3.
421
d5
In this system at the first stage two kinds of material are delivered from outside suppliers.
In a second stage they are assembled to a component which can be further processed in
a final stage to two specific end-items both facing separate customer demand.
In the deterministic LT-case the safety stock optimization problem for this mixed
multi-stage deterministic case (sstop/md) can be formulated as a certain extension of
the serial model:
5
Hsst L c; . ..;r:
= ;=1 ~ min!
In the assembly part of the structure (at intermediate stages) the (longest cumulated)
lead times for each product must not be exceeded by (cumulative) replenishment times
as prescribed in < 1 > to < 3 > . Restrictions < 4.a > and < 5.a > say that for both
final-stage products (in the divergent substructure) the maximum of cumulative leadtimes
must equalize the respective total replenishment times while for pathes in the production
structure with lower cumulated leadtimes the inaquality will hold as formulated in < 4.b >
and < 5.b >. It is easy to see that in sstop/md we again find a concave minimization
422
H. ot = ~ min!
It can be stated that even for the most general problem sstop/ms (notice that sstop/md
is a special case of sstop/ms with (7).i = OVi ) the concave minimization property still
holds. This fact allows an easy computation of safety stocks and their respective holding
costs as a function of the distribution parameters of uncertain lead times even for compli-
cated convergent/divergent production structures. Holding costs for work-in-process are
simply computable analogously to (14) by
3 s
= L hi' di · (Xi + k i · (7).i) + "h
L.J)·· d·X
) )· (15)
i=1 j=4
As an illustrative example for studying reduction effects we will use the 3-stage conjoined
system shown in figure 3. The specific data are as follows
qj = 2 ~ OJ = 97.7% (j = 1,2, .. . , 5)
423
With this information the optimal policy, computed from the sstop/ms model;' turns
out to recommend safety stocks only for the two final stage products (4 and 5) and for
the first- stage product with the larger leadtime (1). This policy is connected with safety
stock holding costs Hut = 1,937 while pipeline stock costs according to (15) sum up to
H p• i = 3,010.
Now we will consider what happens if LT-variability (7). or LT- length X is reduced at
the raw material (products 1/2), component (product 3) and end-item level (products
4/5). At each stage leadtime is reduced by the same percentage for each product respec-
tively. LT -length reduction is studied for the case of deterministic leadtime (== 100%
(7).-reduction).
5000
3000
'000
3000 2000
2000
1000
1000
0 o
0 10 20 30 40 50 80 70 &0 110 100 o 10 20 30 40 50 80 70 &0 110 100
It reduction In .. LT reduction In ..
From figures 4 and 5 for the material level we see that a reduction of LT-variability
generates a slight linear drop of both safety and pipeline stock costs whereas a LT-length
reduction gives chance for a larger decrease of costs. In principle, the same holds for
leadtime reduction at the component level. Leadtime reduction effects at the final stage
have a bit different form as figures 6 and 7 show.
424
IOt~ c~la
eooo ~~~I~ ~~I~a__________________~
~~C~
3000
2000
1000
Reducing LT-variability is connected with constant pipeline stocks and degressively de-
clining safety stock costs while a LT-length reduction leads to a considerable fall of both
costs, for safety stocks even in a clear progressive manner.
In investigating lead time effects at different production levels we more or less found a
confirmation of the analytical results for the respective single stage cases. However, this
cannot generally be expected since the total safety stock distribution in the system -
according to the optimization procedure - can change when leadtimes are reduced at
single stages or for single products. A further interesting question is, how total costs will
react on a simultaneous leadtime reduction all over the system. Figures 8 and 9 give the
answer.
5000 4 t---------.--------------~
4000
3
3000
2000
1000
o
10 20 30 40 50 eo 70 80 110 100 o 10 20 30 40 50 eo 70 eo 110 »0
It reduction In " LT reduction In "
Figure 8 makes evident that for total LT- variability reduction the final-stage degtessive
cost character dominates. In figure 9 we observe a linear decrease of work-in-process
combined with a serious progressive reduction of safety stock costs if general actions
for diminishing leadtime are accomplished. In the extreme case of totally avoiding any
leadtime inventory holding costs, of course, can be reduced to zero.
Finally the simultaneous effects of leadtime and LT -reduction on cost and service level is
visualized in figure 10. The curves in figure 10 represent the trade-off between cost and
service level for given leadtime and stem from a parametric solution (with respect to cu-
stomer service levels 0'4 and as) of the safety stock optimization problem. We see that, in
general, an improvement of customer service only can be performed at progressively rising
costs as we yet know from single-stage inventory theory. A general leadtime reduction
now leads to a more favorable trade-off curve, again being more considerable for LT-
length than for LT- variability reduction. These trade-off considerations, of course, can
be worked out for any leadtime reduction activity at a specific process in the multi- stages
production system.
4.5
- - atanderel LT-data
- - 30.. -LT -variab.red.
- - 30"-LT-langth red.
5. General conclusions
The analytical and numerical results presented in this paper give insight into structural
effects of leadtime reduction efforts, especially demonstrating the important cost savings
that can be gained from LT-length reduction.
Additionally a powerful numerical approach is offered that can be used for evaluating
LT-reduction benefits with respect to cost and service for concrete multi-stage production
systems taking into consideration a lead time depending optimal safety stock policy. In
this context safety stock optimization is an important module because inappropriate sa-
fety stock distributions may cause severe drawbacks in costs. Using a buffer policy with
426
this context safety stock optimization is an important module because inappropriate sa-
fety stock distributions may cause severe drawbacks in costs. Using a buffer policy with
holding safety stocks for each single product in the standard example of section 4, for
instance, leads to a 13% increase in safety stock costs.
For a general valuation procedure of leadtime reduction projects the cost/service trade-off
function plotted in figure 10 can be a very useful tool. After specification of the desired
customer service that shall be achieved with leadtime reduction activities the respective
cost can be read and incorporated in a financial evalutation procedure. Furtheron, critical
service levels connected with stock holding cost improvements which just outweigh the
cost of capital invested in a reduction project could be determined. By these means a
high degree of transparency can be given to the total valuation process.
The valuation tool for leadtime reduction described above can - according to the app-
licability of the safety stock optimization procedure - be used for a wide class of produc-
tion systems. It can even be extended to problems incorporating deterministic lead time
optimization decisions along with the safety stock problem (see Inderfurth, 1991b). On
the other hand the procedure presented here is restricted in its accuracy by some as-
sumptions for the safety stock determination module which may be critical in specific
actual situations. These may be suppositions of lot-for-Iot ordering, of total reliability of
internal supply processes, and of normal distributed lead time demands. Nevertheless, it
has to be noticed that the stock optimization results are used as an information within
a superior investment valuation model where a limited precision of data usually is met.
Thus, despite of these limitations the approach presented may be a useful tool in many
situations.
References
Clark, A.J . and H. Scarf (1960), "Optimal Policies for a Multi-Echelon Inventory Pro-
blem", Management Science 6, 475-490.
Corbey, M. (1991), "Measurable Economic Consequences of Investments in Flexible Ca-
pacity" , in Production Economics : Issues and Challangers for the 90 's, Grubbstrom,
R.W., Hinterhuber, H.H. and J. Lundquist (eds.), Elsevier, Amsterdam, 47-57.
Fine, C.H. and R.M. Freund (1990), "Optimal Investment. in Product-flexible Manufac-
turing Capacity", Management Science 36, 449-466.
Langenhoff, L.J.G. and W.H.M. Zijm (1990), "An Analytical Theory of Multi-Echelon
Production/Distribution Systems", Statistica Neerlandica 44, 149-174.
Rosling, K. (1989), "Optimal Inventory Policies for Assembly Systems under Random
Demands", Operations Research, 37, 565-579.
Silver, E.A. and R. Peterson (1985), Decision Systems for Inventory Management and
Production Planning, 2nd Ed., Wiley and Sons, New York.
Thomas Jensen
Faculty of Economics, University of Bielefeld
D-4800 Bielefeld 1, Germany
Abstract
1 Introduction
Frequent replanning and rescheduling of orders when updating plans rolling forward the
forecast horizon in material coordination systems has been well characterized in literature
because of the negative impacts on system performance (see for example STEELE [16] who
comments on the effects of this so-called "system-nervousness" in MRP-systems).
Besides practical problems to handle and implement extensive replanning and reschedul-
ing messages due to variations of external or internal stochastic variables of the production
system (e.g. demand, machine reliability) the planning process gets more complicated and
mainly capacity planning decisions become more difficult because of permanently altered
information. In multistage production systems even changed information near the end of
the forecast horizon at the end-item level can result in precipitate plan revisions for up-
stream stages in the first periods of each planning cycle and, passing stochastic impacts
in a distorted and probably intensified way to upstream stages, planning revisions by
themselves become stochastic inputs for preceding stages and hierarchical subordinated
planning procedures. As a result throughput times and inventories may increase. At
429
the same time service-levels may decrease due to wrong priorities given by the planning
system.
In order to accept not all replanned data on lower planning levels (see for example
PENLESKY ET AL. [9]) or to restrict replanning activities, different methods have been
established (see MINIFIEjDAVls [8] for a classification of dampening procedures). Be-
cause of the important role of lot-sizing decisions in aggregating stochastic impacts of
several planning periods and because of their sensitivity to data changes, early attempts
to deal with the problem of nervousness focus on the performance of various deterministic
dynamic lot-sizing models in rolling horizon environments (e.g. CARLSON, JUCKER and
KROPP [3, 6, 7] who extended the dynamic deterministic lot-sizing problem by incorpo-
rating change costs for undesired replanning of setups) .
In addition to this lot-sizing oriented approaches various simulation studies have been
performed which are primarily concerned with the analysis of potential impacts on plan-
ning stability and the performance of various stabilization strategies and their interde-
pendence. E.g. , SRIDHARAN with several co-authors [14, 11, 12, 13, 15] analyzed different
methods of freezing the master production schedule in combination with using safety
stocks whereas BLACKBURN ET AL. [1, 2] studied the performance of different stabi-
lization strategies (e.g., the implementation of frozen zones, extension of the forecast
horizon beyond the planning horizon, holding safety stocks on the end item level) for
elementary multistage environments. YANO and CARLSON [4, 18, 17] analyzed the in-
teractions between safety stocks and combinations of alternative replanning policies for a
single-product, two-stage assembly system.
In this paper key factors for the stability performance of (s, nQ)- and (s, S)-lot-sizing
policies in an elementary single stage rolling horizon environment are analyzed using two
suggested measures to characterize different types of planning stability.
Introducing a tolerance factor for the studied reorder-point lot-sizing policies a sta-
bilization strategy is proposed and the trade-off between service-level performance, total
costs and the achieved planning stability is shown and compared to the stabilization
method of freezing a part of each planning cycle. The paper concludes with suggestions
for further research.
In previous works different concepts to define planning stability have been suggested (see
for example Ho [5]). In this paper two standardized measures are proposed to define setup-
430
oriented- (only taking into account the number of new planned or canceled setups when
considering succeeding planning cycles) as well as quantity-oriented planning stability
(looking for changed lot size-quantities between succeeding planning cycles).
To define the proposed measures, several design parameters of rolling horizon environ-
ments as depicted in figure 1, showing two succeeding planning cycles (k -1) and k (with
a length of N periods) are used.
N-P
k-l
At the beginning of each planning cycle (define M/ to be the starting period of plan-
ning cycle 1), the planning horizon is rolled forward one period, updating period two up
to period N of the preceding plan. Taking into account the stabilization parameter P
(1 ~ P ~ N) which determines the length of a frozen zone during which plan revisions
are not allowed, there are (P - 1) periods frozen from the preceding planning cycle and,
as can be seen in figure 1, (N - P) periods have to be considered when adding up plan
changes referring to the preceding planning cycle. For further use define L to be the
leadtime and Q~ denotes the lot-size quantity for period t, planned in the kth planning
cycle.
~s
'Ir. := 1- - - - (1)
~SMa",
k = 0) and using the maximal number of changed setups per planning cycle D.SMax =
N - L - 1 as upper bound for D.s (incorporating the leadtime L takes into account that
demand has to be covered by lot-sizes planned L periods ahead by the latest), 11'. is
normalized between values of 1 and 0 referring to situations of extreme setup planning
stability and extreme setup planning instability and can be interpreted as the average
percentage of planning periods without setup changes per planning cycle.
(2)
11'. can be applied directly to characterize the planning stability of multi-stage pro-
duction systems by aggregating 11'. stage-by-stage thereby using an appropriate weighting
of values for different stages (e.g. referring to different capacities at various stages). An
extension in order to differentiate between new and canceled setups as well as weighting
plan changes relating to their distance to the forecast horizon can easily be incorporated.
(3)
(4)
z>O
16 (z) is defined as the Kronecker-symbol 6 (z) = { 0
else
432
The quantity stability measure 11'q can be interpreted as the average percentage of
quantity per cycle which is taken to the new plan without changes related to the maximum
possible amount of changes per planning cycle. Instead of D Max = const., time-variant
values for DMax can be used in order to consider instationary demand situations.
As for the setup based measure, weighting of plan deviations referring to their distance
to the planning date is possible. Again -applying an appropriate weighting of the values
of 11'q for different stages- 11'q can be used to characterize planning stability in multi-
stage production systems. For component stages of multi-stage production systems D Max
depends on the maximum reasonable demand per period for all end-item level products
the component is needed for.
This quantity-based planning stability measure can be compared with a measure for
planning instability proposed by SRIDHARAN ET AL . (see [11]). Dividing the average
quantity changed per setup by an average lot-size given by the economic order quantity
EOQ, their measure can be interpreted as the percentage of an average lot-size which
is changed by replanning activities. On the one hand providing an illustrating measure,
their concept is not standardized in the sense of being restricted to a certain range of
values, bounded by a maximal and a minimal value of planning instability. Instead, their
measure for planning instability depends on the simplifying assumptions of the EOQ (e.g.
no capacity restrictions) as well as on cost parameters.
In this section results are presented, applying the suggested measures to characterize
the planning stability of (s, nQ)- and (s, S)-lot-sizing policies operating in an elementary
single-product, single-stage environment.
At the beginning of each planning cycle the inventory position is actualized taking
into account incoming orders and the realized demand for the first planning period and
-assuming a constant demand forecast equal to the expected demand per period- lot-sizes
for the whole planning cycle are determined. Demand that can not be satisfied in the first
period is back-ordered. In addition to the stability measures 7r. and tr q the achieved j3-
service-level as well as total costs C (consisting of setup and holding costs) are calculated
during simulation.
In a first series of simulations the impact of different order quantities and several
characteristics of the demand distribution has been analyzed. Setting the reorder-point s
to the expected demand during leadtime plus review period (s = (L + l)JL) the parameter
Q is varied from 1 up to 40 units (for the (s, S)-policy the order-up-to-point S is calculated
by adding an amount of Q to the reorder-point s).
In figure 2 the effects on the suggested stability measures 7r. and tr q are shown for three
different variances of the demand distribution for the (s, nQ)-policy. Fixing the expected
demand per period to 5 units this results in a coefficient of variation varying from 0.21
up to 0.46 with the demand distribution covering a range of 1 up to 9 units.
Considering the setup-oriented planning stability measure 7r. it can be seen that start-
ing with a high setup stability given small values of Q so that in each period an order
has to be planned, the setup stability dramatically decreases for Q being slightly greater
than the expected demand per period. As shown in the first part of figure 3, further
increasing of Q results in increasing 7r s . This can be explained by the reduced number of
setups per planning cycle when increasing Q. In contrast to the development of 7r. for
values of Q being greater than the expected demand per period (JL), the quantity-oriented
planning stability is independent of the lot-sizing policy parameter Q. The high stability
achieved for Q being equal to one unit and equal to the expected demand per period
can be explained by the fact, that for this parameter-combination the lot-sizing policy is
completely coordinated with the constant demand forecast.
Considering the impact of the variance of the demand it can be seen, that (for Q > JL)
- as expected - with increasing u 2 (increasing coefficient of variation) setup- as well as
quantity-oriented planning stability decreases.
434
1)-". ,,=5
----
(s. nO) = «L+ nO)
"",12
0.
--
"...2J
"...5,3
.t 0.'
Ii 0.1
0.1
0.1
10 \I 20 :III :10 311 ..,
Q
(8, nQ}-policy
pl&lllliug-atability measures: 11' .. 11',
o.o- t - - - - - - - - - - - - - - - - - l
0'1~~~~~,O~~II~~2O~~:m~~:IO~~~3II~~..,
Q
Figure 2: 'Ir. and 'Irq for (s,nQ)-policy, varying Q for different variances of the demand
distribution
The given results are confirmed when varying the expected demand per period for
a given variance of demand (see figure 3). The typical patterns in the development
of both stability measures are preserved but shifted according to the different demand
expectations. For values of Q being slightly greater than the constant demand forecast
1', the quantity stability measure is unaffected by variations of Q whereas 'Ir. increases
'Irq
with decreasing coefficient of variation (by increasing the expected demand per period) as
described above. Considering 'Irq it is shown that for Q being a multiple of the expected
demand per period a very high quantity-oriented planning stability is achieved.
435
.....
". 5
" • 10
r:Il
0,'
o· 15
- --
U
10 I. ac
Q
. XI . ..,
(&, nQ)·policy
planning-stability meuures: '1'"11 'l'"t
0,
~
•• 10
0·15
fu
f 0,7
0.&1
0._
.0
"
ac
Q
.. XI . ..
Figure 3: 'Irs and 'Irq for (s, nQ)-policy, varying Q for different demand expectations
Comparing the planning stability performance of the (s, S)- and the (s, nQ)-policy,
figure 4 shows distinct cyclic patterns in the development of both stability measures for
the (s, S)-policy dependent on the value of the parameter Q (again the reorder-point s
is fixed to the expected demand during leadtime plus review period) whereas the general
tendency for both stability measures is similar to the development of 'Irs and 'Irq described
above for the (s, nQ)-policy.
436
The oscillating patterns in the development of 1r. and 1rq for the (s, S)-policy can be
explained as follows: for Q being an integer multiple of the expected demand per period
the order-quantities are adjusted to the stationary demand forecast. In this case due to the
regenerative characteristic of the (s, S)-policy slight positive deviations between realized
and forecasted demand cause an updating of planned setups for the whole planning cycle
whereas for other combinations of sand S (with S = s + Q) deviations of the realized
demand are partially absorbed by the first planned setup so that replanning is probably
not necessary. Further experiments show that this cyclic patterns diminish with increasing
the variance of the demand distribution.
0.'
fU
t ~, ~-------
0.'
UI~~~~,o~~,a~~a~~a~~~~~z~~~
Q
~.
Figure 4: Comparing 1r. and 1rq for the (s, nQ)- and (s, S)-policy, varying Q
437
In figure 5 in addition to 'Irs and 'Irq the ,B-service-Ievel and total cost,s C are depicted,
varying again Q. It can be seen that in order to obtain a high planning stability by
using low order quantities at the same time high setup-costs and a low service-level (or
additional holding costs to guarantee a higher service-level) have to be accepted. Using
large order quantities to get high setup-stability as well as a high service-level on the
other hand causes substantially increasing holding costs. Due to the cyclic patterns in
the development of both types of planning stability for the (s, S)-policy, adjusting the
policy-parameters for low values of Q enables to achieve substantially increased planning
stability levels without reducing service-level or increasing total-costs at the same time.
~·~~~~'O~~,~.~~~~~a~~~~~~~~~
a
u'.............:-r-rr-r;';IO:""""'''''7.',• .,...,..,.'''':~:!:''''''~a!:'T''''.,...,..,~~~
.....,..,...,...,J~
Q
Figure 5: Comparing stability measures, ,B-service-Ievel and total costs for the (s, nQ)-
and (s, S)-policy, varying Q for a given demand distribution
438
Using this modified policies, planned orders for each period t do not only depend
on the actual inventory position y~ for this period when determining the kth plan, but
also on the lot-size determined in the last planning cycle (k - 1) for this period. If the
reorder-point s exceeds the actual inventory position though according to the unmodified
lot-sizing policy an order has to be planned, this order is suppressed in order to create a
stabilization effect if the undershoot of the reorder-point s does not exceed a percent of
the given value for s (case (1) in table 1). In the same wayan order is planned according
to the considered reorder-point policy if the actual inventory position exceeds the reorder-
point but the overshoot of s is within the range of as (case (2) in table 1). For a = 0
this policy leads to the unmodified lot-sizing policy. By variation of the parameter a the
trade-off between planning stability, costs and the achieved service-level can be studied.
It can also be seen that using these extended policies, planning stability is not only
affected by the lot-sizing policy parameter Q but depends on the given value for the
parameter s too. For fixed a (a> 0) setup as well as quantity-oriented planning stability
increase with increasing s.
Possible extensions of this stabilization strategy are to use different stabilization pa-
rameters for the two cases Yt < sand Yt ~ s and to define time-dependent stabilization
parameter( s) for each planning period according to the distance to the end of the planning
cycle.
439
(s. nO: 1 0)
0,.,, . . - - - - - ' - - - - - - -- - - -------"]
0,1
<) 0.-
f ~I
~
stabilization strategy a
plaDDiDg·.t.ability, P service-level. costs
--.
0,'
..-9.
o.l
~
............ -<-
n Q
0.'
i
<) ~
C t;IWll
f ~I
.J
~ ....
....
~.
0 0.1 0.2 0.3 0.' 0.5 0.. 0.7 0.. 0..
Figure 6: Comparing stability measures, f1-service-level and total costs for the (s, nQ)-
and (s, S)-policy, varying the stabilization-parameter a
The results when comparing both extended lot-sizing policies are shown in figure 6.
In this figure relative deviations of total costs, f1-service-level and the suggested stability
measures 'Irs and 'Irq related to the values received for a = 0 (which results in the unmod-
ified lot-sizing policy) are depicted for a fixed lot-size of 10 units and a given demand
distribution.
For small values of a both stability measures substantially increase whereas the f1-
service-level slightly decreases. Further increasing of a however does not affect planning
stability while the f1-service-level continues to decrease. Comparing total costs and f1
440
service-level for the (s, S)- and the (s, nQ)-policy it can be seen that the {3- service-level
for the (s, S)-policy is reduced even stronger than for the (s, nQ)-policy when increasing a.
At the same time total costs for the (s, S)-policy decrease compared to slightly increasing
total costs for the (s, nQ)-policy. This fact is due to the size of the planned lot-sizes for
the case (2) depicted in table 1, which are restricted for the (s, S)-policy to the range of
(S - y;) whereas for the (s, nQ)-policy each planned lot-size has a magnitude of at least
Q units.
",
C toIWll
0-9.-
IJ
'"
I
~
"'' '
;.
--.--- .-.-'-
00.""
11'311
Ptm
''''' . 11118
2QlU,
Figure 7: Comparing stability measures, {3-service-Ievel and total costs for an approximate
optimal (s, S)-policy using stability strategies a and P
Compared to the stabilization method to freeze a part of each planning cycle the pro-
441
posed lot-size oriented stabilization strategy is more flexible and can create an stabilization-
effect in every period, whereas the stabilization method to freeze a part of each planning
cycle has an stabilization effect only in the first P periods and results in an "all-or-
nothing" stabilization without considering the actual inventory position. In order to verify
this judgment both stabilization methods have been studied in further simulation experi-
ments. For this simulations approximate optimal policy-parameters s· and S· = s· + Q.
have been calculated using approximations developed by SCHNEIDER/RINGUEST (see
[1OJ). In order to maintain the achieved ,B-service-level of 99% when increasing the sta-
bilization parameters a or P, a modified reorder-point s = ms· is determined using the
optimal value s* multiplied by a parameter m (m ~ 1). Based on this reorder-point the
reorder-level S is given by S = s + Q*.
The results for the (s, S)-policy varying the stabilization parameters a (0 :::; a :::; 0.5)
and P (1 :::; P :::; 20) are depicted in figure 7 showing the relative deviations relating to
the unmodified reorder-policy which is given for a = 0 and m = 1. In order to achieve
the stabilization effect given by the lot size-oriented stabilization method for a = 0.2 the
length of the frozen zone has to be greater than 20 periods (for a planning cycle length of
25 periods). At the same time total costs increase substantially so that the stabilization
method a clearly dominates the stabilization method of using a frozen zone.
5 Further research
For further research the analyzed environment has to be extended for several aspects.
Assuming dynamic demand-forecasts as well as instationary demand situations, further
stochastic impacts can be introduced into the model. In addition to this the effect of
forecasting models on planning stability should be analyzed.
Finally, modeling the interactions between control parameters of lot-sizing policies, lot-
size oriented stabilization strategies and the proposed planning stability measures might
lead to extensions of lot-sizing models which follow cost optimization objectives and take
into account restrictions of prespecified service-levels as well as given planning stability
requirements.
442
References
[3] CARLSON, R.C .; JUCKER, J .V .; KROPP, H.; Less Nervous MRP Systems: A
Dynamic Economic Lot-Sizing Approach, Management Science 25, 1979, 754-761.
[4] CARLSON, R.C.; YANO, C .A.; Safety Stocks in MRP-Systems with Emergency
Setups for Components, Management Science 32, 1986,403-412.
[6] KROPP, D.H.; CARLSON, R.C.; A Lot-sizing Algorithm for Reducing Nervousness
in MRP Systems, Management Science 30, 1984,240-244.
[7] KROPP, D .H.; CARLSON, R.C .; JUCKER, J .V.; Heuristic Lot-sizing Approaches
for Dealing with MRP System Nervousness, Decision Sciences 14, 1983, 156-169.
[8] MINIFIE, J.R.; DAVIS, R.A .; Interaction Effects on MRP Nervousness, Int. Journal
of Production Research 28, 1990, 173-183.
[9] PENLESKY, R.J.; BERRY, W.L .; WEMMERLOV, U.; Open Order Due Date Main-
tenance in MRP Systems, Management Science 35, 1989,571-584.
[10] SCHNEIDER, H.; RINGUEST, J .L.; Power Approximation for Computing (s,S) Poli-
cies Using Service Level, Management Science36 , 1990, S. 822-834.
[11] SRIDHARAN, S.V.; BERRY, W .L.; UDAYABHANU, V.; Measuring Master Produc-
tion Schedule Stability under Rolling Planning Horizons, Decision Sciences 19, 1988,
147-166.
[12] SRIDHARAN, V .; BERRY, W.L.; Freezing the Master Production Schedule under
Demand Uncertainty, Decision Sciences 21, 1990, 97-120.
[13] SRIDHARAN, V.; BERRY, W.L.; Master Production Scheduling Make-to-stock Prod-
ucts: A Framework Analysis, Int. Journal of Production Research 28, 1990,541-558.
443
[14] SRIDHARAN, V.; BERRY, W .L.; UDAYABHANU, V.; Freezing the Master Produc-
tion Schedule under Rolling Planning Horizons, Management Science 33, 1987, 1137-
1149.
[16] STEELE, D.C.; The Nervous MRP System: How to do Battle? Production and
Inventory Management 16, 1976,83-89.
[17] YANO, C.A.; CARLSON, R .C.; Interaction between Frequency of Rescheduling and
the Role of Safety Stock in Material Requirements Planning Systems, Int. Journal
of Production Research 25, 1987,221-232.
[18] YANO, C.A.; CARLSON, R.C.; Safety Stocks for Assembly Systems with Fixed
Production Intervals, Journal of Manufacturing and Op. Management 1, 1988, 182-
201.
SOME VALID CONSTRAINTS FOR THE CAPACITATED
by
Heinz D. Mathes
Lehrstuhl ffir Produktionswirtschaft
Rechts- und Wirtschaftswissenschaftliche Fakultat
Universitat Bayreuth
Postfach 10 12 51, D-8580 Bayreuth
I. Introduction
field in general rely heavily on certain properties of optimal solutions, which are used to
construct algorithms, wich are more efficient than the direct approaches such as dynamic
programming or mixed integer programming. Unfortunately the main properties hold only
in the unrestricted case. Therefore due to the mathematical difficulties imposed by capacity
constraints solution procedures for capacitated problems are dominated by heuristic methods.
These methods are partly based on results of optimisation theory (see for instance
ZAHORIK, 1984, THIZY et al., 1985) or apply something like common sense rules to
accelerate the solution procedure (BLACKBURN et al., 1984).
The approach put forward in this paper follows a different rationale. First the lotsizing
problem is presented in the well known mixed integer programming formulation (e.g.
STEINBERG et al., 1980) tractable by any commercial integer programming code. Given
this formulation a preprocessing phase (see NEMHAUSER et al., 1988) joins before the
numerical solution is performed. The objective of preprocessing can be thought of as
accelerating the speed of the algorithm applied by improving or simplifying the original
formulation of the problem. This can be achieved by measures such as tightening bounds on
variables, fixing variables or adding inequalities on logical grounds thus reducing the set of
feasibel solutions to be searched and possibly truncating the optimization procedure. The
results of preprocessing here are based on conditions holding for feasible or optimal solutions
of the lotsizing problem, which can be transformed into sets of valid constraints on the mixed
integer formulation. These additional constraints reformulating the problem bear some
resemblance to what is called valid inequalities. In integer optimization valid inequalities are
added to approximate the convex hull of solutions (see NEMHAUSER et al., 1988). Since
the inequalities employed to reformulate the present problem do not suffice to describe the
convex hull completely, the the following the term valid constraints is preferred (for an
example of a complete approximation for a problem of WAGNERlWHmN type see
BARANY et al., 1984).
In view of the variety of optimization procedures for the uncapacitated case one could argue
that there may exist more sophisticated algorithms to solve the capacitated assembly line
problem, i.e. algorithms, which are superior in efficiency, because they are better adjusted
to the special structure of the problem under consideration. Yet the method put forward has
been chosen, because it seems to offer some advantages over more specialized procedures:
First, the reformulated problem can be solved employing generally available software for
mixed integer programming. Second, it can be easily adapted to changes in the production
446
The product structure in an assembly line production process can be represented by a directed
network, G(V,E), where the set of nodes, V, describes the set of items, and E, the set of
directed arcs, defines the technologically feasible assembly operations: An arc (ij) leads from
node i to node j iff item i is a component of item j. The total number of parts is IV I = N.
It is assumed that the nodes have been numbered in topological order by the integers
{1,2, .. . ,N} where the node k corresponding to the end-item has been labeled v(k) = 1. This
labelling scheme is sometimes referred to as technological ordering (THOMPSON, 1965).
A number av is associated with every arc (ij), designating the production coefficient of the
processing operation. Without loss of generality one may define av = 1 for all ij E E (see
BLACKBURN et at., 1984). The unique immediate successor of i is denoted by s(i) and the
set of immediate predecessors by B(i). For single product assembly line structures one
obtaines s(1) = { } and I s(i) I = 1 for all other nodes. In such a directed graph there
exists a unique path, P(i), from every node i E V - {l} to node 1 with P(i) = (i = i.. iz, ... ,
it = 1), ~ E V, satisfying (~, ij + l) E E for all j = 1, ... , k - 1.
In the remainder of this paper the following conditions are assumed to hold:
Demand for the end-item is given for the periods t E {I, ... ,T} with ~ representing the
quantity of demand in period t. No external or independent demand exists for the other items.
Demand must be satisfied from on-hand inventory and no backlogging is permitted.
Item i is manufactured at facility i (node, production stage), which has limited capacity Cj
(e.g. machine hours) remaining constant over all periods. This type of resource is not being
used by any other item. Resources, which are employed in the manufacturing process and
have to cover the demand of more than one item, are considered as non-limiting.
447
An item i can only be manufactured when all required components k, k E B(i), are available.
To facilitate the notation lead times at all production stages are assumed to be constant,
independent of lotsizes and shorter than the chosen length of period (t, t+ 1]. The necessary
modifications to cover lead times exeeding the length of period are obvious. In the manufac-
turing process set-up cost are incurred at each facility i when a lot of item i is produced. This
set-up cost is independent of the lotsize and equals zero whenever production amounts to
zero. For every produced unit which is not employed to satisfy the demand of the succeeding
facility (or the external demand), in its period of production a constant holding cost is
charged at the end of the period. Production costs per unit at each facility are supposed to
remain constant over all periods and can therefore be omitted. The objective of the lotsizing
problem in assembly systems is to choose a sequence of lots at each facility such as to cover
the external demand and to minimize the sum of set-up and holding costs over the periods
{1,2, ... ,T}. To formulate the capacitated lotsizing problem as a mixed integer program the
following notation will be applied:
lifClit>O
~I = { 0 otherwise
The following formulation can be considered as a capacitated version of the model presented
by AFENTAKIS et aI. (1984):
Problem MIP
N T
min E E (Ki ~I + Ii Yil) (1)
i-I I-I
subject to
t = 1, ... , T (2)
i = 1, "" N; t = 1, .. , , T (4)
(1) is the objective function of the lotsizing problem. Constraint (2) represents the flow
conservation constraint for the end-item. Constraint (3) assures the flow conservation for the
remaining items 2, ... ,N taking into account that the demand for item i is determined by the
lotsize of item k with k = s(i) , Constraint (4) serves a twofold purpose: First, it limits the
lotsize to the amount of available capacity C;. Second, it assures that whenever a positive
amount of capacity is consumed a set-up cost will be incurred.
In this paper, an additional assumption will be used:
This assumption can be motivated by considering that inventory holding cost is directly
related to the value of the item produced at facility i. (7) appears therefore quite reasonable
an assumption, since it requires only that the value added by each processing operation is
nonnegative (for a similar argument see for instance LOVE, 1972).
To facilitate the mathematical reasoning, the following shorthand notations will be applied
in the remainder:
t
D:: = E d~ and
~·k
t
C,~: =E c, = (t - k + 1) c, for k s; t
~·k
It has been outlined in the first section that one of the features of the solution procedure put
forward in this paper is the use of conventional mixed integer programming software for the
numerical solution of the lotsizing problem. One objective of this approach is to facilitate its
449
integration with other planning procedures as for instance such of MRP-systems. Practically
all commercially available software in this field applies for (mixed) integer problems a
branch and bound routine solving a sequence of LP relaxations of the original problem in
order to obtain the optimal solution. From practical applications it is well-known that LP
based branch and bound algorithms on average spend only a minor fraction of the required
computing time to find a candidate for the optimal solution. The major part of computing
time (frequently more than ninety percent) is required to confirm that no better solution
exists. This effect is due to the number of branches which have to be generated and pursued
in course of this search process for given bounds. To accelerate the branch and bound
routine, one will therefore have to focus on methods to reduce the number of required
branching operations by tightening the LP formulation. This objective can be achieved by
exploiting available information on feasible and optimal solutions of the lotsizing problems
to exclude a-priori certain combinations the set-up variables may take on. This approach rests
on the anticipation that the more combinations of values can be excluded at early stages of
the branch and bound routine, the less nodes have to be generated and investigated thus
probably curtailing the search for an optimal solution.
In the remainder of this section it will be demonstrated how available information on problem
parameters such as demand and cost structures or capacity profiles can be employed to
formulate conditions on feasible and optimal solutions. These conditions are then transformed
into valid constraints on the MIP-problem, which basically either fix certain set-up variables
to predetermined values or establish relations between set-up variables of different production
stages and/or periods.
Before the first constraints can be stated some auxiliary results are needed. The following
represents a generalization of a theorem by BAKER et al. (1978) for the single stage lotsizing
problem. Though there exists no straightforward manner to transform it into a linear
inequality, it provides some mathematical insight into the structure of optimal solutions and
will be used in later proofs.
Proposition 1: For optimal solutions holds Yj,t-I (Cj - 'l;J xjt = 0 for allj,t.
Proof. In contradiction to the assumption let Yj,t-I > 0 and 0 < 'IJt < Cj with period t as first
period for which this condition holds. Period T denotes the last period with positive
production at facility j preceeding period t. To obtain an alternative feasible solution the
following steps must be taken:
450
When external demand exceeds the available capacity at facility 1 in some periods as for
instance could be the case with a seasonal demand pattern, it may occur that the accumulated
capacity fails to cover the sum of demands of a number of periods, say periods lt to lz, lz ~
Taking (2), (4) and (6) the proof is straightforward and can therefore be omitted. It follows
from (8) that the demand, which has to be satisfied by facility 1 in each period is given by
~ + Yllo for a given optimal solution. If this demand exeeds the capacity of facility 1 in any
period t proposition 2 holds for optimal solutions of problem MIP:
< t denote the first period preceeding t with positive production at facility 1. Because of ~
+ yO 11 Ct Proposition 1 assures
~ qb = Ct. To obtain an alternative feasible solution the
following steps have to be taken:
451
(i) decrease production at (l,T) by CI and increase production at (l,T) by the same
amount
(ii) decrease inventory at (l,T) , (l,T+ l), ... ,(l,t-l) by CI
(iii) increase inventory at (k,T) , ... ,(k,t-l) by CI for all k f B(I)
With all other production and inventory variables remaining unchanged the alternative
solution considering (7) incurs a cost reduction amounting to (II - I1.. 8(1) IJ ci ~ 0
Proposition 3: Let 0 < ~ + yO II < CI . For optimal solution holds: If qll > 0 ,
then ~ + y011 :s; qll :s; CI for t = 1, .. . ,T
Proof Considering (4) qll :s; CI is obvious. Let 0 < qll < ~ + yO 11. To obtain a feasible
solution this requires YI,I.I ~ ~ + yOIl - qll > 0 in contradiction to Proposition 1. •
The comparison of accumulated demand and capacity profiles at each (j,t) can be used to
derive further valid constraints.
Proof To beginn with, statement (a) will be shown for facility j . Combining and rearranging
(2), (3), (4) and (8) leads to Cj E,I= \1 Xj, ~ DII+I + yOI,I+1 for all feasible solutions. Since
Cjll = cj t, one obtains the inequality
452
(9)
which feasible solutions must satisfy. Considering Cil < 0lt-I + Y\t+1 and (5) the right
hand side of (9) can only hold for E~t_ \1 xjt- = (t + 1).
Since c tl t ~ c jlt for Ct ~ cj the statement obviously holds for all k E PO) with Ct ~ Cj. To
prove (b) suppose contrary to the assumption that Xt,t+ I = 0 for at least one k E PO) with Ct
> Cj. Hence for feasible solutions E/. I CIt~ ~ Olt+1 + yO I, t+1'
(k,t) is linked to at least one predecessor (i,t) (not necessarily an immediate predecessor) the
accumulated capacity cnt of which fails to cover the actual demand Ott+1 + yOI,t+I'
Consequently the flow conservation constraints at facility r for periods 1 to t with r E PO) and
r immediate predecessor of k cannot be satisfied simultaneously. -
For optimal solutions a relation between set-up variables of directly adjoining facilities can
be established based on the succeeding straightforward consideration. Suppose facility k is
immediate predecessor to facility i with Ct ~ Cj. To any schedule with 'lit = 0 and 'Itt > 0
one can expect to fmd another schedule with lower cost when transferring the production
quantity 'Itt to later periods. This is always possible since in periods beyond t facility k must
exhibit a capacity surplus as compared to facility i.
(ii) in periods T, SST S T let Ct. denote the maximal unused capacity at facility k. Set
production at facility k equal to 'It. = q\. + C(k,T) for periods T = S, S + 1, ... ,T
starting with period s. The production increase c(k, T) is recursively defined by
(iii) starting with period s determine recursively the resulting inventories at facility
k and at facilities r E B(k) by:
Yt. = Yt,,..1 + q\. + C(k,T) - q\. ,
y.. = y",..1 + qO .. _ C(k,T) - qOb
Leaving all other production and inventory variables of the given solution unchanged together
with (7) set-up and inventory costs are effected as follows: Set-up cost are reduced by Kt in
period t. Transferring qO kt to periods SST S T may lead to at most one additional set-up
since Ct ~ qO kt thus the sum of set-up cost is decreased by Kt or remains constant. From step
(i) follows a reduction of inventory cost of Ot - E,.II(It) 1,) qO kt ~ 0 for all periods T, t S T
S S - 1. From (ii) and (iii) one obtains for periods SST S T that inventory at facility k
decreases by
Yr: - Yn = -~ - E c(k,j) ~ 0 ,
SSj<T
The comparison of these expressions reveals that per period decreases at (k, T) are
accompanied by increases at all (r,T), r E B(k) of identical size. Consequently applying (7)
the sum of inventory cost for SST S T never exceeds the cost of the given solution for the
corresponding periods. Summing up these results the alternative solution in toto leads to cost
savings greater or equal to zero -
454
The valid constraints developed in the previous section were based on the available in-
formation about demand and capacity profiles. So far neither inventory nor set-up costs nor
cost relations have been used to motivate further constraints on problem MIP. This section
will take a closer look on the given cost parameters of the lotsizing model. The objective is
to identify conditions on cost parameters which will guarantee that all facilities k E P(i)
following identical schedules may be a-priori determined and to transform these conditions
into valid constraints. Similar conditions have been identified for the uncapacitated case (see
for instance AXSATER et al., 1986). Unfortunately they rest on results which cannot be
obtained unless facilities draw from unlimited resources (see AFENTAKIS et al., 1984). As
will be observed, the derived conditions bear some resemblance to those of the uncapacitated
case. But unlike their counterparts in the uncapacitated case they are not generally applicable
but restricted to facilities forming paths whose capacities are non-decreasing as one moves
down through the product structure. Such paths shall be denoted PO(i) with i representing the
facility with the largest number for which this condition holds. Before valid constraints
referring to cost parameters can be stated some auxiliary results are needed.
Proposition 6: Let Ct ~ Cj with j = s(k). For optimal solutions holds: If <Itt > 0 and 'lit > 0
then <Itt ~ 'lit for all t = 1, ... , T.
A formal proof can be omitted, since supposing the contrary shows immediately that savings
in inventory cost could be obtained.
Proposition 7: For optimal solutions holds: If there exists a path p0(j) with 'lit > 0 and ~ +
yOu> 0 then
Proof. Proposition 5 assures CLt > 0 for all r E p0(j) if 'lit > O. Let ~ + yO u ~ cl • From
Proposition 2 one has immediately qu = CI ' Proposition 6 together with the transitivity
property of the relation "greater or equal than" provides 'lit ~ cl • For 0 < ~ + yO It < cl
considering Proposition 3 an analogous argument may be advanced. -
For facilities k with only minor set-up operations and accordingly low set-up cost, there may
exist criticallotsizes q(k,t) with the property
455
In (11) the expression in brackets corresponds to the so-called echelon holding cost at facility
k first introduced by CLARK et al. (1960). (11) can be interpreted as follows: If the required
production at (k,t) exceeds q(k,t), producing this quantity in periods prior to t and carrying
inventory cannot be preferable to a set-up at (k,t). This consideration motivates
Proof. For a given optimal solution suppose on the contrary ~ = O. To obtain an alternative
feasible solution the following steps can be taken (leaving all other variables unchanged):
(i) replace ~ = 0 by ~ = <!,;t.
(ii) decrease production successively at all (k, T) with 'h:~ > 0, 1 S T < t,
moving from period t downwards until the sum of reductions equals <!,;t. In
each period, in which a reduction is made inventory is decreased by an equal
amount.
(iii) in each period with a production decrease at facility k inventory at all facilities
r, r E B(k), is increased by the same amount.
Step (i) adds set up cost of Kt. A comparison of steps (ii) and (iii) reveals that in terms of
quantity, inventory decreases at facility k correspond exactly to increases at facilities
r E B(k). Since the sum of all inventory changes at each facility equals <!,;t, expression (11)
with q(k,t) = <!,;t can be used to establish a lower bound on the change of set-up and in-
ventory costs effected by (i) - (iii). Considering the assumption this result does not accord
with the assumed optimality of the given solution. -
Combining Propositions 1,3,5,7 and 8, one arrives at valid constraints on problem MIP
which are derived from set-up and inventory costs.
Proof. For optimal solutions must hold either qll = 0 or qll > O. Let qll = 0 and Proposition
5 assures the statement without having to make use of the cost assumption. In case of qu > 0
Propositions 2 and 3 provide qll ~ 1\. Applying Propositions 8 and 7 successively to all
facilities i E P*(k) - {I} leads to the required result. -
Proposition 9 states conditions on set-up and inventory costs and on the structure of resources
which will guarantee that sets of facilities follow identical schedules. Besides facilitating the
numerical solution of lotsizing problems these conditions may as well be employed in
designing production environments which shall be operated according to the just-in-time
principle since they provide some insight into the required structural characteristics of such
systems.
Currently research efforts are directed towards testing the performance of the derived valid
constraints in greater detail and possibly to incorporate them into a branch and bound code.
To date, their efficiency has only been studied in the context of what may be called
preliminary computational experiments. The best problems were run under LINDO LP code
on a conventional personal computer with a 80386 processor. In order to allow for a
comparison of computing times tests had to be restricted to rather smalliotsizing problems
comprising only eight nodes and ten periods. These first results therefore can only be
considered as indicative of the possible improvements to be achieved by adding valid
constraints.
The following experimental design was used: Inventory cost remained fixed for all tests
whereas set-up cost were assigned randomly within upper and lower bounds. The capacity
at each node was determined in a random fashion considering the independent demand to
avoid infeasibilities. Two demand patterns were examined. Seasonal demand, i.e. demand
exceeding in more than three periods the capacity of the first facility and normal demand,
457
which in all periods remained within the bound set by the capacity constraint of facility 1.
Demand patterns were further distingished by their capacity tightness. Capacity tightness
refers to the absorption (in %) of the accumulated bottleneck capacity by the accumulated
independent demand. Two cases were investigated: 60 - 80% and more than 80% tightness.
In all cases the established sets of valid constraints were checked for redundancies. It showed
that the most substantial improvements occurred when seasonal demand was given: With
capacity tightness amounting to 60 - 80% (> 80%) computing times were on average reduced
by approx. 60% (75%). For normal demand the corresponding figures dropped to 52%
(63%). It was further observed that on average the first integer solution of the reformulated
problem deviated less that 5 % from the optimum. This observation motivated the use of a
simple heuristic principle: The search process was stopped if the next integer solution did not
improve the previous one by at least b%. Averaging over all test problems, this heuristic
showed its best performance (time reduction of 95 % with an optimality gap of less than 2 %)
when was fixed to 0,5 %.
Since only relatively small problems were investigated on a preliminary basis, further
research certainly remains to be done. Yet the results seem rather encouraging thus providing
some justification for the proposed approach. By the use of structural information on problem
parameters a set of valid constraints could be developed which accomplished a reasonably
tight LP formulation of the lotsizing problem. It is conceivable that the efficiency of this
approach could be further improved by exploiting informations or patterns emerging in the
LP solutions of the investigated nodes. Moreover the last results point to the possibility that
valid constraints may be employed to refine heuristic procedures or to develop new
heuristics.
458
References
Aftentakis, P., Gavish, B., Karmarkar, U., Computational efficient optimal solutions to the
lotsizing problem in multistage assembly systems, Management Science 30, 1984,222 - 239.
Axsater, S., Nuttle, H.L.W., Aggregating items in multi-level lot sizing, in: Axsatter, S.,
SchneeweiB, Ch., Silver, E. (eds), Multi-stage production planning and inventory control,
Berlin 1986, 109 - 118.
Baker, K.R., Dixon, P., Magazine, M.J., Silver, E.A., An algorithm for the dynamic lotsize
problem with time-varying production capacity constraints, Management Science 24, 1978,
1710 - 1720.
Barany, I., Roy, T.J., Wolsey, L.A., Strong formulations for multi item capacity lotsizing,
Management Science 10, 1984, 1255 - 1261.
Blackburn, J.D., Millen, R.A., Simultaneous lotsizing and capacity planning in multistage
assembly processes, European Journal of OR 16, 1984, 84 - 93.
Clark, A., Scarf, H., Optimal politics for multi-echelon inventory problems, Management
Science 23, 1960, 475 - 490.
Crowston, W.B., Wagner, M.H., Dynamic lot size models for multistage assembly systems,
Management Science 20, 1973, 14 - 21.
Crowston, W.B., Wagner, M.H., Henshaw, A., A comparison of exact and heuristic
routines for lot size determination in multistage assembly systems, AllE Transactions 4,
1972, 313 - 317.
Nemhauser, G.L., Wolsey, L.A., Integer and combinatorial optimization, New York 1988.
Love, S.P., A facilites in series inventory model with nested schedules, Management Science
18, 1972, 327 - 338.
Steinberg, E., Napier, H.A., Optimal multilevellotsizing for requirement planning systems,
Management Science 26, 1980, 1258 - 1271.
Thizy, J.M., Van Wassenhove, L.N., Lagrangean relaxation for the multi item capacitated
lotsizing problem: A heuristic implementation, AllE Transactions 17, 1985,308 - 313.
Thompson, G.L., On the parts requirement problem, Operations Research 13, 1965,
453 - 461.
Zahorik, A., Thomas, L.J., Trigeiro, W.W., Network programming models for production
scheduling in multistage, multi-item capacitated systems, Management Science 30, 1984, 308
- 325.
DLSP for Multi-Item Batch Production
by
Wolfgang Briiggemann and Hennann Jahnke
Institut fUr Logistik: und Transport
Universitiit Hamburg
2000 Hamburg 13
Gennany
Abstract
The discrete lot-sizing and scheduling problem (DLSP) has been suggested for the simulta-
neous choice of lot sizes and production schedules. However, the common assumption of
instantaneous availability of the manufactured units is not satisfied in practice if the units arrive
in inventory in one batch no earlier than completion of the whole lot Therefore, we present
additional constraints for the case of batch production. The resulting extended DLSP is
formulated as a mixed-integer linear program. The feasibility problem of this modification to
the standard DLSP is again NP-complete. A two-phase simulated-annealing approach is
suggested for solving the modified DLSP. Since DLSP is a finite-time-horiwn model, sensible
target inventories have to be determined. Numerical results are presented for different problem
classes.
1. Introduction
One of the most challenging problems in production planning has been the simultaneous
choice of lot sizes and production schedules in order to minimize cost. In the early 196Os,
mixed-integer linear models were proposed in the economic literature to cope with this
situation, e.g., Adam [1963] and Dinkelbach [1964]. Their principal idea is to divide the finite
time horizon into (small) time intervals in which the machines can be used either for
production of at most a single product, or can be setup for such a production. Recent interest
in these models, now popular as the single- or multi-machine discrete lot-sizing and
scheduling problem (DLSP), stems from the development of new algorithms to solve these
problems. Fleischmann [1990], for example, suggests an exact algorithm for the single-
machine multi-item case with zero setup times. A comprehensive reference to these algorithms
460
is given by Salomon [1991]. After showing that generating feasible solutions for the single-
machine multi-item DLSP with non-zero setup times is NP-complete, he suggests a heuristic
based on Lagrangean relaxation.
All these modelling approaches pertain to the case of instantaneous availability of the
manufactured units prior to the completion of the lot. However, this assumption is not satisfied
in practice if the units arrive in inventory in one batch no earlier than completion of the whole
lot. Therefore, we introduce additional constraints in order to model the case of batch
production. The resulting extended DLSP is formulated as a mixed-integer linear program. For
solving this problem a two-phase simulated-annealing (SA) approach is suggested because of
the general applicability of SA (Kuik and Salomon [1990] apply SA to the related multi-level
lot-sizing problem).
In many cases, there is no natural time limitation for production processes and demand will
be stochastic. Hence, finite-time-horizon models are applied repeatedly (rolling application)
in order to solve approximately the underlying infinite planning problem and to incorporate
new estimates based on more available data in each planning instance. In this context, a
special emphasis is put on the final inventories. Therefore, we determine sensible inventories
by a parametric application of the modified DLSP-model to the expected demand. These
inventories can be used as target (final) inventories for production planning in rolling ap-
plication, while actual (final and therefore new initial) inventories result from the deviation
of realized from estimated demand. Positive initial inventories yield more feasible production
schedules with respect to the demand restrictions with additional cost saving potential.
Therefore, optimal target inventories will also not be zero for all products simultaneously.
Ordinarily, DLSP is formulated for N items and a finite-time horizon of T time units. Here,
production scheduling and demand should be considered on different time scales: Typically,
demand can be estimated for example as demand per day, while the DLSP requires a less
coarse discretization of the time axis due to the underlying idea that during one time unit (e.g.,
hours or 30-minute intervals), the machine can be used at most for setup or production of only
461
one item (see constraints (4) below). Hence, the time units for DLSP will be chosen to be the
greatest common divisor of setup times and minimal production times for all items. The
different time scales of demand and scheduling yield a division of the planning period T into
M (demand) subintervals of lengths T ..-T... \ (m=l, ... ,M; To=O; TM=T) where demand di, for
product i is positive only at times T.. (diT.~O and di,=O t=l, .. .,T; t~T.. ; m=l, ...,M;
i=l, ...,N).
Vi' are zero-one variables indicating setup in period t for production of product
i and
Yi' are zero-one variables indicating production of product i in period t with
YiT+J=O for formal reasons.
Then the objective is to minimize the sum of setup and inventory holding cost
N T
Min C«v,y» = LL
i.l ,.1
r i Vi' + hJi' (1)
s.t.
i=l, ... ,N; t=l, ... ,T (2)
L
i-I
(Yi'+V) ~ 1 t=l, ... ,T (4)
Ei.. =Le
,-\
i, i=l, ... ,N; m=l, ... ,M (8)
T.
Vi .. =LV
,.\ i, i=l, ... ,N; m=l, ... ,M (9)
i=I, ... ,N; m=I, ... ,M; t=I, ... ,T.. (11)
i=I, ... ,N; m=I, ... ,M; t=I, ... ,T.. (12)
T.
1;" I iO' i;". ~ i=I, ... ,N; t=I, ...,T; m=I, ... ,M (14)
YiT+1 = 0, eil' Vi" Yil, Yi/m E {O,ll i=I, ... ,N; t=I, ... ,T; m=I, ... ,M (15)
The objective (1) and constraints (2), (3) and (4) are taken from the standard DLSP [Salomon
1991, pp. 34 and 43]. Again, ri in (1) are sequence independent setup costs per setup period
and the inventory holding costs are given by the product of parameter hi (costs per unit and
period) with nonnegative inventories I ir The demand-satisfaction constraints (2) of standard
DLSP describe the dependence of current inventories on the inventories of the preceding
period, the quantity of the corresponding item produced (where 0i is the production speed) and
the demand. The correct sequence of setup and production periods is modelled in equation (3)
where ai>O is the corresponding number of setup periods. Constraints (3a) are additional to
the DLSP formulation due to Salomon [1991] and prohibit production of item i in periods
1, ... ,ai with no preceding setup. Constraints (4) are used to prevent simultaneous action (setup
or production) on the machine.
These constraints alone do not pertain to the case of batch production. While the inventory
including work in process IiI (as described above) is required for computing holding costs in
(1), the last batch begun before time t is not available for satisfying demand if the production
process of this batch is not fmished by t. Therefore, we introduce inventory i;", which is
already available in demand instance T",. In order to model this available inventory, some
auxiliary variables and constraints (5) - (12) are needed: Here, zero-one end-of-batch variables
eil indicate the production of the last unit of the current batch in t by eil=l. End-of-batch
constraints (5) - (7) are similar to setup constraints (3). Ei"" Vi'" and Di", are set in equations
(8) - (10) to the cumulated number of completed batches, number of setup time units and a
correction term, respectively. This correction term is required to determine zero-one variables
Yi/m which are then used in (13) to define the auxiliary inventory ~". of available units. It
should be noted that Yi/m vanishes even if the decision variable Yil is equal to one, if period
463
t is used for production of item j in a batch which was started before but has not been
completed by Till' This behaviour of the auxiliary variables Yillrl is guaranteed by constraints
(11) and (12), where the latter consists of two parts both of which are zero in the case of
incomplete production at time Till: In this case, the difference between cumulated number of
setup periods before Till and before t S Till is greater than zero for all batches that are
completed before T"" while the second bracket is positive only in the case of no production
extending in time over T",. Moreover, Yillrl may also vanish despite completion of the batch by
T", if not all of the units produced are needed to satisfy demand in Till' Note, that the auxiliary
inventory ~'" will be smaller than the actually available inventory only in this case.
Constraints (14) and (15) are the standard non-negativity and binary constraints, respectively,
for the decision and auxiliary variables. Initial inventories can be thought of as given constants
while final (target) inventories are implicitly included in the demand of period T.
Salomon [1991] shows NP-completeness of the feasibility problem of the DLSP with non-zero
setup times. The modified DLSP is also in NP, because feasibility of any given structure
(production schedule) for any problem instance can be checked in polynomial time. Since any
instance of the standard DLSP can be transformed to an instance of the modified DLSP (again
in polynomial time) and a feasible production schedule for the modified DLSP is also feasible
for its standard version given essentially by constraints (2) - (4), the standard DLSP reduces
to the modified DLSP which is then also NP-complete [Florian et al. 1980].
objective function or another random experiment with acceptance probability given bye -l!.C/y
where .1C=C(ve"",Ye",,) -C(vew,Ye..,) is the difference of the cost function values of the
candidate and the current configuration. y is a control parameter corresponding to temperature
in the original physical analogue in thermodynamics [Metropolis et al. 1953]. Infinite
464
repetition of this procedure with a fixed value of control parameter 'Y can be viewed as one
realization of a homogeneous Markov chain where the current state of the Markov chain is
the last accepted configuration. Iterative reduction of the temperature (i.e., 'Y) yields a sequence
of such Markov chains and it can be shown [Mitra et al. 1986] that, roughly spoken, the
sequence of configurations converges asymptotically to a globally optimal solution, almost
surely. Besides this convergence behaviour (although efficiency compared to tailored
algorithms is usually poor), the main advantage of SA relative to other (tailored) solution
methods suggested is its general applicability. Solving a specific problem with SA requires
only determination of a neighbourhood structure and an appropriate cooling schedule (i.e.,
choice of the sequence of control parameters 'Y and number and length of the finite
approximations of the homogeneous Markov chains). Van Laarhoven [1988] discusses
different cooling schedules and application of SA to selected combinatorial optimization
problems. However, it is important to point out that the neighbourhood choice is usually
performed on the set of feasible configurations only. Feasibility in the context of the modified
DLSP is mainly given by the demand-satisfaction under batch production (13) and setup
constraints (3) - (4). For a general problem instance, it is therefore necessary to construct an
initial feasible solution disregarding costs and to optimize with respect to the objective
function in a second phase. The overall structure of the two-phase algorithm outlined in the
following two sections is similar to the two-phase simplex method for the solution of linear
programs.
The neighbourhood structure for a given production schedule (v,y) is defmed by reducing (v,y)
to a "pure" production schedule y"'" by physically elimipating setup periods. An element (vc"",
Yc,.,.) out of the neighbourhood of (v,y) is then obtained by exchanging the activities of two
arbitrary periods in y,..,. and expanding (i.e., inserting setup periods in front of each
production batch and shifting later production by the corresponding number of time units)
y::; to (vc"",yc,.,.)' During expansion of y::.' to (vc... ,yc,.,.) a necessary condition for feasibility
(the last batch must be finished in or before period n is checked and if this condition is
violated another configuration is drawn out of the neighbourhood of (v,y).
465
The procedure described above does not ensure feasibility in the sense of (2) to (15) since the
demand-satisfaction constraints might not be satisfied. Therefore, a first production schedule
is chosen to consist of a single batch for each item where the batch size is determined to
satisfy the cumulated demand in T and production is carried out immediately. For this
situation, initial inventories are computed in order to fulfil the demand satisfaction constraints
(13) in each demand instance. Afterwards the sum of the positive deviations of these
hypothetically needed inventories from the actual inventories form the objective function and
are minimized in phase 1. As in the simplex method, a feasible production schedule is found
if this sum vanishes. SA will yield more feasible (in the sense that production is finished by
n production schedules by restricting the exchange to active production periods only contrary
to the exchange of activities which also include the final idle periods.
The actual optimization with respect to the cost function is carried out in phase 2. Here, the
same neighbourhood structure is used, but exchanges are now carried out between arbitrary
(active and idle) periods of y p"r<. Production schedules that are not feasible in the sense of
(13) are not considered as candidates. Thtis, feasibility is preserved before each acceptance
in phase 2 subject to the acceptance criterion corresponding to the original cost function (1).
In chapter 2 the modified DLSP was introduced for the situation of deterministic (possibly
estimated) demand and given inventories. In most practical situations, the scheduling problem
arises in the context of rolling application with stochastic demand. Especially here, it is
important to find a sensible set of inventories which can be used as target inventories at each
planning instance. Actual final inventories are the initial inventories of the next interval. It
should be noted that these inventories will differ from the target inventories in practice due
to the deviation of realized from estimated demand. In this situation, demand is to be modelled
466
by random demand variables. In order to find a set of sensible target inventories, the stochastic
demand variables are replaced by their expected values. For this demand structure, final and
initial inventories are assumed to be equal and varied parametrically in a modified DLSP
application in order to find a cost optimal set of target inventories. Additionally. sensible
target inventories for the stochastic application will usually contain a safety stock component
in order to compensate for the deviations of the realized from the estimated demand.
5. Numerical Results
Demand schedules are generated randomly for the numerical evaluation of the modified DLSP
solution procedure suggested in the preceding paragraphs. We consider planning horizons of
maximal length of 60 periods and up to six products which are distinguished into up to three
different categories depending on their demand expectations and variances. These consist of
products with high expected values and low variances, intermediate moments and finally of
products with low expected demand and high variances. Every tenth period is a demand
instance for all products. Demand for each product is measured in how many units can be
produced during one production period. Thus. all production speeds are equal to one.
Similarly. inventory costs for all products are assumed to be equal and unity. Setup of one
period is required for each product and the corresponding costs are set to 60.
Number of Reductions 50 50
production plan will be of primary interest when cost parameters are not easily estimated.
Therefore, the cooling schedule for phase 2 (optimization) is chosen to be coarser than for
phase I (feasibility). Suboptimal solutions obtained by this rough procedure are improved by
shifting batches to the right in order to fill unnecessary gaps.
To determine a set of sensible target inventories, we use the rounded expected values for the
demand in the demand instances. Due to computational restrictions (e.g., there are 106
different inventory combinations for six products if inventories vary from 0 to 9), only
preselected initial and final inventories are tested in the parametric application of modified
DLSP. For each inventory configuration, this problem is solved 25 times with different
initializations of the random number generators due to the stochastic nature of the solution
procedure. The results of the best five of all investigated inventory configurations are given
in table 2.
Typically, asymmetric initial inventories yield the lowest costs despite the underlying
symmetric demand structure where each product category consists of two identical elements.
This result can be explained by the trade-off between the size of the set of feasible solutions
(which is larger for higher initial inventories) and the contribution to the final objective-
function value from the holding costs for the initial inventory.
The inventory vector (2,0,2,0,0,0) yields the lowest average cost value and outperforms the
other invetigated inventory configurations in 6 out of 25 repetitions. Safety stocks are set to
one unit for every product which yields target inventories for the DLSP of (3,1,3,1,1 ,1) for
products 1 to 6. This inventory vector is used as initial and target inventories for the modified
DLSP.
During the numerical experiments for the modified DLSP with randomly generated demand
structures it turns out to be necessary to differentiate between hard and easy problems. As an
elementary indicator of difficulty, we use the ratio of the total demand plus one setup period
per product and the length of the planning period. Problems with an 85 % or higher degree
of difficulty are considered to be hard. Note that two problems with the same elementary
degree of difficulty can be quite different with respect to actual difficulty due to different
demand distributions over time.
One 3-product / 30-period (3/30) problem with a 63.3 % elementary degree of difficulty is
solved exactly by LINDO-386 on the IBM 80486/25 MHz after more than 48 hours of
computation. The same optimal solution is found much more rapidly (with an average CPU
time on the 20 MHz machine of 95.2 seconds) by the two-phase simulated annealing algorithm
in five out of ten repetitions while the other five solutions are near optimal with a coefficient
of variation of 2.63 %. Note that the CPU times for our solution procedure can be improved
by adapting the parameters of the cooling schedule (Table 1) to the actual problem size. Due
to the extremely high computation time required for the exact solution, we use the coefficient
of variation of the final objective function value for ten different realizations as a criterion of
stability and quality of the solutions found instead of the true optimum.
469
The results obtained for the two different classes of difficulty are given in table 3 for the 3/30
problem, and in table 4 for the 6/60 problem.
For each of the 15 demand situations we compute ten repetitions with new seeds for the
random number generator. In both cases, the coefficients of variation for the objective are at
most 5 %, indicating stable results. Computation times tend to be higher for problems with
a high elementary degree of difficulty. In particular, phase 1 can require a significant amount
of computation time for the 6/60 problems. The two-phase solution procedure seems to be
sensitive to higher demands at the beginning of the planning period. This observation might
be an explanation for the substantial differences in computing times of the hard problem
instances. A further natural subdivision of this class is found into problems with an average
computation time similar to the class of easy problems and on the other hand problems which
470
exceed 1000 seconds of required CPU time. In this latter class only. it happens that phase 1
of the algorithm is unable to find a feasible solution on several occasions. This may again be
due to the fact that the set of feasible solutions is in general smaller for a high demand density
towards the beginning of the planning period. This hypothesis is supported by the small
coefficients of variation of the fmal objective function value. A specific problem instance is
given in table 5 as an example for high demand distribution during the frrst two subintervals.
Demand 10 20 30 40 50 60
I 1 4 I 2 3 I
2 3 2 I 2 2 2
3 4 2 0 0 1 0
4 I 2 2 I I I
5 0 0 1 2 0 1
6 0 0 3 1 0 0
Table 5: Demand structure for a hard 6160 problem
The elementary degree of difficulty is 88.3 % and a feasible solution is given in figure 1
(R stands for setup periods while production is indicated by 1).
1 2 3 4 5 6
123456789012345678901234567890123456789012345678901234567890
1 1
-1-1 Rlll Rlllll Rllll 1
2 1 Rllll RIll Rlllll 1
3 IRllll Rllli
4 1 Rlllll Rl Rll 1
5 1 Rllll 1
6 1 Rllll 1
1 1
Auslastungsgrad: 100.0 %
Zielfunktionswert: 1441.0
This is the only feasible solution that is found by phase 1 in ten repetitions after 1204 seconds
of CPU time.
471
The problem presented here differs from the standard DLSP given for example by
Salomon [1991] in considering the case of batch production, not necessarily vanishing
inventories, and in using different time scales for production scheduling and demand. The
feasibility problem for this modified DLSP is shown to be again NP-complete. The suggested
two-phase simulated-annealing solution method is based on intuitive ideas. The optimization
procedure is separated into phase 1 searching for a feasible solution and optimizing cost in
phase 2. Production schedules are generated by dividing, combining and shifting batches. The
numerical experiments presented indicate that our heuristic solution method yields stable
results in short computation times compared to the exact solution obtained by LINDO-386.
This is not surprising because of the large number of integer variables required in the
proposed mixed-integer linear model. The solution procedure can be readily applied to larger
problems where stable solutions will be obtained with reasonable computation times by a
problem-size dependent choice of the cooling schedule. In contrast to the prohibitive
computation times required for the exact solution, our SA approach allows the numerical
sensitivity analysis of cost parameters which are often not easily estimated in practice.
References
Adam, D.: Simultane Ablauf- und Programmplanung bei Sortenfertigung mit ganzahliger linearer
Programmierung, Zeitschrift fiir Betriebswirtschaftslehre 33 (1963),233 - 245.
Collins, N.E., R.W. Eglese, B.L. Golden: Simulated Annealing - An Annotated Bibliography,
American Journal of Mathmatical and Management Sciences 8 (1988) 3 & 4, 209 -
307.
Fleischmann, B.: The discrete lot-sizing and scheduling problem, European Journal of Operations
Research 44 (1990), 337 - 348.
Florian, M., J.K. Lenstra, A.H.G. Rinnooy Khan: Deterministic Production Planning: Algorithms
and Complexity, Management Science 26 (1988) 7, 669 - 679.
Kirkpatrick, S., C.O. GelatI, M.P. Vecchi: Optimization by Simulated Annealing, Science 220 (1983),
671 - 680.
472
Metropolis, N., A.W. Rosenbluth, M.N. Rosenbluth, A.H. Teller, E. Teller: Equation of State
Calculations by Fast Computing Machines, The Iournal of Chemical Physics 21
(1953) 6, 1087 - 1092.
Salomon, M.: Deterministic Lotsizing Models for Production Planning, Berlin 1991.
Van Laarhoven, PJ.M.: Theoretical and Computational Aspects of Simulated Annealing, Ph.D. thesis, Erasmus
Universiteit, Rotterdam 1988.
Information Production Functions in Dynamic Lot-Sizing
by
1. Preliminary Remarks
TV+1
a + 1 ~ (t-T v -1)X t ,
t=TV+ 1
- the Silver-Meal-algorithm by
- the Part-Period-algorithm by
* j
Cr,j = Cr - 1 + a + I . ~ (t-1)X t
t=1
j = 1, ••• ,8, 1 = 1, .•• ,8,
with
o.
In all three cases for the resulting optimal dynamic lot sizes
of the eight periods one obtains:
and q1 = 0 *
for 1 4= 1V+1,
v = (v 1 , •.. ,v 21 ) I
applies.
or
applies, this is not the case for the data elements vk'
k€{1, .. . ,19}, as information about the quantities of produc-
tion, because it is quite possible that for example the infor-
mation v9 = 1 1 or Vg 1 = 2 about the storage cost rate can
be of different quality and it is not clear from the start that
v9 < Vg implies v9 >
P
Vg.
From the point of view of information processing only the
following orders can be defined on the ranges Dk of the d~ta
inputs (k€{1, ... ,10} = K) and data outputs (k€{11, ... ,19} = K).
478
vk = VJc
or vk = 8 and vJccR,
or vk > v'k
p
kcK:
vk ~ v'k
p
++
21
D X Dk ' then vcD.
k=l
fI: D .... R,
<= >
480
Definition 2: Assessment-Efficiency
10 21
with p: D-+/5 xD uRux D
k=l k k=20 k
C = !(J(v)f.R,!(J: D-+R,
3. Example
v (x1 8
, ... ,x -
,I,a,C,v 20 ,v 21 ) I
m=l 300 300 300 300 300 300 300 300 0,2 100
m=2 66 133 200 267 333 400 467 534 0,2 100
m=3 534 467 400 333 267 200 133 66 0,2 100
m=4 550 350 200 100 100 200 350 550 0,2 100
m=6 500 100 500 100 500 100 500 100 0,2 100
3.2. Results
C
-
1000,1--------------------------------------------------~
800 f-
600 I-
400 I-
Silver-Meal Aig.
200
Part-Period Aig.
Wagner-Whitin Aig .
O~I----~------~-- __~____~______~____~______ L __ _ _ __ L_ _ _ _~L__ _~
I S2
o 20 40 60 80 100 120 140 160 180 200
800
600
400
Silver-Meal Aig.
200
Part-Period Aig.
Wagner-Whitin Aig.
,~ ~ ~ ~ ~
o ____ ______ ____ ______ ____ _ L_ _ _ _ _ _L __ _ _ __ L_ _ _ _ _ _~_ _ _ __ L_ _ _ _~
S2
o 20 40 60 80 100 120 140 160 180 200
600
400
Silver-Meal Aig.
200
Part-Period Aig.
Wagner-Whitin Aig.
o I I 52
o 20 40 60 80 100 120 140 160 180 200
800
,.
f :
600
400
Silver-Meal Aig.
200
Part-Period Aig.
Wagner-Whitin Aig.
o f f S2
o 20 40 60 80 100 120 140 160 180 200
800
600 "
400
Silver-Meal Aig.
200
Part-Period Aig.
Wagner-Whitin Aig.
--~ I 52
800
600
400
Silver-Meal Aig.
200
Part-Period Aig.
Wagner-Whitin Aig.
o ~I _ _ _ _- J_ _ _ _ _ _~_ _ _ _- L_ _ _ _ _ _~_ _ _ _~_ _ _ _~_ _ _ _ _ _L __ _ _ __ L_ _ _ _~_ _ _ _~
52
o 20 40 60 80 100 120 140 160 180 200
650 I-
600 I-
550
500
Silver-Meal Aig.
450 Part-Period Aig.
Wagner-Whitin Aig.
I i I I I I I -'---_---11 S 1
400
o 20 40 60 80 100 120 140 160 180 200
1000
800
600
400
Silver-Meal Aig.
200 Part-Period Aig.
Wagner-Whitin Aig.
o " , S3
o 20 40 60 80 100 120 140 160 180 200
~
494
References:
JUles R. DORROH
Louisiana State university
Baton Rouqe, Louisiana 70803 USA
Thomas R. GULLBDGE
Georqe Mason University
Fairfax, virqinia 22030 USA
Iforaan It. WOKER
university of Kississippi
University, Kississippi 38677 USA
1. preliminary Remarks
2. Introduction
the program is more valuable than the same stock later in the
program. The remainder of the paper is organized as follows. The
next section presents some history of the made-to-order
production problem and motivates the hypotheses to be examined.
Then, we present a control theoretic model of the production
situation and use the optimal trajectories to examine the main
hypothesis.
Let q(t) denote the firm's rate of output at time t, and let Q(t)
denote the cumulative output at time t. We are interested in the
situation where the firm produces both knowledge and output.
Hence, let t(t) be the rate of knowledge production at time t,
and let L(t) denote the cumulative stock of knowledge at time t.
Subject To:
q(t) =L(t) f[xq(t)/L(t»),
and
(5)
5. Model Analysis
The time paths for knowledge creation and resource usage depend
in critical ways on the model's parameters. These time paths are
examined relative to those generated from the base-case parameter
set that is presented in Table 1. Hence, the analysis that
follows is an exercise in comparative dynamics.
Table 1
Base-Case Parameter Values
The position and the shape of the expansion path depends on the
quantity of knowledge available at the beginning of the program.
High initial knowledge permits a reduction in x q , both directly
and indirectly, by easing the production of additional knowledge.
--
30
cr
a, -/.00
X
oz- .10
z
-I0-
0
y -.40
:;)
8--.40
0
0 a -.50
0::
0- 20 - 13· .50
I-
:;)
0- P - .50
I-
:;) p •. 50
0
0 L(O)· 2.00
I-
0
w
t-
O
> 10 -
W
0
V>
W
U
0::
::>
0 /' q=5
V>
w ~
..
--- _-----_.
. •.. q=4
0:: qa 3
Iq=2 I
0 '
2 3 4 5 6 7 8
KNOWLEDGE (L)
- 3
- a l-1.00
~
X
Z a2-· 10
-
0
~ y-.40
u
:::> 8· -.40
0
0
0:: a =.50
0..
W 2
(!) (3 - .50
0
w P -.05
...J
~ p- .50
0
z L(O)- 2.00
~
0
~
0
W
~
0
>
W
0
CJ)
W
u
0::
::>
0
CJ)
W
0::
0
2 3 4 5 6 7 8
KNOWLEDGE (l)
6. Conclusions
7. References
Arrow, K.J., H.B. Chenery, B.S. Minhas, and R.M . Solow, 1961,
Capital-labor sUbstitution and economic efficiency, Review of
economics and statistics 43, 225-250.
Dorroh, J.R., T.R. Gulledge, and N.K. Womer, 1986, A
generalization of the learning curve, The european journal of
operational research 26, 205-216.
Dorroh, J.R., T.R. Gulledge, and N. K. Womer, 1992, Knowledge
creation: an alternative to learning-by-doing, Unpublished
manuscript, 1992.
Gulledge, T.R. and N.K. Womer, 1986 . The economics of made-to-
order production (Springer-Verlag, Berlin).
Gulledge, T.R., N.K. Womer, and J.R. Dorroh, 1984, Learning and
costs in airframe production: a multiple-output production
510
Layek Abdel-Malek
and
Xiuli Chao
Newark, NJ 07102
USA
1. Introduction
The need to compete in a global market, where only products of low cost and high
quality can capture their share of sales, has stimulated renewed interest in quality control.
Since the birth, in the 1940's, of what is known today as statistical quality control, re-
search in this area has focused mainly on the development of standards, charts for process
control, acceptance sampling plans, and inspection strategies, see Abdel-Malek and Benes
(1991), Banks (1989), and Kennedy, et .al. (1987) . As computer control of manufacturing
permeated industry in the decade 1970-1980, the possibilities and advantages of sequential
on-line quality control have become evident. Taguchi (1986) is credited with pioneering this
philosophy which has led to improved performance for several manufacturers. Motivated
by the current emphasis we develop in this study quality control policies and inspection
strategies for one of the most frequently encountered means of production; that is flow
lines .
512
Typically a flow line consists of a series of work stations in tandem. All arriving
jobs follow the same sequence of processing. Nevertheless, despite similarities, inspection
strategies can vary from line to line depending on the nature of the product. In this paper,
we will introduce inspection and control models for flow lines where
(1) The output of a work station is not affected by the incoming product quality; i.e.
as long as the incoming product is conforming with the quality standards, there is a known
fixed probability that the outcome of its processing is successful (process capability).
on its predecessor's acceptance range (that is, even the product successfully passes the
inspection, its particular dimension still could effect the outcome of the successor station).
variables are: the location of inspection stations, the portion of the output to be sampled
after each station, and decision rules to determine whether to process further a product or
discard it.
The taxonomy of this work is as follows: We begin by reviewing the pertinent litera-
ture. Then we analyze different types of flow lines and develop their various quality control
strategies. This will be succeeded by the concluding remarks.
2. Literature Survey
Interest in quality control has necessarily produced a vast literature, so we limit this
review only to some of the papers which has taken up issues of interest to this investiga-
tion. Lindsay and Bishop (1964) considered the location of inspections at particular stages
of production. Seeking to answer the question"When, where, and how much should we
inspect?" . Under the assumption of inspection cost linearity, they developed a dynamic
programming algorithm for allocating screening efforts to achieve minimal inspection cost.
513
White (1966), (1969) arrived at similar inspection plans by using a "shortest route" model.
Peters and Williams (1987) also analyzed monitoring efforts in multi-stage production by
using dynamic programming heuristics. However, their model was concerned with cost
minimization rather than White's profit maximization. Along similar lines, Shtub and
Chakravarty (1987) applied a shortest route algorithm for the strategic allocation of in-
In a series of papers , Bhat and Ram (1990), Bhat and Sanders (1990), introduced the
use of Markov chains to help in developing sampling and acceptance plan characteristics,
and to determine the average outgoing quality. They used a two-state process describing
runs of successes and failures and augmented it to cover the sample size in use. But they
Bulgak and Sanders (1990) examined the performance of an assembly system with
"automatic" inspection and repair loops. Their paper developed an approximation for a
general queue using renewal theory, and handled the "splitting of paths" due to detected
The arrival of the Taguchi (1986) philosophy of statistical process control and on-line
inspection have also led to critical studies of these ideas for their validity and impact on
particular situations. Their promotion of statistical methods for on-line control clearly
points in the right direction. Nevertheless, Vining and Myers (1990) have claimed that the
method followed by the Taguchi school (viz. optimizing a mean response while minimizing
As can be seen, not enough consideration has been given to the nonlinearity of in-
spection costs, the effect of prior quality information on the inspection strategy or the
interdependencies among work stations on product quality. This is our intent in this work.
514
3. The Models
In this section we introduce three types of quality control strategies for flow lines.
Based on the particulars of each line, these strategies should define where to inspect, the
portion to be inspected, process or discard an item and the acceptable standard limits of
work station output. These strategies will be derived from the line work station's specifics,
product standards and its processing dependencies, and the various machining and raw
material costs. In the following section a more detailed description for some of these
3.1 Nomenclature
'i= the probability that the product of station i is a success (known in the quality
Consider a flow line consisting of a series of stations with known process capabilities
'i, i = 1,···, N. At each work station a fraction of its output is to be inspected, and
the defective parts are discarded. Our objective in this model is to find where to locate
inspection stations along the line, and the proportion of parts to be inspected so as to
Assume that a fraction Ui of the output of station i is inspected for overall acceptability
of the procedures carried out by all preceding stations, where detected unacceptable items
are discarded. The remainder of the output, a fraction 1 - Ui, proceeds to the following
station. Assume that no attempt is made to change 5i on the bases of inspection, and the
u;'s are viewed as control variables to be chosen in the unit interval. Obviously Ui =0
implies that output of stations i is not inspected.
the fraction of defectives in the output of station i, and ri the fraction of parts "absent"
due to inspection and removal from stations 1 through i. Let ro = 0, and assume Po and
qo are known. Note that po is the fraction of acceptable of the raw material input. For
convenience let us assume that Po = 1, i.e., the raw material is perfect. Then one can show
that the fraction acceptable in the output of station i + 1 can be expressed as
i = 1"" N - 1,
i=I,···,N-l.
Assume that tPi(Ui) is the cost for inspecting a fraction Ui at station i, which is an
increasing convex function, and ri is the salvage value of an item discarded after processing
at station i.
From these assumptions, one can verify that Pi =nj=l 5j, i =1"", N, and
•
qi+1 = qi(1 - ui+d + II 5j(1 - sj+d(1 - Uj+d,
j=l
516
Consequently,
i-I i i-I
qi = L II 'j(1- 'HI) II (1 - U1)
i=Oj=1
i j-l
ri = L Uj(q;-1 + Po II ,.l(1 - Ij)).
j=1 i=1
N N N
C(Ul! ... ,UN) =R- VPN + Lmi(Pi + qi) - L
1i(ri - ri-I) + I/Ii(Ui) + L dqN
i=1 i=1 i=1
N N i N i N i-I i i-I
= [R-V II 'j+ Lmi
j=1 i=1
II Ij+ Li=1 1i(I-'i) II liJ+ Lmi i=Oj=1
j=1
L II 'j(1-'j+d II (l-uI)
i=1 i=1
N N-l i i-I
+L I/Ii(Ui) + d L II Ij(l- 'HI) II (1- U1)
i=1 i=O j=1
The terms that in the bracket [.J is independent of the the decision variables u;'s, hence
it suffices to minimize the rest of the cost function. For notational convenience define
Xi = 1 - Ui, then it is easy to see that the cost function could be conveniently expressed as
N N N
C( X l,···,XN) = Lai II Xi + LbiXi + Ll/li(l- x i), (1)
i=1 i=1 i=1 i=1
with a;'s and b;'s being the appropriate coefficients of the 'i'S, m;'s, 1;'S and d. Therefore
the quality control problem for this serial production model is equivalent to the following
man C(Xl,X2,···,XN)
s.t.
Iterative algorithms, however, can be developed to solve it. In the case of linear inspection
cost, it can be shown that the optimal solution is reached at boundary point. That is, at
each station, either inspect all the product, or do not inspect at all. This phenomenon is
called Bang-bang control.
Before we present the algorithm to compute the optimal solution, we provide intuition
for the methodology. Note that if u = (U1, U2,' .. , UN) is an optimal solution for the
problem, then its partial derivatives vanish at this point if it is an interior one, otherwise
or
Therefore, we can construct a sequence using equation (3) and iteratively compute x~n), i =
1,···, N. This should converge to some value that satisfies either (2) or (3). Thus they
are the optimal solutions.
Algorithm:
If lk+1)
I
> 1, the x(k+1)
I
= l' if X(k+1) < 0
1 t ,
then X(k+1)
t
= O· and otherwise X(k+1) = x(k+1)
' t t '
If we consider an isolated station, say station one, then it can be thought of as a special
model with N = 1 with a non-zero qo. In this case substitute N = 1 in the formulas before,
518
where Xl =1 - U1 . Hence if we denote k = d(1 - po) + po(1 - ,t)(d - 'Yt) - 'Y1qO, then
if I(k) > 1, then Xl = 0 so U1 = 1, that is, inspect everything; if I(k) < 0, then Xl = 1"
U1 = 0, so the optimal inspection policy is to inspect nothing; if 0 ~ I(k) ~ 1, then
3.3. Flow lines with dependent process capability and full interstage inspection
In this type of flow lines we assume that there is hundred percent product inspection
between the successive work stations. The semi finished product is categorized after work
station j as either acceptable or not. This is characterized by an attribute X, for which
there is an acceptable tolerance limit X E A. After the attribute is observed a value X is
known to us. An item conformance to the quality standard of the subsequent work station,
i + 1, is dependent on the incoming value of x as well as w which is a random variable
1st attribute
x---
accept •
--==----'-
~ reject
*'
lzl--.
process for z
W
2nd atuibute
• !~
L0~-~
data
acceptance policy
519
clearance between the peg should be within specified domain for the product functionality
Let us assume that process capability of the peg radius is x and that of the cylinder is
z. Then the question is one of finding the value of x beyond which the peg is discarded in
order to minimize the cost. We focus on one of the station in the serial production system,
say station i. Further we assume that assume that the quality of the incoming material
is known. Obviously only when both x and z falls into the tolerance limit the product is
then acceptable. Our objective is to provide the quality control decision criteria.
Now consider an infallible test, which is performed on an incoming unit (a peg) which
observation is the indicator function I{X E A}, which takes value one if X E A and
zero otherwise. The options are to process the unit in the hope of meeting Z E B (the
clearance tolerance range between the peg and the hole). In most practical situations
the two attributes X and Z are dependent, hence we assume that X and Z take joint
The cost structure is similar to the previous section. For example, R is the cost of
raw material. Since we are focusing on station i, this R is considered as the input cost to
station i. For simplicity we omit the subscript. Again d is the defective cost, i.e., X ¢ A
Assume that :F represents the information available from observing the specification
X. Define v as the function of the information taking values 0 or I, with 1 meaning that
we process the item. Note that v depends on the information :F, therefore it is a random
variable (decision rule). Thus, the total cost for such a decision can be written as
where we used the assumption that the quality control rule depends on the information Y
in the last equality (for the conditional expectation, see Ross (1985)). To minimize C, 11
m+d-r
P[X E A,Z E BIF) > V +d '
therefore, the optimal quality control policy of this work station is: if the specification of
an item yields X tf. A , discard it; if X E A, then process it only when the conditional
probability P{Z E BIX E A} ~ m:!~l. Hence one can define the acceptance region
m+d-r
S={xIP{ZEBIX=x}~ V+d }.
3.2.1. Illustrative example: Consider the peg-and-hole problem with X being the
radius of the peg and Z being the clearance between the radii of the peg and the hole.
Assume that the joint density of specifications of X and Z follows a bivariate normal
random variable, where 1-'1 and 1-'2 are the mean of the radius of the peg and and mean
of the clearance between the two radii of the peg and the hole, and 0:'1 and 0:'2 are the
variances:
521
then it is known that the conditional distribution function of the specification Z, given
that X = x, is a normal random variable N(1A2 + p~(x - lAd, ar~(1 - p2» with density
function
This result facilitates the quality control decision making. Since the conditional probability
value of (4) can be easily found, given the cost structure and the tolerance A and B, the
decision rule is straight forward. In fact the acceptance region S maybe computed explicitly
in the bivariate normal case. If B is the region that the tolerance is within say 8 of its
mean value, then what is needed is only to check the standard normal table to find the x
where <1>(.) is the cumulative distribution function of the standard normal random variable.
work station is fully inspected (known quality). Nevertheless, for some situations, it may
be cost prohibitive to inspect every item (for example in cases quality cannot be inspected
except by destructive tests). In such flow lines the portion of the incoming material to be
inspected and the acceptance specification limit are both decision variables. More clearly,
the type of flow lines considered here, is similar to the one previously examined, but with
partial inspection between the work stations.
Again we focus on two successive work stations in the flow line. Assuming that the
portion to be inspected between two successive stations is u and the decision regarding
accepting or rejecting an inspected item is II. Assume further that .p( u) is the cost for
522
inspecting a fraction u of the incoming flow, and other cost assumptions are the same as
in the previous section. Then based on the analysis of last two sections, for acceptance
policy II, the total cost C( u) of inspecting fraction u of the incoming flow can be expressed
as
+V(l- u)(l- P[X E A,Z E B])] + d(l- u)(l- P[x E A,z E BIF]) + .p(u)
Applying the same approach as in Section 3.2, the cost function can be simplified to
rules . Hence we will only consider the second part. Given the tolerance A, B, and the
min ku + .p(u)
s.t.
523
Let us again denote by 1(.) the inverse function of tjJ( .). Thus the optimal policy is as
follows:
if 0 < I( -k) < 1, it is optimal to inspect 100I( -k)% of the incoming items.
Depending on the above rules and the result from the previous section, one can decide
One interesting phenomenon to observe is that when the inspection cost is linear, then
the optimal inspection policy is again either inspect all of them, or inspect nothing.
4. Concluding Remarks
In this paper we presented strategies for three types of flow lines: flow lines with inde-
pendent process capability; flow lines with dependent process capability and full interstage
inspection; and flow lines with interdependencies and partial inspection. The analysis
revealed that the optimum inspection policies assume a threshold form. In the studies,
these thresholds are found to only depend on the cost structure. The results of this work
answer the questions of where to inspect, the portion to be inspected, and where to set
With the advances afforded by today's sensors and controllers this work can be ex-
tended to utilize the information provided by each inspection station to adjust the var-
ious processing parameters of the line stations via feedback and feedforward techniques.
5. References:
Abdel-Malek, L. and Benes, V.E., Nonlinear filtering and stochastic control in the design
of quality assurance systems. Unpublished IE Technical Report, New Jersey Institute of
Technology, Newark, NJ, 1991.
Banks, J. Principles of Quality Control, John Wiley & Sons, NY, 1989.
Benes, V.E. and Karatzas, I., "Estimation and Control for Linear, Partially Observable
and Optimization", 14, No. I, pp. 62-84, 1976.
Bhat, U.N., Ram, L. and Karunaratne, "A Sequential Inspection plan for Markov Depen-
dent Production Processes", lIE Transactions, 22, 1, pp. 56-64, 1990.
Bhat, U.N. and Ram, L., "Attribute Control Charts for Markov Dependent Production
Processes," lIE Transactions, 22,2, pp. 181-188, June 1990.
Bulgak, A.A. and Sanders, J.L. An analytical performance model for assembly systems with
automatic inspection stations and repair loops, Computers and Industrial Engineering, 18,
3, 373-380 (1990).
Kennedy, C.G., Hoffman, E. and Bond, S., Inspection and Gaging, Industrial Press, Inc.,
NY, 1987.
Lindsay, G.F. and Bishop, A.B., "Allocation of Screening Inspection Effort-A Dynamic
Programming Approach", Management Science, 10, 2, pp. 342-352, 1964.
Modarress, B. and Ansari, A., "Two New Dimensions in the Cost of Quality", The Inter-
national Journal of Quality & Reliability Management, 4,4, pp. 9-20, 1987.
Peters, M.H. and Williams, W.W., "Economic Design of Quality Monitoring Efforts for
Multi-State Production Systems", 19, 1, pp. 81-87, 1987.
Taguchi, G., Introduction to Quality Engineering, Tokyo, Asian Productivity Center, 1986.
Vining, G.G. and Myers, R.H ., "Combining Taguchi and Response Surface Philosophies:A
Dual Response Approach", Journal of Quality Technology, 22, 1, pp. 38-49, 1990.
White, L.S ., "The Analysis of a Simple Class of Multi-Stage Inspection Plans", Manage-
ment Science, 12, 9, 685-693, 1966.
White, L.S., "Shortest Route Models for the Allocation of Inspection Effort on a Produc-
tion Line" , Management Science, 15, 5, pp. 249-259, 1969.
VII. Neural Networks and Genetic Algorithms
MUL TIPLE·STEP·AHEAD PREDICTION BY HIERARCHICAL NEURAL
NETWORKS
ABSTRACT:
Two methods for constructing a neural network map of stochastic systems from input-output time
series are presented. Extension of the iterated map to multiple-step predictions outside the training
data set is through use of a novel hierarchical architecture, based on forward time-shifting of the
general NARMAX model which is subsumed by the Werbos' time-lagged recurrent network in each
level of the hierarchy. The proposed methodology only requires a partial knowledge of the system
model orders. A number of numerical examples is given, one of which is on multiple-step-ahead
forecasting of an hourly municipal water consumption time series. The test cases demonstrate that the
proposed hierarchical mapping idea is valid.
1.INTRODUCTION
Identification of dynamical systems from input-output time series data can be accomplished by multi-
layered neural networks using a derivative-based learning rule [e.g. Rumelhart et al. 1986, Werbos
1990]. The majority of existing neural networks research, however, utilizes the black-box approach
to input-output mapping. Many published results show that they are quite successful for non-linear
functional interpolation within a training-sample set; the mapping accuracy, in some reported works,
can be much higher than conventional interpolation functions in sciences and engineering. At the
present time, out-of-sample neural-networks for multiple-step prediction of non-linear time series are
still not accurate, due to lack of generalization capability of the black-box mapping approach.
One way to improve upon the network multiple-step prediction accuracy is to design an appropriate
network structure which captures the time evolution of the stochastic process that generated the time-
series data. This paper presents a novel hierarchical neural network design based on the time-lagged
recurrent architecture proposed by Werbos, which encompasses the non-linear ARMAX stochastic
difference equation, for pelfOlming multiple-step prediction beyond the training set.
Following a blief inu·oduction of background information on the prediction problem and related
concepts, two neural network architectures for one-step-ahead prediction are presented in Section 2.
The novel hierarchical neural network architecture for multiple-step-ahead prediction is introduced in
530
Section 3. Numerical examples of an application of the proposed idea are also presented: two
simulation results and one report on multiple-step-ahead prediction of a real time series are given. The
final section concludes the paper.
Predicting future values of an output time series, {Xt}' from a stochastic dynamical system is a
useful activity that is relevant to many science and engineering disciplines. In practice an optimal
predictor may be derived from a known system model, if available. A model of the system, on the
other hand, may be determined through a data analysis of historical input and output observations.
However, a good prediction model is not necessarily the same as a theoretical input-output model
fitted to data by means of a parameter estimation method. The reason is that the prime concern of
parameter estimation is on how close the estimated parameters are to the true values, whereas in
prediction the real measure of performance is on how small the prediction errors are.
The most widely used forecasting performance measure is the mean square error of multiple-step-
ahead prediction. Using past observations Xt.Xt-I,... ,Xt-n to predict Xt+m ,the optimal (minimum
mean-square error) predictor is the conditional expectation of Xt+m, E[Xt+m1xt.xt-I,. .. Xt-n].
(Extension of the defmition to a multivariate system with input variables is straightforward.) This
theoretical expectation is applicable if we either know the joint distribution for {Xt }, or have a finite
parameter model for {Xt } from which the conditional expectation can be evaluated by a computation-
efficient recursive algorithm.
In the case {Xd is a Gaussian process the conditional expectation, Xt+m = E{Xt+m I xt>Xt_!> ... }, is
lin~arand may be expressed by a linear combination
Xt+m = aOxt+alxt-l+" .+anx t - n , (l)
and the multiple-step-ahead prediction problem is to fmd the values of the constants which minimize
'" 2
Mm = E {Xt+m-Xt+m} . The main advantage of Gaussian assumption is that the least-squares
solution is a linear forecast, comprising a linear combination of past observations. For non-Gaussian
series it is possible that a non-linear forecast might be superior, in the least squares sense, to a linear
one. But this possibility is not a necessity.
The mean square error is also useful for evaluating prediction models in order to search for the best
one from a set of tentative models. By a simple analysis the mean square error can be broken into a
bias contribution and a variance contribution. To reduce bias one has to employ a model with more
parameters; but the prediction variance will increase with the number of estimated parameters. The
best model structure is therefore a tradeoff between flexibility (greater explanatory power) and
parsimony (minimal model orders). This important point is demonstrated by Kashyap and Rao
531
[1976] in their riverflows modeling study; a model with 25 parameters which gives a much better fit
to the data does not forecast as well as a simple autoregressive model with only two parameters.
Conventional Approaches
Linear prediction, albeit being convenient and useful in many applications, cannot explain
nonhomogeneities such as local non-stationary patterns in a time series caused by time-varying
disturbances. For example, transient effects of sporadic rainfall on riverflows and persistent effects of
hot days on air-conditioning demand for electricity cannot be accurately predicted by linear models.
Prediction models that can account for nonhomogeneous patterns have to be more complex; the use of
indicator variables in statistical analysis and non-linear state-dependent or threshold models of time
series has led to significant improvements in forecasting accuracy [Priestley 1988].
For a stochastic dynamical system exhibiting non-linear and non-stationary patterns, a single model
will not be adequate in describing its behavior under various input conditions. Multiple model
approaches [e.g. Stengel 1986, Landau 1978, Athans and Willner 1973] which employ a number of
candidate models developed on theoretical as well as on empirical grounds are very viable. The
multiple-model approach to the system identification problem may be described as follows: Given a
number of possible values of the system parameters, the state, and the noise characteristics, a set of
models can be identified. To each model in the set, a hypothesis is defined in terms of specific system
parameters and the con-esponding initial conditions on the system state. To identify the best model
from the set, the Bayes' rule is used to estimate the likelihood that a specified hypothesis (and the
associated model) is con-ect for the observed data. The model having highest likelihood value is then
selected.
Success of the multiple-model identification approach is dependent not only on the initial choice of
likely models, but also on the criterion chosen for a hypothesis test. The greatest strength of the
multiple-model approach is that it allows alternate models to be developed on theoretical as well as on
empirical grounds; thus valuable physical understanding as well as empirical knowledge of or
experience about the dynamic system can be used to assist model identification. A major difficulty is
that the required probability density functions are not known and have to be estimated; if there are
several model and many parameter choices a large number of parallel models would be required and
will demand a great deal of computation.
Parallel, distributed processing devices like neural networks seem most suitable in the multiple-model
environment. Further the neural network alternative can be applied to non-stationary process
monitoring and change detection as well to model identification [Sastri 1991].
Neural networks for input-output mapping of non-linear dynamical systems, sometimes called
neuro-identifiers, are the multi-layer perceptrons with derivative-based weight adaptation schemes
[Rumelhart et al. 1986, Werbos 1990], the functional link net, the group method of data handling,
and the radial-basis function type of neural networks. Essentially, the multilayer architectures and
activation functions employed by these methods, in particular the sigmoid function, determine the
kind of non-linear approximation of the dynamical systems. The number of processing elements
contribute to the degree of accuracy required in the approximation of the desired output values.
To some extent, a priori information on the model orders is needed for the design of a neuro-
identifier. Similar modeling problems which are typical in system identification [Ljung 1987], e.g.
model misspecification errors, may also result if incorrect lagged input and output observations are
input to the neural network [Billings et al. 1992]. In practice complete information is not available for
most system identification tasks; therefore uncertainties and specification errors will lead to an
inadequate representation. One way to alleviate model misspecification errors is to incorporate
information about alternative models and model validation capability into the network structure to
facilitate model identification experiment on the computer [Sastri 1991]. Such a multifunctional neural
network should be able to select the best model from a pre-determined model set, given that adequate
amount of input-output data is submitted to ensure adequate learning. Existing multi-layer neural
networks do not yet have such capability.
Out-ol-Sample Generalization
Multiple-step prediction outside the training sample of a trained neural net, known as extrapolation in
the literature of dynamical systems, will be called out-oj-sample generalization in this paper. The
present interest of the neural networks research in non-linear time series mapping, however, is mainly
on interpolation; the term generalization in the literature is synonymous with "interpolation along the
best fit surface which generates the map" [Lowe and Webb 1990]. In other words, most current
research works are concerned with in-sample generalization. Categorically, longer than one-step-
ahead predictions are seldom discussed because the traditional purpose of dynamical system
identification has been in iterated maps for producing synthetic data with the characteristics of true
data.
533
Extrapolation perfonnance of most existing neural networks are poor and they tend to become
unstable, when applied to non-linear and non-stationary time series. Non-linear prediction methods,
according to Lowe and Webb [1990], are "not likely to be significantly better than simple linear
methods", unless the data generator is static (i.e. stationary and detenninistic).
Two types of neural network architectures for input-output mapping of a dynamical system are
presented in this section: i) direct mapping, and ii) indirect mapping. Both architectures are
extendable to non-linear, non-stationary stochastic systems as well. Out-of-sample neural network
generalization, based upon these two architectures, will be introduced in Section 3.
In direct mapping, also called direct learning (DLN) in [Sastri 1992], the idea is to directly transmit
predetennined knowledge of process models into a neural network structure and connection weights,
thus bypassing the time consuming weight training and iterative computer experimentation. Through
direct learning, infonnation about the model orders (i.e. model structure) is used to specify the
number of nodes in a single-layer neural network and the model parameter values (or estimates) are
used directly as connection strengths. As a consequence, the network's output is exactly equal to the
conditional expectation, provided that the input-output model is linear in the parameters. Justifications
for the direct learning neural network are given in [Sastri 1992].
There are several useful non-linear models that can be represented by the DLN approach; the
polynomial nonlinear autoregressive-moving average with external inputs (NARMAX), the threshold
autoregressive (TAR), the bilinear and the quadratic Volten'a models [Priestley 1988] are all linear in
the parameters. FIGURE 1 illustrates a bivariate AR threshold DLN with m members in the model
set. The process may switch from one model in the set to another according to the following
description:
yet) = ag)+a\i)y(t-I)+ay)y(t-2)+ ... +a~i)y(t-k)+ e~i) (2)
if {Yt-l ,... ,Yt-k} E R (i) = i-th region in the k-dimensional space Rk, {e~i)} is a white noise process,
and i=I,2, ... ,m. The switching time is assumed random, because at a given time (e.g. the process
sampling instant) it is not known which model in the set is the best description of the process. Given
that on-line data windows are submitted sequentially, the neural net can be used as a process monitor
in the following manner: at each sampling time it computes one-step-ahead prediction errors
(innovations) and perfOlms multiple statistical hypothesis tests (in parallel) on the innovations
sequences [Sastri 1991]. The output node that produces uncorrelated errors (white-noise innovations)
534
with a minimum variance will identify the best model for the most recently submitted input vector.
For a bivariate time series, a two-dimensional moving data window of an appropriate number of
observations must be specified.
Binary output
Lateral
competition
Innovations
computation
Modell
Input Slab
Target vector
Each submodel in FIGURE I is a bivariate AR representation, and the network output from a typical
t
subnetwork is the conditional expectation on the input data up to time t-1. For example, if k=2 the
It is clear that the direct-mapping neural network yields the exact computation of the conditional
expectation, given precise knowledge of the underlying process models and parameters. Extensions
to the general multivariate polynomial NARMAX and other models that are linear in the parameters is
straightforward [Sastri 1992].
In the situation where only a partial system knowledge is available, but plenty of process
measurements is at hand, a "gray box" mapping neural network is a viable alternative to tedious
multivariate time series analysis. Such input-output map provides a universal approximation function,
depending on the non-linear activation function used at each processing element. For example, when
the transformation function is sigmoidal the resulting map yields a non-linear polynomial function of
all inputs to the neural network [Billings et al. 1992].
Under fairly weak conditions on the functions f( .) and g(.) in Eqn.(4) below, a multi-layer neural
network can be constructed to approximate the mapping over a training set,
y(t+ 1) = f[y(t),y(t-l ),oo. ,y(t-n+ I)] + g[u(t),u(t-l),oo .,u(t-m+ 1)] (4)
where m ~ nand {u(t),y(t») is an observed input-output pair of the single-input single-output (SISO)
deterministic system at time t [Narendra and Pathasarathy 1990]. The gray-box mapping may also be
defined by a single function as follows :
y(t+ I )= F[y(t),y(t-l),oo ,y(t-n+ l),u(t),u(t-l),oo,u(t-m+ 1)] (5)
The neural network becomes a universal approximator of the dynamical system similar to a
polynomial multiple regression model fitted, based on the least squares principle, to a given data set.
This type of modeling exercise is normally performed during a preliminary system analysis, when
knowledge about the underlying process is incomplete. The task of weight estimation is delegated to
the neural network training procedure (e.g. the enol' back-propagation). The learning performance
criterion is in minimizing the mean-square elTor based on the one-step-ahead prediction.
Categorically, the resulting indirect map cannot perform adequately as a multiple-step-ahead predictor
beyond the u'aining set.
A neural network map of a NARX process with a linear noise model is proposed in Billings et
al.[1992] and shown in FIGURE 2. The partial knowledge required is the model orders n ,n ,and
u y
n conesponding to the input, the output and the enor terms, respectively. The authors neither
e
explain how the enol' inputs for training the network might be obtained, nor whether the network
might be extended to include non-linear noise terms.
It is easy, on one hand, to extend the Billings et al. architecture to polynomial NARMAX simply by
connecting the enor inputs to the hidden nodes where sigmoidal transformation is performed. On the
other hand, computation of the time-lagged enor inputs will be more involved than that of the direct
learning network [Sasu'i 1992]. An iterative procedure for calculating the innovations and storing
their time-lagged values is deemed necessary for both cases. But, unlike the direct mapping approach,
the indirect map may not produce a stable enor sequence since the indirect estimates of the connection
weights may not meet a stability criterion for parameter convergence [Goodwin and Sin 1984].
536
One-step-ahead
prediction
Werbos et al. [1992] propose a time-lagged recurrent network (TLRN) architecture which is able to
encompass the NARMAX model. By time-lagged recurrence, a PE at time t is allowed to receive the
output from any other PEs at time..!-1. The vector of inputs to the network at time 1, X(t), is made up
of the n-vector output at time t-l, Y ( t -1) , and an exogenous m-dimensional input vector, u(t). The
network structure is based on the multi layer perceptron (MLP) with the total number of inputs equal
to N + n + 1. The general TLRN is described by the following equations:
IS i Sm
Y i (t) = Xi+N(t), 1 S i Sn
where f denotes the sigmoid function, and Xo represents the constant 1.0. The authors suggest that
the weight adaptation may be done by minimizing square error exactly as in the error back-
propagation scheme. The network architecture is depicted in FIGURE 3.
537
n output PEs
Fully connected
/eed10rward with
ime-lagged
edbacks to Ihe
N -m hidden PEs in I slab
It may noted that the parameter N is left to the user to specify, which means that the topology is
dependent on a predetermined numbers of inputs and hidden nodes for a given problem. The N + n +
1 input nodes (including bias) are fully connected to each of the N - m PEs in the hidden slab and also
to each of the n PEs in the output slab. The input slab (or buffer) is composed of m external inputs at
time t and N+n-m time-lagged internal inputs (from the hidden and output layers). The total number
of nodes is therefore 2(N+n)-m+ 1. The following examples are intended to explain how the
parameter N may be determined for a given problem.
Example 2.1
Consider a general single-input single-output NARX model y(t)= F[y(t- l), y(t-2), u(t-I), u(t-2)] for
which a TLRN is to be developed to perform the one-step-ahead prediction to time t+ I, given
observed data up to time t. F is an unknown non-linear function. The partial knowledge about this
input-output model is n = I, m = 2, and that there are five input nodes in addition to the bias and the
lag-2 nodes. It follows that N+n = 4 and N = 3. Therefore, the number of hidden nodes is 1. This
network is shown in FIGURE 4a. Outputs from nodes 3 and 4 are delayed by one time period,
538
The TLRN architecture may be extended to include time-lagged terms other than t-l by simply adding
the following:
I!
k=2 j =i
W(k) ijXj (t-k) , m+l::; i ::;n+N
where ny is the largest lag value for y. Similarly, time-lagged inputs x.(t-k)
1
for, i =1, ... ,m and k =
1,2, ... ,n can be included in the TLRN formulation, Eqn.(6). Since time-lagged error inputs may be
u
interpreted as a special case of external inputs to the dynamical system, i.e. m = n + n , it then
u e
follows that the TLRN network can be made general to subsume NARMAX models [Werbos et al.
1992].
Example 2.2
Suppose that we are dealing with a multivariate NARX system having n = 2 and m = 6. It is desired
to c:nstruc(t~(~L1RN for the one-step-ahead prediction,
There is an important advantage that TLRN can offer over the alternative architecture by Billings et
al.; the feed-forward signals present in any layer in a TLRN essentially comes from all the layers
below. In other words, anyone layer is fully connected to all layers above it, not just to the layer
immediately above as in ordinary MLP networks. Such special connections provide multiple nesting
of the sigmoidal transformation; this is equivalent to having many extra cross-product terms for all
signals within the neural network. For some highly non-linear problems, these extra connections
should increase the interpolation accuracy.
In the following section only TLRN will be used because of its greater flexibility. However, the
numerical examples of the present study have not implemented the feed-back connections from the
hidden PEs; a commercial software package used in this study does not support the TLRN structure.
539
One-step-ahead
prediction
1.0
Yl t-
A useful modification has been made to the original TLRN in this study; the purpose is to specify the
number of input and hidden units directly in terms of m and n. The idea is as follows: create lag-I
delayed inputs from those at time t and replace the inputs to nodes #(m+ I) to #(N+n) in FIGURE 3
by these signals. As the consequence the toal number of input nodes would be 2m + I. Equating the
original number of inputs, N + n, to 2m and solve for N, it follows that N =2m - n. Now it is easy
to determine the number of hidden PEs, which is equal to (2m - n) - m =m - n, and the total number
of nodes in the modified TLRN becomes 3m + 1.
The modified TLRN for one-step-ahead prediction of this NARMA time series would have m = 3, n
= I, two hidden PEs and the total numer of nodes is 10. The 3 lag-I delayed input nodes would
correspond to [y(t-I), y(t-2), e(t-I)], and the redundant y(t-I) input node may be deleted to further
simplify the network.
Recall that the input-output map underlying the direct learning network (DLN) can only produce the
one-step-ahead prediction of the output time series. To develop a DLN for a least-squares multiple-
step-ahead prediction the network architecture must be built such that the map directly computes the
multiple-step conditional expectation for a given input vector.
The two-step-ahead and three-step-ahead minimum mean-square predictors for the process in Eqn.
(7) can be shown to be
y(t+2) =(1l+a2S2) + (al + a21l)y(t+ I) + a3y(t+ I)y(t)
=f26(t+ I), y(t)] (9)
y(t+3) = (ll+a2s2+ala3cr2-a2a3m3) + (al + a21l)y(t+2) +al a3 cr2 y(t+I)+
a3 y(t+ 1)y(t+2) + aj(1l 2+cr2)y(t)
(10)
=f36(t+2), 9(t+ I),y(t)]
Comparing (9) to (10), it is evident that the DLN for computing an arbitrary k-step-ahead prediction
of an NARMA process has a simple time-lagged relationship with the (k-I)-step-ahead prediction.
This forward chaining of predictions, which is due to the nature of stochastic difference equations,
can be utilized for designing the hierarchical structure illustrated in FIGURE 5 for performing
recursive calculation of multiple-step-ahead predictions. Here Slabl and SIab2 of each level in the
541
hierarchy provide the necessary inputs to the hidden and the output PEs in Slab3. The connections for
the indirect map are the same as discussed previously.
o
bias Slab 1 Slab 2
00 Slab 3
Yt-l
1\
Yt+l
00
bias
6 60
1\
Yt+2
The bias is connected
to all hidden
0
and output PEs. bias
00
Yt+3
The hierarchical
.
architecture can be extended to a general NARMAX (n y, nu,ne). The idea is
applicable to both direct and indirect maps. However, it is much easier to do multiple-step prediction
using indirect mapping of a complex NARMAX model; one only needs to know the model orders n ,
y
nu, and ne for a stochastic dynamical system of interest.
The hierarchical neural network architecture for the general NARMAX model is a straightforward
extension of the NARMA network in FIGURE 5. The number of levels in the hierarchy would
correspond to the maximum prediction leadtime (number of steps or time periods) to be made from a
542
given time t The inputs to the frrst slab of any level would be the measurements from a process
monitoring system plus time-lagged predictions and other data from the level direcly below. The local
memory of a processing element can be used to store the most current lagged data and innovations
computed on-line.
Numerical Example 3.1
The NARMA model in (7) was used to generate a synthetic time series of 400 data points(Data Set A)
using the following parameter values: a l = 0.4, a2 = 0.5 and a3 = -.0025. The white-noise sequence
had a non-zero mean =2.0 and a variance of 0.1. The conditional expectations were computed using
(8) - (10). These values would be the same as the forecasts from the hierarchical direct-mapping
neural network with the same structure as shown in FIGURE 5; however, the connection weights
would be set equal to the parameter estimates and product inputs would be used.
The optimal least-squares predictions for the leadtimes equal to one and three are shown in FIGURE
6.1 and FIGURE 6.2. They indicate that the forecast rapidly deteriorates beyond the one-step-ahead
prediction. This is as expected since the time series memory span is essentially one time period.
The frrst half of the data set (200 data points) was used to make the training samples and the
hierarchical neural network was trained by the back-propagation method. The hierarchical TLRN's
performance for in-sample predictions of one and three steps ahead at every time t is given, for
comparison purpose, in FIGUREs 6.3 an 6.4. The same short-memory forecasting behavior is
exhibited but the rate of decay toward the mean leavel of the process is much faster than the
theoretical one. Out-of-sample prediction performance for the leadtime of three steps ahead (not
. shown) is not much different from the process mean.
Numerical Example 3.2
A NARMAX model in Chen and Billings [1989], shown in (11), was used to generate an output
and an input time series (Data Set B) of 700 observations. The underlying non-linear polynomial
model is linear in the parameters:
yet) = 0.7578y(t-l) +O.389u(t-l) -0.03723y2(t-l) +O.3794y(t-l)u(t-l)+O.0684u 2(t-l)
+0. 1216y(t-l)u2(t-l) +0.0633u 3(t-1) -0.73ge(t-1) -0.368u(t-1)e(t-1) +e(t) (11)
where (u(t)} is a uniformly distributed random sequence, the distribution function being a Uniform (-
0.8,1.2). The white-noise error sequence, (e(t)}, is a N(O,O.OI) Gaussian process. The NARMAX
model is stable, but it has a very low order and small noise variance. A statistical test indicates that the
time series (y(t)} is a white noise series. Such characteristics are typical of most published results in
the nonlinear system identification literature.
The hierarchical TLRN for this map is almost identical to FIGURE 5, with the exception that the
inputs to the network are based on the following mapping functions:
y(t+1) = f1[y(t),u(t) ,e(t)]; y(t+2) = f2@(t+1),u(t+1)], and y(t+3) = f3@(t+2),u(t+3)] (12)
543
There are 2 hidden PEs and one output PE for each of the three hierarchical levels. The prediction
capability of the hierarchical neural network is very well demonstrated in FIGURE 7.1 and FIGURE
7.2. The out-of-sample generalization to three steps ahead is extremely accurate, even though the
ouput series is not statistically different from a white noise sequence. This excellent predictive
capability is due to the persistently exciting inputs u(t), u(t+ i), and u(t+3) employed by the neural
network. This situation is unlike the NARMA case in Example 3.2 where the only inputs are
stochastic and /lot measurable.
An hourly water consumption record from the city of Arlington, Texas, provides the real time series
used in this example. The water use record is for the month of April, 1989, and consists of 720
observations (Data Set C) . The time series is characterized by irregular periods of hot and cold days
mixed with sporadic rainfalls. A preliminary analysis of the water use data over the whole year of
i989 has shown that the underlying process is seasonal, stochastic and non-stationary. The non-
linear and non-stationary effects of rainfalls, cold weather fronts and summer heating are difficult to
formulate mathematically. In this situation one cannot use the direct learning approach.
The hourly obselvations exhibit a daily cycle of 24 hours, one annual seasonal cycle with a peak
during the Summer. Nonhomogeneous behaviors like time-varying noise variance, randomly
fluctuating amplitudes, and outlier observations are seen throughout the year. The sample
autocorrelation functions of the data show largest correlations between the hourly consumptions 24
hours apart and i hour apcu1. Limiting the a priori information about the stochastic process to just the
historical water use record, the objective of this experiment is to test the validity of the hierarchical
neural network concept.
The correlation analysis suggests that the following NARMA mapping function might be appropriate
yet) = F[y(t-i), y(t-23), y(t-24), y(t-25), e(t), e(t-I), e(t-23), e(t-24), e(t-25)]. (13)
The time lags of one and twenty-four periods correspond to the two largest sample autocorrelations;
the interaction between the memories of one and twenty-four hours apart implies that the observations
y(t-23) and y(t-25) should be included. The innovations inputs are needed to account for residuals
autocorrelation, which would be present if only time-lagged data values are used.
A hiercu'chical TLRN for this NARMA map for forecasting one to twelve-hours ahead, consisting of
twelve hierarchical levels, has been constructed from (13) above. The 2m inputs to the first level for
one-step-ahead prediction of y(t+ 1) are [yet), yet-I), y(t-22), y(t-23), y(t-24),y(t-25), e(t), e(t-l), e(t-
22), e(t-23), e(t-24), e(t-25)], after all redundant nodes have been eliminated. The modified TLRN
architecture has m = 6 and n =i; thus there are m - 1 = 5 hidden PEs for each level of the hierarchy.
The inputs to the second level are simply the one-step forward time-shifting of the first level:
[y (t + 1),y(t),y(t-2i ),y(t-22),y(t-23),y(t-24),e(t),e(t-2l),e(t-22),e(t-23),e(t-24) 1
This simple scheme may be repeated for all levels up to the last level of the hierarchy.
544
Randomly generated error inputs and lagged values, having the same statistical characteristics as the
innovations associated with the same month of the previous year, have been used as pseudo error
inputs for training the network and for the out-of-sample generalization test (over the last two weeks
of data). The training samples are from the fIrst two weeks of the data and the test data set is based on
the last two weeks of the time series.The in-sample and out-of-sample predictions for the leadtime of
12 hours ahead are depicted in FIGUREs 8.1 and 8.2, respectively.
The multiple-step forecast performance beyond the training set is quite good; the hierarchical neural
network is able to predict new cyclical patterns, with respect to the times of the peaks and the
troughs, in the last two weeks of the time series. It does not completely map the random fluctuations
in the training data, a desirable characteristic of a good fIlter; these extreme values are either outliers
or transient responses to extreme weather conditions.
The neural network does not very well predict the last two 24-hour cycles of the data. A closer
examination reveals that the hourly water use measurements during the last two days of the month,
which correspond to a weekend, behave uniquely different from the weekday patterns. The last
weekend water use pattern happened to increase signifIcantly from the level of water consumption
during the fIrst two weeks used for the network training. Obviously, the neural network cannot
respond to this "untrained" behavior.
CONCLUSIONS
Two different neural network modeling approaches for system identification from input-output time
series are presented. In the rust situation a complete knowledge of the underlying model orders and
parameter values are required; the resulting neural network map is called direct mapping, or direct
learning, neural net. The second case uses only a partial knowledge of the input-output system in
terms of the time-lagged orders of the variables involved. Both neural network maps aim at one-step-
ahead prediction of the output variable of a discrete-time dynamical system.
Out-of-sample generalization to multiple-step forecasting beyond the training data can be achieved by
a simple forward time-shifting operation on the neural-net map of an NARMAX process. The time-
lagged recurrent network (TLRN) ofWerbos is used as the building block for contructing a multi-
level hierarchical neural-net architecture. The hierarchical architecture has been shown to be valid,
through empirical analyses, given that the inherent time-lagged relationship in the given time series is
much greater than one period.
The necessary time-lagged relationship can be discovered by means of a simple correlation analysis of
a given time series. The generalization peIformance can be drastically increased if future values of a
persistently exciting input variable are available.
ACKNOWLEDGEMENTS
545
This material is based upon work supported by the National Science Foundation under Grant
No. ECS-9014109. The government has certain rights in this material.
REFERENCES
Athans, M., and D. Willner,"A practical scheme for adaptive aircraft flight control systems," Symp.
on Parameter Estimation Techniques and Applications in Aircraft Flight Testing, NASA FIt. Res.
Ctr., Edwards AFB, April 1973.
Billings, S.A., H.B. Jamaluddin, and S. Chen, "Properties of neural networks with applications to
modelling non-linear dynamical systems," Int. 1. Control, 45, 1, 193-224, 1992.
Chen, S. and S. A. Billing, "Representations of non-linear systems: the NARMAX model," Int. 1.
Control, Vol. 49, No.3, 1013-1032, 1989.
Goodwin, G.c., and K.S. Sin, Adaptive Filtering Prediction and Control, Prentice-Hall,
Englewood Cliffs, New Jersey, 1984.
Kashyap, R.L., and A.R. Rao, Dynamic Stochastic Models from Empirical Data, Academic Press,
N.Y. 1976.
Landau, 1.0., "Elimination of the real positivity condition in the design of parallel MRAS," IEEE
Trans. Auto. Control 23, 1015-1020, 1978.
Ljung, L. System Identification Theory for the User. Prentice-Hall, Englewood-Cliff, NJ. 1987.
Lowe, D. and A.R. webb, "Time series prediction by adaptive networks: a dynamical systems
perspective," lEE Proceedings-F Vol. 138, No.1, 17-24,1991.
Narendra, K.S., and K. Parthasarathy,"Identification and control of dynamical systems using neural
networks," IEEE Transactions on Neural Networks, Vol. 1, No.1, pp. 4-26, 1990.
Priestley, M.B., Non-linear and Non-stationary Time Series Analysis, Academic Press, N.Y., 1988.
Sastri, T. and CO. Malave, "Direct learning and knowledge updating in neural nets", Proceedings of
the Artificial Neural Networks in Engineering, November 15-18, 1992, St. Louis, MO.)
Stengel, R. F., Stochastic Optimal Control Theory and Application, Wiley, N.Y. 1986.
Werbos, PJ., "Neurocontrol and related techniques," in Maren, AJ., CT. Harston, and R.M. Pap
(Eds.), Handbook of Neural Computing Application. Academic Press, New York [1990].
Werbos, PJ., T. McAvoy, and T. Suo "Neural networks, system identification and control in the
chemical process industries," in White, D., and D. Sofge (Eds.), Handbook of Intelligent Control.
Van Nostrand, New York 1992.
546
208
200
192
184
178
~
188
~
180
152
144
136
128
120
0 100 150 200
nIlE
a
.188
180
152
""
..
N
"
"" ,, '' .. "" ""
144 ~ " N
" ""
"" "
~ ""
~
I ""
!,
138 ~"
128
547
200
192
184
176
168
~
c
CI
160
152
..., ,.
,
144 ~
136
128
120
0 50 100 150 200
TIME
....
""
""
't II
,
" I,
....
I, "
'1' 1
""" '''
,, ""
1 "
f ::
...., ......
,
, ,
,'
"" .,
""
~"
2.00
·.·
1.80
1
I
1.60
.,i "
I
1.40
1.20
~ 1.00
= 0.80
a
..
.,
II
0.60 I I
1•
0.40
0.20
-0.00
-0.20
-0.40
0 50 100 150 200
ma:
2.00
1.80
1.60
1.40
1.20
1.00
= 0.80
~
a
0.60
0.40
0.20
-0.00
-0.20
-0.40
0 50 100 150 200
TIME
549
2.10
.." ,..
1.90 ,,.
1.70 ~:
.:
.: 1.30
I-
Q
1.10
0.90
0 .70 I
0. 10
0 50 100 150 200 250 300 350
TIME
2 . 10
,l ,
1.90 " ,:
, ,"
I
1.70
1.50
~ 1.30
1.10
0.90
0.70 'II'
:.1
0 .50 ':" ~!
I
,,~
I
I I I
I I
I I
0 .30 f
I
I
!
0.10
340 390 440 490 540 590 640
TIME
Integrating Neural Nets, Simulation, and
Genetic Algorithms for Real-time Scheduling
by
Albert Jones
National Institute of Standards and Technology
Gaithersburg, Md 20899
USA
Luis Rabelo
Ohio University
Athens, OH 45701
USA
1. Introduction
In this paper we briefly review the generic architecture for intelligent controllers proposed in DAVIS et
al. (1992). We then describe an approach for carrying out the scheduling functions contained within
that architecture. This approach integrates neural networks, real-time Monte Carlo simulation, and
genetic algorithms.
The generic architecture for the intelligent controller proposed in DAVIS (1992) is shown in Figure 1.
It performs four major functions which expand and generalize those developed in JONES/SALEH
(1990): assessment, optimization, execution, and monitoring. These functions are described in the
following sections.
2.1 Assessment
The Assessment Function (AF) formulates all "planning and scheduling" problems based on the
current state of its subordinates and input from its supervisor. Three sets of inputs are used in this
problem formulation task. The first is a list of assigned tasks with due dates and other constraints
which are specified by the controller's supervisor. The second is the feedback information from the
Monitoring Function describing 1) the current state of the system, and 2) the projected system
551
~
Feedback Task. and time.
fo superuisor from Superulsor
.
.•
RSSESSMENT
FUNCTION Problem
-....
~ formulations
~
c: Performance ,
-
a;,
~
~
c:
Q
I..l
.... StBfisitics
PPTlMllRTIO'"
FUNCTION Selected
Control Law
•
Constraint Evaluation
....
,
MONITORING ... EHECUTION
FUNCTION Current Control Schedule FUNCTION
t ,
INTERFRCE
MOOU ES
SUBORO INRTE
PROCESS(ES)
response under the current control law. The third comes from the Optimization Function which
summarizes its current success in finding an optimal solution to the problems it has been given to
solve. In formulating these optimization problems, the AF ftrst speciftes the constraints. There are
two types: hard and soft.
552
Hard constraints are those that cannot be violated either by the optimization and execution functions in
the same controller or by subordinate controllers. These constraints are typically of three types:
external, internal, and those related to the physical dynamics of subordinates. We give several
examples of each. Externally imposed hard constraints come from either the supervisor or the process
planner. The former are usually in the form of due dates, priorities, maintenance schedules, etc. The
latter results in a set of candidate process plans that can be used to manufacture each product. If
multiple process plans exist, the AF will screen them to eliminate infeasible plans based on the current
state of the subordinates. For example, any plan requiring a "downed"-machine must be eliminated.
The remaining alternatives are passed as hard constraints to the Optimization Function which will
determine the actual run-time production plan. This run-time plan together with collections of
scheduling alternatives, which are also based on the state of the system, are passed to the Optimization
Function a~ hard constraints to be used in determining the optimal schedule. The third type of hard
constraint is derived from the physical layout of subordinates. For example, the AF must account for
the times that will be required to transfer a job from one process to another. It must also consider the
number of jobs that can reside at each subordinate location. There are also certain physical
assignments of jobs that could result in deadlock which must be avoided.
Soft constraints provide an additional mechanism for the AF to control the evolution and behavior of
its subordinates. In most cases, these can be violated without violating the hard constraints. We give
several examples. While the due date for a given job may be a hard constraint, at each layer there
may be start and finish times for some of the tasks that can be viewed as soft constraints. Even though
a subordinate may be capable of storing several jobs, the AF may decide to impose a Kanban strategy
which significantly reduces the number of jobs that will ever be queued before a given process. The
AF may also impose soft constraints on utilization rates for subordinates. Unlike hard constraints, soft
constraints are not e~ential in the basic definition of the projected response of the subordinates.
)
Nevertheless, their imposition will further constrain the evolution of subordinates in the desired
manner.
The Assessment Function also specifies the performance criteria and all job priorities for each
optimization problem to be considered by the Optimization Function. These criteria can be related to
the "performance" of individual subordinates or jobs, or the entire collection of subordinates or jobs.
Examples for subordinate performance include utilization, and throughput. Examples for job
performance include lateness, tardiness, and makespan.
2.2 Optimization
The Optimization Function (OF) has two major responsibilities. First, it solve the real-time
optimization problems posed by the AF. Second, it restores feasibility (optimality if possible)
whenever 1) the Execution Function cannot restore feasibility using the current hard constraints or 2)
the AF has determined that the current projected system response is unacceptable based on either the
553
For each assigned job, the output from the Optimization Function consists of a process plan, estimated
processing durations (pessimistic, optimistic, and average) and a scheduling rule. These are all used
by the Execution Function to detennine the actual start and finish times for the tasks in that plan.
The Execution Function (EF) addresses the following two tasks: it compute limit times for each
subordinate, and it restores feasibility (see below) when violations of those limit times arise from the
actions of the subordinate subsystems.
The Monitoring Function also has two major responsibilities: updating the system state, and
evaluating proposed system responses against the hard and soft constraints set by the Assessment
Function. The system state summarizes the operational status, buffer status, and job status of
subordinates. The exact definition changes as one moves from one layer to another. The Monitoring
Function generates this state infonnation by aggregating the detailed feedback data from the various
subordinates. The Monitoring Function does not communicate directly with subordinates. It
communicates through an Interface module. This module perfonns all of the functions necessary to
make meaningful communication possible between a supervisor and its subordinates. This updated
system state is then broadcasted to all of the other functions, because it is the starting point for all of
the real-time analysis perfonned by the generic controller.
The Monitoring Function also evaluates each decision against the current set of constraints. Recall that
these constraints are of two types: hard (which cannot be violated) and soft (which are desirable
goals). Hard constraints are imposed by the supervisor on Assessment, by Assessment on
Optimization, by Optimization on Execution, and by the Execution Functions on the controller's
mbordinates. A series of refinements takes place in the sense that the hard constraints imposed by the
l\ssessment Function on the Optimization Function are a subset of those imposed on the Assessment
function by the supervisor. The same is true for the Optimization and Execution functions. Each time
)ne of these functions makes a decision, the monitoring function will detennine if any of these hard
:onstraints have been violated. Each time a violation occurs, the Monitoring Function will identify the
:onstraint(s) and initiate an error recovery strategy (see below).
:;'or the soft constraints, the situation is a little different. These are tracked continually and transmitted
o the assessment function where several things can happen. Consider a soft constraint on System
Jtilization (SU > 90%). The Assessment Function can choose to ignore the violation when it is small
554
(SU = 85%). On the other hand, the Assessment Function could simply request the Optimization
Function to generate a new schedule or pick a new plan, whenever this violation is outside some
threshold. We allow the threshold to a two sided limit (perhaps 70% < SU < 95%). This allows the
Assessment Function to react when the utilization is too small (i.e. machines sitting idle) or too large
(i.e. bottlenecks may be occurring).
As noted above, the Monitoring Function recognizes when a constraint has been violated. DA VIS et
al.(1992) described an error recovery process which is shown in Figure 2. In Figure 2(a), the hard
constraints specified by the Assessment Function are depicted by the outermost solid lines. The limit
times imposed by the Execution Function form a tolerance band and are depicted as the shaded region
in the figures. Based on these limit times, the subordinates will choose their own trajectories. As
subordinate systems evolve in time, deviations from their computed trajectories are bound to occur.
Any deviations leading to a trajectory which 1) stays within the tolerance band and 2) leads to the
same final state is acceptable. Any deviation which yields a state which falls outside the tolerance
band triggers the error recovery mechanism discussed below.
Figure 2(b) indicates that a disturbance has occurred at one or more of the subordinates leading to a
state outside the tolerance band. Assume that it is only one subordinate. This means that this
subordinate proposes to follow a new trajectory (schedule) which will cause one or more of the
original limit times to be violated. This triggers the Execution Function to generate new limit times.
The objective is to restores feasibility with respect to all hard constraints, and get back to the original
trajectory as quickly as possible. Restoration would be achieved by updating some limit times or by a
minor resequencing of tasks. The idea is to first try to restore feasibility by maintaining the original
hard constraints. If this can be done, then the Execution function would generate a new set of limit
times using this new plan and/or scheduling rule. The resulting solution may have the same limit times
and a match-up form, as depicted in Figure 2(b), or another set of feasible limit times and optimal
trajectory such as the one shown in Figure 2(c). To the best of our knowledge, such an approach has
not been reported in the literature.
Whenever the Optimization function cannot restore feasibility and maintain the original set of hard
constraints the Monitoring function will inform the Assessment function. The Assessment can impose
a new set of hard constraints or change the weights of the performance criteria. This may lead to a
new feasible solution or it may not. Success would again be depicted by pictures similar to those
shown in 2(b) and (c). Failure is shown in Figure 2(d). In this case, the Assessment function must
negotiate with the control module's supervisor to change one or more of the externally imposed hard
constraints. Once this is done, the entire process would begin again, until a solution feasible with
respect to these new constraints was found.
555
""""""
lal DuIr<4Sys_T~wlJAT _ _ /.JmJJl
1<) UpdtlldSys_~_.N_OptitrtDJ
~tsb<_
----.........~~ ---
-
" '....._ ... Iiool
It is important to note that each function is limited in its response to a disruption. That is, the
Execution Function first reacts by using the current control law (i.e., the schedule) to satisfy all of its
hard constraints (i.e., limit-times.) If it can, the error recovery procedure stops. If it cannot, the
Optimization Function then attempts to modify the control law (i.e. change the scheduling rule or
production plan) to restore feasibility. If it can, the procedure stops. If it cannot, the Assessment
Function will specify a new formulation by 1) adding new candidate plans, or 2) adding new
scheduling rules, or 3) negotiating with the supervisor to change constraints. If this cannot be done,
then the problem is passed up to the supervisor.
3. Implementation Strategy
Real-time scheduling and rescheduling in the event of errors are critical functions within the
aforementioned architecture. To implement these functions, we propose a three step refinement
process. The first step is to generate a set of candidate scheduling rules from a much larger list of
scheduling rules. Our approach is based on neural nets and is discussed in section 3.1. Step 2 is to
rank these rules using a detailed real-time simulation based on the current "system state" and desired
performance measures. This approach is discussed in section 3.2. The last step is to use that ranking
to determine the "best schedule". Our approach is based on genetic algorithms and is discussed in
section 3.3.
The first step in this process is to select a small list of candidate scheduling rules from a larger list of
such rules (see Figure 3). For example, we might want to find the best five dispatching rules from the
list of all known dispatching rules. These five could be chosen so that each one maximizes (or
minimizes) at least one of the performance measures, with no regard to the others. In addition, we
would, whenever a problem occurs, like to use to select those rules most likely to result in a quick
recovery. To carry out this part of the analysis, we propose to use a neural network approach.
Neural networks have shown good promises for solving manufacturing scheduling problems
(LO/BA VARIAN 1991). Their applications have particularly been dedicated to NP-complete
problems, and in specific to the Traveling Salesman and Job Shop Scheduling problems. However,
the direct application of neural networks for scheduling problems have not produced consistently
optimal/real-time solutions for realistic problems due to the limitations in hardware and the
development of algorithms. These neural network implementations have emphasized the utilization of
neural networks based on relaxation models (i.e. pre-assembied systems which relaxes from input to
output along a predefined energy contour). The neural networks are defined by energy functions in
these approaches. The lowest energy state of the network corresponds to the
557
CANDIDATE RULES
SYSTEM STATE
NEURAL SYSTEM
SCHEDULING POLICY #1
SCHEDULING POLICY #2
SCHEDULING POLICY #3
•• MANAGEMENT
• OBJECTIVES
SCHEDULING POLICY #n
"best schedule". LO/ BA VARIAN (1991), formulated the objective function which minimizes the
time required to complete all the jobs as
Ck is a scaling factor;
Vijl is the output of neuron ijl
and Tij is the time required for by jth machine to complete the ith job.
FOO(fAKEFUJI (1988) and ZHOU et al. (1990) have applied stochastic Hopfield networks to solve
4-job 3-machine and to-job to-machine job shop scheduling problems respectively. These
implementations frequently produce constraint violating solutions and the computational cost limits
their consideration as viable solutions. LOIBA VARIAN (1991) extended the two-dimensional
Hopfield network to 3 dimensions to represent jobs, machines, and time. Another implementation
based on stochastic neural networks applied to scheduling can be found in ARIZONO et al. (1992).
However, due to a large number of variables involved in generating a feasible schedule, it has been
difficult for these approaches to formulate realistic and complex scheduling problems and scheduling
objectives. Because of the distributed, hierarchical nature of the controllers we intend to use, the size
and complexity of our scheduling problems are greatly reduced. In addition, we will emphasize on the
utilization of the "learning" neural network models which are more developed than the relaxation
models (RUMELHART et al. 1988).
The optimal neural network paradigm for "candidate rule selection" should be assessed on the
following factors:
1. Trainability: The impact of the initialization and learning parameters in the probability of the
network learning training sets for candidate rule selection.
2. Generalization: The ability of the network to model the behavior of the specific FMS
relationship. This is tested utilizing unseen cases.
3. Computational characteristics: Storage needed for programs and data files, training time,
and execution time.
4. Re-Trainability: Ability to be retrained when the training set has been incremented or
modified.
Several paradigms are possible choices for neural network structures to generate these Candidate
Rules. In this research, we will focus our initial efforts on Backpropagation and Fuzzy ARTMAP.
These paradigms have been selected due to their supervisory learning mode, non-linear and fuzzy
modeling capabilities, and generalization and automation potential.
559
Backpropagation (RUMELHART et al. 1988) is a supervised learning paradigm that learns adequate
internal representations using deterministic units to provide a mapping from input to output. The
backpropagation neural network structure is a hierarchical design consisting of fully interconnected
layers or rows of processing units. Each unit itself comprised of several layers or rows of processing
elements (see Figure 4). In this network, the input might represent the state of the FMS, the process
plans, and the L performance indices. The output might represent the available scheduling policies
from which a quantitative evaluation is going to be obtained.
OUTPUT UNITS
Scheduling policies
Another attractive option is the Fuzzy ARTMAP (CARPENTER et al. 1991) which provides a
supervised learning of recognition categories in response to arbitrary sequences of analog or binary
inputs. It incorporates two Fuzzy ART modules (networks which utilize the fuzzy set theory
conjunction in the learning rules in order to develop stable categories) that are interlinked through a
mapping field Fab (see Figure 5). The inputs to the Fuzzy ARTa Module (also outputs for the entire
neural structure if Fuzzy ARTb is considered the input Module) could be the state of the FMS, the
process plans, and L performance indices. The inputs to the Fuzzy ARTb Module (also outputs for the
560
entire neural structure if Fuzzy ARTa is considered the input Module) might represent the available
scheduling policies.
INTER-ART
ASSOCIATIVE
MEMORY
II
In order to design a system for the "Candidate Rule Selection" process based on neural networks an
appropriate representation of the "state" of the FMS, should be developed. The state contains
aggregate information about all in-process jobs, processes, and the active schedule. This aggregate
state information is derived from from data for each job includes job ID, current location (buffer,
transporter, or process), due date, expected completion time (if it has previously been scheduled),
shop floor release time, current active routing and expected/actual start and finish time at each process
in that routinl!. The state of the FMS orocesses should indicate accordinl! to their tvoe the iobs. batch
561
size, the planned start and delivery time of the jobs, and infonnation about the transporters. The
current schedule and its variables. The process plans infonnation is provided by the processing times
and routings. The L performance indices such as Average Tardiness, Job Flow Time, Job
Productivity, and Process Utilization will be required. All of this infonnation should be translated
into a suitable representation for the neural networks to provide the desired evaluation of the different
scheduling rules available in the system. Previous studies have indicated guidelines for this task
(RABELO/ALPTEKIN 1989 and RABELO 1990).
4. Real-Time Simulation
After these R candidates have been detennined, each of them will be evaluated using an analysis
technique tenned real-time Monte Carlo simulation (DAVIS/JONES 1989). The outputs from these
simulation trials yield the projected schedule of events under each scheduling rule. These schedules are
then used to compute the values of the various perfonnance measures and constraints imposed by the
Assessment Function. Since R rules must be considered, we plan to run R real-time simulations
concurrently to avoid unacceptable timing delays in the analysis. At this time, we plan to follow the
approach described in DAVIS et a!. (1991) and use a network of Personal Computers, with each one
simulating a single scheduling rule. We hope to move on to a parallel processing machine in the near
future. The length of each simulation trial for a given simulation engine is determined by the length of
the planning horizon of the controller.
This fonn of Monte Carlo simulation differs considerably from traditional discrete-event simulation in
two ways. First, each simulation trial is initialized to the current system state as updated in real-time
by the Monitoring Function. This results in the second important distinction - the simulations are
neither terminating nor steady state. They are not terminating because the initial conditions may change
from one trial to the next. Furthennore, they are not steady state because we are specifically interested
in analyzing the transient phenomena associated with the near-tenn system response. The question is,
from a statistical perspective, does this really matter. Early experiments conducted by DAVIS et
a1.(1991) indicate that the answer is a definite maybe. That is, the inclusion or exclusion of new
events corresponding to changes in the initial state can bias the statistical estimates of certain, but not
all, perfonnance measures.
Given the last I ()() simulation trials for each of the R alternatives, a series of statistical calculations are
made for the given perfonnance criteria for each individual trial: the empirical probability density
function associated with each criterion, means, variances, and the correlations between each pair of the
L perfonnance measures. DAVIS et al.(1991) have found cases where the correlation is positive,
zero, and negative. These correlations are useful since they provide the statistical tradeoffs that exist
among the various perfonnance measures.
562
The computed statistics and associated empirical probability density functions are used to select that
rule which provides the best statistical compromise among the perfonnance criteria. In DAVIS et
al.(1991) this compromise analysis has been fonnulated to address the maximum expected value of a
utility function that would be achieved if a given rule was adopted. In the next section, we discuss a
new approach to this compromise analysis, genetic algorithms.
5. Genetic Algorithms
No matter how the utility function described above is constructed, only one rule from the candidate list
can be selected. This causes an undesirable situation whenever there are negatively correlated
perfonnance measures, because no one rule can optimize all objectives simultaneously. Conceptually,
one would like to create a new "rule" which 1) combines the best features of the most attractive rules,
2) eliminates the worst features of those rules, and 3) simultaneously achieves satisfactory levels of
perfonnance for all objectives. Our approach does not deal with the rules themselves, but rather the
actual schedules that result from applying those rules. Consequently, we seek to generate a new
schedule from these candidate schedules. To do this, we propose to use a genetic algorithm approach.
Genetic algorithms are an optimization methodology based on a direct analogy to Darwinian natural
selection and mutations in biological reproduction. Instances of a concept description correspond to
individuals of a species, and induced changes and recombinations of these concepts are tested against
an evaluation function to see which preserve in the next generation. In principle genetic algorithms
encode a parallel search through concept space, with each process attempting coarse-grain hill climbing
(GOLDBERG 1988).
2. An evaluation function that returns a rating for each chromosome given to it (i.e. a measure
of how well the chromosome perfonn as a domain solution)
1. The population is initialized using the specific procedures. This initialization process will
result in a set of chromosomes.
(b) Genetic operators are applied to the parents to produce the offsprings.
Genetic algorithms have been utilized in job shop scheduling implementing stochastic search. DAVIS
(1985) applied genetic algorithms directing stochastic search in job shop scheduling problems.
DAVIS/RITTER (1985) utilized several techniques in order to avoid the "epistatic" problem. Recently
)ther researches have applied directly genetic algorithms to job shop scheduling problems
~ BIEGEL/DA VERN 1990). However, their examples of applications are reduced to uncomplicated
;cheduling problems. In addition, genetic algorithms have been applied to job shop scheduling by
mpporting a simulated annealing scheduler (DA VIS/RITTER 1987).
When a genetic algorithm is run using a representation that encodes solutions to a problem such as
;cheduling and operators that can generate better offsprings, the methodology can produce populations
)f better individuals (e.g., schedules), converging finally on results close to a global optimum.
Knowledge of the the domain can often be exploited to improve the genetic algorithm's performance
hrough the incorporation of new operators or the utilization of integrated reasoning architectures (e.g.
nessy genetic algorithms, edge recombination, ordering crossover). Examples of these approaches
:an be found in WHITLEY et al. (1989), GOLDBERG et al. (1989), and LIEPINS et al. (1987).
564
The compromise analysis process carried out by a genetic algorithm can be thought of as a complex
hierarchical generate and test process. The generator produces building blocks which are combined
into schedules. At various points in the procedure, tests are made that help weed out poor building
blocks and promote the use of good ones. To reduce and support uncertainty management of the
search space, the previous two steps (candidate rules selection and parallel simulation with statistical
analysis) provide partial solutions to the problem of compromise analysis. Reducing uncertainty
makes the search process more effective, with the complexity of the scheduling problem becoming
more manageable in the process (see Figure 6).
.. cr... •
cc •• __ •
I OPERATOR 2
I I II I I
•
•
•
" OPERATOR 1
~ I I I
co:. :n
....
I I I I FINAL
---I.~ I I
SCHEDULE
•
•
•
_--'-, I I I I I
REPRODUCTION
INITIAL
AND
SCHEDULES
EVALUATION
4. Summary
In this paper, we have specified an generic architecture for a controller which provides the building
block for an integrated shop floor control system. This controller contains a generic set of functions
that provides a high degree of intelligence and the ability to respond to disturbances in real-time.
Those functions are Assessment, Optimization, Execution, and Monitoring. They effectively integrate
565
both decision-making and control. The decisions are formulated by the assessment function and
solved by the optimization function. The execution and monitoring functions provide the most of the
control. The paper also discussed a new integrated framework for addressing the real-time analysis a
problems essential to successful implementation of that architecture. It consist of neural networks to
provide candidate solutions, real-time Monte Carlo simulation to carry detailed performance analysis of
each of those candidates, and genetic algorithms to complete the compromise analysis.
s. References
DAVIS W., JONES A. and SALEH A., "A generic architecture for intelligent control systems",
Computer Integrated Manufacturing Systems, Vol. 5, No.2, 105-113, 1992.
JONES A and SALEH A., "A multileveVmultilayer architecture for intelligent shop floor control",
rnternational Journal of Computer Integrated Manufacturing special issue on Intelligent Control, Vol.
3, No.1, 60-70, 1990.
LO Z. and BAVARIAN R, "Scheduling with Neural Networks for Flexible Manufacturing Systems,"
Proceedings of the 1991 IEEE International Conference on Robotics and Automation, Sacramento,
California, 1991, pp. 818-823.
FOO Y.and TAKEFUJI Y., "Stochastic Neural Networks for solving job shop Scheduling",
Proceedings of the IEEE international Conference on Neural Networks, published by IEEE TAB,
1988, pp. 11275-11290.
lHOU D., CHERKAS SKY V., BALDWIN T., and HONG D., "Scaling Neural Network for Job Shop
Scheduling," Proceedings of the International Conference on Neural Networks, 1990, Vol. 3, pp.
~89-894 .
A..RIZONO I., YAMAMOTO A, and OHTA, H., "Scheduling for Minimizing Total Actual Flow Time by
\feural Networks," International Journal of Production Research, 1992, Vol. 30, No.3, pp. 503-
511.
~UMELHART D and the PDP Research Group, Parallel Distributed Processing: Explorations in the
l1icrostructure of Cognition, Vol. 1: Foundations, Cambridge, MA: MIT PresslBradford Books,
1988.
:ARPENTER G., GROSSBERG S., and ROSEN D., "FUZZY ART: Fast stable learning and
:ategorization of analog patterns by an adaptive resonance system" CAS/CNS-TR-91-015, Boston
)niversity, 1991.
~ABELO L. and ALPTEKIN S., "Synergy of neural networks and expert systems for FMS scheduling",
'>roceedings of the Third ORSAITIMS Conference on Flexible Manufacturing Systems: Operations
?esearch Models and Applications, Cambridge, Massachusetts, Elsevier Science Publishers R V.,
161-366, 1989.
~ABELO L., "A hybrid artificial neural network and expert system approach to flexible manufacturing
:ystem scheduling", PhD Thesis, University of Missouri-Rolla, 1990.
)AVIS W. and JONES A., "Issues in real-time simulation for flexible manufacturing systems",
>roceedings of the European Simulation Multiconference, Rome, Italy, June 7-9, 1989.
566
LAW A. and KELTON W. Simulation, Modeling and Analysis, McGraw-Hill, New York, 1982.
DAVIS W., WANG H., and HSIEH C., "Experimental studies in real-time Monte Carlo simulation",
IEEE Transactions on Systems, Man and Cybernetics, Vol. 21, No.4, 802-814,1991.
GOLDBERG D., Genetic Algorithms in Machine Learning, Addison-Wesley, Menlo Park, California,
1988.
DAVIS L., "Job Shop Scheduling with Genetic Algorithms," Proceedings on an International
Conference on Genetic Algorithms and Their Applications, Carnegie-Mellon University, 136-140,
1985.
DAVIS L. and RITfER F., "Applying Adaptive Algorithms to Epistatic Domains," Proceedings of the
Ninth International Joint Conference on Artificial Intelligence, 162-164, 1985.
BIEGEL J. and DAVERN J., "Genetic Algorithms and Job Shop Scheduling", Computers and Industrial
Engineering, Vol. 19, No. I, 81-91,1990.
DA VIS L. and RITTER F., "Schedule Optimization with Probabilistic Search," Proceedings of the
Third Conference on Artificial Intelligence Applications, 231-236, 1987.
WHITLEY D., STARKWEATHER T., and FUQUAY D., "Scheduling Problems and the Traveling
Salesman: the genetic edge recombination operator," Proceedings of the Third International Conference
on Genetic Algorithms, 133-140, 1989.
GOLDBERG D., KORB B., and DEB K., "Messy Genetic Algorithms: Motivation Analysis and
First Results," Complex Systems, Vol. 3,493-530, 1989.
LIEPINS G., PALMER M., and MORROW M., "Greedy Genetics," Proceedings of the Second
Intematinal Conference on Genetic Algorithms, 90-99, 1987.
A Genetic Algorithm for Scheduling with
Resource Consumption
T. Starkweather and D. Whitley
Computer Science Department
Colorado State University
Fort Collins, CO 80523.
B. Cookson
Adolph Coors Company
Golden, CO 80401
Abstract
1 Problem Introduction
The sequence in which the customer orders are filled can greatly affect the efficiency of
plant operations related to production , shipping and warehouse inventory. It affects the
degree to which is it practical to load product directly from the production line to a
568
shipping dock, the mean time at dock per order, and the amount of product that must
be maintained in inventory.
In the current study, we look at the problem of sequencing customer orders at the
Coors brewery in Golden, Colorado. In a given day numerous customer orders must be
filled, but there are a limited number of loading docks. If an order is placed on one of
the loading docks and some of the product the order requires is not produced for many
hours, that loading dock cannot be used to fill other orders. Also, if product is being
produced which is not needed by an order at one of the loading docks, that product must
be moved to inventory, which is limited in capacity. For this problem, we also need to limit
the amount of time that product spends in inventory. At present, the decision regarding
which order should be placed at a vacant loading dock is done manually; decisions are
made based on which order appears to have the "best" chance of getting filled quickly.
No effort is made to consider all of the orders at once and make decisions based on global
considerations. The ability to make decisions about the sequence of customer orders based
on global concerns is the motivation for this research.
Up to 16 production lines create products whose type and amount are known in
advance. There are approximately 500 of these beer types that can be produced, based
on the type of beer and different packages and labels. Each customer order requires
some amount of a subset of these beer types, and many of the orders have overlapping
requirements in terms of product. The product requirements to fill these orders is also
known in advance. In addition, the method of shipping is known in advance. This can
occur either on a truck or a rail car.
There are a finite number of loading docks at the plant for these orders. For a given
24 hour time period, there can be 200 orders which need to be filled, and there are only
approximately 40 loading docks for trucks and 18 loading docks for rail cars. The problem
becomes twofold: what is the best sequence in which to place orders on the loading docks,
and among the orders on the loading docks, what is the best way to allocate product to
these orders.
What is meant by the best sequence or allocation scheme? We have modeled several
optimization criteria which are discussed later in this paper. One criteria which is im-
portant to plant operations is the minimization of average inventory in the plant. This
569
poptIiiOD
popaliioD
1----1-
···-1
'I------l
~--i-
~- 1
iDsert
eva/uale
oeWiDdi~du~
............................~~~~~~~~~~~~ ...........................................
implies trying not to move product twice, and also reflects demands on cold storage. An-
other criteria is minimization of the mean time at dock for the orders. Later in this paper,
a method which appears effective for blending these dual concerns is presented.
Probability
of
selection
on their evaluation so that the individuals are ranked from best to worst. In the experi-
ments described in this paper, this initial population is randomly created. The algorithm,
illustrated in figure 1, then proceeds as follows:
• Two individuals are selected using a random number generator in conjunction with
a function which lends a slight "bias" toward individuals in the population which
are the better performers. This "bias" is also referred to as the selective pressure.
In these experiments a linear bias was used corresponding to the function shown
in figure 2. Appropriate values corresponding to the slope of this function will be
explored later in this paper.
• The two selected individuals are then recombined to form a new individual which
inherits information from each of the two selected individuals. This recombination
is also referred to as crossover.
• This new individual is then evaluated using the problem's objective function and
inserted back into the population. This insertion maintains the population in sorted
order and displaces the poorest performing individual in the population.
• This process continues for a preset number of trials. Each trial consists of the
generation and evaluation of a new individual.
571
To represent the production/shipping optimization a symbolic encoding was used for each
individual in the population. Each individual is a string (chromosome), the individual
parts of which are discrete integers (genes) corresponding to customer orders. Thus an
individual in the population is a permutation of customer orders.
The evaluation function, which is used by the genetic algorithm to rank individuals in
the population, is a simulation of plant operations. This simulation performs operations
in the plant based on the sequence of orders in the chromosome. As a result of the
plant simulation , a value can be returned (the chromosome's evaluation) such as average
inventory in the plant for the given time period, mean time of orders at the docks , or the
number of orders filled in a given time period.
Because the evaluation function must be executed many times during the course of
genetic search, an effort was made to keep the simulation as simple as possible while still
incorporating necessary aspects of plant operations. The decision regarding which orders
to place on a loading dock is made based on the sequence of orders in the chromosome
passed for evaluation; the first order in the sequence is the first to get placed on an empty
dock, and the last order in the sequence will be the last order placed on a dock during
the simulation. Because plant operations are continuous, for a given data-set some of the
orders will always start out partially filled at some docks. The remaining docks are then
filled based on the orders starting at the beginning of the chromosome. When an order
gets filled during the simulation , the order to place on the dock next gets chosen based
on the next element in the sequence. Up front, the simulator analyzes the production
schedule from the production lines and creates a time-sorted list of pallets available for
each beer type produced . During time-steps in a given simulation, the components of
this list are allocated to orders that exist at docks based on the sequence in which these
orders appear on the chromosome being evaluated. Thus, the position of an order in the
chromosome determines both when that order will be placed on a loading dock and the
priority that order has for product once it is placed on a dock.
572
Parent 1: abc d e f g h i
Parent 2: b d a e c g f i h
Cross Pts: (Parent 1 selected)
** **
Offspring: a b d c e g f h i
Population size and selective pressure are the only parameters which need to be tuned with
the steady state genetic algorithm described earlier. In this implementation of a genetic
algorithm, the population is maintained in sorted order; as population size increases the
insertion cost of new individuals goes up. However, smaller populations may not have the
necessary diversity to sustain search. Generally, a "good" value for this parameter must
be arrived at empirically for a given problem.
Figure 4 shows the effects of population size on the performance of the genetic sched-
uler. These results are averaged over 10 experiments. Although at 100,000 recombinations
the population of size 500 yields a superior solution, the population of size 200 is quite
close, and good intermediate results can be achieved sooner. It can also be seen that very
rapid initial results can be achieved with a small population, but the loss of population
574
pop=50 -
940000 pop=100 -_.
pop=200 - --
pop=500 ..... .
Ci 920000 l\
3
iji
900000
.S
8800 00
860000
bias=1.1 -
bias = l.3 --"
940000 bi as :1 . 5 - - -
bias =l.7 -....
bias=1 .9 _.-
920000
C
Sc
w 9 00000
>
c
.~
w
'"ro
~
w
>
ro 880000
860000
Because keeping inventory low and having small dock times for orders are both important
for plant operations, we have investigated methods for combining these factors into a
single evaluation function for the genetic algorithm to optimize.
The scales for mean time at dock and average inventory are very different ; average in-
ventory has values in the range of hundreds of thousands, whereas mean time at dock is in
576
average inventory -
700000
i:'
..,0
c:
.::">
".'"
"
"
> 500000
"
o 10000 20000 30000 40000 50000 60000 70000 80000 90000 100000
Evaluations
mean time - - .
.><
II
0
900
..,
."
"
..,"
.~
c:
""e
600
o 10000 20000 30000 40000 50000 60000 70000 80000 90000 100000
Evaluations
Figure 6: Average Inventory Optimization: The upper graph shows the optimization of
average inventory, and the lower graph shows how this optimization affects mean time at
dock.
577
me~ n ti me -_.
1200
-'"
u \
,
0 \
'"u
900 \
'" ,
\
\
.~u \
,
c \
\
'E"
ID \
" ,,
600
,,
'-,
----
~-
--------------------------------
o 10000 20000 30000 4 0000 50000 60000 70000 8 0000 90000 100000
Evaluations
700000
C
3c
ID
>
.~
ID
'"
">'"
ID
500000
'"
o 10000 20000 30000 4 0000 500 00 60000 70000 80000 90000 100000
Eval ua t i on s
Figure 7: Mean Time at Dock Optimization: The upper graph shows the optimization
of mean time at dock, and the lower graph shows how this optimization affects average
inventory.
578
the range of hundreds of minutes. Simply adding these two evaluation measures together
would be ineffective. Because of this, the mean time at dock measure was normalized
with respect to average inventory. When the initial population of the genetic algorithm
was created, an average of mean time at dock and average inventory was calculated for
all (500) of the individuals in the population. A normalization factor was then calculated
based on these averages and a simple additive function of normalized mean time at dock
and average inventory was returned as the evaluation function.
Figure 8 shows that both average inventory and mean time at dock are minimized.
Neither function is minimized to the extent that they were when optimized separately,
but a blending has occurred where both criteria are taken into account.
The final sequence discovered using this dual evaluation function was analyzed using
a detailed simulation of the plant. This detailed simulation models all relevant plant
operations such as the movement of pallets on the factory floor and the time it takes to
move trucks in and out of the docks. A given simulation using this detailed model takes
several minutes on a high-speed workstation for a single sequence of customer orders,
whereas the actual evaluation function requires less than a tenth of a second. This detailed
model allows us to analyze the effects of a given sequence of orders. Because the data is
derived from actual plant operations, the sequence in which the orders were actually filled
during the given time period can be analyzed with this tool for comparative purposes ..
Using manual decision making at the plant for the data set of 525 orders, the filling
of these orders took 72 hours before they were completed. Using the sequence resulting
from genetic search with the dual evaluation function, all of the orders were completed
in 69 hours, and for the 6 hours before the schedule completed there were only 7 orders
on loading docks. This is roughly a 10% savings in the time needed to fill orders over a
three day period.
mance
This parallel implementation of a genetic algorithm is also described in [6][4J. It uses
multiple genetic algorithms in a distributed fashion. Each genetic algorithm functions
579
700000
>,
H
S
C
ID
>
.~
ID
'"'"
H
ID
~ 50000 0
o 10000 20000 30000 40000 50000 60000 70000 80000 90000 100000
Evaluations
mean time - _.
1200
I
,,
"ou
'0 900
\
I
\
'" ,
I
V'
I'
'-
600
300 ~ ____ ~ ____ ~ ______L -____ ~ ____ ~ ____ ~ ______ ~ ____ ~ ____ ~ ____ ~
10000 20000 3000 0 40000 50000 60000 70000 80000 90000 1000 00
Evaluations
Figure 8: Dual Evaluation Function: The upper graph shows the effects of the dual
evaluation function on average inventory, and the lower graph shows the effects of the
dual evaluation fun ction on the mean time at dock measure of performance.
580
autonomously, but is also provided with 2 additional parameters which determine how
the subpopulations exchange information. These are the number of trials between in-
formation exchange or swapping (the epoch), and the number of individuals exchanged
(nswap). Information exchange occurs in the following manner: when the first time ex-
change occurs, processor-l sends some number (a parameter) of the best individuals from
the subpopulation to processor-2, processor-2 sends to processor-3, etc. At the next epoch,
processor-l sends some number of the best individuals to processor-3, processor-2 sends
to processor-4, etc. Thus, in log2(P) number of exchange intervals, where P is the number
of processors, a "good" solution can migrate to all of the subpopulations. Experiments
indicate that swapping too often or not often enough degrades performance. We have
also found that swapping a small number of strings appears to give better results than
swapping a single string or a large number of strings.
For these experiments, the same data for a 24 hour time period was used as the first
set of experiments in this paper. The overall population size was fixed at size 1000, so
that when 10 subpopulations are used, a single subpopulation has 100 individuals. Fur-
thermore, the total number of recombinations was fixed . The experimental parameters
for these experiment for 1, 2, 5, 10, and 50 subpopulations are shown in table 1 "Subpop
Count" refers to the number of subpopulations used, while "Subpop Size" refers to the
number of strings in one subpopulation. "Trials" refers to the number of evaluations that
occur in each subpopulation (not counting the evaluation of the initial subpopulation).
Note that when Subpop Size or Trials are multiplied by the Subpop Count that the total
population size and number of evaluations are the same across all experiments. "Swap
Interval" indicates how many recombinations (or evaluations) occur before swapping oc-
curs, and "Number Swapped" indicates how many strings are passed to the appropriate
neighbor.
Figure 9 shows the effects of running this parallel implementation on the produc-
tion/shipping scheduler, averaged over 5 experiments. Each experiment with different
numbers of subpopulations achieves very similar optimization, although subpopulations
of 2,5, and 10 actually outperform the single population. This suggests that operation of
the genetic scheduler can obtain 1, maybe 2 orders of magnitude in speedup using parallel
hardware that is currently available.
581
860000 r---------,-----~--~----------r_--------,_--------_,
1pop -
2pop -_.
5pop - --
10pop .....
50pop _ . -
850000
7 Future Work
As mentioned earlier, an effort was made to keep the scheduling simulator as simple as
possible so as to speed the evaluation function used with the genetic algorithm. We have
now finished construction of a detailed simulation model which precisely models the flow
of pallets in all parts of the plant. The first validation step has been to make sure that
this detailed model accurately models plant operations. We are now engaged in validation
of the genetic scheduler using this detailed model for feedback. Sequences of customer
orders achieved through genetic optimization are being analyzed with this tool in order
to demonstrate that the technique is effective in the real world. The detailed model also
allows analysis of the effectiveness of the manual techniques currently used at the plant,
i.e. the way things actually happened during the time period of the data-set. Although
testing needs to occur across a wider range of data-sets, preliminary results indicate
that this system will allow more orders to be filled in the same time period, resulting in
substantial savings.
References
[1] Lawrence Davis , editor. Handbook of Genetic Algorithms. Van Nostrand Reinhold ,
1991.
[2] Timothy Starkweather, Susan McDaniels, Keith Mathiask, Chris Whitley, and Dar-
rell Whitley. A comparison of genetic sequencing operators. In Proceedings of the
Fourth International Conference on Genetic Algorithms, pages 69-76. Morgan Kauf-
mann Publishers, Inc., 1991.
[3] Timothy Starkweather, Darrell Whitley, Keith Mathias, and Susan McDaniels. Se-
quence scheduling with genetic algorithms. In Lecture Notes in Computer Science.
Springer/Verlag, 1991.
[4] Timothy Starkweather, Darrell Whitley, and Keith Mathiask. Optimization using
distributed genetic algorithms. In Lecture Series on Parallel Computing in Nature.
Springer /Verlag, 1990.
[5] Gilbert Syswerda. Schedule optimization using genetic algorithms. In Lawrence Davis,
editor, Handbook of Genetic Algorithms, chapter 21, pages 322-349. Van Nostrand
Reinhold, 1991.
[6] D. Whitley and T. Starkweather. Optimizing small neural networks using a distributed
genetic algorithm. In Proceeding of the 1990 International Joint Conference on Neural
Networks, 1990.
Genetic Algorithms in Problem Space for Sequencing Problems
by
Robert H. Storer
S. David Wu
lnKyoung Park
1. Introduction
In this paper, genetic algorithms will be developed for sequencing type problems
of importance in manufacturing systems. The proposed algorithms are based on an
auxiliary problem domain called "problem space" [15, 17]. Problem space provides a
framework in which problem-specific information can be incorporated explicitly into
local search heuristics. The proposed space has been found to be well suited for search
by genetic algorithms perhaps because standard crossover can be used. In this paper,
properties of problem space will be discussed, then three test cases will be presented
which illustrate the usefulness of the method. The test problems we present are 1) the
number partitioning problem, 2) the classic job shop scheduling problem (JSP) with
minimum makespan as the objective, and 3) the "standard cell placement problem"
which arises in the design of VLSI circuits.
2. Background
Local search heuristics have received much recent attention spurred by new
probabilistic algorithms such as tabu search, simulated annealing, and genetic
algorithms. These methods provide mechanisms for the search to escape local optima
thus overcoming an important obstacle for local search. Some impressive results have
been obtained, leading the Committee On the Next Decade of Operations Research to
call these methods "extremely promising" [5]. Other authors are less optimistic, and
some other recent results have been discouraging [8, 9] .
While much effort has been devoted to search methods, relatively little research
exists on defining the neighborhoods which serve as the basis for local search. For
sequencing type problems, local search typically relies on "swapping neighborhoods."
For example in scheduling problems a neighborhood is usually defined as all schedules
585
that can be obtained by swapping two jobs in the incumbent sequence. Variations on
this theme include adjacent job interchange and all-pairs interchange. In the
application of genetic algorithms to sequencing problems, the analogous procedure is the
use of the sequence itself as the chromosomal encoding of a solution. The selection of a
search neighborhood (and solution encoding for genetic algorithms) is crucial to the
performance of local search, and has been termed "an art which is usually guided by
intuition" [13].
3. Problem Space
Where:
V(SjP) : is the objective function value of solution sequence S to problem (data) P
Po: an Nxl vector containing the original problem data
H : a base heuristic which generates feasible solutions given problem data
6: an Nx1 perturbation vector, where a perturbed problem is P = Po +6
D : the domain of perturbation vectors; a subset of ~N
This optimization problem is defined on the domain of problem perturbations bfD, or
equivalently, on the space of "dummy problems" P=P 0+6 thus the name problem
space. Note also that the original problem data Po is always used to evaluate the
objective function.
586
Using problem space as a basis, local search can be applied to perform the
optimization. Since the space is defined in RN many metrics suggest themselves as a
means to define neighborhoods. A straightforward approach is to define a neighborhood
as all perturbed problems within a certain distance (t) from the current incumbent P'.
A neighborhood (N p ) of problems close to P' can be defined as:
Np = { all P'+6 such that "6,, <t }
where " . 11 is the Euclidian norm. A corresponding neighborhood of solutions Ns results
by applying the base heuristic H to all elements of Np:
Ns = { all S=H(P) such that PtN p }
Problem space search has several desirable properties worthy of note which are
summarized in this section.
A fundamental assumption III the use of the problem space is that the base
heuristic performs well on the problem at hand since it has been designed to exploit
problem-specific knowledge and structure. Thus problem-specific knowledge IS
explicitly incorporated into the local search algorithm through this base heuristic.
such as "PMX" [6], "cycle crossover" [7], "edge recombination" [18], etc. By operating
in problem space, standard crossover operators are trivially constructed and applied:
form an offspring problem by taking part of the problem data from one parent and the
rest from the other. The base heuristic is then applied to the offspring problem to
produce a solution guaranteed to be a feasible sequence.
Under quite general conditions it can be shown that all possible solutions
(including of course the optimal solution) are contained in problem space. Sufficient
conditions are: 1) if for any solution S the base heuristic can be "reversed" to find a set
of problem data that will cause the base heuristic to generate S, and 2) the method used
to perturb the problem can (perhaps after repeated application) generate any instance
(of a given size N) of problem data. Under these conditions, it is easy show that all
solutions can be reached by a local search of problem space. By 1), for every solution S
there is a set of problem data P S which, when plugged into the base heuristic, will yield
S. By 2), the perturbation method is capable of generating P S'
A problem space local search method will of course require the application of the
fast, base heuristic at each iteration of the search. As discussed above, applying this
heuristic at each iteration provides a means to incorporate problem-specific knowledge
into the search, and assures the feasibility of each solution generated. Since applying
the heuristic at each iteration entails significant computational effort, fewer solutions
will be investigated as compared to swapping based methods. The general effectiveness
of the problem space search will depend, in part, on the relative computational effort
required at each iteration as well as the overall quality of the base heuristic and the
search space it induces. For example, problem space methods seem attractive in the
case of the JSP where feasibility checking and solution evaluation are costly even for
588
simple swapping. Conversely, in the traveling salesman problem, the effect of swapping
two arcs in the tour can be quickly computed locally by considering only the two old
arcs and the two new arcs. Further, infeasible swaps are easily avoided, thus problem
space methods may be less attractive for the TSP.
The means by which problem space can be most effectively searched has yet to
be specified. We have experimented with several search strategies in [16]. Among the
many methods tested, the most effective was, to our surprise, the genetic algorithm. As
a result of this success, further experiments have been performed to tune the problem
space genetic algorithm (PSGA). The resultant algorithm, which we outline below, has
performed well in several applications without additional tuning.
In GA's, the fitness evaluation function, mutation rate, population size, crossover
rate, and a method for generating the initial population must be specified. The fitness
evaluation function assigns higher selection probabilities to better solutions.
Specifically, for each solution (i) in the population P, the selection probability is:
The apparent failure of swap neighborhoods and the existence of a fast, high-
quality heuristic (the differencing algorithm of Karmarkar and Karp [U]) would seem to
provide the ideal setting for problem space search.
Given N real numbers aI ' a2' .... . , an III the interval [0,1], the number
partitioning problem is simply to divide the numbers into two sets Sl and S2 so as to
mllllmlze:
2. Join u and v with an edge, relabel u with lu-vl, and declare v "dead".
The success of the differencing algorithm can be attributed to the fact that at
each iteration, two nodes with large labels are replaced by one node with significantly
smaller value. This allows for a "fine tuning" effect as the algorithm proceeds. The
obvious problem space for this problem would be to perturb each ai' apply the
differencing algorithm to the "dummy ai's" to obtain the partition, and then evaluate
the partition using the original ai's. However by using perturbed data throughout the
differencing algorithm, the fine tuning effect is lost, and results are poor. In order to
force the algorithm to generate alternative solutions while preserving the fine tuning
effect, we modified the obvious perturbation strategy slightly. The initial set of n
nodes in step O. are labeled with the perturbed ai's. However in step 2. when nodes are
relabeled with lu-vl, the original values of u and v are used. The result of this
modification is to vary the pairings of nodes during the early stages of the algorithm
while maintaining the fine tuning effect which occurs during the later stages.
6.3. Experiment
Following the method outlined in Johnson et al., test problems were created by
randomly generating n uniformly distributed numbers in [0,1]. Each number a1 to au
consisted of 36 digits to prevent errors induced by roundoff. Ten problems of size
n=200 were generated.
Table l.
PSG A Results for 200 element Number Partitioning Problems
Differencing
Problem Algorithm Result PSGA Result
1 1.09x10- 9 8.95x10- 13
2 2.13x10- 9 9.31x10- 15
3 3.79x10- 9 3.91x10- 13
4 5.52x10- 10 1.90xlO- 13
5 6.03x10- 9 2.46xlO- 13
6 1.46x10- 9 2.65xlO- 13
7 9.85x10- 9 3.28xlO- 13
8 2.29x10- 9 2.61xlO- 14
9 2.77x10- 9 4.33xlO- 13
10 5 . 17x10- 10 1.65x10- 13
The fast problem-specific JSP heuristic used to generate the problem space was
first used by us in [15] and is based on a hybrid version of the well known concepts of
active and non-delay schedules combined with SPT dispatching. The hybrid method
generates schedules that lie between active and non-delay schedules. The algorithm is
parametrized by 0, which represents the maximum time a machine may be kept idle
when jobs are immediately available for processing. Keeping the machine idle may be
beneficial if it is waiting to process a more critical operation which will soon become
ready. When 0,=0 , the search space consists of only the set of non-delay schedules. As
0, increases from 0 to infinity, the cardinality of the set of schedules also increases until
the search space contains all active schedules. Details of this algorithm may be found in
[15].
592
Since SPT dispatching is used to prioritize waiting jobs, the obvious problem
space strategy is to perturb the processing times of operations. Specifically, if (iJ)
indexes operation j of job i, the processing times of operations P(iJ) are perturbed by
adding a Uniform( -/J,/J) random variable to yield "dummy" processing times DP(iJ).
These dummy processing times are used at the scheduling decision points in the
application of the SPT dispatching rule to force the scheduling algorithm to produce
different sequences. When operations are actually scheduled, real processing times are
used to construct the schedule and compute the makespan.
In summary, the genetic algorithm for the JSP uses a list of dummy processing
times as the encoding, and standard crossover is applied. The perturbation method just
described is used to generate the initial population, and to perform mutation. The base
heuristic decodes the chromosome and computes makespan.
Our initial application of the PSGA consisted of a single run of 2000 generations
for each problem. On the smaller problems, little improvement was observed after 100
generations. Our second application of the PSGA thus entailed 20 independent runs of
the PSGA over 100 generations. Results of both experiments appear in Table 2. under
"Ix2000" and "20xIOO".
Twenty job shop scheduling problems were used for testing. In all problems,
each job must visit each machine exactly once. Processing times are uniformly
distributed on the integers between 1 and 100. Fifteen of the problems, ten consisting
of ten machines and ten jobs (lOxlO) and five (I5xI5) were taken from [2], and have
appeared before in the literature. For these problems, the order in which jobs visit
machines was generated randomly. The other five problems were (IOx50) and were
generated by us in a manner similar to that used in [12]. This problem generation
scheme creates tough problems by placing special restrictions on precedence constraints.
Specifically for a problem with 10 machines, all jobs must visit the first 5 machines
before visiting the second 5 machines. Within the two sets of machines, routings are
random.
problems used here. Results for two algorithms were given. The first algorithm, SBI, is
a sophisticated heuristic based on solving a series of interrelated one-machine problems.
The second algorithm, SBII, augments the SBI heuristic with a branch and bound
search in an attempt to improve the solution.
Results of the experiment appear in Table 2. The first 15 problems are labeled
as III [2]. The PSGA results appear competitive with the SB methods. It seems that
the relative performance of PSGA improves as the problem size increases.
The layout of VLSI circuits consists of the placement of circuit elements (or
"cells") and connections of elements (or "wires") on a layout area. In the most general
case, a set of rectangular cells of variable size and shape are given, along with
connectivity information or a "net list". Each net specifies a set of cells which must be
connected (wired) to each other to form the signal net. Thus each cell will typically be
a member of several nets, and each net will connect several cells. Three principal
design styles are used for cell based design, the gate array, the standard cell, and the
macro cell approach.
A gate array circuit is composed of cells of exactly the same size and shape laid
out in a lattice arrangement. Vertical and horizontal "channels" are placed between
each row and column of cells. These channels provide space for the "wires" used to
connect cells.
Standard cells have a fixed height but different widths, depending on their
functionality. Terminals are located along the cell's top and bottom edge. A standard
cell layout consists of cells placed next to each other in rows with channels included
between rows to accommodate wires. If wiring across a cell row is required, "feed-
594
Table 2.
PSGA Results for Job Shop Scheduling Experiments
Optimum Ix2000 20xIOO A&C A&C
Prob Size Sol'n PSGA PSG A SBI SBn Bttle Shfle
---------------------------------------------------------------------------------------------
La16 10x10 945* 1008 981 1021 978 1076 946
La17 10x10 784* 801 794 796 787 829 784
La18 10x10 848* 860 860 891 859 855 848
La19 lOx10 842* 871 860 875 860 863 846
MT10 lOx10 930* 954 956 1015 930 952 930
Orb1 10xlO 1059* 1070 1070 1176 1070
Orb2 lOx10 888* 910 898 927 890
Orb3 10x10 1005* 1046 1031 1090 1021
Orb4 10x10 1005* 1037 1031 1065 1019
Orb5 10x10 887* 935 903 939 896
La36 15x15 1268* 1325 1305 1351 1305 1326 1326
La37 15x15 1397* 1463 1458 1485 1423 1471 1439
La38 15x15 unkn 1244 1239 1280 1255 1307 1295
La39 15x15 1233* 1281 1258 1321 1273 1301 1300
La40 15x15 1222* 1281 1258 1326 1269 1347 1286
S\,l1 10x50 unkn 3134 3179 3423 unkn
SI.'12 lOx50 unkn 3130 3240 unkn unkn
S\'13 10x50 unkn 3220 3339 3508 unkn
SI.'14 10x50 unkn 3073 3131 unkn unkn
S\'15 10x50 unkn 3056 3154 3280 unkn
---- - ---------------------------------------------------------------------------------------
Notes:
1. SBI and SBn results available only for problems tested in [IJ
2. lOx50 problems which A&C algorithms failed to solve in under
24 hours on a Sun 4/280 are labeled unkn.
--------------------------------------------------------------------------------------------
through" cells may be added, but this alternative is considered undesirable. It is the
standard cell placement problem that we address in this example.
A macro cell is rectangular but otherwise unrestricted 10 shape, and has
terminals located along all four edges. The layout of a macro cell circuit is the most
challenging of the three problems, and bares resemblance to the facilities layout
problem often encountered in manufacturing.
A two phase approach is typically taken in VLSI design. In the first phase,
"placement", cells are laid out with the goal of minimizing the total required length of
wiring needed to form the nets. That is, cells which are highly interconnected will be
placed close together so as to minimize the required wiring. Once cells are placed, the
second phase, "routing", lays out the wires in the channels to form nets.
595
The mam objective of placement and routing is to minimize the total layout
area. It should be noted that this objective can only be exactly evaluated after both
design phases are complete. However, total area is closely related to objectives which
can be directly computed during placement. In this experiment we use the "bounding
box" objective. Given a placement, one can determined for each net the smallest box
that contains all terminals in the net. Summing the height and width of each box over
all nets yields the bounding box objective function value. In this experiment we
attempt to solve the standard cell placement problem with the bounding box objective.
Following the approach of previous researchers (d. [10]), our base heuristic
consists of first producing a single row layout of all the cells, and then "folding" this row
so as to fit the desired layout shape. The single row layout problem closely resembles a
maximal weight Hamiltonian path problem. Our heuristic can be summarized as
follows:
l. Create a complete graph with a node for each cell. The weight W(i,j) on arcs
between cells i and j is equal to the number of nets which include both cells. Thus
the arc weight represents in some sense the degree of connectivity of the cells.
8.2. Results
Three example circuits were used to test the problem space algorithm. We
compare our results to those produced by the TimberWolf 3.3 simulated annealing
package [14]. The results appear in Table 3.
596
Table 3.
Standard Cell Placement Problem Results
While the problem space results are in the same ballpark as simulated annealing, the
results are somewhat disappointing. In retrospect it seems clear that standard cell
placement is an example of a problem which is well suited for swapping neighborhoods
thus putting problem space at a relative disadvantage. The effect that swapping two
cells has on the bounding box objective can be quickly determined by examining only
nets which contain the two cells. Thus, many more layouts can be investigated using
the swap neighborhoods. The total number of configurations investigated by each
method (for runs of roughly the same CPU time) is also shown in Table 3.
9. Conclusions
In conclusion, we feel that problem space based methods show promise for some,
but certainly not all, combinatorial optimization problems. They seem particularly
attractive in cases which usually prove difficult for traditional methods. In particular,
problem space seems to be a good heuristic approach for large problems with complex
constraints, and with objective functions which cannot be locally computed for swap
neighborhoods. Further, the inherent simplicity adds to the appeal. While genetic
algorithms have worked fairly well as a search procedure, we feel that there is still much
room for improvement in this area.
10. References
1. Adams, J., E. Balas and D. Zawack, (1988). "The Shifting Bottleneck Procedure for
Job Shop Scheduling", Management Science. M(3), 391-401.
2. Applegate, D. and Cook, W. (1991). "A Computational Study of the Job-Shop
Scheduling Problem", .QRSA Journal on Computing. a(2), 149-156.
3. Bartholdi, J. J., and Platzman, L. K., (1985). "Heuristics Based on Spacefilling
Curves for Combinatorial Problems in Euclidian Space", Management Science. M(3),
291-305.
597
4. Carlier, J. and E. Pinson, (1989). "An Algorithm for Solving the Job-Shop Problem,"
Management Science, ~ 164-176.
6. Goldberg, D. E., and Lingle, R. (1985). "Alleles, Loci, and the Traveling Salesman
Problem", In J . Greffenstette (ed.) Proceedings Q{ ~ International Conference on
Genetic Algorithms and Their Applications, Carnegie Mellon University.
7. Greffenstette, J. J ., Gopal, R., Rosmaita, B., and Van Gucht, D. (1985). "Genetic
Algorithms for the Traveling Salesman Problem", In J. Greffenstette (ed.) Proceedings
of an International Conference QD. Genetic Algorithms and Their Applications, Carnegie
Mellon University.
8. Johnson, D.S., Papadimitriou, H., and Yannnakakis,M. (1988). "How Easy is Local
Search ?", Journal ill' Computer and System Science, ~(1), 79-100.
9. Johnson, D.S., Aragon, C.R., McGeoch, L.A., and Schevon, C. (1991).
"Optimization by Simulated Annealing: an Experimental Evaluation; Part II Graph
Coloring and Number Partitioning" , Operations Research ~(3), 378-406.
11. Karmarkar, N. and Karp, R.M. , (1982) . "The Differencing Method of Set
Partitioning". Report No. UCB/CSD 82/113, Computer Science Division, University of
California, Berkeley.
12. Muth, J .F. , P. Thompson and P . Winters (eds.), (1963). Industrial Scheduling,
Prentice-Hall, Englewood Cliffs New Jersey.
18. Whitley, D., Starkweather, T. and Fuquay, D. (1989). "Scheduling Problems and
Traveling Salesmen: The Genetic Edge Recombination Operator" Proceedin~s 2f ~
Third International Conference QD. Genetic Algorithms, George Mason University,
Morgan Kaufman Publishers, San Mateo CA.
List of Sponsors
Fernuniversitat Hagen
Volksbank Hagen