The shortest path problem on networks with fuzzy parameters

The shortest path problem on networks with fuzzy parameters

Fuzzy Sets and Systems 158 (2007) 1561 – 1570 www.elsevier.com/locate/fss The shortest path problem on networks with fuzzy parameters Fábio Hernandes...

182KB Sizes 9 Downloads 125 Views

Fuzzy Sets and Systems 158 (2007) 1561 – 1570 www.elsevier.com/locate/fss

The shortest path problem on networks with fuzzy parameters Fábio Hernandesa,∗ , Maria Teresa Lamatab , José Luis Verdegayb , Akebo Yamakamic a Dpto. de Ciência da Computação, Universidade Estadual do Centro-Oeste, C.P. 3010, 85015-430 Guarapuava-PR, Brazil b Dpto. de Ciencias de la Computación e I.A., E.T.S. de Ingeniería Informática,Universidad de Granada, E-18071 Granada, Spain c Dpto. de Telemática, Faculdade de Engenharia Elétrica e de Computação, Universidade Estadual de Campinas, C.P. 6101, 13083-970

Campinas-SP, Brazil Received 2 May 2006; received in revised form 23 February 2007; accepted 26 February 2007 Available online 14 March 2007

Abstract Shortest path problem where the costs have vague values is one of the most studied problems in fuzzy sets and systems area. However, due to its high computational complexity, previously published algorithms present peculiarities and problems that need to be addressed (e.g. they find costs without an existing path, they determine a fuzzy solution set but do not give any guidelines to help the decision-maker choose the best path, they can only be applied in graphs with fuzzy non-negative parameters, etc.). In this paper, one proposes an iterative algorithm that assumes a generic ranking index for comparing the fuzzy numbers involved in the problem, in such a way that each time in which the decision-maker wants to solve a concrete problem (s)he can choose (or propose) the ranking index that best suits that problem. This algorithm, that solves the above remarked drawbacks, is based on the Ford–Moore–Bellman algorithm for classical graphs, and in concrete it can be applied in graphs with negative parameters and it can detect whether there are negative circuits. For the sake of illustrating the performance of the algorithm in the paper, it has been here developed using only certain order relations, but it is not restricted at all to use these comparison relations exclusively. The proposed algorithm is easy of understanding as the theoretical base of a decision support system oriented to solving this kind of problems. © 2007 Elsevier B.V. All rights reserved. Keywords: Shortest path problems; Ford–Moore–Bellman algorithm; Fuzzy mathematical programming; Fuzzy numbers

1. Introduction The problem of finding the shortest path from a specified source node to the other nodes is a fundamental matter in graph theory and one that is currently being greatly studied [5,6,13,19–21,26,27]. It appears in many applications, including transportation, routing, communications, supply chain management or models involving agents. Let G = (V , E) be a graph, where V is the set of vertices and E is the set of edges. A path between two nodes is an alternating sequence of vertices and edges starting and ending with the vertices. The distance (cost) of a path is the sum of the weights of the edges on the path. However, since there can be more than one path between any two vertices, the problem of finding a path with the minimum cost between two specified vertices makes sense. This is the so-called shortest path problem (SPP). ∗ Corresponding author. Tel.: +55 1632421355.

E-mail addresses: [email protected] (F. Hernandes), [email protected] (M.T. Lamata), [email protected] (J.L. Verdegay), [email protected] (A. Yamakami). 0165-0114/$ - see front matter © 2007 Elsevier B.V. All rights reserved. doi:10.1016/j.fss.2007.02.022

1562

F. Hernandes et al. / Fuzzy Sets and Systems 158 (2007) 1561 – 1570

