Optimal inventory control of lumpy demand items using genetic algorithms

Optimal inventory control of lumpy demand items using genetic algorithms

oorrq:4Jt;er~ irtduolsr.lal w,lginoorqrlg PERGAMON Computers & Industrial Engineering 37 (1999) 273-276 Optimal Inventory Control of Lumpy Demand ...

269KB Sizes 11 Downloads 166 Views

oorrq:4Jt;er~ irtduolsr.lal

w,lginoorqrlg

PERGAMON

Computers & Industrial Engineering 37 (1999) 273-276

Optimal Inventory Control of Lumpy Demand Items Using Genetic Algorithms K L Mak, Y S Wong and G Q Huang Department of Industrial and Manufacturing Systems Engineering The University of Hong Kong Pokfulam Road, Hong Kong ABSTRACT This paper is concerned with the optimal control of inventory items which experience lumpy demands. A mathematical model is developed for the determination of optimal replenishment policies for such items. In order to avoid disrupting the inventory system, a maximum issue quantity of w units is specified such that customer orders with sizes exceeding w units will be filtered out of the inventory system and treated as special orders to be satisfied by placing special replenishment orders to a supplier. Customer orders with sizes less than or equal to w units will be met from stock. A genetic search algorithm is developed to solve the problem. The theoretical results obtained are illustrated with a numerical example. © 1999 E l s e v i e r Science Ltd. All rights reserved. KEYWORDS: inventory control, lumpy demand, cutoffpolicy, optimal (s,S) policy, genetic algorithms INTRODUCTION The problem of controlling items with lumpy demand patterns has received relatively little attention in the past decades although these items constitute an appreciable portion of the inventory population in parts and supplies types of stockholdings. Ward (1978) commented that most of the traditional inventory control methodologies were inappropriate for controlling items with lumpy demand patterns. Silver (1970) studied the nature of lumpy demand patterns in great detail, and suggested that a discrete compound Poisson distribution is a reliable approximation of the customer demand patterns. In controlling such items, Matz (1983) pointed out that there exists a risk of disrupting the inventory system, if all the transactions of items have to be serviced routinely by using the current inventory. The concept of incorporating a cutoff point into the inventory control policy was thus suggested. In the mathematical model developed in this paper, a discrete compound Poisson distribution is used to approximate the nature of customer demands and a continuous review (s,S) inventory control policy is used to control the inventory system. A cutoff point, w, is incorporated into the control policy. The replenishment lead time is constant and any shortage of items during the lead time will be backordered completely. The technique of genetic algorithms (Goldberg, 1989) is adopted to determine an optimal inventory control policy to minimize the expected annual operating cost of the system. The results of a numerical example show that the incorporation of an appropriate cutoff point can indeed lead to an inventory policy with a better cost performance. MATHEMATICAL MODELLING The notations used in the development of the mathematical model are: C] = fixed ordering cost, C 2 = holding cost per unit per unit time, C3 = shortage cost per unit per unit time, Cs = fixed ordering cost for a special delivery, Cd = differential cost per unit due to by-passing the inventory system, s = reorder level, S = order-up-to level, w = cutoff transaction size, L = replenishment lead time, ~ = mean customer order arrival rate, 7~w = mean effective customer order arrival rate for a given cutoff transaction size w, la = mean customer demand transaction size, law= mean effective customer demand transaction size for a given cutoff transaction size w , P(k) = probability that the size of the demand is k units when a customer order arrives, P(w,k) = probability that the size of an effective customer demand is k units (k>o) for a given cutoff transaction size w, r(w,k) = probability that the effective total lead time demand is k units for a given cutoff transaction size w, dpw = cumulative probability of demands with transaction sizes > w, and C (w,s,S) = expected annual inventory cost for given w, s and S. Indeed, the expected annual inventory cost can be shown to satisfy the equation 0360-8352/99 - see front matter © 1999 Elsevier Science Ltd. All rights reserved. PII: S0360-8352(99)00072-8

274

Proceedings of the 24th International Conference on Computers and Industrial Engineering S-s-I

C(w,s,S) =

~'w Z m ( w , k ) F ( w , S _ k)] M ( w ' S - s - 1 ) [ C t + k=o

(1)

where F(w,i) = [(C2 + C3)U(w,i - 1) + C3(LwLP-w - i) + Ca(kP. - kwP.w) + Cs~,~pw]/ 3~w]

(2)

m(w,k) =

(3)

P(w,i)m(w,k - i )

k>1

=

k

M(w, k) = Z m(w, i)

(4)

I=0

