Solving fuzzy shortest path problem by genetic algorithm

Shortest Path Problem (SPP) is known as one of well-studied fields in the area Operations Research and Mathematical Optimization. It has been applied for many engineering and management designs. The objective is usually to determine path(s) in the network with minimum total cost or traveling time. In the past, the cost value for each arc was usually assigned or estimated as a deteministic value. For some specific real world applications, however, it is often difficult to determine the cost value properly. One way of handling such uncertainty in decision making is by introducing fuzzy approach. With this situation, it will become difficult to solve the problem optimally. This paper presents the investigations on the application of Genetic Algorithm (GA) to a new SPP model in which the cost values are represented as Triangular Fuzzy Number (TFN). We adopts the concept of ranking fuzzy numbers to determine how good the solutions. Here, by giving his/her degree value, the decision maker can determine the range of objective value. This would be very valuable for decision support system in the real world applications.Simulation experiments were carried out by modifying several test problems with 10-25 nodes. It is noted that the proposed approach is capable attaining a good solution with different degree of optimism for the tested problems.


Introduction
In business management, many important problems are expressed as network design problems. Among all classes of problems in network optimization, Shortest Path Problem (SPP) has been one of the most extensively disscused in computer science literature. It is commonly encountered in wide array of practical applications including transportation planning, communication, and production applications, salesperson routing and often imbedded within other types of network optimization problems [1], [2].
Given a weighed network graph, the SPP is to obtain the minimum total weight path(s) between nodes in the network. In the real world applications, the weight value represents the average delivery time of the commodities, reliability of transportation, and accessibility to the users, product deterioration, and so on. Thus, finding a good solution of SPP would be very important and could save millions of transportation and/or industrial cost, yet computationally difficult task. There have been several methods for solving traditional SPP including Dijkstra method [3]. However, due to the intrinsic difficulty, many authors introduced search methods based upon heuristics to give solutions within reasonable computational time [4], [5]. Traditionally, SPP was investigated in the area of Operations Research and Artificial Intelligence that is modelled by certain/deterministic cost values. However, for many real world applications, the deterministic model can be far from sufficient. For instance, in a transportation network, the path that has the least travel time, during the rush hours would have traffic jams that may lead to a drastic increase in travel time. One way of handling such uncertainty in decision making is by introducing fuzzy programming approach [6].
Artificial Intelligence (AI) has been discussed in many recent research fields. It has been successfully used to solve many difficult-real-world optimization problems. Among them, Genetic algorithm (GA) has been known as one of effective and popular methods. Since introduced by Holland [7], it has been implemented to give optimal or near optimal solution for many NP-hard optimization problems with less computational cost [8]. There are several advantages of using GA as follows: It deals with coding instead of decision variables. It requires no domain knowledge -only the payoff or objectives. In addition, traditional methods use deterministic transition rules to guide the search, such as hill-climbing, and neighbourhood search. Another difference between traditional methods and genetic algorithms is: the latter searches from a set of points, while the former from a single point. This makes GA more robust than traditional methods regarding their potential as optimization techniques [9]. In our previous works, we also have successfully implemented GA to solve various combinatorial optimization problems and found that GA can give very good solutions to the problems within reasonable computational time [10], [11], [12], [13].
In this paper, we develop new model of SPP called fuzzy Shortest Path Problem (f-SPP). Here, the cost values of the f-SPP are represented by using Triangular Fuzzy numbers (TFN). Our major efforts in this work include the adaption of the the rangking method for handing the fuzziness. We adopt the concept of the ranking Fuzzy numbers with integral value for the evaluation and selection. In this technique, the decision maker can determine his decision by giving flexible value for the degree of optimism [14].
The remainder of this paper is organized as follows: The description of the mathematical formulation of the f-SPP is given in Section 2. Section 3 describes a brief discussion design of algorithm. It includes ranking Fuzzy numbers, representation of chromosome, genetic operations and selection method. Section 4 presents the numerical experiments and results obtained by the proposed method. Finally, some concluding remarks are given in Section 5.

Mathematical Model
In this section, we shall present a comprehensive mathematical model of the problem. Suppose that we are given a graph G in which thr lenght of each arc has associated with a TFN. In some applications, that TFN may actually represent traveling time or some other values. For any two vertices, s and t in G, it is possible that there exist several paths from s to t. The problem involves finding path(s) from s to t that has the shortest traveling time.
The model of f-SPP can mathematically be stated as follows: representing fuzzy cost associated with each arc(i, j). Source node and destination node are node 1 and node n respectively. The length of a path is defined as the sum of the lengths of all individual arcs comprising the path.