Although in classical graph theory, the weights of the edges in an SPP are supposed real numbers, most practical applications, however, have parameters that are not naturally precise (i.e. costs, capacities, demands, time, etc.). In these cases to use fuzzy numbers [9,19] for modeling the problem is quite appropriate, and the fuzzy shortest path problem (FSPP) appears in a natural way. The FSPP, because it involves addition and comparison between fuzzy numbers (particularly triangular fuzzy numbers), is very different from the conventional SPP, which only involves real numbers. In the FSPP the final costs are fuzzy numbers, and what is difficult is to find a path being smaller than all the others, as the comparison among fuzzy numbers is an operation which can be defined in a wide variety of ways. Any case, as it is very well known, it is hard to find a fuzzy cost, in a set of them, which is strictly smaller than all the other costs in that set. Numerous papers have been published on the FSPP [3,8,15,17,20–24]. The paper by Dubois and Prade [8] is one of the first on this subject and considered extensions of the classic Floyd and Ford–Moore–Bellman (FMB) algorithms. Nevertheless, it has been verified that both algorithms can return distances without an associated path (see [27]) as it was outlined by Klein [15] with the fuzzy dominance set. Lin and Chern [17] defined the denomination of vital arcs as being those whose removal from the path results in an increase in cost. Another algorithm for this problem was presented by Okada and Gen [22,23], where there is a generalization of Djikstra’s algorithm. In this algorithm, the weights of the arcs are considered to be interval numbers and are defined from a partial order between interval numbers. Okada and Soper [24] characterized the solution not as the shortest path, but as a fuzzy set solution, where each element is a nondominated path or Pareto optimal path with fuzzy edge weights. However, this algorithm does not provide decision-makers with any guidelines for choosing the best of these paths according to their own points of view (optimistic/pessimistic, risky/conservative). Blue et al. [3] presented an algorithm which finds a cut value to limit the number of analyzed paths, and then applied a modified version of the k-shortest path (crisp) algorithm proposed by Eppstein [10]. Following the idea of finding a fuzzy set solution, Okada [21] introduced the concept of the degree of possibility of an arc being on the shortest path. Among the most recent works is the paper by Nayeem and Pal [20] that proposed an algorithm based on the acceptance index introduced by Sengupta and Pal [25] and which gives a single fuzzy shortest path or a guideline for choosing the best fuzzy shortest path according to the decision-maker’s viewpoint. However, this only occurs when the means are the same but the widths are different from the obtained paths. It is patent that these articles present peculiarities and/or problems that warrant attention. Among the most important, for example, are the following three: they find costs without an existing path; they can determine a fuzzy solution set but do not provide decision-makers with any guidelines for choosing the best path and they can only be applied in graphs with fuzzy non-negative parameters (there are certain real problems where negative parameters appear, see [1], and that cannot be solved with the above described algorithms). This situation leads us to propose in this paper an iterative algorithm for the SPP in graphs with fuzzy parameters, i.e. for the FSPP. The algorithm is based on the FMB algorithm [2], and it is valid for a generic fuzzy numbers ranking index, in such a way that decision-makers can choose, or propose, the ranking index that best suits their problem. The proposed algorithm has various important advantages: it can be applied in graphs with negative parameters and can detect whether there are negative circuits (Hernandes and Yamakami [13] use an example to show that Okada and Soper’s algorithm is not successful in networks where there are arcs with negative costs); it can be implemented using a variety of order relations so that, firstly, when decision-makers are only looking for one path, the algorithm can find it, and, secondly, if the decision-makers are looking for a variety of such paths, the algorithm (depending on the order relation selected) could also find them. Moreover, the algorithm is the theoretical basis for a decision support system (DSS) oriented to solve this kind of problems. The paper is developed as follows. In the next section, we present some basic concepts on fuzzy numbers as well as some ways of performing comparisons between them. In Section 3, we present a mathematical formulation for the FSPP and we show the proposed algorithm. In Section 4, for the sake of illustration, we solve two examples (one including negative fuzzy costs) to explain the development of the algorithm. Finally, in Section 5, the main conclusions are pointed out. 2. Concepts and definitions Although the concept of fuzzy number will be a constant reference along this paper, here notion is not in fact a goal but a tool to develop the former objective of this work: to design an algorithm solving the FSPP. However, as we need some basic definitions on fuzzy numbers comparison that will be used for illustrating the FSPP solution algorithm

F. Hernandes et al. / Fuzzy Sets and Systems 158 (2007) 1561 – 1570

1563

