4
NAFIPS 2005 - 2005 Annual Meeting of the North American Fuzzy Information Processing Society On Fuzzy Shortest Path Problems with Fuzzy Parameters: an Algorithmic Approach Marcia T. Takahashi Department of Exact Sciences State University of Feira de Santana Feira de Santana, BA, Brazil E-mail: [email protected] Abstract-In this work, we study the shortest path problem with fuzzy parameters. We propose a modification Okada's algorithm [151, using some properties observed by other authors. We also propose a genetic algorithm to seek an approximated solution for large scale problems. I. INTRODUCTION The shortest path problem is one of the most important problems with graph structure. Besides having a wide vari- ety of applications (telecommunication, transport, etc.), the shortest path problem can also be a subproblem in more complex studies. While efficient algorithms (like Dijkstra) were developed to solve the deterministic version of this problem in polinomial time (see [2] and [3]), polinomial time algorithms for the shortest path problem with fuzzy parameters remain to be discovered. Let G: (N. A) be a graph with m nodes and n arcs and let cij be the cost related to the arc (i, j). The length of a path P in a graph is given by: Ip = Z(i.j)rP cij. The shortest path problem consists in finding a path between two or more nodes (the source(s) and destination(s) nodes) with the shortest length. As in [2], we study a graph which has paths between all nodes, does not have negative cycles and is directed (a digraph). Also, if (i, j) e A, then i < j, i, j E N Due to the importance of the shortest path problem, some works were developed that studied this problem with fuzzy aspects. This kind of approach has several applications, since the parameters related to real problems can be uncertain or subjective. Although there are different kinds of fuzziness [5], there are two problems that seem to attract more attention: 1) the underlying graph is crisp and the parameters related with its arcs are fuzzy numbers. Almost all works are developed for this problem. 2) The underlying graph is uncertain, that is, there are membership values associated with arcs and/or their nodes. The first case is our study case. In Dubois and Prade [8], the very first reference about shortest path problem with fuzzy arc lengths, we find extensions of two deterministic algorithms: Floyd, and Ford and Fulkerson. The authors acknowledged some difficulties underlying these extensions, which were Akebo Yamakami School of Electrical and Computer Engineering State University of Campinas Campinas, SP, Brazil E-mail: [email protected] highlighted in some latter works (see the example in [11]) and eventually overcome by Klein [9]. In [6], [12], [13], [10], [7], other authors presented their algorithms, which invariably yield a unique solution. The outcome of the models in Okada and Soper [14], Okada [15] and Blue et al.[5], on the other hand, is a fuzzy set solution, where each solution has a membership value associated with it. These works make use of the possibility theory in [16]. The use of the possibility theory in the solution of the fuzzy shortest path problem had already been introduced in the work of [6], but it is in [15] that we have the fuzzy set solution and a fuzzy solution developed. Blue et al.[5] does not mentioned the possibility theory, nevertheless they use it to calculate the membership value of the solution. We study the algorithm presented in [15] and suggest some modifications based on properties observed in other works, with a view to improving the efficiency of the algorithm. Additionally, we propose a genetic algorithm in order to find an approximate solution set for large scale problems or problems with highly uncertain parameters. II. THE SHORTEST PATH PROBLEM WITH FUZZY ARC LENGTHS Let G: (N, A) be a crisp graph with fuzzy costs: cij. The length of a path P in this graph is a fuzzy number: Ip = Z(i,j)cp 6ij. In recent works, the solution takes the following formats: 1) a fuzzy set of paths, each one with a membership value of being the shortest one. 2) a fuzzy shortest path, that is, a fuzzy subgraph where each arc has a membership value of belonging to the shortest path. In both cases, the resulting problem is NP-hard. Define the following possibility: Poss(a < b) = sup{Min{/ta (U).5Ub(V)}} U<v (1) where tla and Ub are the membership functions of a and b, respectively. As given by Okada [15], the possibility degrees of the path P and of the arcs (i. j) c A may be obtained using equations 0-7803-91 87-X/05/$20.00 ©2005 IEEE. 654

[IEEE NAFIPS 2005 - 2005 Annual Meeting of the North American Fuzzy Information Processing Society - Detroit, MI, USA (26-28 June 2005)] NAFIPS 2005 - 2005 Annual Meeting of the North

  • Upload
    a

  • View
    213

  • Download
    0