{Oi~° U(w,k) =

R(w,k)=

k <0

k

R(w, i) = Z ( k '=

i=0

Ok

k<0

Zr(w,i )

k>0

+ 1 - i)r(w,i)

k_>O

(5)

(6)

i=0

exp(-~,wL )

k =0

L

r(w,k)

LwL'~-~iP(w,i)r(w,k-i) k i=l

k>0

(7)

0o

~w = E P ( J ) j=w+l p(w, k) = { : ( w , k ) / (! - d p w ) ~w = ~ ( i - ¢ w )

(8) 0
(9) (lO)

w

la,~ = Z i P ( w , i )

(1 I)

i=l

GENETIC SEARCH ALGORITHM The outline of the proposed algorithm is summarized as follows: Step 1. Randomly initialize a population of chromosomes by using an initialization procedure. Step 2. Apply the rounding heuristic to each chromosome and evaluate its cost performance. Step 3. Select a pair of parent chromosomes from the current population and generate a new chromosome by applying crossover and mutation operators. Step 4. Apply the rounding heuristic to the new chromosome and evaluate its cost performance. Step 5. Insert the new chromosome into a new population. If the population is full, go to Step 6; else go to Step 3. Step 6. Check the pre-specified stopping condition. If it is satisfied, stop the search procedure and return the overall best chromosome as the final solution; otherwise, proceed to the next generation by replacing the old population by the new one and go back to Step 3. Chromosome Structure A floating point coded representation is adopted in this paper. The decision variables are the cutoff point w, the reorder level s, and the order-up-to level S. Hence the combined multi-parameter chromosome, defining any candidate solution, has the form ~ = (w,s,S).

Initialization Procedure The initialization procedure is straight forward and simple. First, it is assumed that there is an origin F% which satisfies the constraints s _< S, s > 0 and S > 0. Starting from this origin, a normalized direction vector "g is

Proceedings of the 24th International Conference on Computers and Industrial Engineering

275

randomly generated. These two vectors are then used to initialize a new point g by using the formula g = ~o +O'g where 0 is a randomly generated step size. If the new point g is to be feasible, 0 must be chosen so that it is less than /

or

equal to its upper bound 0max where 0 m a x = m ~ n / - ~ , k g 0 T / A k ' g "T} (k = 1,2,3), ~,1=(0,1,-1),

"~2 = (0,-1,0) and ~'3 = (0,0,-1). Rounding Heuristic The purpose of the rounding heuristic is to modify the content of each chromosome in order to meet the integer requirements for the decision variables, The outline of the rounding heuristic is given below:

Step 1. Determine a normalized direction vector g from the chromosome g to the origin ~0. Step 2. Divide the straight line connecting g and x0 into L equal spaced sections. Let ~, be an index ( ~. = 1,2,...,L) with an initial value of ~.= 0.

Step3. Generate a new g' (~' = ~ + (3./L) [~o - ~l "ff) and round offthe decision variables in g' into integers. Step 4. Check the feasibility of the new g'. If it is feasible, go to Step 6; if not, go to Step 5. Step5. Perturb the decision variables in g' (one by one) by + 1 and check the feasibility again. If g' is feasible, go to Step 6; if not, increase ~. by 1 and go to Step 3. Step 6. Evaluate the objective function value of the chromosome ~ by substituting the g' into the objective function (1). The rounding procedure stops. Reproduction Operation Reproduction operation is used to select those potential chromosomes from the current population. The intrinsic principle of this operation is to increase the chance of survive for those well-performed chromosomes by giving them a higher selective pressure. In order to make this probabilistic process possible, the cost performance of chromosomes are transformed as fitness values. In this paper, the ranking procedure proposed by Baker (1985) is adopted with the selective pressure of the best chromosome fixed at 2. Under this scheme, chromosomes are sorted according to their objective function values and then ranks are assigned to them as their f'maess values, f. The probability of selecting a chromosome as a parent is then defined by Pscl~t = f / E i f i where )-'ifi is the sum of fitness values over the whole population.

Crossover Operation The exploration and exploitation of the solution space is made possible by exchanging genetic materials (information) of the parent chromosomes. The occurrence of a crossover operation is controlled by a pre-specified parameter Pc~o,,. Each time when it is activated, a pair of parent chromosomes xl and g2 are mated such that a new chromosome called offspring g is generated. The outline of the crossover operation is given below:

Step I. Arrange the parent chromosomes g~ and x2 in such a way that the fitness value of x'l is greater than or equal to that of

g2 -

Step 2. Determine the normalized direction vector "g" from g2 to gl. Step 3. Generate an offspring chromosome g by using a random step size 0 (0 < 0 < 0max, see the section of Initialization Procedure above) and substitute it into the equation ~ = ~2 + 05.

Mutation Operation Mutation operation is used to prevent the search process from converging to local optima rapidly. It is another probabilistic operation for which its occurrence is controlled by a pre-specified parameter Pmutate• Unlike crossover, it is applied to a single chromosome, ~. The outline of the mutation operation is given below:

276

Proceedings of the 24th International Conference on Computers and Industrial Engineering Step 1. Set k=1. Step 2. Check for the condition A k 2T = 0 where ~'1 = ( 0 , 1 , - ! ) , ~'2 =(0,-1,0) and ~'3 =(0,0,-1). If it is satisfied, go to Step 3; if not, increase k by 1 and either go back to Step 2 when k < 2 or go to Step 6 when k>2. Step 3. Perturb the chromosome 2 by randomly replacing two bits x i and xj (Aki,Akj ;e0) by xI and x~ where x[ = 0 and x~ = ( AkjX j + AkiX i )/Akj . Step 4. Check for the feasibility of the perturbed ~. If it is not feasible, go to Step 5; otherwise, record the perturbed ~' and increase k by I. Then either go back to Step 2 when k -<2 or go to Step 6 when k > 2. Step 5. Determine a normalized direction vector ~ from the perturbed ~ to ~ and shilt the perturbed ~ to a new location ~" by ~'" = perturbed ~"+ 0~" where 0 is calculated by 0 = - A k (perturbed ~)T / Z, k'~ T" Record ~" and increase k by l, then go to Step 2 when k < 2 or go to Step 6 when k > 2. Step 6. Compare the objective function values of the recorded chromosomes. The one which has the greatest objective function value will be chosen as the new chromosome ~'. NUMERICAL EXAMPLE The preceding theory can be conveniently illustrated by considering an item which has the following characteristics: Ct = $60 per order, C 2 -- $10 per unit per year, C a = $120 per unit per year, C~ = $80 per order, C a = $1 per unit, ~. = 20 customer orders per year, L= 0.3 year. The demand patterns are shown in Table I. The problem is solved by means of the genetic search algorithm with a population size of 40, and the probabilities of crossover and mutation, respectively, are 0.6 and 0.001. When the genetic search algorithm is used to determine the optimal replenishment policy for the item, it can be shown s*=38 units, S*=82 units and w*=20 units. The corresponding expected annual inventory cost is $631.20, which is exactly the global optimal solution. The search procedure is effective since it takes about 25 seconds to locate the optimal solution in the first 20 generations by using an IBM compatible Pentium Pro 200PC with the computer code written in Turbo Pascal. However, if no maximum issue quantity is specified in the inventory control policy, the new optimal solution becomes s*=48 units and S*=97 units. The corresponding expected inventory cost is $690.63. These numerical results clearly indicate that the introduction of an appropriate maximum issue quantity and joint replenishments leads to a cost reduction of $59.43 (8.6%). Table I. Demand patterns. (Transaction sizes with zero probability are excluded from the table) Transaction size 1 2 3 4 5 6 7 8 9 10 12 14 15 Probability 0.2 0.15 0.15 0.15 0.01 0.03 0.02 0.03 0.03 0.05 0.05 0.03 0.05 Transaction size 18 20 24 25 28 30 32 36 40 42 45 50 Probability 0.01 0.01 0.01 0.005 0.002 0.002 0.002 0.002 0.002 0.001 0.002 0.002 CONCLUSIONS In this paper, a mathematical model has been developed for an inventory system in which a maximum issue quantity of w units is incorporated into the inventory control policy. In order to avoid disrupting the inventory system, a customer order with size less than or equal to w will be met from stock; otherwise, it will be treated as a special order to be met by scheduling a special replenishment order and arranging a direct delivery of the goods to the customer, thus by-passing the inventory system. A search procedure has been presented for determining the optimal solution of the problem. The results of an numerical example have indicated that the incorporation of an appropriate maximum issue quantity into the inventory control policy can indeed lead to better cost performance. REFERENCES Baker, J.E. (1985). Adaptive selection methods for genetic algorithms, Proceedings of the First International

Conference on Genetic Algorithms and their Applications, 101-I 11. Goldberg, D.E. (1989). Genetic Algorithms in Search, Optimization, and Machine Learning. Addison-Wesley, Reading,. Matz, A.W. (1983). The shop counter maximum issue problem, OMEGA, 11, 75-79. Silver, E.A. (1970). Some ideas related to the inventory control of items having erratic demand patterns, CORS, 8, 87-100. Ward, J.B. (1978). Determining reorder points when demand is lumpy. Mgmt. Sci., 24, 623-632.