Ranking Fuzzy Number (TFN)
When considering an optimization problem that its coefficients are represented with TFNs, the objective values of the problem will also be TFNs. In a fuzzy environment, an effective, efficient, and accurate ranking method becomes a very important decision making procedure. Many authors have investigated various ranking methods for fuzzy numbers [15]. The ranking fuzzy number with integral value technique was proposed by Liou & Wang [14]. The basic concept of this technique is to rank the TFN based on its total integral value that represents a "mean value". The left and right integral values are used to reflect the pessimistic and optimistic viewpoint of decision maker respectively. The total integral value is then computed based on this degree of optimism and each objective function values. A parameter α is given to adjust the degree of optimism.
Definition 1 [14] Let Ã be a TFN with its membership function Ã µ as shown in Figure 1. A TFN is denoted by a triplet ( ) The following definition is used in relation to the ranking of the TFN:

Design of Genetic Algorithm (GA)
Generally, the behaviour of GAs depends on many uncertain factors. One of the important factors is the balance between exploitation and exploration in the search space. The balance is strongly affected by design strategy for GA and GA parameter values. Here, we would like to describe the consideration underlying the design of GA approach including representation method, genetic operators and selection method.

Chromosome Representation and Evaluation
It is well known that the first step in applying GA is to find a representation for a possible solution. An efficient design of the chromosome would lead to a good performance of GA.
For this problem, we adopt permutation-based representation. In this representation, the value of gene represents the priority of the node number for being included in the arc. There are several advantages of using this representation for network problems [9]. Those include, first, any permutation of the encoding corresponds to a path (legality). Most existing genetic operators can be easily applied to the encoding. Any path has a corresponding encoding (completeness). And, any point in solution space is accessible for genetic search.
The following Figure 2 shows the illustration of priority based representation.

Figure 2. Priority-based chromosome
In order to compute the fitness value, we decode the above chromosome using the decoding procedure as follows:

Procedure: Decoding
Step 1: number of nodes n, the alpha value the set of nodes Si with all nodes adjacent to node i.
-the set of the TFN weight values denoted by ( ) Step 2 Determine path corresponding to the chromosome as follows: initial source node i←1, Pk ←φ; while Si ≠φ do select l from Si with the highest priority; if vk(l)≠0 then vk(l)=0; Pk ← Pk∪{xil}; i←l; else Si ← Si \{l} end output the complete path Pk ; end Step 3 Compute the fuzzy objective values Step 4 Determine the integral values of TFNs

Crossover and Mutation
The next step of GA is to select chromosome for replication by using genetic operator, in order to have new chromosome to be evaluated further. Basically, GA use two genetic operators, crossover and mutation. Crossover is known as the most important recombination operator in GA. There have been many variants of crossover operations given in the literature for permutation based representation such as: PMX method (Partially Matched Crossover) [16], PX (Position-based crossover) [17] and WMX (Weight mapping crossover) [18]. In this paper, we adopt PMX crossover operations as follows:

Procedure : PMX
Step 1: Select a section of chromosome randomly Step 2: Exchanged each sub string Step 3: Determine the mapping of genes in each substring Step 4: Update chromosome with information given by Step 3 Mutation is usually done to prevent premature loss of information by exchanging the information within a chromosome. In this paper, we adopt the inversion mutation. It is done by selecting two positions within a chromosome at random and then inverts the sub-string between these two positions. We show the illustration of this mutation operation in Figure 3

Selection
When implementing GA, the way to select chromosome for the next generation is also very important issue. It should provide a balance between exploitation and exploration to search solution in search space. Here, we adopt one of the fitness-proportional methods called roulette wheel selection [2]. If the best chromosome is not selected for the next generation, we select one of the chromosome randomly and replace it with the best chromosome. We express our selection method as follows: The first experiments were cunducted to see the effectiveness of GA with respect to the heterogeneity of the degree of optimism. To investigate this issue, for all test problems, we take a look at the variation of the degree of optimisms (0, 0.1, 0.2, …, 1). For each different degree of optimism, the experiment was done 10 (ten) times. We note the best, the average and the worst results. The experimental results are summarized in Table 2  To observe the speed of convergence of the proposed GA, we noted the objective value in each generation for the test problem 3. We compared the results for three different alpha values (0, 0.5 and 1). The results are shown in Figure 5. We noted from the above results that, GA is very sensitive for overall optimization degrees. For different degree of optimism (alpha), GA can give different objective value all of the times. Thus by giving different alpha value, GA would be able to give decision maker solution for the problem. The above results also show that GA can convergence to the best solution very fast.

Conclusion
The contribution of this paper consists of introducing the model of shortest path problem with fuzzy coefficient (fSPP) and providing GA-based algorithm to solve it. Here, the proposed method use the fuzzy ranking strategy based on the alpha value/degree of optimism. The performance of the proposed method was evaluated by using modified several test problems given in the literature. The findings reported in this study show that, GA is very sensitive for overall degrees of optimism. Thus, the decision makers can have their solution based on their degree of optimism. Moreover, the results also show that GA can convergence to the best solution very fast (less than 50 generations).