Embed Size (px)

Citation preview

Page 1: [IEEE NAFIPS 2005 - 2005 Annual Meeting of the North American Fuzzy Information Processing Society - Detroit, MI, USA (26-28 June 2005)] NAFIPS 2005 - 2005 Annual Meeting of the North

NAFIPS 2005 - 2005 Annual Meeting of the North American Fuzzy Information Processing Society

On Fuzzy Shortest Path Problems with FuzzyParameters: an Algorithmic Approach

Marcia T. TakahashiDepartment of Exact Sciences

State University of Feira de SantanaFeira de Santana, BA, Brazil

E-mail: [email protected]

Abstract-In this work, we study the shortest path problemwith fuzzy parameters. We propose a modification Okada'salgorithm [151, using some properties observed by other authors.We also propose a genetic algorithm to seek an approximatedsolution for large scale problems.

I. INTRODUCTION

The shortest path problem is one of the most importantproblems with graph structure. Besides having a wide vari-ety of applications (telecommunication, transport, etc.), theshortest path problem can also be a subproblem in morecomplex studies. While efficient algorithms (like Dijkstra)were developed to solve the deterministic version of thisproblem in polinomial time (see [2] and [3]), polinomial timealgorithms for the shortest path problem with fuzzy parametersremain to be discovered.

Let G: (N. A) be a graph with m nodes and n arcs and letcij be the cost related to the arc (i, j). The length of a pathP in a graph is given by: Ip = Z(i.j)rP cij. The shortestpath problem consists in finding a path between two or morenodes (the source(s) and destination(s) nodes) with the shortestlength. As in [2], we study a graph which has paths betweenall nodes, does not have negative cycles and is directed (adigraph). Also, if (i, j) e A, then i < j, i,j E NDue to the importance of the shortest path problem, some

works were developed that studied this problem with fuzzyaspects. This kind of approach has several applications, sincethe parameters related to real problems can be uncertain orsubjective.

Although there are different kinds of fuzziness [5], there aretwo problems that seem to attract more attention:

1) the underlying graph is crisp and the parameters relatedwith its arcs are fuzzy numbers. Almost all works aredeveloped for this problem.

2) The underlying graph is uncertain, that is, there aremembership values associated with arcs and/or theirnodes.

The first case is our study case. In Dubois and Prade [8], thevery first reference about shortest path problem with fuzzy arclengths, we find extensions of two deterministic algorithms:Floyd, and Ford and Fulkerson. The authors acknowledgedsome difficulties underlying these extensions, which were

Akebo YamakamiSchool of Electrical andComputer Engineering

State University of CampinasCampinas, SP, Brazil

E-mail: [email protected]

highlighted in some latter works (see the example in [11])and eventually overcome by Klein [9]. In [6], [12], [13], [10],[7], other authors presented their algorithms, which invariablyyield a unique solution. The outcome of the models in Okadaand Soper [14], Okada [15] and Blue et al.[5], on the otherhand, is a fuzzy set solution, where each solution has amembership value associated with it. These works make use ofthe possibility theory in [16]. The use of the possibility theoryin the solution of the fuzzy shortest path problem had alreadybeen introduced in the work of [6], but it is in [15] that we havethe fuzzy set solution and a fuzzy solution developed. Blue etal.[5] does not mentioned the possibility theory, neverthelessthey use it to calculate the membership value of the solution.We study the algorithm presented in [15] and suggest some

modifications based on properties observed in other works,with a view to improving the efficiency of the algorithm.Additionally, we propose a genetic algorithm in order tofind an approximate solution set for large scale problems orproblems with highly uncertain parameters.

II. THE SHORTEST PATH PROBLEM WITH FUZZY ARCLENGTHS

Let G: (N, A) be a crisp graph with fuzzy costs: cij. Thelength of a path P in this graph is a fuzzy number: Ip =

Z(i,j)cp 6ij. In recent works, the solution takes the followingformats:

1) a fuzzy set of paths, each one with a membership valueof being the shortest one.

2) a fuzzy shortest path, that is, a fuzzy subgraph whereeach arc has a membership value of belonging to theshortest path.

