Solving A Nonlinear Side Constrained Transportation Problem by Using Spanning Tree-based Genetic Algorithm with Fuzzy Logic Controller Yasuhiro Tsujimura *, Mitsuo Gen ** and Admi Syarif **,*** * Department of Computer and Information Engineering Nippon Institute of Technology, Japan E-mail: tujimr@nit.ac.jp ** Department of Industrial & Information Systems Engineering, Ashikaga Institute of Technology, Ashikaga 326-8558, Japan *** Department of Mathematics Lampung University, Bandar Lampung, Indonesia, 35148 Abstract: The nonlinear side constraint transportation problem (nsctp) arises when we want to find the reasonable assignment strategy to satisfy the source and destination requirement without shipping goods from sources to any pairs of prohibited destinations simultaneously so that the total cost can be minimized. With this side constraint, the difficulty of the problem increase significantly and it becomes impossible to solve it by using conventional software package such as LINDO. As there are exact methods to solve nsctp in the literatures, here we propose a hybrid spanning tree-based genetic algorithm using Prufer number representation to solve it. In this method, we incorporate fuzzy logic controller (FLC) to dynamically control the GA parameters. Comparisons with other conventional methods are presented and the results show the proposed approach to be better as a whole. Keywords: side constraint, transportation problem, Prufer number, Genetic Algorithm, fuzzy logic controller. I. INTRODUCTION Industrial development in the future will be depending on the efficiency of the transportation and the logistic activities. A transportation can be described as a flow of materials between two organizations. The first formulation and discussion of a planar transportation model was introduced by Hitchcock [1]. The objective is to find the way of transporting homogeneous product from several sources to several destinations so that the total cost can be minimized. The transportation problem (TP) is well known as one of practical network problems and there are many investigations of evolutionary approaches to solve the varieties of transportation problem. In real-world applications, it is often that the problems to be solved have a large-scale and has to satisfy several other additional constraints. For example, Sun [2] introduced the transportation problem with exclusionary side constraint. To solve this problem, he developed a Tabu search procedure. The Genetic Algorithm approach for solving this problem was also developed by Syarif and Gen [3]. Another similar problem called the transportation problem with nonlinear side constraint (nsctp) was introduced by Cao [4, 5]. In this model, the TP is extended satisfy additional constraints in which source centers cannot serve two different destinations which are given as the side constraint simultaneously. With this side constraint the difficulty of the problem increase drastically, while its applications to the real world also increase significantly. To solve this problem Tabu Search (TS) and branch-and-bound (B&B) approaches were developed. Though, it is shown that
their methods can give good result in most of the time, it can be guaranteed that their methods can give best solution all the time. In this paper, we consider the nsctp and propose a hybridized spanning tree-based genetic algorithm (hst-ga) using Prufer number representation to solve it. To improve the performance of the algorithm, the proposed method includes the concept of fuzzy logic controller (FLC) to make auto-tuning both crossover ratio and mutation ratio. In the next Section, the mathematical formulation of nsctp is given. Section 3 describes the hst-ga briefly. In Section 4, computational experiments are presented. The conclusion follows in Section 5 II. NONLINEAR SIDE CONSTRAINED TRANSPORATATION PROBLEM The transportation problem with nonlinear side constraints (nsc-tp) that we consider in this paper has many applications in our real world [4]. As one of examples, the posing of nsctp is as follows: In container terminal which is divided into several areas (indexed by i) and arriving containers are classified into several categories (index by j and k) according to certain criteria. The problem of assignment of the storage positions for arriving container is to find a reasonable assignment strategy so that the costs of operations (searching for and/or loading containers) can be minimized. The side constraint here represents some of necessary conditions (e.g., the limitation of the space in the storage so that some pair of different categories of containers cannot be stacked in the same areas. In other word, the source i cannot serve two destinations j and k simultaneously). Figure 1 illustrates one of examples of nsc-tp graph and its basis solution with the side constraint {(1,3)}. The nsctp with given m plants and n consumers can be formulated as follows: min f (x ) = s.t. i= 1 x = b, i= 1 j= 1 x = a, c x i = 1,2,..., m j = 1,2,..., n ) xxik = 0, for ( i, j, k) T = {( i, j, k) x 0, and integer i, j n j= 1 m m j i n ( where i : index of supply nodes (sources) j : index of the demand nodes (1) (2) (3) j, k) Di, i} (4) (5) x : quantity to be transported from source i to destination j c : the cost per unit amount transported from i source i to destination j. D :{(, k ) j k, j the pair of destination j and k can not be served by a supply i at the same time}, given in practice for all i. a i : the supply at source i b j : the demand at destination j In the above model, the constraint (4) represents the set of additional nonlinear side constraints. The percentage density d s of conflicting pair of the side constraint (i.e., j and k in (4)) is defined as follows: d = (6) s 2 * n c *100 ( m * n ) where n c is the number of constraint in (4). III. DESIGN OF ALGORITHM Figure 1: Illustration of nsc-tp graph Genetic Algorithm (GA) is one of powerful and stochastic tools for solving various optimal design problems including variety of extended transportation problems. It can handle any kind of nonlinear objective functions and constraint without any transformation [8]. For the literature
using matrix-based GA for solving the varieties of transportation problem, the readers can refer to [8. 9]. A. Spanning tree-based GA The use of spanning tree-based genetic algorithm (st-ga) to overcome some network optimization problems were introduced by Gen and Cheng [6, 7]. They utilized the Prüfer number [10] encoding based on a spanning tree which is adopted as it is capable of equally and uniquely representing all possible trees. Using the Prüfer number representation the memory only requires m+n-2 on the problem with m sources and n destinations. They showed that st-ga works very well for those problems and gives better performance in the sense of time and memory consuming (See [6, 7] for this comment). Since Prüfer number is one of the node encodings for the tree, it can be used to encode a transportation graph. The encoding procedure for converting a tree into a Prüfer number and also the decoding procedure for converting a Prüfer number into a tree are clearly given in [6, 7]. 1. Initialization and Feasibility of Chromosome The initialization of a chromosome (i.e., a Prüfer number) is performed from randomly generated m+n-2 digits in range [1, m + n]. However, it is possible to generate an infeasible chromosome, which cannot be adapted to generate a transportation tree or does not satisfy the side constraint. In our previous work [3], we designed the checking the feasibility and repairing procedure for an infeasible Prufer number. After generating a feasible Prüfer number which is a candidate basic feasible solution to the problem, we have to decode the Prüfer number into spanning tree and check it for the side constraint (4). In this sense, when assigning the number of products to be transported, we have to check whether the destination numbers are belong to the part of the set of side constraints or not. If it is belong to the part of the set of side constraints, the number of products to be transported should satisfy the side constraint equation (4). The chromosome which does not satisfy the side constraint (4) is rejected by giving a finalty value. 2. Genetic Operations!"Crossover The crossover is done for exchanging the information of two parents and providing a powerful exploration capability. In this paper, we employ a one-cut-point crossover, which randomly selects a one-cut-point and exchanges the right parts of two parents to generate offspring.!"mutation Modifying one or more of the gene values of an existing individual, mutation creates new individual to increase the variability of the population. Here, we use inversion and displacement mutations that can guarantee to generate feasible chromosome when the parents are feasible.!" Evaluation and Selection As in nature, it is necessary to provide driving mechanism for better individual to survive. Evaluation is to associate each chromosome with a fitness value that shows how good it based on its achievement of the objective function As the selection procedure, we use the mixed strategy with ( µ + λ ) -selection and roulette wheel selection that can enforce the best chromosomes into the next generation. This strategy selects µ best chromosomes from µ parents and λ offspring. If there are no µ different chromosomes available, then the vacant pool of population is filled up with roulette wheel selection. Automatic Fine Tuning for GA Parameters using Fuzzy Logic Controller It has been noted before that GA has been proven to a versatile approach for searching the global optimality. However, it also has a disheartening weakness in taking too much time to reach a fine satisfactory solution. In order to overcame this weakness, some authors even proposed to combine GA with local search method (i.e. hill climbing method) to have a rapid convergence. The pioneer work in extending the fuzzy logic controller (FLC) to dynamically control the GA parameter was done by Lee and Takagi [11] Xu and Vukovich [12], Zeng and Rabenasolo [13] and Wang et. al. [14].]. The main idea of using FLC is to
automatically adjust the GA parameters (i.e. crossover and mutation) during the evolutionary process. In our implementation of fuzzy logic controller, we make modification on Wang et al. s concepts [14] to regulate automatically the GA parameters, crossover ratio p C and mutation ratio p M. The heuristic updating principles for the crossover and mutation ratio are to consider changes in the average fitness of the populations. As the inputs to the crossover fuzzy logic controller are changes in average fitness at consecutive two generations and the output is the change in crossover ratio c(t). Based on a number of experiment and domain expert opinion, the input values are respectively normalized into the range [-4.0,4.0] according to their corresponding maximum/minimum values. The membership function µ of fuzzy all input and output linguistic variables are illustrated in Figure 2. Figure 2. Membership function for f ( ν, t 1), f ( ν, t), c( t), m( t) where: NR--Negative larger, NL ---Negative large, NM --- Negative medium NS -- Negative Small, ZE --- Zero, PS ---- Positive small, PM -- Positive medium, PL --- Positive large, PR --- Positive large For simplicity, we set up a look-up table for fuzzy logic controller action as shown in Table 1. Using look-up table in the Tale 1, the value of Z( i, j) is found. TABLE 1. FUZZY DECISION TABLE To get the output of this fuzzy logic scheme, we use the following formula: c ( t) = Z( i, j) 0.02 (7) where i, j { 4, 3, 2, 1,0,1,2,3,4 }. After getting the output of this fuzzy logic controller system, then the crossover ratio for the next generation is regulated as follows: pc (t+1)= pc(t)+ c(t) (8) We use the similar concept to regulate the mutation ratio. The input is the same as in the fuzzy logic controller for crossover ratio. The output is the change in the mutation value. The membership function µ of f ( v; t 1), f ( v; t ), c(t) and m(t) are also given in Figure 5. The fuzzy decision table and look-up table of this mutation fuzzy controller are the same concept as in crossover fuzzy controller. However the control action is done using the following formula: m ( t) = Z( i, j) 0.002 (9) where i, j { 4, 3, 2, 1,0,1,2,3,4 }. The mutation ratio for the next generation is regulated as follows: p M (t+1) = p M (t)+ m(t) (10) IV. NUMERICAL EXPERIMENTS The proposed genetic algorithm called hst-ga was implemented in C language and run on PC Pentium 1400 MHz. To see the performance of the proposed method, we also developed the classical spanning tree-based genetic algorithm (without fuzzy logic controller) and traditional matrix based genetic algorithm. We used the test problems
TABLE 2. EXPERIMENTAL RESULTS m-ga st-ga hst-ga Prob. m n N C p_size m_gen worst AVG best worst AVG best worst AVG best 1 6 8 6 20 300 979 965 940 990 970 950 980 961 940 6 30 500 970 949 930 970 945 930 970 943 930 2 8 10 10 50 500 2410 2275 2170 2220 2211 2160 2210 2201 2150 10 100 1000 2290 2223 2170 2210 2175 2160 2200 2176 2150 3 10 15 15 150 1000 3450 3314 3240 3350 3258 3160 3280 3201 3160 15 200 1500 3320 3276 3220 3280 3202 3150 3250 3200 3150 with the size denoted by m n where size are 6 8, 8 10 and 10 15. For these experiments, shipping cost are assumed to be uniformly and randomly distributed in the range of [2,7]. Using the proposed GA, we set the initial mutation rate 0.2 and crossover rate 0.4, which are known as better parameter setting. Similarly, for the other two methods, mutation rate and crossover rate are fixed as 0.2 and 0.4. The simulations were carried out on each problem by giving different Population size and maximum generation. All methods were run 10 times for each problem and then we take the average of them. In table 3, we summarize the comparative results of proposed method with those of matrix-based GA and spanning tree-based genetic algorithm (st-ga). From this table, though all methods can search the same best solution for the relatively small size problem, we can see that our proposed method still gives better average value. For larger scale examples, it is shown that our proposed method gives the better results as a whole. Figure 3 shows the convergence behavior the methods in the generation. It is clearly shown in this Figure that our proposed method gives better convergence than that of the other methods. The behaviors of the crossover and mutation rate of our proposed method in the generation are shown in the following figure 4. Figure 4. The crossover and mutation ratios in the generation Figure 5. Comparative computational time Figure 3. Average fitness value in the generation By using the density of conflicting side constraint in equation (6), the comparative computational cost of the methods with respect to density of the side constraint is illustrated in Figure 5. We can see, from this figure, the computational cost of our proposed method have very small
different with that of the classical st-ga. This difference is only because of the automatic fine-tuning of the crossover and mutation rate. On the other hand, the traditional matrix based genetic algorithm has a large time consuming in the computation. V. CONCLUSION In this paper, we proposed an implementation of hybridized spanning tree-based genetic algorithm method (hst-ga) to solve nonlinear side constrained transportation problem (nsc-tp). We have done several numerical experiments to demonstrate the effectiveness and the efficiency of the proposed method. It is shown that our proposed method gives the better performance of solutions than classical spanning tree-based genetic algorithm and traditional matrix based genetic algorithm in both required memory for computation and computational time. Like many other heuristic approaches, though it has been shown that our proposed method gives better results most of the time, it cannot be guaranteed our methods can give the best result all of the time. Finally, we expect that in the future there will be better method (by us or others) by using other approaches. ACKNOWLEDGMENT This research was supported by the International Scientific Research Program, the Grant-in-Aid for Scientific Research (No.10044173: 1998.4-2001.3) by the Ministry of Education, Science and Culture, the Japanese Government. The work of the first author was also supported by Development Undergraduate Education Project, (Indonesian Government and World Bank Project). References 1. Hitchcock, F.L., "The Distribution of a Product from Several Sources to Numerous Localities", J. Math. Phys. Vol.20, pp.224-230, 1941. 2. Sun, M., A Tabu Search Heuristic Procedure for Solving the Transportation Problems with Exclusionary Side Constraints, Journal of Heuristic, 3: 305-326, 1998. 3. Syarif, A. and M. Gen., Solving Exclusionary Side Constrained Transportation Problems by Using Hybridized Genetic Algorithm, submitted to International Journal of Intelligent manufacturing, 2001. 4. Cao, B. and G. Uebe., Solving Transportation Problems with Nonlinear Side Constraints with Tabu Search, Computer & Ops. Res. Vol 22, No. 6, pp 593-603, 1995. 5. Cao, B., Transportation Problems with Nonlinear Side Constraints: a branch-and-bound approach, Zeitschrift Operations Research, 36, pp 185-197, 1992. 6. Gen, M. and R. Cheng., Genetic Algorithms and Engineering Design, John Wiley & Sons, New York, 1997. 7. Gen, M. and R. Cheng., Genetic Algorithms and Engineering Optimization, John Wiley & Sons, New York, 2000. 8. Goldberg, D. E., Genetic Algorithms in Search, Optimization & Machine Learning, Addison Wesley, 1989. 9. Michalewicz, Z. Genetic Algorithms + Data Structures =Evolution Programs, 2nd ed., Springer-Verlag, 1994. 10. Dossey, J., A. Otto, L.Spence and C. Eynden, Discrete Mathematics, Harper Collins, 1993. 11. Lee, M., and Takagi H., Dynamic Control of Genetic Algorithm Using Fuzzy Logic Techniques, Proceeding of the 5 th International Conference on Genetic Algorithms, Morgan Kaufmann Publishers, San Francisco, pp.76-83, 1993. 12. Zeng, X., and Rabenasolo, B., A Fuzzy Logic Based Design for Adaptive Genetic Algorithms, Proceeding of the 5 th European Congress on Intelligent Techniques and Soft Computing, pp. 660-664, 1997. 13. Xu, H., and Vukovich, G., Fuzzy Evolutionary Algorithm and Automatic Robot Trajectory Generation, Proceeding of the First IEEE Conference on Evolutionary Computation, IEEE Press, Piscataway, NJ, pp 595-600, 1994. 14. Wang, P. T., Wang, G. S., and Hu, Z. G., Speeding Up the Search Process of Genetic Algorithm by Fuzzy Logic, Proceeding of the 5 th European Congress on Intelligent Techniques and Soft Computing, pp. 665-671, 1997.