10
The European Applied Business Research Conference Rothenburg, Germany 2002 1 Using Genetic Algorithms To Optimise Kanban-Based Production System M. Al-Tahat, (E-mail: [email protected]), University of Bologna, Italy A. Liverani, (E-mail: [email protected]), University of Bologna, Italy F. Persiani, University of Bologna, Italy G. Caligiana, University of Bologna, Italy Abstract Evolutionary computational methods as Genetic Algorithms GAs have proven to be a robust search technique for solving deterministic problems. GA handles its search by giving out a popu- lation of solutions for an optimisation problem based on principles from evolution. This paper de- scribes the use of GA strategies in a stochastic process of a Kanban based manufacturing system, to optimise Work In Progress WIP holding cost. The GA search determines the minimum WIP holding cost and the corresponding Kanban numbers and production rate required to meet cus- tomer demand rate. The procedures are illustrated with an applied problem consisting of many decision variables. Insights are provided on the effect of the population size, maximum generation of offspring solutions and string length on the fitness of the solutions. The solutions found by the GA search indicate that the GA search provides good solutions for optimising Kanban problems. Introduction In previous work a method for the purpose of determining the Kanban system parameters was introduced for a multi-product multi-stage manufacturing environment [5]. Consequently we have introduced in [6] a Kanban based marketing tool, which enhances the sale department efficiency. The solutions in both mentioned work were found by a traditional computing way through developing proprietary computer program commands, and were found based on the formulation approach for Kanban based production lines, which had been presented by Bhaba in terms of total production cost [1]. Here the production total cost will be investigated deeply; particularly the cost of WIP will be analysed. As it was observed previously in Bhaba model the elements of the total production cost are: Raw material inventory holding cost, Cost of WIP inventory Tc ; and finished product inventory cost. The scope of this research is to analyse the second cost element – cost of WIP -- and to apply Genetic Algorithms GA approach to find the best fitness for the cost of WIP inventory [4]. Genetic Algorithms GAs I. Rechenberg introduced idea of evolutionary computing in the 1960s in his work "Evolution strategies" (Evolutions strategies in original). Other researchers then developed his idea. GAs were invented by John Holland and developed by him and his students and colleagues at the university of Michigan [3]. This leads to Holland's book "Adoption in Natural and Artificial Systems" published in 1975. In 1992 John Koza has used genetic algorithm to evolve programs to perform certain tasks. He called his method "genetic programming" GP. LISP programs were used, because programs in this language can be expressed in the form of a "parse tree, which is the object the GA works on [2]. All living organisms consist of cells. In each cell there is the same set of chromosomes. Chromosomes are strings of DNA and serves as a model for the whole organism. A chromosome consists of genes, blocks of DNA. Each gene encodes a particular protein. Basically it can be said, that each gene encodes a trait, for example colour of eyes. Possible settings for a trait (e.g. blue, brown) are called alleles. Each gene has its own position in the chromo- some. This position is called locus. Complete set of genetic material (all chromosomes) is called genome. Particular set of genes in genome is called genotype. The genotype constitutes, with later development after birth, the base for the organism's phenotype, it determines its physical and mental characteristics, such as eye colour, intelligence etc.

Using Genetic Algorithms To Optimise Kanban-Based ... · Using Genetic Algorithms To Optimise Kanban-Based Production System ... The offspring are inserted into the population

Embed Size (px)

Citation preview

The European Applied Business Research Conference Rothenburg, Germany 2002

1

Using Genetic Algorithms To Optimise Kanban-Based Production System

M. Al-Tahat, (E-mail: [email protected]), University of Bologna, Italy A. Liverani, (E-mail: [email protected]), University of Bologna, Italy

F. Persiani, University of Bologna, Italy G. Caligiana, University of Bologna, Italy

Abstract

Evolutionary computational methods as Genetic Algorithms GAs have proven to be a robust search technique for solving deterministic problems. GA handles its search by giving out a popu-lation of solutions for an optimisation problem based on principles from evolution. This paper de-scribes the use of GA strategies in a stochastic process of a Kanban based manufacturing system, to optimise Work In Progress WIP holding cost. The GA search determines the minimum WIP holding cost and the corresponding Kanban numbers and production rate required to meet cus-tomer demand rate. The procedures are illustrated with an applied problem consisting of many decision variables. Insights are provided on the effect of the population size, maximum generation of offspring solutions and string length on the fitness of the solutions. The solutions found by the GA search indicate that the GA search provides good solutions for optimising Kanban problems.