In both cases, the resulting problem is NP-hard. Define thefollowing possibility:

Poss(a < b) = sup{Min{/ta (U).5Ub(V)}}U<v

(1)

where tla and Ub are the membership functions of a and b,respectively.As given by Okada [15], the possibility degrees of the path

P and of the arcs (i. j) c A may be obtained using equations

0-7803-91 87-X/05/$20.00 ©2005 IEEE. 654

Page 2: [IEEE NAFIPS 2005 - 2005 Annual Meeting of the North American Fuzzy Information Processing Society - Detroit, MI, USA (26-28 June 2005)] NAFIPS 2005 - 2005 Annual Meeting of the North

(2) and (3), respectively.

Dp= min{Poss( E li; < E lij)} (2)(i,j)eP (i,j)EPt

Dij )maxj Dpp} (3)(i,j)EPIPE-P

where Dp is the minimum possibility value while comparingthe length of the path P and that of other paths Pt, Pt EP. Di. is the maximum possibility degree of some pathcontaining this arc.

Equations (2) and (3) require a previous knowledge of allpaths in order to calculate the possibility degrees. This incon-venience is recognised in [15], where some improvements interms of data structures and efficient comparison techniquesare suggested.Okada [15] uses a multiple labelling method for multiple

objective shortest path problems as a basis for constructinghis algorithm. Basically, the original method generates a list oflabels Lr for each node r, r =2, ..., m. Each label [i, k] E Lrrepresents the preceding node i along the path associated withthe label and the kth label in the list Li, respectively. A pathp is composed by tracking backwards the label [i, k] E Lrfrom the node r. Okada proposes two theorems that reduce thenumber of paths and, consequently, the number of comparisonsamong paths to obtain the possibility degree. The main ideasof these two theorems are:

1) If we have a path P' between node 1 and node r (1 <r < m) and the possibility degree (Dp) is less thana, then the path P between node 1 and node m (P =P' U P") is less than a. Therefore, we can discard thelabels of each path with Dp, < a.

2) The second theorem demonstrates that the eliminationof the arcs with possibility degrees lesser than a doesnot affect the construction of the paths with possibilitydegrees greater than a.

The Okada's algorithm is divided in two procedures givenbelow:

Procedure 01:Step O:Set the number of partitions h c Z+ splitting an

interval [0,1]. Dij - 0, V(i.,j) E A and A' <- A.Step 1:For the parameter a = h, . 1, repeat Step 2 and