proposed, in the following some selected fuzzy numbers ranking methods shall be shortly shown with regard to a better understanding of the solution approach that will be applied. In this way, and for methodological reasons, in spite that the algorithm to be designed will work correctly for any kind of fuzzy numbers, we prefer in the following to focus on the usual case of triangular fuzzy numbers. Consequently, in this section, we introduce some well-known fuzzy numbers ranking indexes as well as the main concepts/definitions needed in the rest of the paper. Definition 1. A triangular fuzzy number is represented by a˜ = (m, , ), with the membership function, a˜ (x), defined by the expression ⎧ 0 if x m − , ⎪ ⎪ ⎪ x − (m − ) ⎪ ⎪ ⎪ if m −  < x < m, ⎪ ⎨  1 if x = m, a˜ (x) = (1) ⎪ (m + ) − x ⎪ ⎪ ⎪ if m < x < m + , ⎪ ⎪  ⎪ ⎩ 0 if x m +  where m is the center,  is the left spread and  is the right spread. Definition 2. Let a˜ and b˜ be two fuzzy numbers, a˜ = (m1 , 1 , 1 ) and b˜ = (m2 , 2 , 2 ). Then the fuzzy sum of these two numbers is given by a˜ ⊕ b˜ = (m1 , 1 , 1 ) ⊕ (m2 , 2 , 2 ) = (m1 + m2 , 1 + 2 , 1 + 2 ).

(2)

A variety of methods for ordering and ranking fuzzy numbers have been proposed in the literature [4,7,14,25]. However, as we mentioned above, in this article we will consider an algorithm with a generic ranking index, with regard to the fact that decision-makers can choose every one from the list of ranking methods. ˜ iff a˜ < b. ˜ Definition 3. Let a˜ and b˜ be two triangular fuzzy numbers, then a˜ is preferred to b˜ (a˜ ≺ b) As it is evident this definition can be applied using any fuzzy numbers comparison criterion. Without any loss of generality but, as said, for the sake of illustrating, we will consider the following six ranking functions: (a) Yager’s first index [28–30]: 1 a˜  d f (a) ˜ = 0 1 . (3) ˜  d 0 a ˜ Applying Definition 3 in Yager’s index, we have the following: a˜ < b˜ iff f (a) ˜ < f (b). (b) Liou and Wang index [18]: Liou and Wang considered an ordinance method of fuzzy numbers with integral values. The definition is in accordance with the areas related to the spreading to the right and to the left of the fuzzy number in question. Concretely the index is defined as follows: ˜ = SD (a) ˜ + (1 − )SI (a) ˜ LW  (a)

(4)

where  SD (a) ˜ =m+

m+ m

 SI (a) ˜ = (m − ) +

 fa˜R (x) dx = m m−

1 0

−1

fa˜R (y) dy, 

fa˜L (x) dx =

0

1

−1

fa˜L (y) dy

and  ∈ [0, 1] is a degree that might reflect the decision-maker’s optimism/pessimism. ˜ Applying Definition 3 in the Liou and Wang index, we have the following: a˜ < b˜ iff LW  (a) ˜ < LW  (b).

(5)

(6)

1564

F. Hernandes et al. / Fuzzy Sets and Systems 158 (2007) 1561 – 1570

(c) García and Lamata index [11]: The proposed index improves the discrimination between fuzzy numbers, retaining an optimism degree () and including the modality index  ∈ [0, 1]. I (a) ˜ = (1 − )[SD (a) ˜ + (1 − )SI (a)] ˜ + m.

(7)

˜ Applying Definition 3 in the García and Lamata index, we have the following: a˜ < b˜ iff I (a) ˜ < I (b). (d) Okada and Soper relation [24,16]: This relation leads to the concept of nondominated path or Pareto optimal path. Let a˜ = (m1 , 1 , 1 ) and b˜ = (m2 , 2 , 2 ) be two triangular fuzzy numbers and  ∈ [0, 1], then a˜ dominates b˜ with ˜ ˜ iff m1 m2 , (m1 − 1 ) (m2 − 2 ) , (m1 − 1 ) (m2 − 2 ) and a˜  = b. a degree  (a˜ ≺ b) ˜ Applying Definition 3 in the Okada and Soper relation, we have the following: a˜ < b˜ iff a˜ ≺ b. (e) Nayeem and Pal acceptability index [20]: Nayeem and Pal extended the acceptability index to triangular fuzzy numbers (an index originally proposed by Sengupta and Pal [25] for interval numbers) and it is defined as ˜ = A(a˜ ≺ b)

m2 − m1 . 1 +  2