Introduction

In previous work a method for the purpose of determining the Kanban system parameters was introduced for a multi-product multi-stage manufacturing environment [5]. Consequently we have introduced in [6] a Kanban based marketing tool, which enhances the sale department efficiency. The solutions in both mentioned work were found by a traditional computing way through developing proprietary computer program commands, and were found based on the formulation approach for Kanban based production lines, which had been presented by Bhaba in terms of total production cost [1]. Here the production total cost will be investigated deeply; particularly the cost of WIP will be analysed. As it was observed previously in Bhaba model the elements of the total production cost are: Raw material inventory holding cost, Cost of WIP inventory Tc ; and finished product inventory cost. The scope of this research is to analyse the second cost element – cost of WIP -- and to apply Genetic Algorithms GA approach to find the best fitness for the cost of WIP inventory [4]. Genetic Algorithms GAs

I. Rechenberg introduced idea of evolutionary computing in the 1960s in his work "Evolution strategies" (Evolutions strategies in original). Other researchers then developed his idea. GAs were invented by John Holland and developed by him and his students and colleagues at the university of Michigan [3]. This leads to Holland's book "Adoption in Natural and Artificial Systems" published in 1975. In 1992 John Koza has used genetic algorithm to evolve programs to perform certain tasks. He called his method "genetic programming" GP. LISP programs were used, because programs in this language can be expressed in the form of a "parse tree, which is the object the GA works on [2].

All living organisms consist of cells. In each cell there is the same set of chromosomes. Chromosomes are strings of DNA and serves as a model for the whole organism. A chromosome consists of genes, blocks of DNA. Each gene encodes a particular protein. Basically it can be said, that each gene encodes a trait, for example colour of eyes. Possible settings for a trait (e.g. blue, brown) are called alleles. Each gene has its own position in the chromo-some. This position is called locus. Complete set of genetic material (all chromosomes) is called genome. Particular set of genes in genome is called genotype. The genotype constitutes, with later development after birth, the base for the organism's phenotype, it determines its physical and mental characteristics, such as eye colour, intelligence etc.

The European Applied Business Research Conference Rothenburg, Germany 2002

2

During reproduction, first of all occurs recombination (or crossover). Genes from parents form, in some way, the whole rearrange new chromosome. The new created offspring can then be mutated. Mutation means, that the elements of DNA can be locally changed at random. These changes are mainly caused by errors in copying genes from parents. The fitness of an organism is measured by success of the organism in its life.

GAs is stochastic search methods that mimic the behaviour of natural biological evolution. Genetic algo-rithms operate on a population of potential solutions applying the principle of survival of the fittest to produce better and better approximations to a solution. At each generation, a new set of approximations is created by the process of selecting individuals according to their level of fitness in the problem domain and of breeding them together using operators borrowed from natural genetics. This process leads to the evolution of populations of individuals that are better suited to their environment than the individuals by which they were created from, just as in natural adaptation [7].

GAs model natural processes, such as selection, recombination, mutation, migration, locality, and neighbourhood. Figure [1.1], which is found in Internet websites shows the structure of a simple genetic algorithm. Evolutionary algorithms work on populations of individuals instead of single solutions. In this way the search is per-formed in a parallel manner. At the beginning as indicated in the figure, population is considered made by number of individuals randomly chosen. The objective function is then evaluated for these individuals. The first/initial genera-tion is produced. If the optimisation criteria are not met the creation of a new generation starts.

Figure [1.1]: Structure of Single Population Genetic Algorithm.

Individuals are selected according to their fitness for the production of offspring. Parents are recombined to produce offspring. All offspring will be mutated with a certain probability. The fitness of the offspring is then com-puted. The offspring are inserted into the population replacing the parents, producing a new generation. This cycle is performed until the optimisation criteria is satisfied. Such a single population evolutionary algorithm is powerful and performs well on a broad class of problems. However, better results can be obtained by introducing many popu-lations, called subpopulations. Every subpopulation evolves for a few generations isolated (like the single population evolutionary algorithm) before one or more individuals are exchanged between the subpopulations. The Multi popu-lation evolutionary algorithm models the evolution of a species in a way more similar to nature than the single popu-lation evolutionary algorithm. Problem Definition The following notations have been used in order to formulate the interactions of the different production cost parameters:

