Math/ Comput. Modelling,
Vol.14,pp.1085-1090, 1990 Printed in Great Britain
0895-7177/90 $3.00+0.00 Pergamon Press plc INVENTOU
UTION Pm D. C. Brauer Jersey Central Power & Light, Madison Avenue Morristown, New Jersey 07960-7344
& Punchbowl
Roads,
G. Naadimuthu University, Dickinson Department Fairleigh Engineering, Teaneck, New Jersey 07666-1914
of
Industrial
Abstract. A mixed integer linear programming formulation for inventory and distribution planning of a central distribution This center serving multiple retail outlets, is considered. problem is transformed into a goal programming model based on preemptive ordering of three goals - aggregate inventory turnover, service level of filled demand and total system cost. A numerical example is solved using the linear programming software package LINDO on a VAX 11/750 computer system to illustrate the application of the approach. Solutions for all permutations of the prioritized goals are compared. Tradeoffs between the goals are considered for analyzing compromise solutions. Kevwords. Linear/Integer/Goal Planning
Programming;
Introduction
Inventory/Distribution
problems. Meij [la] presents a separable programming (SEP) approach for aggregate production planning where the cost functions are nonlinear. Fisk 1141 presented a goal programming model for determining an output plan that best satisfies a series of goals specified by management. Jaaskelainen [3] presents a goal programming problem for aggregate that planning considers production employment, and levels, production inventories. Green, et al [I21 warehouse formulated a multicriteria location problem as an integer goal programming model using a branch and bound heuristic to produce an optimal solution. Lee et al [13] have applied multiple criteria goal programming model to the problem of where to locate fixed facilities within a given system. Mohanty and Chandran [7] present a generalized preemptive goal programming model for production vlannina for a multi-vroduct horizon. planning portfolio over a O'Grady and Menon [ll] present a modeling approach based on concepts drawn from Boolean zero-one programming, relationships and the weighted attainment function of goal programming in order to obtain the best compromise solution in conflicting set of relation to a and Wuwongse goals. performance proposed an Mukyangkoon Llf-51 have interactive goal programming (IGP) on a production for solving microcomputer and Tabucanon problems. planning Mukyangkoon [9] developed a microcomputer system for solving a production planning based on problem programming goal objective comparisons of pairwise and values. Kendall function Schniederjans [4] present a linear goal for multi-product model programming with interval planning production resource parameters. presented have Other papers formulations alternative problem expressions, nonlinear including
linear The application of models to inventory and programming distribution planning decisions is not new. Typically, the objective function is formulated in terms of the amount of product to purchase, produce, and/or ship Inventory holding at the minimum cost. and back-log, as well as unit production and shipping costs are usually part of objective function the expression. Constraints typically consider demand, service level, and stocking supply, related characteristics. In practice, firms may be operating competing criteria, that is, under management by objectives in which the primary objective may not necessarily be cost. It may not be only minimum all objectives, feasible to satisfy A completely or partially. either typical set of competing objectives in inventory management is service level and inventory turnover rate. Rather than plan the production and distribution in terms of one absolute objective, several objectives or goals can be formulated in the linear programming (LP) model and satisfied according to a preselected ordering. This approach requires the original LP model to not only be reformulated in terms of the goals, but also an ordering of the various goals to be made subject to disagreement through subjective assignment. If the number of goals are not large it is possible to enumerate all ordering combinations and assess the variations due to ordering. This may result in the elimination or dismissal of some controversy associated with a particular ordering.
Prior publications have been the subject of goal programming model formulations and solutions of production planning and materials management type 1085
1086
Proc.
7th Int. Conf. on Mathematical
stochastic conditions, and nonpreemptive goal programming models. See Ignizio [2] for an overview of goal programming approaches and solution techniques. A survey of methodological and applied papers on generalized goal programming is provided by Romero [lo]. Also, Lin [19] provides a reference list of goal programming applications to multiple objective decision making. A subtle bias in goal weighting for goal programming problems is explained and a normal correction method is suggested by Widhelm [17]. Lee and Lee [20] develop and demonstrate interactive inteser aoal programming solution methods formultiple objective problems. Markland and Vickery [15] have developed an efficient solution strategy for solving large-scale integer goal programming using problems commercial integer programming software. Deckro and Hebert [l] discuss existing approaches to solving the LDR model along with goal programming extensions to the model. Rakes et al [8] present a stochastic goal programming model with a lost sales goal, production level goals, product inspection related goals, and production line capacity goals. Lawrence and Burbridge [5] formulate a multiple objective linear programming model to maximize sales revenue, minimize total production and transportation costs, and maximize production levels. Lockett and Muhleman [6] present a goal programming for production model scheduling that smooths workload while still considering marketing requirements. Mathematical Model A general linear programming formulation is first presented and explained in terms of the scope of the physical inventory and distribution system previously described. This formulation is then transformed into a linear goal programming model based on a preemptive ordering of goals. The linear programming model is as follows: m T Minimize C C [(c,~,,+s&,,)+ht(I+,,+ k=l t=l I'*,r-1) /2+rk(
I-*r+1-*,t-1 j/2+
: j=l
g,kx,k,+~,O,
I
(1)
subject to: I*t = I,,,-,+Y*, - : D ,kri vk,t j=l I*t = I+,,-I-,,; Vk,t ykt 5 WZ,,: Vk,t n m T c c z V’,,t/ j=l k=l t=l T-l
i x k=l t=l
((l/T)
c,[ (I’,o+I’,,)/2+I+~tl
n c x ,~t5 I+,,,_,+yk, ; Vk,t j=l
(2) (3) (4)
) 2 B
(5) (6)
t+D.-1
.^
Xjk,
5
D,,,; Vj,k,t 1:t T
T
c t=1
Xw
=
C
t=1
D,rr; Vj,k
(8)
and Computer
l-I-,,
,c” D,, j=l
Modelling
L
L,, : Vk,t
n C r,qlt-Hit = 0,-U, ; Vt j=l
(9) (10)
(11) E v&&W; Vj,t k=l 0,-U, 5 0H, ; Vt (12) Lt = o I;kt,ktz 0 8 integer: Vj,k,t (13) xjrrry*rr z I : I::; ot,ut,q,t 2 0: 'Vj,t. 9 ,r=
The notation for the above mathematical model is as follows: n = number of customers or retail outlets m = number of products T = number of periods in planning horizon Ck = unit cost for product k YRt = decision variable for number of units of product k to order in period t for central depot =,t = binary decision variable for order period of product k S ke = fixed order cost for product k in period t h, = holding cost for one unit of product k r, = backlog cost for one unit of product k Ikt = decision variable for inventory position of product k in period t g1* = per unit distribution cost to customer/retailer j for product k from central depot X ,kt = decision variable for number of units of product k to ship to customer j in period t a, = overtime hourly cost rate for truck delivery in period t Oe = decision variable for amount of overtime for trucks in period t U, = decision variable for amount of undertime for trucks in period t 0 = fraction of regular time hours available for overtime & = total hours available for trucks in period t D ,Lt= demand for product k by customer j in period t M = maximum amount of product that can be ordered in period t B = inventory turnover rate p. = maximum allowed periods of supply for customers of product k vk = shipping volume for one unit of product k W = capacity of delivery truck L *r = minimum service level of filled total demand for product k in period t r, = (truck) hours for one delivery to customer j including loading and unloading time 9% = number of trips (truck loads) for customer j in period t. The objective function of the model seeks to minimize the total system variable costs associated with ordering, stocking, and distribution of product from the central depot to ultimate retail
Proc. 7th Int. Conf. on Mathematical and Computer Modelling
This includes the aggregate outlets. unit and fixed cost of ordering by the central depot from suppliers, as well as the total system costs of the average inventory holding and backlog positions The over the planning horizon. distribution costs are those pertaining to the specific products and any overtime retail the various allocated to (2) is the Expression customers. inventory balancing equation taking into current inventory account demand, Since position, and product on order. backlogging of product is permitted, a inventory level can occur. negative E,;;;;ion (3) is added to define. a nonnegative separate In order to force the decision v%ab?e. ordering cost to become active in the function as a fixed cost, objective expression (4) is included, where M represents the maximum amount of product that can be ordered to force the order product is into solution when cost Expression (5) defines the ordered. inventory turnover rate over the planning horizon based on projected demand and The total average inventory levels. able to ship to amount of product customers in a period is limited by expression (6). This aggregate amount not exceed must the prior period's inventory level and on order amount. Expression (7) simply limits the number of periods of demand that can be shipped to each customer. The total demand over the planning horizon must be satisfied for each customer and product. Expression (8) ensures that the demand is attained through customer deliveries. The minimum aggregate service level is defined in expression (9), where service level is the proportion of periodic demand filled as measured by the volume of backlog. Expressions (lo), (ll), and (12) define the required truckloads and resources for distributing product to each customer. These expressions allow a level of overtime and assume a dedicated truck for each customer with the potential to utilize undertime for customer deliveries. Expressions (13), (14), and (15) are the restrictions of the various decision variables. The above linear programming model can be transformed into a goal programming formulation given a desired approach, such as preemptive, along with identifying those goals to attain. This paper will strictly examine a preemptive approach in which an assumed ordering of goals are targeted for achievement. There are three major elements comprising the model presented that would be likely candidates as goals. One obvious goal is the total inventory and distribution system cost already given as the objective function. The other two are aggregate inventory turnover and the service level of filled demand. Actual ordering of these three particular goals would depend upon individual or general business preference. What we ultimately wish to examine in this paper are how a linear general solution programming compares to goal programming solutions,
1087
and to what degree the ordering of goals alter solutions. Let us define PI as the level of priority for goal i where, P, > P, > P, > . . . . . ’ p. with P, of the highest priority being satisfied in a sequential manner. Given the three potential goals previously mentioned, a total combination of six orderings are nossible. As an illustration, ordering of the following priortty will be assumed to demonstrate a goal programming formulation. The priority selections are: P, = aggregate inventory turnover P, = service level of filled demand P, = total system cost. The following slack and surplus variables are defined with respect to each of the three goals: d-, = underachievement of aggregate inventory turnover d', = overachievement of aggregate inventory turnover d-2, = underachievement of service level for product k in period t d',,,= over achievement of service level for product k in period t d-, = underachievement of total system cost d', = overachievement of total system cost. The goal programming model can now be stated as follows: m T C d-,,,+P,d', Minmize P,d-,+P, C (16) k=l t=I same the This is subject to constraints previouslv defined in the with the programming -model linear following modifications to expressions (5), (9); and (1). T-l n m T c c c c*[(I’,, B %D,J((l/T) : k=l t=l j=l k=l t=l + + f +I n)/2+I xr])+d-1-d 1= B (17) = &,,i Vk,t l-I_,, / "c D1kr+d-2kr-d+zkr j=l m T c x [ (%y,,+sk,s,, )+h,( I*w+I+,,t-, ) /2 k=l t=l +r,(I-,,+I-,,,., ) /2+ z gjkxjke+ar4 1+d-,-d’, j=l
(18)
=A (19)
Numerical Examole An example problem was structured, formulated and solved using the mixed integer linear programming model presented in the previous section. A horizon planning consisting of four quarters in which four products are distributed from a central depot to three customers was analyzed. Each of the four products stocked at the central depot had an initial inventory position and the equivalent of three delivery trucks to distribute product to customers. Levels for inventory turnover and service fill rates were established for the respective quarters. Appendix A summarizes the data used for the example problem. The
1088
Proc.
7th Int. Conf. on Mathematical
integer resulted decision
linear programming formulation in a problem containing 132 variables and 97 constraints. Of the 132 decision variables, 96 were integer, 16 were binary (O,l), and 20 were continuous. The problem was solved using the mathematical programming software package LINDO on a VAX computer, requiring 339 iterations and 7.32 CPU seconds. The solution to the example problem resulted in a total cost of $21.8531 over the four quarter period. Orders were required to be placed from the central depot in every quarter for each product. Deliveries to all three customers were also required each quarter without overtime. Both inventory turnover and service level rates were attained each quarter. In fact, only in the fourth quarter did the service level rate go below 100% to a level of 85%. which was the minimum level. This is attributed to the model formulation requirinq no endinq inventory level and thus forcing the backlog position which eliminates both procurement and carrying costs. The same data was used to solve several goal programming problems as presented in the previous section. Six permutations of the three goals identified in all possible orders of priority were formulated and solved. The target level for total system cost was based on the value of the objective the obtained from integer function solution. Appendix C programming displays the various orderings solved for to minimize the underachievement of inventory turnover and service level, and overachievement of total cost. all the Feasible solutions to permutations were obtained for each level As is turned out, inventory of priority. turnover at least equal to or greater was attained in each than five times, permutation regardless of the priority. The most significant variation of goal achievement was that of service level and total cost. In the first permutation, service level for product 2 in periods 3 and 4 was below the 85% goal with a result of 69.6% and 13.2% respectively. At the same time, total cost increased by All other products in the four $686. periods had service levels between 90% permutation and 100%. The second resulted in a solution very similar to that of the vroblem with the orisinal Service level was objective function. minimally sacrificed for products 1,3 and 4, all in the fourth quarter by less than one percentage point below the 135% target The third permutation, giving level. level and first priority to service second priority to inventory turnover resulted in an increased total cost of All products attained a 100% $2872. service level throughout each of the four inventory while satisfying quarters The fourth permutation is turnover. for except the third, similar to interchanging the orders of priority of total cost and inventory turnover. In by $1438 this case, total cost increased while attaining the same level of service
and Computer
Modeiling
as the third permutation. The fifth and sixth permutations yielded similar results with respect to service level underachievement. In each instance, less than a 3% underachievement resulted in two products, both in the fourth quarter. All other goals were achieved without any sacrifice. Appendix B summarizes the results for each of the six permutations. The results associated with the goal programming approach indicate that a given priority or emphasis on one model
attribute may not necessarily cause a significant sacrifice in another attribute. Such was the case in this example between total cost and service A more fundamental problem in level. using this approach may be a determination of preemptive ordering and the degree to which under or any overachievement is acceptable. On the other hand, the original integer programming problem with a single objective function a not yield may solution feasible due to constraint limitations. Conclusion The problem presented in this paper is a comprehensive inventorv and distributionmodel for a *single distribution center servinq multiple customers. This model lend& itself-to application through use of linear mixedinteger programming techniques available on standard mathematical programming Software such as LINDO. As demonstrated, the original model was easily transformed into a preemptive goal programming formulation in terms of inventory turnover, cost total and service level. This was shown to be a logical extension given the nature of inventory problems. Goal programming solutions of the three attributes were developed and compared for all permutations of priority. Results indicate the degree to which trade-offs may be made between these attributes. analysis is Such worthwhile when
competing objectives are present and there is some question as to importance and resulting level of sacrifice. References Deckro, R. F. and Hebert, J. E., [II "Goal Programming Approaches to Solving Aggregate Based Decision Rule Linear IIE Planning Models," Production Transactions, Vol. 16, No. 4, 1984, pp. 308-315.
Ignizio, J. P., "Generalized Goal [21 Programming,1' Mgmt. SC., Vol. 10, No. 4, 1983, pp. 277-289. "A Goal Jaaskelainen, V., 131 Programming Model of Aggregate Production Planning," Swed. J. of Economics, Vol. 71, No. 2, 1969, pp. 14-29. K. E. and Schniederjans, M. [4] Kendall, Production Planning," J ., I'Multi-Product European Journal of operational Research, vol. 20, 1985, pp. 83-91. J. Lawrence, K. D. and Burbridge, (51 "A Multiple Goal Linear Programming J for Coordinated Production and Mbiel International Planning," Logistics
Proc. 7th Int. Conf on Mathematical and Computer Mode&g
Journal of Production Research, Vol. 14, No. 2, 1976, pp. 215-222. [6] Lockett, A. G. and Muhleman, A. P., “A Problem of Aggregate Scheduling and Programming, 'I Goal Application of Production Journal of International Research, Vol. 16, No. 2, 1978, pp. 127-135. Mohanty, R. P. and Chandran, R., [71 "Goal Programming Applications for SOme Problems in Materials Management," Eng. Costs and Prod. EC., Vo1.8, 1984, pp. 157-164. Rakes, T. R., Franz, L. S. and [f31 Production "Aggregate Wynne, A. J., Planning Using Chance-Constrained Goal Programming," Int. J. Prod. Res., Vol. 22, No. 4, 1984, pp. 673-684. Tabucanon, M. T. and Mukyangkoon, [91 S ., "Multi-Objective Microcomputer-Rased Interactive Production Planning," Int. J. Prod. Res., Vol. 23, No. 5, 1985, pp. 1001-1023. [lo] Romero, C., ltSurvey of Generalized Goal Programming,1' Eur. J. Oper. Res., vol. 25, No. 2, 1986, pp. 183-191. [ll] O'Grady, P. J. and Menon, U., Production Multiobjective "Flexible for Automated Framework Planning Manufacturina Svstems," Ena. Costs Prod. Econ., Vol. 8, No. 3,.1984; pp. 189-198. 1121 Green, G. I., Kim, C. S. and Lee, S. if.,- "A Multicriteria Warehouse Location Model," International Journal of Physical Distribution & Materials Management (UK), Vol. 11, No. 1, 1981, pp. 5-13.
1089
[13] Lee, S. M., Green, G. I., and Kim, c. s., "A Multiple Criteria Model for the Location-Allocation Problem," Computers & Operations Research (UK), Vol. 8, No. 1, 1981, pp. 1-8. [14] Fisk, J. C. "A Goal Programming Model for Output Planning," Decision Sciences, Vol. 10, No. 4, 1979, pp. 593-603. [15] Markland, R. E., and Vickery, S. K., "The Efficient Computer Implementation of a Large-Scale Integer Goal Programming Model," European Journal of Operational Research, Vol. 26, No. 3, 1986, pp. 341-354. [16] Wuwongse, V., and Mukyangkoon, S., Interactive Goal "Microcomputer-Based Programming for Production Planning," Microcomputer Applications, Vol. 5, No. 1, 1986, pp. l-5. [17] Widhelm, W. B., "Extensions of Goal Programming Models," Omega (GB), Vol. 9, No. 2, 1981, pp. 212-214. [la] Meij, J. T., "Separable Programming as a Solution Methodology for Aggregate International Planning," Production Journal of Production Research (GB), Vol. 18, No. 2, 1980, pp. 233-243. [19] Lin, W. T., "A Survey of Goal Programming Applications," Omega (GB), vol. 8. No. 1. 1980. DD. 115-117. [ZO] Lee, S'. M.,' 'and Lee, S. C., "Multiple Objective Optimization with Interactive Integer Goal Programming," International the Proceedings of Conference of Cybernetics and Society, IEEE, Tokyo-Kyoto, Japan, 1978.
ADDendix A v of Data for the Numerical a Item Demand and Initial Inventory Position: Demand funits. Item 1 Customer 1 Customer 2 Customer 3
Item 2 Customer 1 Customer 2 Customer 3
Item 3 Customer 1 Customer 2 Customer 3
Item 4 Customer 1 Customer 2 Customer 3
01
02
03
04
15000 12000 22000 -_-__ 49000
11000 8000 13000 --_-32000
19000 10000 17000 ----46000
10000 14000 9000 ---mm 33000
10000
5000 10000 8000 _____ 23000
8000 10000 10000 ---mm 28000
8000 14000 12000 _____ 34000
10000 14000 14000 ----38000
5000
700 400 200 _____ 1300
500 300 600 ----1400
1000 500 900 _____ 2400
800 400 700 ---mm 1900
500
21000 18000 15000 _____ 54000
18000 18000 13000 ----49000
14000 15000 10000 _____ 39000
10000 9000 7000 --a-26000
15000
1090
Proc. 7th Int. Conf. on Mathematical and Computer Modelling
product
cost
Elements and Characteristics: Product
Item Unit Cost ($/unit) Fixed Order Cost ($) Holding Cost ($/unit) Shortage Cost ($/unit) Overtime Rate ($/hour) Shipping Vol. (cu. ft./unit) Service Level Rate (per qtr.) Distribution Costs ($/unit) Customer 1 Customer 2 Customer 3
.-..I__25 2000 3 8 200 2 05%
100 2000 12 20 200 3 85%
75 2000 9 15 200 5 85%
40 2000 5 10 200 4 85%
0.50 0.75 0.35
0.50 0.75 0.35
0.50 0.75 0.35
0.50 0.75 0.35
Other Criteria and Conditions: 5 25% 1800
Inventory Turnover Rate Overtime Rate Delivery Truck Hours (hrs/qtr) Delivery Time (hours/customer) Customer 1 Customer 2 Customer 3
3 4 6
Amendix v
of
B
Goal Proarv
Permutation
wsults Total
service
Level
I
s 686
Product 2,Period 3:69.56% Product 2,Period 4:13.16% Allother 2 90%
II
$
Product 1, Pr?iod 4:84.92% Product 3,Period 4:84.32% Product 4,Period 4:84.91% Allother 2 97%
III
$2872
All100%
IV
$1438
All100%
V
$
0
Product 1,Period 4:84.82% Product 4,Period 4:84.99% Allother L 90%
VI
s
0
Product 1,Period 4:82.75% Product 3,Period 4:84.99% Allother 2.96%
*Inventory attained
overachievement
0
Permutations
I II III IV V VI
L-------
inventory turnover inventory turnover service level service level total cost total cost
*
in every permutation.
of Goals
PRIORITY
1
>
service level total cost inventory turnover total cost inventory turnover service level
total cost service level total cost inventory turnover service level inventory turnover