In previous work a method for the purpose of determining the Kanban system ...
based on the formulation approach for Kanban based production lines, which ...
The European Applied Business Research Conference
Rothenburg, Germany 2002
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 population of solutions for an optimisation problem based on principles from evolution. This paper describes 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 customer 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 chromosome. 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. 1
The European Applied Business Research Conference Rothenburg, Germany 2002 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 algorithms 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 performed 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 generation 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 computed. 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 populations, 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 population evolutionary algorithm models the evolution of a species in a way more similar to nature than the single population evolutionary algorithm. Problem Definition The following notations have been used in order to formulate the interactions of the different production cost parameters:
2
The European Applied Business Research Conference
Rothenburg, Germany 2002
The objective of this work is to use GA to optimise the total WIP holding cost in a Kanban based production line and to find the corresponding number of Kanban. If the average WIP inventory between the two workstations is represented by Wavg and calculated as of Kanban shown below [5] then the total holding cost of WIP inventory Tc in terms of the number k j employed in Kanban stage j , for a N -stage Kanban system will be given by the following [1].
N
(
)
Tc= ∑k jWj + HjWavg j=1
1 1 1 N P0T12 pT13 1 Wavg = ∑ + + + 3 k j k 2j 2k 3j T j=1 2k 2j
When substituting Wavg in Tc the final detailed equation for calculating the WIP holding cost in terms of the number of Kanban k j employed in Kanban stage j , for a N -stage Kanban system will be as below: N H j P0T12 pT13 1 + 1 + 1 Tc = ∑ k jW j + 2 + 2 3 T 2k j 3 k j k j 2k j j =1
Where the values of T , T1 are given by:
− D0 ± D0 + 2 * ω * QR 2
T=
ω 2
T1 =
− P0 ± P0 + 2 * p * DF p It is obviously shown that the total Tc is the cumulative summation of WIP cost for all Kanban stages. 3
The European Applied Business Research Conference Rothenburg, Germany 2002 Therefore WIP cost at a particular Kanban stage for a particular product will be found by:
Tc j = k jW j +
H j P0T12 pT13 1 1 1 + + + T 2 k 2j 3 k j k 2j 2 k 3j
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 utilized by genetic algorithms approach to achieve our research objectives.
Sc = kW +
H P0T12 pT13 1 1 1 + 2 + 3 2 + T 2k 3 k k 2k
Solving of Fitness Function We will try to minimize the solutions of the above formula by genetic algorithm. As shown, the cost function 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 computer 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. 2. 3. 4. 5. 6. 7. 8.
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 determined. Popsize is recommended to be odd valued to serve the idea of elitism. It score the initial selected solutions with the fitness function Sc . 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. After parent’s selections, the system makes a step to crossover. Crossover selects genes from parent chromosomes and creates a new offspring by choosing randomly single crossover point with pcross probability of crossover. After a crossover is performed, mutation with probability of pmutation takes place. This is to prevent all solutions in population to fall into a local optimum of the solution value. Mutation changes randomly the new offspring. The program comes back to step (3) until the desired number of offspring solutions is generated maxgen=max. All new offspring solutions Score with the fitness function Sc . The program returns to step (3) until termination criterion met.
4
popsize=1 popsize=2 . . . popsize=j . . . popsize= popsize
1 2 . . . j . . .
0 1 . . . 1 . . .
popsize
0 1 . . . . 0 .
Variables of fitness function npar0=j
ngp0=j . . . ngp0= ngp0
npar0=1 . . . .
ngp0=1 ngp0=2
Chromosome No:
ngp0=1 ngp0=2
Population Size
Rothenburg, Germany 2002
1 . . . . 1 . 0 . . . . 0 . . . . . . . 0 . . . . 1 . . . . . . . .
. .
. .
.
.
.
.
.
.
0 1 . . . 0 . . .
. . . . . . . . .
1 0 . . . 0 . . .
1 0 . . . 1 . . .
1
.
1 0
npar0=npar0 ....
ngp0=j . . . ngp0= ngp0
The European Applied Business Research Conference
....0 ....0 . . . ....0 . . .
. .
. .
. .
.
.
.
.
.
.
....1 .
.
.
1 1 . . . 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 H = 0.2 ($/unit/unit time) and a value for the cost of withdrawing Kanban between two-workstation is set equal to W = 10 ($/Kanban) so that, the fitness function will be as below.
Sc = 10k +
(
0.2ω − P0 + 2 P02 + 2 pDF
) P + (− P + 2
0 2
p 2 (− D0 + 2 D02 + 2ωQR ) 2k
0
2
P02 + 2 pDF 3
) 1 + 1 + 1
k
k2
1 2k 3
This fitness function Sc as shown is function of seven fitness variables; these are: k , p , ω , P0 , D F , D0 andQ R . 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., f = DF / QR = 1 ). Furthermore initial values for all program system parameters are assumed. The assumed initial system parameters indicated in Figure [1.2] are described 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 fitness 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.
5
The European Applied Business Research Conference
Rothenburg, Germany 2002
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 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.
Fitness 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 chromosome 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}}. (Off-
Figure [1.4]: Initial Solutions Solutions Perfection Starting from the above initial solutions with the same assumptions, the model has been studied and analysed 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 6
The European Applied Business Research Conference 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
Rothenburg, Germany 2002
It has been found that the best system parameters to be used are those in case 16 where Popsize=27 maxgen=100 and ngp0=42. The corresponding solutions for these parameters based on 100 offspring solutions are summarized bellow in Figure [1.5]. Fitness p 20
20.12
(A): Fitness behaviour.
20.1 20.08
18
(B): Change of prduc-
tion rate.
16
20.06
14
20.04
12
20.02 20
40
60
80
100
Iter .No.
k 4
20
w
(C):Change of Kanban.
3
40
60
80
100
Iter .No.
(D): Change of demand rate.
12 10
2
8
1
6
20
40
60
80
100
Iter .No.
20
40
60
80
100
Iter .No .
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}}.
Kanban System Design
Figure [1.5]: Solutions for Best System Parameters.
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 production parameters values. Given a values for ω , Q R andD F the system will calculate the best values of the other fitness variables that give the minimum WIP cost. 7
The European Applied Business Research Conference
Rothenburg, Germany 2002
The problem then is to design a Kanban production line--by finding the Kanban numbers and sizes required-- and to plan the operations of this line – by finding the values of initial production and initial demand quantities--. Assume ω = 8, Q R = 2500 andD F = 2500 . Under this situation Kanban model could be expressed by the following fitness. Consequently the variables limits of fitness function will assumed to be as shown in Figure [1.6].
(
)
2
1 1 1 −1 + 2 1+ 0.5 p ω −1+ 2 1+ 0.5 p + + 1 * 5000 + Sc = 10k + 2 2 3 3 k 2 2 k k k − 2 p 2 + 2.5 p 2 .2 0.5ω + 0.64
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 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 customer 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 Kanban 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.
8
The European Applied Business Research Conference
Rothenburg, Germany 2002 p
k 3
18
2.8
16
2.6
14
2.4 12 2.2 5
10
15
20
25
30
10
Iter .No.
5
(A):Change of Kanban.
10
15
20
25
30
Iter .No.
(B):Change of production rate. D0
P0 150 125
950
100
900
75
850
50
800
25
5
10
15
20
25
30
Iter .No.
(C):Change of initial production.
5
10
15
20
25
30
Iter .No.
(D):Change of initial demand
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 corresponding cost value (Sc)=27 for the following chromosome structure: {{{000000101111011100011000101111011000011001}=k} {{111110011110000110000100100101111011110000}=w} {{010111101011010101101010011100001100110011}=p} {{111110111011110010111010001011110101001000}=P0} {{001110001011101101111011101001000100001101}=DF} {{000000000100100111011001100101110111000010}=D0}}
Fitness 36 34 32 30 5
10
15
20
25
30
Iter .No .
(E): Fitness function Behavior. 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. 9
The European Applied Business Research Conference
Rothenburg, Germany 2002
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 system 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 parameters 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 solutions 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 previous solutions using Microsoft excel and the same results were obtained as shown in the Figure [1.8] bellow. k 2 1 1 2 2
w 1 7 1 11 8
P0 839 589 996 1000 983
p 2 14 5 15 9
DF 158 158 1 2 2500
D0 36 52 1 3 2
QR 158 158 1 2 2500
Sc 20 12 10 20 27
Figure [1.8]: Verification of Results With Microsoft Excel Recommendation for Future Research The present study is limited to only two adjacent Kanban-based workstations. It may be worthwhile to focus 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 system”. 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”. AddisonWesley. 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 Kanban 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 International 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.
10