The European Applied Business Research Conference Rothenburg, Germany 2002

3

∑=

+++=

N

1j3j

2jj

31

2j

210

avgk21

k1

k1

3pT

k2TP

T1W

The objective of this work is to use GA to optimise the total WIP holding cost in a Kanban based produc-tion line and to find the corresponding number of Kanban.

If the average WIP inventory between the two workstations is represented by and calculated as shown below [5] then the total holding cost of WIP inventory Tc in terms of the number of Kanban

jk employed in Kanban stage j , for a N -stage Kanban system will be given by the following [1].

When substituting avgW in Tc the final detailed equation for calculating the WIP holding cost in terms of

the number of Kanban jk employed in Kanban stage j , for a N -stage Kanban system will be as below:

∑=

++++=

N

j jjjj

jjj kkk

pTkTP

TH

WkTc1

32

31

2

210

2111

32

Where the values of T , 1T are given by:

ωω RQDD

T**22

00 +±−=

pDpPP

T F**2200

1

+±−=

It is obviously shown that the total Tc is the cumulative summation of WIP cost for all Kanban stages.

avgW

( )∑=

+=N

javgjjj WHWkTc

1

The European Applied Business Research Conference Rothenburg, Germany 2002

4

Therefore WIP cost at a particular Kanban stage for a particular product will be found by:

++++= 32

31

2

210

2111

32 jjjj

jjjj kkk

pTkTP

TH

WkTc

As a result, the general fitness function for calculating the WIP cost for a product in a general Kanban stage

– between two adjacent workstations-- Sc could be written as in the following formula. This function will be util-ized by genetic algorithms approach to achieve our research objectives.

++++= 32

31

2

210

2111

32 kkkpT

kTP

THkWSc

Solving of Fitness Function

We will try to minimize the solutions of the above formula by genetic algorithm. As shown, the cost func-tion implies many input variables. A computer program has been used to solve the best fitness of the WIP inventory cost (minimizing Sc ). Franco Persiani, Gianni Caligiana and Gian Marco Saggiani had been developed this com-puter program in the faculty of engineering at Bologna University. System parameters used in this program are shown in Figure [1.2]. The system uses the following genetic algorithm as described by David E.Goldberg [3]. 1. Randomly select an initial population of popsize parent solutions with a proper number of genes ngp for all

the variables npar0 of the fitness functions; therefore the chromosomes or string length 1chrom will be de-termined. Popsize is recommended to be odd valued to serve the idea of elitism.

2. It score the initial selected solutions with the fitness function Sc . 3. Using roulette wheel selection method. It selects two parent’s solutions (chromosomes) from the

population, according to their fitness, to become parents for crossover and mutating. 4. After parent’s selections, the system makes a step to crossover. Crossover selects genes from parent chro-

mosomes and creates a new offspring by choosing randomly single crossover point with pcross probability of crossover.

5. After a crossover is performed, mutation with probability of pmutation takes place. This is to prevent all so-lutions in population to fall into a local optimum of the solution value. Mutation changes randomly the new offspring.

6. The program comes back to step (3) until the desired number of offspring solutions is generated max-gen=max.

7. All new offspring solutions Score with the fitness function Sc . 8. The program returns to step (3) until termination criterion met.

The European Applied Business Research Conference Rothenburg, Germany 2002

5

Variables of fitness function Population Chromosome npar0=1 npar0=j npar0=npar0 Size No:

ngp0

=1

ngp0

=2

. . . .

ngp0

=j

. . . ngp0

= ng

p0

ngp0

=1

ngp0

=2

. . . .

ngp0

=j

. . . ngp0

= ng

p0

popsize=1 1 0 1 . . . . 1 . . . 0 . 1 1 . . . . 0 . . . 1 popsize=2 2 1 0 . . . . 0 . . . 1 . 0 0 . . . . 0 . . . 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . popsize=j j 1 0 . . . . 1 . . . 0 . 0 1 . . . . 0 . . . 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . popsize= popsize popsize 0 1 . . . . 0 . . . 1 . 1 0 . . . . 1 . . . 0