(8)

Remark. It is important to quote here that when using this acceptability index, the algorithm considered by Nayeem and Pal for solving the FSPP may present more than one solution, but this is only possible if the modal values of the numbers are equal. ˜ > Applying Definition 3 in the Nayeem and Pal acceptability index, we have the following: a˜ < b˜ iff A(a˜ ≺ b) A(b˜ ≺ a). ˜ (f) Dubois and Prade’s possibility index [9]: Dubois and Prade developed a set of four ranking indexes within the ˜ iff possibility theory framework. Here we consider that a˜ is preferred to b˜ (a˜ ≺ b) ˜ > Poss(b˜ < a). Poss(a˜ < b) ˜

(9)

˜ Applying Definition 3 in Dubois and Prade’s possibility index, we have the following: a˜ < b˜ iff a˜ ≺ b. These ranking indexes can be classified into two groups: those returning as solution a single number (path) and those returning as solution a set of numbers (paths). In the first group are Yager’s first index, the Liou and Wang one, the García and Lamata one and Dubois and Prade’s one. In the second group are the Okada and Soper relation and Nayeem and Pal acceptability index. Therefore, on the one hand, this set of comparison methods here selected is representative enough of the large set of ranking methods existing in the literature, and hence it fits perfectly its illustrative role for the solution of the FSPP considered in Section 4. On the other hand, in this paper the fuzzy numbers to be compared will be assumed as the lengths of the paths in some defined graph, and therefore the comparison of the lengths of these paths by using the previous ranking indexes will make perfect sense. 3. The FSPP: a solution algorithm In this section a mathematical formulation of the FSPP and the proposed solution algorithm are presented. 3.1. Mathematical formulation Let us consider a directed network G = (V , E), where V is the set of vertices and E is the set of arcs. Each arc is denoted by an ordered pair (i, j ), where i, j ∈ V . It is supposed that there is only one directed arc (i, j ) from i to j. Let the node 1 be the source node and let us assume t as the destination node. We define a path pij as a sequence pij = {i, (i, i1 ), i1 , . . . , ik , (ik , j ), j } of alternating nodes and arcs. The existence of at least one path psi in G = (V , E) is assumed for every node i ∈ V − {s}. Let c˜ij denote a triangular fuzzy number associated with the arc (i, j ), corresponding to the length necessary to traverse (i, j ) from i to j. In real problems, the length corresponds to the cost, the time, the distance, etc. Then, the

F. Hernandes et al. / Fuzzy Sets and Systems 158 (2007) 1561 – 1570

1565

FSPP is formulated as the following linear programming problem [21]:  c˜ij xij min f˜(x) = (i,j )∈E

s.t.



xij −



j

xij = 0 or 1

j

xj i

⎧ 1 if i = 1, ⎪ ⎪ ⎨ if i  = 1, t (i = 1, . . . , r), = 0 ⎪ ⎪ ⎩ −1 if i = t,

for (i, j ) ∈ E,

(10)

where r is the number of nodes, and the symbol in the objective function refers to an addition ⊕ of fuzzy numbers. As the meaning of “min” in (10) is ambiguous, because it depends on the fuzzy numbers ranking index to be used, an optimal solution to this problem, in the conventional sense, cannot be obtained. Hence the need of designing and constructing an algorithm for solving it.