3.Step 2:Perform Procedure 02 with the parameter a.Step 3:A' -A'-{(i,j) (i,j) E A', Dij < }Step 4:Output Dij for all (i, j) c A. Terminate.The first procedure uses the second idea of Okada for

constructing the approximated fuzzy solution set. Step 2 solvesthe problem for the a-level defined in step 1 using theprocedure 2. Step 3 discard the arcs that have possibilitydegree less than a.Procedure 02:

Step O:For the parameter a, compute (lij)1 (V(i, j) c A').Step ]:Lio r Lj= . 0,rjepa1,S2e3. , n.Step 2:For r = 2, .. .. n repeat Steps 3, 4 and S.

Step 3:For each j E B, L +- Lj. i in every [i, k] c V.is replaced by j and k in every [i, k] is renumberedserially from I to ILj1. Lr L' UjEBrL

Step 4:If IBrl = 1 (r has only one preceding node), thenreturn to Step 2. Otherwise go to Step 5.

Step 5:For each pair of labels [i8, k,], [it. kt] c Lr, com-pose the paths p, and Pt, repectively, by trackingbackwards the labels until arriving at the node 1.If P0SS(E(i,j)Epq lij < (i,j)Ept li) < , thenLr + Lr - [is8ks].

Step 6:Dij +- a, V(i, j) E p, p e 'P'rL Return.Steps 0 and 1 initialize the procedure. Step 3 constructs the

list of labels of one node Li, j = 2,.. ., n. Step 5 comparesthe labels and discard the ones whose possibility value is lessthan a. Finally, step 6 updates the possibility degree of eacharc.Okada [15] observed that the greatest computational effort

is employed in step 5, while constructing and comparing paths.Consider the following properties:

Proposition 2.1: Let a and b be two normal fuzzy numbers.If

inf {u} < sup {v}. then Poss(a < b) = 1UlAa(U)1 v|AM-()=Proof: Consider equation 1. Suppose u = infUjA1(u)l{u}

and v = supv!,l(v)>{v}. Hence, u < v andpla(U) = Mb(V) = 1 =H min{na(u),IJb(V)} = 1. Therefore,Poss(a < b) = 1.

Thus, if a path P8 has a modal value lesser than thatof a path Pt, the possibility degree of P8 is equal to 1.Consequently, we can reduce the number of comparisons tobe done by just ordering the lengths of the paths based onthe modal values before making the comparisons in step 5in procedure 2. If the algorithm compares the last path withthe first one, it can previously eliminate a path using the cuttest of Okada. Also, if we find the path whose length has theminimum modal value, we are also finding the path with themaximum possibility degree.

Taking into consideration the theory presented in [14], [15]and [5], we can construct a new algorithm that considers thedifficulties in step 5 of procedure 2 and seeks to minimizethem using the properties of the algorithms in Blue et al. [5]and Okada and Soper [14].

Blue et al. [5] contains a simple cut test which eliminatesthe paths that do not participate in the fuzzy solution set, thatis, the paths with possibility degree equal to zero. The cutvalue r, is found based on G, the crisp graph related to thecrisp length given by:

lij = Sup{lij}, (i,j) e A

Proposition 2.2: Let & and b be two normal fuzzy numbers.If sup{supp{b}} < inf{supp{&}}, then Poss(a < b) = 0.

Proof: We have that p(u) = 0, if u 0 (a, d), wherea = inf{supp{a}} and a = sup{supp{a}} are the lower andupper limits of the fuzzy numbers, respectively. If u E [a, a],

655

Page 3: [IEEE NAFIPS 2005 - 2005 Annual Meeting of the North American Fuzzy Information Processing Society - Detroit, MI, USA (26-28 June 2005)] NAFIPS 2005 - 2005 Annual Meeting of the North

then tt(u) > 0. As b= sup{supp{b}} < inf{supp{a}} = a,then

u > a> b> v =v E (b,b)ju . v p,ub(v)= 0

Therefore

min{ja (u)I j(v)}= 0, Vu,v = Poss(a < b) = 0

Using this cut test in step 3 of procedure 2 in Okada's algo-rithm, we can eliminate the useless paths without constructingthem for comparison.

If the label keeps the fuzzy length and the possibility degreeof the path [14], we can save some procedures, such as theconstruction of the paths for testing in the modification of thestep 3. Therefore, based on the label defined in [14], we have:

(i, k): i is the preceding node of r and k is the position ofthis label in the list Li.

1: fuzzy length of the path P between the node 1 andthe node r.

w: possibility degree of this path being the shortest pathbetween the node 1 and the node r.

Based on the propositions above, and on some definitionsand observations in [14], [15] and [5], we propose a modifiedalgorithm, based on Okada's algorithm, described below:

Modified Algorithm:Step O:(Setting parameters) Calculate = min (1p), K E

PEGRn. Let a be known.

Step 1:(Initialization) Do L1{[(-,i-), 0, 1]}Step 2:For r = 2, . . .rn repeat steps 3, 4 and 5.Step 3:(Generating the labels and testing the paths with

Dp-= 0) For j E Br do:Do L - Li. For each i in [(i, k),l,w] EL', do. Update I*I+ aij..If inf{l} > kj, then L' V LX -

{[(i7 k),I wj}.Otherwise, replace i to j in the label

Renumbering the resulting labels from 1 to IL[.Lr +- UjEBr LI

Step 4:(Verify the necessity of comparison) If 1Br, = 1 (rhas only one preceding node), then return to step 2.Otherwise go to step 5.

Step 5:(Verify Dp in interactive paths) Ranking the labelsin non-decreasing modal value of 1. For s = 1 toLj - 1, do:

Construct a path Ps through [(i., ks) IT, ws]For t = LIj to 2, do:* compose the path Pt de [(it, kt),lt,wt]. Calculate w = Poss(E(ij)cP 1i K

(zS-)1 Pt 1ii) jc i

. If wv- = 0 or wD < a, then Lr Lr -[(is. ks). IS5tsw]Otherwise, w, <- min{wS, wD}.

Step 6:(Calculate the possibility degree of each arc) Let Lnand Dij= 0, (i, j) X A, be known. For each label[(iS. ks)I Is, w], do:

. Reconstruct the path P8* For each arc (i,j) of Ps: Dij max{Dij, w,}.

Return D.Remark: The cut test done by the a-cut is maintained incase the decision maker prefers a partial solution, where onlypaths with possibility degree greater than a participate in thesolution.

III. A GENETIC ALGORITHM FOR THE PROBLEM

In [14], the authors observed that both the size of the graphand the uncertainty of the parameters influence the numberof paths that belong to the fuzzy solution set. The larger theproblem, the larger the solution set. The same happens withthe parameters. In order to deal with this combinatorial aspectof the problem, we use a genetic algorithm. The reason for thischoice is the fact that genetic algorithms are able to efficientlyexplore and exploit large solution spaces by means of simpleprocedures, such as crossover and mutation.As far as we concern, there are few works using genetic

algorithms for the unconstrained shortest path problem be-cause this problem has an efficient exact algorithm (Dijkstra'salgorithm). We use a genetic algorithm to seek solutions forconstrained problems as a basis for this fuzzy problem. Thefollowing procedures were implemented:

Codification: The codification selected presents the pathin a direct way: the value in each bit is the node visited.The arcs are given by (bit(i + 1) -+ bit(i), i =1...,m-1), with m= 11\TN.Crossover: The crossover procedure makes the unionof the nodes in each selected pair of chromosomes(parents). The new path must be composed only of thenodes in this union.Mutation: In this procedure, a node of the path selected(parent) is prohibited and another subpath is constructedusing preferably arcs in the original subpath.Initialization: In order to build part of the initial popula-tion, the mutation procedure is used in the shortest pathwith maximum possibility degree. Another part of thepopulation is formed with paths in which the precedingnodes are chosen randomly until the node 1 is reached.Selection: The new population is formed by the childrenof the crossover and mutation, a percentage of the bestindividuals of the former generation and the remainingindividuals are taken randomly.Fitness value: The fitness function is the possibilityvalue of each path being less than the best paths found inthe previous generations. Therefore, the solution is onlyan approximation of that obtained by using the exactalgorithm.

656

Page 4: [IEEE NAFIPS 2005 - 2005 Annual Meeting of the North American Fuzzy Information Processing Society - Detroit, MI, USA (26-28 June 2005)] NAFIPS 2005 - 2005 Annual Meeting of the North

IV. EXAMPLES

Consider the example given in [14] in which we have to finda route between Boston and Los Angeles using the UnitedStates driving times map. The triangular fuzzy numbers are

Fig. 1. Example of a fuzzy graph

TABLE IARCS LENGTHS OF THE EXAMPLE

Arcs Length Arcs Length(1,2) (19,25,29) (4,5) (12,15,18)(2,3) (15,20,25) (4,6) (08,09,10)(2,4) (58,63,68) (5,7) (70,75,80)(3,4) (38,41,46) (6,7) (65,75,85)(3,6) (54,57,62) (7,8) (20,25,30)

created based on the driving time with a 10 % spread. Otherexamples are an Italian optical network [1] and a simpleexample in [15] shown in the figure 1. Example Okada0lpossesses 8 nodes and 10 arcs; the Italian network has 21nodes and 32 arcs and the US network has 70 nodes and 210arcs. The comparisons are done between the algorithm in [15]and the modified algorithm. The algorithms were implementedin Matlab v6.1.We can observe that the modified algorithm reduces at least

in 50% the number of comparisons, depending on the numberof paths that belong to the solution. We additionally observethat the number of comparisons rises exponentially with thesize of the graph.

TABLE IINUMBER OF COMPARISON DONE IN THE TESTS OF OKADA01, ITALIAl

AND US NETWORK

example Okada (2001) time (s) Modified time (s)Okada0l 127 0.8900 14 0.0600italial 2,414 1.8820 658 0.4910USA 2,672,536 3128.6620 1,093,446 1424.0080

The genetic algorithm (GA) seeks to generate a relevantsubset of the problem's feasible solutions, since there maybe some difficulty in generating the whole solution set. Toillustrate this let us have a look at the US network example.There are, in this network, 42.167.110 possible paths betweennodes 1 and 70, with a maximum of 2.52 x 1015 comparisonsrequired by the exact algorithm. As one may have expected,the solution set is relatively small, containing 635 paths. Thegenetic algorithm was granted five runs, each with a maximumof 100 generations and a population of 1000 individuals, and innone of them it succeeded in generating the whole solution set.Even though the GA keeps the diversity of the population, the

difficulty in seeking paths with low possibility degree seemsto interfere in the calculations of the solution set. Paths withgreater possibility degrees seem to be easier to generate. Ineach run, all paths with possibility degree greater than 0.6were correctly found. Having a look at the arcs, we noticedthat the ones with possibility degree less than 0.2 seem tocause more trouble.

Despite the drawbacks mentioned above, the GA algorithmhave a great appeal in terms of execution times. In the USnetwork example, the average execution time of the GA isapproximately 120 seconds, which is a very small amount oftime if compared to the 3157 seconds the exact algorithmspent in average. Therefore, the GA algorithm turns out to bean important tool for seeking a good solution subset to largescale problems.

V. CONCLUSIONIn this work, we study the shortest path problem with

fuzzy parameters and propose some improvements in Okada'salgorithm that provide a significative reduction in the numberof comparisons. We also notice that the GA seems to be apromising technique for constructing an approximated solutionset for large problems. However, further investigations andtests may be necessary to find alternative GA operators in orderto develop a way of reaching more paths along the solutionspace.

ACKNOWLEDGMENTThis work was funded by FAPESP and FAPESB.

REFERENCES

[1] M. Ali, B. Ramamurthy and J.S. Deogun (2000) Routing and wavelengthassignment with power considerations in optical networks, ComputerNetworks, 32,pp.539-555

[2] R.K. Ahuja, T.L. Magnati and J.B. Orlin (1993) Network flows : theory,algorithms, anid applications - Prentice-Hall

[3] M.S. Bazaraa and J.J. Jarvis (1990) Linear prograinming and networkflows, John Wiley, 2nd Ed.

[4] R.E. Bellman and L.A. Zadeh (1970) Decision-Making in a FuzzyEnvironment- Managemenit Science, 17 (4),pp. B-141 to B-164

[5] M.Blue, B.W. Bush and J. Puckett, (2002) Unified approach to fuzzygraph problems - Fuzzy Sets and Systems,125(3), pp.355-368

[6] S. Chanas (1987) Fuzzy optimization in networks, in Optimization modelsusing fuzzy sets and possibility theory, Dordrecht

[7] P.T. Chang and E.S. Lee (1999) Fuzzy decision Networks and deconvolu-tion, Computers and Mathemnatics with Applications, 37(11-12), pp.53-63

[8] D. Dubois and H. Prade (1980) Fuzzy Sets and Systems, Acadeniic Press[9] C.M. Klein, (1991) Fuzzy Shortest Path, Fuzzy Sets and Systems, 39,

pp.7-41[10] K-C Lin and M-S Chern (1993) The fuzzy shortest path problem and

its most vital arcs, Fuzzy Sets and Systems, 58, pp.343-353[11] D.S Malik and John N. Moderson, (2001) Fuzzy Discrete Structures,in

Studies in Fuzziness and Soft Computing, 58, Springer-Verlag[12] S. Okada and M. Gen (1993) Order Relation between Intervals ans Its

Application to Shortest Path Problem, Computers and Industrial Engineer-ing, 25(1-4), pp.147-150

[13] S. Okada and M. Gen (1994) Fuzzy Shortest Path problem, ComputersInd. Engng., 1-4, pp.465-468

[14] S. Okada and T. Soper (2000) A shortest path problem on a networkwith fuzzy arc lenghts, Fuzzy Sets and Systemns, 109, pp.129-140

[15] S. Okada (2001) Interactions among Paths in Fuzzy ShortestPath Problems - 9th International Fuzzy Systems Association WorldCongress,Vancouver, Canada, pp.41-46

[16] R. Yager (1986) Paths of least resistance in possibilistic productionsystems, Fuzzy Sets and Systems, 19, pp.121-132

657