Figure [1.2]: System Parameters of the Developed Computer Program. Starting Up the System A value for unit holding cost of WIP inventory is assumed equal to 2.0=H ($/unit/unit time) and a value for the cost of withdrawing Kanban between two-workstation is set equal to 10=W ($/Kanban) so that, the fitness func-tion will be as below.

( ) ( )

++

++−+

++−

++−+= 32

12 2

002

0

2 200

2

22 2

00

2111

32

2)2(

22.010

kkkpDPP

kP

QDDp

pDPPkSc F

R

F

ω

ω

This fitness function Sc as shown is function of seven fitness variables; these are: .,,,,, 00 RF andQDDPpk ω Note that the quantity of materials consumed during the production period is equal to the amount of raw materials supplied during that period of time for one-to-one conversion ratio (i.e., 1/ == RF QDf ). Furthermore initial values for all program system parameters are assumed. The assumed initial system parameters indicated in Figure [1.2] are de-scribed by a population of eleven chromosomes (solutions); each chromosome contains (string length) eight genes (alleles); a maximum of 500 offspring solutions (iterations) for the seven fitness variables and the corresponding fit-ness value is considered, A 0.05 probability of mutation and 0.6 probability of crossover is utilized to select the minimum fitness value among those solutions. Limits in Figure [1.3] are assumed for the seven variables fitness function.

The European Applied Business Research Conference Rothenburg, Germany 2002

6

The initial rough output results obtained based on the above assumptions are summarized in Figure [1.4].

These results are just to start up and to test the algorithm and have no physical interpretations. The fitness variable values have been verified with the above corresponding fitness value using Microsoft excel and the same results were obtained. Solutions Perfection Starting from the above initial solutions with the same assumptions, the model has been studied and ana-lysed under different values of system parameters. That had been done in order to get the perfect system parameters. The program has been run and results have been obtained to all of the following cases: Case 01. Popsize=11,maxgen=500,ngp0=8 Case 02. Popsize=15,maxgen=500,ngp0=8 Case 03. Popsize=21,maxgen=500,ngp0=8 Case 04. Popsize=27,maxgen=500,ngp0=8 Case 05. Popsize=11,maxgen=500,ngp0=12 Case 06. Popsize=11,maxgen=500,ngp0=16

The values for k,w,p,P0,DF,D0 that give the minimum fitness noted that DF=QR are: {1,1,4.5,996,1,1,} respectively. With a corresponding cost value (Sc)=10.001. For the following chromo-some structure:

{{{0,0,0,0,0,0,0,0}=k} {{0,0,0,0,0,0,0,0}=w} {{0,0,1,0,0,0,0,1}=p} {{1,1,1,1,1,1,1,0}=P0} {{0,0,0,0,0,0,0,0}=DF} {{0,0,0,0,0,0,0,0}=D0}}.

Fitness

(Off-

Figure [1.4]: Initial Solutions

16 ≥ kanban = variable [1]=k ≥1

20 ≥ drate =variable [2]=w ≥1

21 ≥ prate = variable [3]=p ≥2

1000 ≥ pratet0 = variable [4]=P0 ≥1

10000 ≥ fprdemand = variable [5]=DF ≥1

1000 ≥ dratet0 = variable [6]=D0 ≥1

10000 ≥ rmorderedqty = variable [7]=QR ≥1

W ≤ P

Figure [1.3]: Variables of Fitness Function Limits.

The European Applied Business Research Conference Rothenburg, Germany 2002

7

Case 07. Popsize=11,maxgen=500,ngp0=20 Case 08. Popsize=11,maxgen=500,ngp0=24 Case 09. Popsize=11,maxgen=400,ngp0=24 Case 10. Popsize=11,maxgen=300,ngp0=24 Case 11. Popsize=11,maxgen=200,ngp0=24 Case 12. Popsize=11,maxgen=100,ngp0=24 Case 13. Popsize=27,maxgen=100,ngp0=24 Case 14. Popsize=27,maxgen=100,ngp0=30 Case 15. Popsize=27,maxgen=100,ngp0=36 Case 16. Popsize=27,maxgen=100,ngp0=42 It has been found that the best system parameters to be used are those in case 16 where Popsize=27 max-gen=100 and ngp0=42. The corresponding solutions for these parameters based on 100 offspring solutions are summarized bellow in Figure [1.5]. . Kanban System Design Through the above sections we clearly reveal a methodology of using genetic algorithms to minimize the WIP cost by demonstrating a general solutions under specific assumptions. This methodology will be used here with its corresponding assumptions to design and operate a particular Kanban-based production line given a selected pro-duction parameters values. Given a values for FR andDQ,ω the system will calculate the best values of the other fitness variables that give the minimum WIP cost.

20 40 60 80 100Iter .No.

12

14

16

18

20p

(B): Change of prduc-tion rate.

20 40 60 80 100Iter .No.

20.02

20.04

20.06

20.08

20.1

20.12

Fitness

(A): Fitness behaviour.

20 40 60 80 100Iter .No.

1

2

3

4k

(C):Change of Kanban.

20 40 60 80 100Iter .No.

6

8

10

12

w (D): Change of demand rate.

The values for k,w,p,P0,DF,D0 that give the minimum fitness noted that DF=QR are: {2,11,15,1000,2,3,} respectively. With a corresponding cost value (Sc)=20.0002. For the following chromosome structure:

{{{000010011011001011110100001101011010110111}=k} {{011111111110011011101100010110010001110000}=w} {{101010010111111100111000011100100000100110}=p} {{111111111111101100001000010100010101100111}=P0} {{000000000000001110001000001011100111101110}=DF} {{000000000111100101100011111111010011101000}=D0}}.

Figure [1.5]: Solutions for Best System Parameters.

The European Applied Business Research Conference Rothenburg, Germany 2002

8

The problem then is to design a Kanban production line--by finding the Kanban numbers and sizes re-

quired-- and to plan the operations of this line – by finding the values of initial production and initial demand quanti-ties--. Assume 25002500,8 === FR andDQω . Under this situation Kanban model could be expressed by the follow-ing fitness. Consequently the variables limits of fitness function will assumed to be as shown in Figure [1.6].

( )

++−

+++

++−

++−+=

35.011

2111

215000*

64.05.0.5.225.011

102

322222

22 p

kkkkppp

kScω

ω

The solutions of the above problem for popsize =27,maxgen= 100, ngp0=42, 0.05 probability of mutation and 0.6 probability of crossover are shown in Figure [1.7]. It is obviously shown in the figure that the best Kanban numbers are two with size equal to 1250 unit of production for each Kanban. The corresponding Machining centre for this stage of production should have a capacity of at least 9 (unit/ unit of time). This Kanban line meet a cus-tomer demand rate of 8 (units/unit time) with a minimum WIP inventory cost of 27 ($), initial production quantity at the beginning of production period of 983 units and initial demand quantity at the beginning of production period of 2 units. Results and Conclusions Kanban technique has been used to achieve the goal of JIT philosophy in a production environment to maximize the profit and to improve the effectiveness of production line. The research issue considered here is one of the main problems faced Kanban-based production lines that operate in an industry which are very susceptible to market competition. Consequences obtained in this study endow with insights to the application of GA to the Kan-ban numbers and sizes determination problems and the utility of this technique to industry. It has been shown that the application is realizable and able to create a sound results with a satisfactory quality of generated solution.

16 ≥ kanban = variable [1]=k ≥1

drate =variable [2]=w = 8

21 ≥ prate = variable [3]=p ≥2

1000 ≥ pratet0 = variable [4]=P0 ≥1

fprdemand = variable [5]=DF =2500

1000 ≥ dratet0 = variable [6]=D0 ≥1

rmorderedqty = variable [7]=QR =2500

W ≤ P

Figure [1.6]: Variables of Fitness Function Limits.

The European Applied Business Research Conference Rothenburg, Germany 2002

9

(A):Change of Kanban.

5 10 15 20 25 30Iter .No.

2.2

2.4

2.6

2.8

3

k

(B):Change of production rate.

5 10 15 20 25 30Iter .No.

10

12

14

16

18

p

5 10 15 20 25 30Iter .No.

25

50

75

100

125

150

D0

(D):Change of initial demand

5 10 15 20 25 30Iter .No.

800

850

900

950

P0

(C):Change of initial production.

5 10 15 20 25 30Iter .No.

30

32

34

36

Fitness

(E): Fitness function Behavior.

The values for k,w,p,P0,DF,D0 that give the minimum fitness noted that DF=QR are: {2,8,9,983,2500,2,2500} respectively. With a correspond-ing cost value (Sc)=27 for the following chromosome structure: {{{000000101111011100011000101111011000011001}=k} {{111110011110000110000100100101111011110000}=w} {{010111101011010101101010011100001100110011}=p} {{111110111011110010111010001011110101001000}=P0} {{001110001011101101111011101001000100001101}=DF} {{000000000100100111011001100101110111000010}=D0}}

Figure [1.7]: Designing and Operating of Kanban System

The approach has been presented with the goal of being used between two adjacent workstations in Kanban based production lines. As expected, better results were obtained as the population size, offspring solutions numbers and chromosomes string length are increase till they reach a certain values equal to popsize, maxgen=max and ngp0 respectively. Any further increase of these values will not recover the fitness function, but that will affect negatively the time needed to run the system. It has been demonstrated how we got the best values of 27,100,42 respectively for such previous constraints.

The European Applied Business Research Conference Rothenburg, Germany 2002

10

Summary

This paper has demonstrated the use of genetic algorithm to design and plan a Kanban based production line for two adjacent workstations to attain a minimum cost of WIP between the two stations. A generic production and inventory control system has been outlined. An optimisation procedure was then used to determine how the sys-tem parameters would change with cost structure model within Kanban production line. Considerations are on weight of WIP carrying costs. The effect of each of the system parameters has been analysed. Five system parame-ters of a production line have been described and quantified. The first system of these is represented by variables of fitness function and production model, which ensures that WIP is kept to a minimum. Variables of fitness function are; Kanban number, production rate, demand rate, initial production quantity, initial demand quantity, finished product demand, and raw material ordered quantity. The second is population size. The others are offspring solu-tions number, string length of chromosomes, and finally probability of mutation and crossover. These ensure that the WIP costs are kept to a minimum in response to random patterns of demand and the system is robust to generate a variety of improved solutions in a proper time. The fitness variables values have been verified for all types of previ-ous solutions using Microsoft excel and the same results were obtained as shown in the Figure [1.8] bellow. Recommendation for Future Research

The present study is limited to only two adjacent Kanban-based workstations. It may be worthwhile to fo-cus future research on the design of such approach for multi stages multi-products serial production line. References 1. Bhaba R. Sarker, and Chidambaram V. Balan. 1999. “Operations planning for a multi-stage Kanban sys-

tem”. European Journal of Operational Research, Volume 112, Issue 2, Pages 284-303. 2. Darrell Whitley. December 2001. “An overview of evolutionary algorithms: practical issues and common

pitfalls. Information and software technology. Volume 43, Issue 14, Pages 817-831. 3. David E.Goldberg. 1989. “Genetic Algorithms in Search, Optimization, and machine learning”. Addison-

Wesley. 4. John D., Royce O., and John M., August 1996,“Using Evolution Strategies and Simulation to Optimise a

Pull Production System,” Journal of Materials Processing Technology, Volume 61, Issue 1-2, Pages 47-52. 5. M. Al-Tahat, A. Liverani, and F. Persiani 2001,Sept.23-27 “Computer Supported Design Of Flexible Kan-

ban System For A Multi-Stage Multi-Product Manufacturing” First International Industrial Engineering Conference Amman-Jordan.

6. M. Al-Tahat, A. Liverani, F. Persiani 2001,Sept.5-7 “Design of a Marketing Decision Support Method for Price Quotation In a multi-Stage Single-product Kanban-Based Manufacturing Environment” XII ADM In-ternational Conference - Rimini – Italy.

7. S. M. Disney, M. M. Naim and D. R. Towill. December 2000. “Genetic algorithm optimisation of a class of inventory control systems”. International journals of production economics. Volume 68, Issue 3, Pages 259-278.

k w P0 p DF D0 QR Sc2 1 839 2 158 36 158 201 7 589 14 158 52 158 121 1 996 5 1 1 1 102 11 1000 15 2 3 2 202 8 983 9 2500 2 2500 27

Figure [1.8]: Verification of Results With Microsoft Excel