3.2. Proposed algorithm As stated previously, the proposed algorithm is an adaptation of the FMB algorithm [2] for classic graphs. It is an iterative algorithm, possessing as stop criterion a number of iterations or the non-alteration of the costs of the paths found between the previous iteration and the current one. Since it is possible for some ranking indexes to produce more than one path between two nodes, each path will receive a label [24]. The algorithm is based on the following: (a) In step 0, the initialization of variables is done (labels and distances are attributed to the paths). (b) In step 1 three main actions are carried out. First (block 1.2), all the paths between the nodes 1 and i are determined (they are determined with the distances assigned in step 0 and the length c˜ij of the arc (i, j )). Second (block 1.3), for all nodes that have more than one path between the nodes 1 and i, the assumed order relation is applied to eliminate the dominated paths. Finally (block 1.4), the existence of some negative circuit is tested. If there is someone, the algorithm is finished because on contrary we would have an infinite loop; otherwise the algorithm continues. (c) In step 2, the stop criterion is verified. If it is satisfied, the shortest paths are constructed in step 3 and the algorithm is finished in step 4. Otherwise it is necessary to return to step 1 (as the algorithm analyzes all the nodes in each iteration, similar to the classic FMB algorithm, the distances of some paths can change their value). The algorithm finishes either if all the paths, and their respective distances in the current iteration, are equal to the corresponding ones in the previous iteration, or if the number of iterations executed is equal to the number of nodes in the graph (in this case the existence of some negative circuit is detected and the algorithm will be in an infinite loop, then the algorithm is finished and is not possible to determine the shortest path). Any case it is important to quote that we do not need to implement the block 1.4, since whether there is one infinite loop the algorithm will finish in the stop criterion, in the iteration r, but with this block the algorithm will finish in this moment and not in the rth iteration. Therefore, if the decision-maker would prefer not to implement this block the algorithm also would perform correctly. The algorithm: For methodological reasons here the algorithm will be described for triangular fuzzy numbers, but it can be adapted with no effort to any kind of fuzzy numbers. The following notations are used: r it E (m + )i i M= E i=1 |(m + ) | c˜j i p(1,t)

number of arcs; iteration counter; set of edges; right spread (m + ) of cost (weight) of arc (i, j ); a large number substituting ∞ in FMB algorithm; cost (length) of arc (j, i); path between nodes 1 and t;

1566

F. Hernandes et al. / Fuzzy Sets and Systems 158 (2007) 1561 – 1570

d kit (p(1,t) ) −1 i dkit (p(1,t) )

distance along the path p(1,t) of the kth label in the iteration i; set of predecessor nodes of i; the adopted ranking index applied for comparing the distance of the path p(1,t) with label k in the iteration it.

Algorithm. Step 0: [Initialization] (1) (2) (3)

d 10 (p(1,1) ) = (0, 0, 0) d 10 (p(1,j ) ) = (M + 2, 1, 1), j = 2, 3, . . . , r it ← 1.

Step 1: [Determination of distance paths, dominance check and negative circuit] (1) d 1it (p(1,1) ) = (0, 0, 0); (2) [Determination of fuzzy path distances: The distance between the nodes 1 and i is the fuzzy addition of the distance of the path with the predecessor node in the previous one iteration, d lit−1 (p(1,j ) ), and the cost of arc (j, i). They are calculated as indicated here] • ∀j ∈ −1 i , i = 2, 3, . . . r, do: d˜ it (p(1,i) ) = d˜ it−1 (p(1,j ) ) ⊕ c˜j i . k

l

(3) [Dominance check: For each node i ∈ N , the dominance is checked for all the labels of the node i, being compared one to one, as indicated] • If dkit (p(1,i) ) > dlit (p(1,i) ) ⇒ delete the label k • If dkit (p(1,i) ) < dlit (p(1,i) ) ⇒ delete the label l. (4) [Verification of a negative circuit: The verification of the existence of a negative circuit is performed by means of the applied index on the distance of the path p(1,j ) . If the results are negative, the algorithm will be in an infinite loop] • If there is at least one node i such that dkit (p(1,i) ) < 0 then ◦ Go to step 4 [negative circuit] ◦ Otherwise go to step 2. Step 2: [Stop criterion] For all nodes and all labels do: (1) If (d˜kit (p(1,i) ) = d˜kit−1 (p(1,i) ) or (it = r)) do • If it = r and (d˜kit (p(1,i) )  = d˜kit−1 (p(1,i) )) then ◦ Go to step 4 [negative circuit] ◦ Otherwise go to step 3. (2) Otherwise it = it + 1, go to step 1. Step 3: [Shortest paths composition: Find the shortest paths from 1 to i (i = 2, 3, . . . , r). It is sufficient to store in the block 1.2 the predecessor’s nodes of i with its labels that are used to rebuild the shortest paths] Step 4: [Termination: Finish the execution of the algorithm]. 3.3. Algorithm information As Gondran and Minoux [12] stated, the FMB algorithm analyzes all the nodes in each iteration and not only one per iteration. The stop criterion is associated with the non-modification of all the paths and their respective distances in

F. Hernandes et al. / Fuzzy Sets and Systems 158 (2007) 1561 – 1570

1567

11

10 7

9

6

8 4

1

3

5

2 Fig. 1. Example network.

the iteration related to the previous one or a number of iterations (in the maximum this will be the number of nodes). As the proposed algorithm is an adaptation of the FMB algorithm, the structure is maintained. Since FMB algorithm, in the case of non-existence of a negative circuit, converges in a maximum of r − 1 iterations (where r is the number of nodes), then this algorithm here will also converge in a maximum of r − 1 iterations since the analysis of convergence of the two algorithms is the same. Considering that Okada and Soper’s order relation is the most expensive, we will compute the efficiency of the algorithm by assuming its use: in step 1 we have a maximum of rVmax additions to calculate the cost for each path, 2 comparisons where Vmax is the maximum number of labels of all the nodes. In step 2, we have in the maximum rVmax 2 of dominances. For each iteration, we then have a complexity of O(rVmax ). Given that the proposed algorithm executes in maximum r − 1 iterations, it has a complexity of 2 2 2 O((r − 1)(rVmax )) = O(r 2 Vmax + rVmax ) = O(r 2 Vmax ).

4. Illustrative examples The algorithm was implemented in Matlab 7.0 language and, for the sake of illustration, here will be shown on two networks using the ranking indexes described in Section 2 for some specific values: Liou and Wang’s for  = 0, 0.5 and 1. García and Lamata for  = 0 and  = 0;  = 0 and  = 0.5;  = 0 and  = 1;  = 0.5 and  = 0;  = 0.5 and  = 0.5;  = 0.5 and  = 1;  = 1 and  = 0;  = 1 and  = 0.5 and  = 1 and  = 1. Okada and Soper for  = 0 and 0.5. Example 1. Let us consider the network in Fig. 1 with fuzzy costs as given in Table 1. When the algorithm is executed, we have the following paths from the node 1 to i (Table 2): Comments—Example 1: We can see that all the ranking indexes produce the same paths between the nodes 1 and i (i = 2, 3, . . . , 10), with the exemption of Okada and Soper’s ranking that produces an additional path between the nodes 1 and 4 for  = 0. Besides, between the nodes 1 and 11, the results show two different paths (which is justifiable) and therefore the path of cost (919 39 24) possesses a smaller spread and proximity (both left and right), justifying Yager’s index and Liou and Wang’s and García and Lamata’s index, while the path of cost (902 42 88) presents a smaller modal value, justifying some indexes, but with irregular spreads. Example 2. Let us consider an acyclic network that possesses an arc with a negative cost to illustrate the performance of the algorithm in networks with such a characteristic (Fig. 2). Table 3 presents the fuzzy costs and the results are shown in Table 4.

1568

F. Hernandes et al. / Fuzzy Sets and Systems 158 (2007) 1561 – 1570

Table 1 Edge information—Example 1 Source node

Destination node

Arc cost

1 1 1 1 1 2 2 2 3 3 3 4 4 4 5 6 7 7 8 8 9 9 9 10 10

2 3 6 9 10 3 5 9 4 5 8 5 6 11 6 11 6 11 4 7 8 7 10 7 11

(820 20 20) (361 11 9) (677 27 6) (300 10 50) (450 30 20) (186 6 7) (510 15 15) (930 30 30) (667 17 216) (748 18 22) (443 18 22) (199 9 11) (340 30 20) (740 30 30) (660 50 30) (242 12 18) (410 20 30) (472 22 18) (730 20 5) (242 12 13) (137 7 8) (130 10 20) (242 12 18) (342 12 8) (1310 60 130)

Table 2 Results of Example 1 Destination node

Shortest path

Cost path

Order relation

2 3 4 4 5 6 7 8 9 10 11

1→2 1→3 1→3→4 1→9→8→4 1→3→5 1→6 1→9→7 1→9→8 1→9 1 → 10 1 → 9 → 7 → 11

(820 20 20) (361 11 9) (1028 28 225) (1167 37 63) (1109 29 31) (677 27 6) (430 20 70) (437 17 58) (300 10 50) (450 30 20) (902 42 88)

11

1 → 6 → 11

(919 39 24)

All All All Okada and Soper ( = 0) All All All All All All Yager; Liou and Wang ( = 1); García and Lamata ( = 1,  = 0); Okada and Soper ( = 0 and 0.5) Liou and Wang ( = 0 and 0.5); García and Lamata (except  = 1,  = 0); Okada and Soper ( = 0 and 0.5); Nayeem and Pal and Dubois and Prade

When the algorithm is executed, we have the following paths (Table 4): Comments—Example 2: Analyzing the results of Table 4, one observes that most order relations present the same results. Hence, we will only focus on the relations where there were differences and thus: (a) We initially verify that Okada and Soper’s ranking presents a considerable number of nondominated paths when ε equals zero, something which does not occur when ε equals 0.5. There is therefore a partial dominance in the

F. Hernandes et al. / Fuzzy Sets and Systems 158 (2007) 1561 – 1570

1569

Fig. 2. Acyclic network.

Table 3 Cost of acyclic network—Example 2 Source node

Destination node

Arc cost

1 1 2 2 2 3 4 4 5

2 3 3 4 5 4 5 6 6

(2 1 1) (7 2 2) (4 3 5) (11 1 1) (6 1 1) (9 1 1) (−8 1 1) (13 2 1) (9 1 1)

Table 4 Results of acyclic network—Example 2 Destination node

Shortest path

Cost path

Order relation

2 3

1→2 1→3

(2 1 1) (7 2 2)

3

1→2→3

(6 4 6)

4 4 5 5 6 6

1→2→4 1→2→3→4 1→2→4→5 1→2→3→4→5 1→2→4→5→6 1→2→3→4→5→6

(13 2 2) (15 5 7) (5 3 3) (7 6 8) (14 4 4) (16 7 9)

All Okada and Soper ( = 0 and 0.5); Liou and Wang ( = 1); García and Lamata ( = 1,  = 0 and  = 1,  = 0.5) All, except Liou and Wang ( = 1); García and Lamata ( = 1,  = 0) All Okada and Soper ( = 0) All Okada and Soper ( = 0) All Okada and Soper ( = 0)

paths between nodes 1 and 4, 5 and 6. This variety in the set solution was already expected since the lengths of the paths are close. (b) We can verify that Liou and Wang’s index is a particular case of García and Lamata’s index when  equals 0. We can also verify that García and Lamata’s index ( = 1 and  = 0.5) produces two different paths between the nodes 1 and 3. The justification of this is that as we are only working with the left spreads, the lengths of the paths (1 → 3, 1 → 2 → 3) presented the same index. (c) In Hernandes and Yamakami [13] an FSPP was solved on this same network by Okada and Soper’s algorithm, and it was obtained, for example, that between the nodes 1 and 5 there were three nondominated paths, which is not true at all. This happened because of the existence of an arc with a negative cost, which is why Okada and Soper’s algorithm can present flaws.

1570

F. Hernandes et al. / Fuzzy Sets and Systems 158 (2007) 1561 – 1570

5. Conclusions and future research In problems of graphs involving uncertainties, the FSPP is one of the most studied topics since it has a wide range of applications in different areas and therefore deserves special attention. In this article, we have considered a generic algorithm for solving this problem. This algorithm can be implemented using any fuzzy numbers ranking index chosen by the decision-maker, but also it can work correctly with crisp numbers. Depending on the ranking index to be used by the decision-maker, the algorithm can return a set of the shortest paths or a single path as solution. It is worthy to emphasize that unlike previously published algorithms, this one can be executed on a network with negative parameters and can detect the existence of a negative circuit. In addition to these advantages, 2 ) is better the computational structure of the algorithm is easy to implement, and its computational complexity O(r 2 Vmax 3 2 than, for example, Okada and Soper’s algorithm O(r Vmax ). In our future work, we intend to study other order relations, to execute the algorithm on networks of different sizes and densities, to include time windows and to develop a DSS for finding tailored tourist circuits. Acknowledgments This research was carried out under projects CAPES (1249/05), TIN2005-02418, TIN2005-08404-C04-01 and TIC00129-JA (MINAS). References [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30]

R.K. Ahuja, T.L. Magnanti, J.B. Orlin, Network Flows, Prentice-Hall, Englewood Cliffs, NJ, 1993. R.E. Bellman, On a routing problem, Quart. Appl. Math. (16) (1958) 87–90. M. Blue, B. Bush, J. Puckett, Unified approach to fuzzy graph problems, Fuzzy Sets and Systems (125) (2002) 355–368. C.-H. Cheng, A new approach for ranking fuzzy numbers by distance method, Fuzzy Sets and Systems 95 (1998) 307–317. T.-N. Chuang, J.-Y. Kung, The fuzzy shortest path length and the corresponding shortest path in a network, Comput. Oper. Res. 32 (2005) 1409–1428. T.-N. Chuang, J.-Y. Kung, A new algorithm for the discrete fuzzy shortest path problem in a network, Appl. Math. Comput. 174 (2006) 1660–1668. M. Delgado, J.L. Verdegay, M.A. Vila, A procedure for ranking fuzzy numbers using fuzzy relations, Fuzzy Sets and Systems 26 (1988) 49– 62. D. Dubois, H. Prade, Fuzzy Sets and Systems: Theory and Applications, Academic Press, New York, 1980. D. Dubois, H. Prade, Ranking fuzzy numbers in the setting of possibility theory, Inform. Sci. 30 (1983) 183–224. D. Eppstein, Finding the k-shortet paths, in: Proc. IEEE Symp. on Foundations of Computer Science, 1994. M.S. García, M.T. Lamata, The fuzzy sets in maintenance process, in: Proceedings of the European Society for Fuzzy Logic and Technology, 2005. M. Gondran, M. Minoux, Graphs and Algorithms, Wiley, New York, 1984. F. Hernandes, A. Yamakami, Um algoritmo para o problema de caminho mínimo em grafos com custos nos arcos fuzzy, in: XV Congresso Brasileiro de Automática, Gramado, RS, 2004. H. Ishibuchi, H. Tanaka, Multiobjective programming in optimization of the interval objective function, European J. Oper. Res. (48) (1990) 219–225. C.M. Klein, Fuzzy shortest paths, Fuzzy Sets and Systems (39) (1991) 27–41. D. Kuchta, A generalisation of an algorithm solving the fuzzy multiple choice knapsack problem, Fuzzy Sets and Systems (127) (2002) 131–140. C. Lin, M.S. Chern, The fuzzy shortest path problem and its most vital arcs, Fuzzy Sets and Systems (58) (1993) 343–353. T.-S. Liou, M.-J. Wang, Ranking fuzzy numbers with integral interval, Fuzzy Sets and Systems (50) (1992) 247–255. J.A. Moreno, J.M. Moreno, J.L. Verdegay, Fuzzy location problems on networks, Fuzzy Sets and Systems (142) (2004) 393–405. S.M.A. Nayeem, M. Pal, Shortest path problem on a network with imprecise edge weight, Fuzzy Optim. Decis. Making 4 (2005) 293–312. S. Okada, Fuzzy shortest path problems incorporating interactivity among paths, Fuzzy Sets and Systems 142 (3) (2004) 335–357. S. Okada, M. Gen, Order relation between intervals and its applications to shortest path problem, in: Proc. 15th Annu. Conf. on Computers and Industrial Engineering, Vol. 25, 1993. S. Okada, M. Gen, Fuzzy shortest path problem, in: Proc. 16th Ann. Conf. on Computers and Industrial Engineering, Vol. 27, 1994. S. Okada, T. Soper, A shortest path problem on a network with fuzzy arc lengths, Fuzzy Sets and Systems (109) (2000) 129–140. A. Sengupta, T.K. Pal, On comparing interval numbers, European J. Oper. Res. (127) (2000) 29–43. A. Sengupta, T.K. Pal, Solving the shortest path problem with intervals arcs, Fuzzy Optim. Decis. Making (5) (2006) 71–89. M.T. Takahashi, Contribuições ao estudo de grafos fuzzy: Teoria e algoritmos, Ph.D. Thesis, Faculdade de Engenharia Elétrica e de Computação, UNICAMP, 2004. R.R. Yager, Ranking fuzzy subsets over the unit interval, in: Proceedings of the CDC, 1978. R.R. Yager, On choosing between fuzzy subsets, Kybernetcs (9) (1980) 151–154. R.R. Yager, A procedure for ordering fuzzy subsets of the unit interval, Inform. Sci. (24) (1981) 143–161.