Abstract
Increasing evaluation indexes have been involved in the network modeling, and some parameters cannot be described precisely. Fuzzy set theory becomes a promising mathematical method to characterize such uncertain parameters. This study investigates the fuzzy multiobjective path optimization problem (FMOPOP), in which each arc has multiple crisp and fuzzy weights simultaneously. Fuzzy weights are characterized by triangular fuzzy numbers or trapezoidal fuzzy numbers. We adopt two fuzzy number ranking methods based on their fuzzy graded mean values and distances from the fuzzy minimum number. Motivated by the ripple spreading patterns on the natural water surface, we propose a novel ripplespreading algorithm (RSA) to solve the FMOPOP. Theoretical analyses prove that the RSA can find all Pareto optimal paths from the source node to all other nodes within a single run. Numerical examples and comparative experiments demonstrate the efficiency and robustness of the newly proposed RSA. Moreover, in the first numerical example, the processes of the RSA are illustrated using metaphorbased language and ripple spreading phenomena to be more comprehensible. To the best of our knowledge, the RSA is the first algorithm for the FMOPOP that can adopt various fuzzy numbers and ranking methods while maintaining optimality.
Introduction
The path optimization problem (POP) is fundamental to various practical applications, such as transportation [1], supply chain management [2], telecommunication [3], and robot control [4]. The shortest path problem (SPP) is the most wellstudied in the field of POP, and many classical algorithms have been proposed [5, 6]. The SPP aims to minimize the summation of deterministic weights associated with each arc. With the fast development of the network modeling, each arc may have multiple criteria [7], which forms the multiobjective path optimization problem (MOPOP).
Generally, the weights of each arc represent the cost, time, and reliability that are assumed to be deterministic. However, in many realworld situations, some kinds of weights are uncertain and difficult to be represented by crisp numbers. For example, the traversing time of a road greatly depends on traffic conditions [8]. Zadeh et al. [9] proposed the fuzzy set theory, which is a typical way to handle uncertainties. An element of a universe discourse is characterized by a membership degree between 0 and 1 [10]. The fuzzy set theory has emerged as a powerful platform for various realworld applications with uncertainties, such as decision making [11], network modeling [12], and pattern recognition [13]. The POP on fuzzy networks has been widely studied in recent years on account of its application values. Moreover, a network may have both crisp and fuzzy weights simultaneously. For example, path length and population exposure are two evaluation indexes for hazardous material transportation [14]. The path length can be measured accurately, while the population exposure depends on the population density, which is always timevarying. Therefore, providing complete solutions efficiently to the MOPOP with crisp and fuzzy weights may make a difference in numerous realworld problems.
The MOPOP belongs to the scope of the multiobjective optimization problem (MOOP), whose primary goal is to find Pareto optimal solutions [15]. There exist mainly four categories of MOOP algorithms: (1) using an aggregate function to combine objectives into a single one [15, 16]; (2) optimizing one objective while treating the others as constraints [17]; (3) evolutionary algorithms based on Pareto ranking [18]; (4) evolutionary algorithms based on decomposition [19]. The first two categories decompose the MOOP into singleobjective optimization problems that deem partial objectives more important than the others. Therefore, they may miss some Pareto optimal solutions [20]. The last two categories are based on evolutionary algorithms, which are stochastic and cannot guarantee optimality [21]. In addition, some specific algorithms for MOPOPs have been proposed, such as the twophase method [22], labeling method [23], and ranking method [24]. These algorithms are logicbased and extended from SPP algorithms. Moreover, they mainly focus on biobjective problems. For this reason, these MOPOP algorithms have relatively low flexibility to be adapted to fuzzy graphs with more than two objectives.
Recently, researchers have shown a growing interest in POPs with fuzzy weights. Dubois et al. [25] first proposed an algorithm based on the Floyd algorithm to solve the SPP in a fuzzy network (FSPP), in which each arc is characterized by a fuzzy number. Various algorithms for the FSPP have been proposed [26], such as the dynamic programming [27], fuzzy Dijkstra algorithm [28], fuzzy Physarum algorithm [29], and fuzzy genetic algorithm [30]. Furthermore, some researchers also investigate MOPOPs with fuzzy weights. Kim et al. [31] proposed a quantuminspired evolutionary algorithm to plan robotic paths considering three objectives. In [32], fuzzy objectives are aggregated using sumweighted functions. Adhikari et al. [33] planned 3D UAV paths with a multiobjective fuzzy logic controller using fuzzy adaptive differential evolution. Zero et al. [14] modified Martin’s Algorithm and A\(^*\) algorithm to solve a biobjective POP with a crisp objective and a minmax fuzzy objective. Abbaszadeh et al. [34] implemented the fuzzy inference system to find a path considering three objectives while respecting resource constraints. Bagheri et al. [35] devised fuzzy efficiency scores to convert fuzzy objectives to a single objective and implemented the data envelopment analysis.
The ripplespreading algorithm (RSA) is an agentbased and deterministic algorithm that consists in solving various POPs [36,37,38,39]. The RSA is proposed by simulating the following natural phenomena: a ripple spreads out on a disturbed water surface and triggers new ripples when encountering obstacles. Different RSAs share the same optimization principle: the traveling path of the first ripple reaching a node is the shortest path, which is consistent with natural phenomena. Although this principle makes the RSA a deterministic algorithm, the RSA can also be implemented as an agentbased model whose primary merit is flexibility [40]. All ripples can have their spreading motions and triggering conditions, and their combined behaviors help solve a specific problem. We can modify the triggering condition and termination judgment of the RSA to make it solve the SPP [36], the POP on dynamic networks [37], the k shortest paths problem [38], and the MOPOP [39].
The primary goal of this paper is to provide complete solutions efficiently to MOPOPs with multiple crisp and fuzzy weights. We define the fuzzy MOPOP (FMOPOP), in which each arc has at least one crisp weight and multiple fuzzy weights. Each fuzzy weight can be represented by a triangular fuzzy number (TFN) [41] or a trapezoidal fuzzy number (TrFN) [42]. Moreover, we adopt two methods to rank fuzzy numbers. The first method is based on fuzzy graded mean values [28, 30], and the second method is based on the distances between fuzzy numbers [27, 29, 43]. Motivated by the RSA, we adapt the triggering condition to make it solve the FMOPOP. A ripple triggers another ripple on a water surface when reaching a stone. In the RSA, we define the Pareto optimal ripple (POR), and only PORs can trigger new ripples at nodes. The newly proposed RSA is a deterministic algorithm that ensures optimality. Furthermore, the RSA can determine all Pareto optimal paths from the source node to all other nodes within a single run. Different kinds of fuzzy numbers and ranking methods can be adopted using the RSA while maintaining optimality.
The remainder of this paper is organized as follows. The second section provides preliminaries about the fuzzy set theory, Pareto concepts, and the RSA. The mathematical formulation of the FMOPOP is provided in the third section. In the fourth section, the RSA is adapted to solve the FMOPOP. Several numerical examples and comparative experiments are presented in the fifth section. Finally, the paper ends up with some conclusions the in the last sections.
Preliminaries
Basic definitions
Definition 1
(Fuzzy set) Let X denote a nonempty set, and \({\tilde{A}}\) denote a subset of X. If \({\tilde{A}}\) is a fuzzy set, it can be described as:
where \(\mu _{{\tilde{A}}}:X\rightarrow [0, 1]\) is the membership function of \({\tilde{A}}\). For \(\forall x \in X\), \(\mu _{{\tilde{A}}}(x)\) denotes the membership degree of x in \({\tilde{A}}\).
Definition 2
(Fuzzy number) If and only if a fuzzy set \({\tilde{A}}\) is convex and normal, it is a fuzzy number. Where ”convex” denotes that:
and ”normal” denotes that:
Definition 3
(Triangular fuzzy number) Let \({\tilde{A}}=(a_1, a_2, a_3)\) be a triangular fuzzy number (TFN), whose membership function is defined as follows:
Definition 4
(Trapezoidal fuzzy number) Let \({\tilde{A}}=(a_1, a_2,a_3, a_4)\) be a trapezoidal fuzzy number (TrFN), whose membership function is defined as follows:
Definition 5
(Fuzzy operations) For two TFNs \({\tilde{A}}=(a_1, a_2,a_3)\) and \({\tilde{B}}=(b_1, b_2, b_3)\), their fuzzy addition (\(\oplus \)) and multiplication (\(\otimes \)) operations are defined as:
And for two TrFNs \({\tilde{A}}=(a_1, a_2, a_3, a_4)\) and \({\tilde{B}}=(b_1, b_2, b_3, b_4)\), their fuzzy addition (\(\oplus \)) and multiplication (\(\otimes \)) operations are defined as:
Definition 6
(\(\alpha \)cut) \({\tilde{A}}\) is a fuzzy subset of X. The \(\alpha \)cut (\({\tilde{A}}_\alpha \)) and strong \(\alpha \)cut (\({\tilde{A}}_{\alpha +}\)) of \({\tilde{A}}\) are defined as:
where \(\alpha \in [0, 1]\). Moreover, we use \({\tilde{A}}_{\alpha }^+\) to denote \(\sup ({\tilde{A}}_\alpha )\) and \({\tilde{A}}_{\alpha }^\) to denote \(\inf ({\tilde{A}}_\alpha )\).
We provide Figs. 1 and 2 to illustrate an example of TFN and TrFN and their \(\alpha \)cut. From the two figures, we can quickly determine \({\tilde{A}}_{\alpha }^+\) and \({\tilde{A}}_{\alpha }^\).
Definition 7
(Fuzzy graded mean value) For a TFN \({\tilde{A}}=(a_1, a_2, a_3)\), its fuzzy graded mean value is defined as:
And for a TrFN \({\tilde{A}}=(a_1, a_2, a_3, a_4)\), its fuzzy graded mean value is defined as:
Definition 8
(Fuzzy distance) We adopt a nonnegative function to calculate the distance \(D_{p, q}({\tilde{A}}, {\tilde{B}})\) between two fuzzy numbers \({\tilde{A}}\) and \({\tilde{B}}\), where \(p>1\) and \(0< q < 1\) [44]:
The first parameter p determines the analytical features of \(D_{p,q}\), while the second parameter q describes the subjective weight attributed to the end points of support, i.e., \(({\tilde{A}}_\alpha ^, {\tilde{A}}_\alpha ^+)\) for the fuzzy number \({\tilde{A}}\) [27]. When q is close to 0, the left side of the support is given more consideration. The value \(q=1/2\) is adopted in this study as the significance of the end points of the support of fuzzy numbers is assumed to be the same. Moreover, \(p=2\) is the most frequently used for fuzzy distance [27, 29, 43]. For two TFNs \({\tilde{A}}=(a_1, a_2, a_3)\) and \({\tilde{B}}=(b_1, b_2, b_3)\), when \(p=2\) and \(q=1/2\), their distance is calculated as:
And for two TrFNs \({\tilde{A}}=(a_1, a_2, a_3, a_4)\) and \({\tilde{B}}=(b_1, b_2, b_3, b_4)\), their distance is calculated as:
Ranking methods of fuzzy numbers
How to rank the fuzzy path cost is of great importance in solving the FSPP. A number of studies have investigated how to rank fuzzy numbers [45,46,47]. In this paper, we adopt two methods:
Ranking method 1 The fuzzy numbers are ranked according to their fuzzy graded mean values [28, 30].
Ranking method 2 The fuzzy numbers are ranked according to their distances between the fuzzy minimum number (\(M{\tilde{N}}\)) [27, 29, 43]. For two TFNs \({\tilde{A}}=(a_1, a_2, a_3)\) and \({\tilde{B}}=(b_1, b_2, b_3)\), their \(M{\tilde{N}}\) is defined as:
In the same way, the \(M{\tilde{N}}\) of two TrFNs \({\tilde{A}}=(a_1, a_2, a_3, a_4)\) and \({\tilde{B}}=(b_1, b_2, b_3, b_4)\) is:
We take two TrFNs \({\tilde{A}}=(2, 5, 9, 14)\) and \({\tilde{B}}=(4, 6, 11, 12)\) as an example, as shown in Fig. 3. Using ranking method 1, \(P({\tilde{A}})=7.33\) and \(P({\tilde{B}}) = 8.33\), so \({\tilde{A}}\) is less than \({\tilde{B}}\). Using ranking method 2, \(M{\tilde{N}}=(2, 5, 9, 12)\). The distances are \(D_{2, 1/2}({\tilde{A}}, M{\tilde{N}})=0.82\) and \(D_{2, 1/2}({\tilde{B}}, M{\tilde{N}})=1.35\), so \({\tilde{A}}\) is less than \({\tilde{B}}\).
Pareto concepts
Pareto concepts are firstly applied in economic research [48] and become the core concept of the MOOP [15]. For a MOPOP with q objectives, it aims to minimize all of them. Let \(P_1\) and \(P_2\) be two feasible paths, and f(P)(i) denote the i^{th} objective value of path P, \(i=1,\cdots , q\). If \(P_1\) is no worth than \(P_2\) on all objectives and better than \(P_2\) on at least one objective, \(P_1\) Pareto dominates \(P_2\). We use \(P_1\prec P_2\) to denote that \(P_1\) Pareto dominates \(P_2\), and its mathematical formulation is:
”Pareto optimal” means that the progression on one objective must lead to regression on the others. Let a set \(\Omega _P\) contain all possible paths. If a path \(P^*\) is Pareto optimal, there is no path P that Pareto dominates \(P^*\). The mathematical relation is:
All Pareto optimal paths construct the Pareto set. The projection of a Pareto optimal path in the objective space is a Pareto point, and all Pareto points form the Pareto front of the MOPOP [7].
Basic ideas behind the RSA
The RSA is proposed by simulating natural ripple patterns on a water surface: all ripples spread out in all directions at the same speed. A ripple triggers another ripple when encountering an obstacle. The basic principle behind this phenomenon is that the first ripple that reaches a node travels along the shortest path [36]. From the perspective of algorithm design, each ripple has basic features: the epicenter, state, and radius. The epicenter is the node where the ripple is generated. Only ripples in the active state spread out. In the RSA, ripples spread out on a network where the distance between two nodes is represented by a crisp number. We present the basic steps of the RSA for the SPP as follows:

1.
An active ripple is initialized at the source node.

2.
At each time, all active ripples spread out at the same speed.

3.
If a ripple reaches an unvisited node first, it triggers another ripple.

4.
If an active ripple has visited all nodes connected to its epicenter, it becomes inactive.

5.
If a ripple has visited the destination node, the SPP is solved. The traveling path of this ripple is the shortest.
Figure 4 provides a toy example of the RSA for the SPP, and only active ripples are plotted. Following the steps mentioned above, ripple \(\hbox {R}_{3}\) reaches the destination node d first and becomes inactive . Its traveling path s2d is the shortest path. We can observe that the whole processes resemble a ripple relay race.
Mathematical formulation
In this section, we provide the mathematical formulation of the FMOPOP. We consider a directed network \(G=\{V, E\}\), where V is the node set, and E is the arc set. \(V=\{1, 2, \cdots , n_n\}\) contains \(n_n\) different nodes, and \(E=\{(i, j)\mid i\in V, j\in V\}\) contains \(n_a\) different arcs. The arc from node i to node j is denoted as (i, j). Moreover, there are \(n_c\) crisp weights and \(n_f\) fuzzy weights associated with each arc, and \(n_w\) denotes the total number of weights. For arc (i, j), its m^{th} crisp weight is denoted as \(c_{ij}^m\), and its n^{th} fuzzy weight is \({\tilde{c}}_{ij}^n\). A path \(P_{sd}\) from the source node s to the destination node d is a sequence of nodes \(P_{sd}=\{s=n_1, n_2, \cdots , n_{m1}, n_m=d\}\), where \((n_{h}, n_{h+1})\in E\) holds for \(\forall h=1, \cdots , m1\). The mathematical formulation of the FMOPOP is:
In model (18), \(x_{ij}=1\) denotes that arc (i, j) is a part of the path, otherwise \(x_{ij}=0\).
Moreover, we define the objective function of a path \(P=\{n_1, n_2, \cdots , n_{m1}, n_m\}\) as:
In Eq. (19), f(P, i)(j) denotes the j^{th} objective value of the subpath of P from node \(n_1\) to node \(n_i\). The objective value is stored in a list structure, in which the first \(n_c\) components denote crisp values, and the last \(n_f\) components denote fuzzy values. For simplicity, we use f(P) to denote f(P, m) hereafter.
The adapted RSA
This section proposes an adapted RSA for the FMOPOP and conducts theoretical analyses to demonstrate its optimality and efficiency.
Algorithm description
Different from the RSA for the SPP illustrated in Subsection “Basic ideas behind the RSA”,we need to adapt the triggering condition and termination judgment for the FMOPOP. We first introduce a new definition of Pareto optimal ripple (POR):
Definition 9
(POR) If a ripple R reaches node n along path P, and the traveling paths of other ripples that reach n before R do not Pareto dominate P, then R is a POR at node n.
The new triggering condition is that if an incoming ripple is a POR at this node, it triggers a new ripple. Moreover, the termination judgment is modified as all ripples are inactive. Other notations used in the RSA are listed in Table 1.
Algorithm 1 is the RSA for the FMOPOP. The flowchart in Fig. 5 uses metaphorbased language to illustrate the processes of the RSA step by step. After executing the RSA, the traveling paths of all PORs at the destination d are exactly all Pareto optimal paths of the FMOPOP. According to Line 3 of Algorithm 1, ripples spread out on the network described by the k^{th} crisp weight. The ripple spreading speed v is chosen as the minimum value of the k^{th} crisp weight, which can increase efficiency while maintaining optimality [39]. The new ripple triggering condition is Line 12, where \(n\notin P(i)\) is to avoid loops in paths, \(c_{E(i)n}^k\le R(i)<c_{E(i)n}^k+v\) denotes that ripple i is an incoming ripple at node n in this period, and IsPOR(i) is to judge whether ripple i is a POR or not. Algorithm 2 provides the pseudo code of determining whether path \(P_1\) Pareto dominates \(P_2\) using ranking method 2, in which f(P) denotes the objective value of P according to (19). Actually, we can adopt any fuzzy number ranking method. As long as the Pareto domination relation between two paths can be determined, the RSA can solve the FMOPOP.
Theoretical analysis
In this subsection, we prove that the traveling paths of PORs at each node are exactly all Pareto optimal paths to this node. Moreover, the time complexity of the RSA is calculated.
Lemma 1
In the RSA, the i^{th} ripple that reaches a node travels along the i^{th} shortest path.
Lemma 2
A Pareto optimal path \(P=\{s=n_1,\cdots ,n_m=d\}\) is formed by Pareto optimal subpaths, i.e., \(\{n_1,\cdots ,n_i\}\) is Pareto optimal from s to node \(n_i\).
Lemma 1 states the basic optimization principle of RSAs, which directly comes from the theorems in [38]. And Lemma 2 comes from the theorems in [49]. Readers can get the detailed proof in these two papers.
Lemma 3
The traveling path P of a POR at node n is a Pareto optimal path from the source node s to n.
Proof
The proof is divided into two scenarios: (1) According to Definition 9, the traveling paths of all ripples that reach n before the POR do not Pareto dominate P. (2) If a ripple reaches n after the POR along path \(P_1\). We assume that ripples spread out on the network described by the k^{th} crisp weight. According to Lemma 1, its k^{th} objective value is greater than the k^{th} objective value of P, i.e., \(f(P_1)(k)>f(P)(k)\). According to relation (16), it is impossible that \(P_1\prec P\). Therefore, Lemma 3 holds. \(\square \)
Theorem 1
After executing the RSA, the traveling paths of all PORs at a node are all Pareto optimal paths to this node. In other words, we can determine all Pareto optimal paths from the source node s to all other nodes within a single run.
Proof
According to Lemma 2, all the subpaths of a Pareto optimal path are also Pareto optimal. According to Definition 9, the ripple traveling along a Pareto optimal path is assessed as a POR. Step 3.4 in Fig. 5 denotes that if an incoming ripple is a POR, it triggers a new ripple. All Pareto optimal paths are traveled by PORs at this node, i.e., the RSA does not miss any Pareto optimal path. Moreover, Lemma 3 guarantees that the traveling paths of PORs are Pareto optimal. Therefore, Theorem 1 is true. \(\square \)
Theorem 2
The time complexity of the RSA for the FMOPOP is \(O(n_w\times n_{a}\times n_{POR}^2)\), where \(n_{POR}\) is the average number of PORs at each node.
Proof
In the RSA, only active ripples need computational steps. There are \(n_n\) nodes and \(n_a\) arcs on the network, so each node has \(n_a/n_n\) arcs on average. Each active ripple takes average \(n_{at}\) time units to travel through the longest arc connected to its epicenter, and then it becomes inactive. During its active state, there are three parts of computational steps: (1) ripple spreading and comparing its radius with the arc’s length; (2) determining the objective value of its traveling path; (3) determining whether it is a POR at its visiting node. The first part executes every time unit, which takes \((2\times n_{at}\times n_a / n_n)\) steps. The second and third parts only execute when reaching a new node, and there are average \(n_{POR}\) ripples to be compared with on \(n_w\) objectives. These two parts take \(((1+n_{POR})\times n_w\times n_a / n_n)\) steps. There are \((n_n\times n_{POR})\) active ripples ever generated, so the whole process of the RSA takes \(n_{cs}\) computational steps:
In largescale problems, the number of PORs is much greater than \(n_{at}\) and 1. So the time complexity is calculated as \(O(n_w\times n_a\times n_{POR}^2)\). \(\square \)
Examples and comparative experiments
In this section, we present two numerical examples and some comparative experiments to demonstrate the capability and robustness of the newly proposed RSA.
Numerical examples
Example 1
We first consider an undirected network shown in Fig. 6, consisting of 5 nodes and 8 arcs. A crisp weight and a fuzzy weight described by a TFN are associated with each arc, as shown in Table 2. The crisp weight of an arc represents its length. The source node is node 1, and all other nodes are destination nodes. The aim is to find all Pareto optimal paths from node 1 to destination nodes.
At \(t=0\), the first active ripple \(\hbox {R}_{1}\) is initialized at the source node s. The ripple spreading speed v is chosen as \(\min (c_{ij}^1)=32\).
At \(t=1\), \(\hbox {R}_{1}\) spreads out, and its radius becomes 32, as shown in Fig. 7.
At \(t=2\), \(\hbox {R}_{1}\) reaches node 3 and triggers a new ripple \(\hbox {R}_{2}\) (red, radius = 20). \(\hbox {R}_{1}\) reaches node 2 and triggers a new ripple \(\hbox {R}_{3}\) (yellow, radius = 2), as shown in Fig. 8.
At \(t=3\), \(\hbox {R}_{1}\) reaches node 4 and becomes inactive as it has visited all nodes connected to node 1, and we eliminate it from the network. \(\hbox {R}_{2}\) reaches node 2, node 4, and node 5 and also becomes inactive. \(\hbox {R}_{1}\) triggers \(\hbox {R}_{4}\) (blue, radius = 29) at node 4. \(\hbox {R}_{2}\) triggers \(\hbox {R}_{5}\) (green, radius = 20) at node 4 and triggers \(\hbox {R}_{6}\) at node 5 (black, radius = 0), as shown in Fig. 9. It is worth noticing that \(\hbox {R}_{2}\) reaches node 2, and \(\hbox {R}_{3}\) reaches node 3, but they do not trigger any ripple. Take \(\hbox {R}_{2}\) as an example: when it reaches node 2, its objective value is \(\{77, (9, 14, 27)\}\). It is Pareto dominated by the existing POR \(\hbox {R}_{2}\) at node 3, whose objective value is \(\{62, (3, 10, 20)\}\). So \(\hbox {R}_{2}\) is not a POR at node 3. According to Step 3.4 in Fig. 5, it does not trigger any ripple.
At \(t=4\), \(\hbox {R}_{3}\) reaches node 5 and becomes inactive. At node 5, \(\hbox {R}_{3}\) triggers \(\hbox {R}_{7}\) (red, radius = 14), and \(\hbox {R}_{4}\) triggers \(\hbox {R}_{8}\) (yellow, radius = 7), as shown in Fig. 10.
At \(t=5\), \(\hbox {R}_{5}\) triggers \(\hbox {R}_{9}\) (blue, radius = 30) at node 5. \(\hbox {R}_{4}\), \(\hbox {R}_{5}\), and \(\hbox {R}_{6}\) become inactive. \(\hbox {R}_{7}\) and \(\hbox {R}_{8}\) also spread out at \(v=32\), as shown in Fig. 11.
At \(t=6\), \(\hbox {R}_{7}\), \(\hbox {R}_{8}\), and \(\hbox {R}_{9}\) reach all nodes connected to node 5 and become inactive. Moreover, they are not PORs at their forward nodes. Up to now, there is no active ripple, and Example 1 is solved.
Table 3 lists all PORs at each node after solving Example 1. Table 4 lists all possible paths to each node and their corresponding values. Optimal 1 and Optimal 2 in Table 4 denote whether the path is Pareto optimal using the ranking methods 1 and 2 in the second section. After comparison, we observe that all the traveling paths of PORs at each node are exactly all Pareto optimal paths to this node. Moreover, the RSA determines Pareto optimal paths to all other nodes within a single run.
Example 2
The directed network of this example is shown in Fig. 12, consisting of 12 nodes and 23 arcs. Each arc has two crisp weights and two fuzzy weights, as shown in Table 5. Crisp 1 and Crisp 2 denote two crisp weights. Likewise, Fuzzy 1 and Fuzzy 2 denote two fuzzy weights, as shown in Table 5. The source node is node 1, and the destination node is node 12.
Table 6 lists all Pareto optimal paths determined by the RSA. Example 2 demonstrates that the RSA also can provide complete solutions for the FMOPOP where the number of crisp and fuzzy weights is more than two.
Comparative experiments
This subsection conducts comparative experiments to evaluate the computational efficiency of the RSA on largescale networks. To the best of our knowledge, there is no exact algorithm to solve the FMOPOP using various fuzzy number ranking methods. Given the complexity of calculating the distance between two fuzzy numbers, as shown in relation (11), it is difficult to adapt existing MOPOP algorithms to solve the FMOPOP. We choose one of the most classic multiobjective evolutionary algorithms, the NSGAII, as the benchmark for its outstanding flexibility [18]. Each path is encoded in the same method as [50]. To adapt the NSGAII, we combine the fastnondominatedsort with Algorithm 2, which can determine the Pareto domination relation of two paths. Moreover, the crowdingdistanceassignment in the NSGAII is only conducted on crisp objective values. The parameters of the NSGAII are set up as follows: the population size is 100, the number of generations is 100, the crossover probability is 0.9, and the mutation probability is 0.15.
The test networks are randomly generated and contain at least one Hamiltonian cycle. The source and destination are randomly chosen. Each arc has \(n_c\) crisp weights uniformly distributed between 1 and 20 and \(n_f\) fuzzy weights described by TFNs. For each TFN \((a_1, a_1, a_3)\), \(a_1, a_2,\) and \(a_3\) are distributed between 1 and 20. To evaluate the efficiency of the RSA under different numbers of nodes and objectives, we set \(n_n\) in the range of 50 and 500 with the increment of 50 and \(n_c=n_f\in [1, 3, 5, 10]\). For each instance, we set \(n_a=4\times n_n\). There are 40 instances in total, and we conducted ten experiments for each instance. The results of the two algorithms are gathered after solving the same problem. Using the fastnondominatedsort [18], all nondominated solutions are true Pareto optimal paths, and the others are false Pareto optimal paths. We record the running time (RT) in seconds, the number of Pareto optimal paths (APN), and the number of true Pareto optimal paths (TPN).
Table 7 presents the experimental data, from which one may conclude that:

The RSA has outstanding computational efficiency. The average RTs of the RSA and NSGAII are 1.67 s and 28.69 s, which implies that the RSA solves the FMOPOP 17.18 times faster than the NSGAII on average.

Due to the random features of the NSGAII, its APN is no greater than that of the RSA. Moreover, the TPN of the NSGAII is lower than the APN. It implies that the NSGAII may miss some Pareto optimal paths or output some false Pareto optimal paths. On the contrary, the RSA finds all Pareto optimal paths.

With the increment of \(n_n\) and \(n_c\), the percentage of the Pareto optimal paths found by the NSGAII decreases. The parameters of the NSGAII should be readjusted according to the problem scale. Otherwise, it may lose computational efficiency or miss Pareto optimal solutions. Under different numbers of weights and nodes, the RSA finds all Pareto optimal paths within a reasonable computation time. What is striking about the RSA is its robustness, as it maintains optimality without readjusting any parameters.
Up to now, the existing studies have not dealt with the onetoall FMOPOP, which aims to determine all Pareto optimal paths from the source node to all other nodes. We provide a comparative experiment of the onetoall FMOPOP. We select one node as the source node from a network with 50 nodes and 200 arcs, and the others are destination nodes. Each arc has 10 crisp weights and 10 fuzzy weights. We can solve the onetoall FMOPOP using the RSA within a single run. However, the NSGAII needs to run 49 times to find the Pareto optimal paths from the source node to all other nodes. We ran the two algorithms on a onetoall FMOPOP and recorded the TPN to each destination node. Fig. 13 presents the comparative results, in which the TPN of the RSA is shown in black, and the NSGAII is in red. From the figure, the RSA finds all Pareto optimal paths to other nodes, while the NSGAII misses some of them. Moreover, the RT of the RSA is 0.36 s, while the NSGAII is 1752.11 s. For the FMOPOP with multiple destination nodes, the advantage of the computational efficiency of the RSA is further increased compared to other algorithms.
From two numerical examples and comparative experiments, we can obtain the following observations:

The proposed RSA can find all Pareto optimal paths to all other nodes within a single run. Moreover, the RSA only finds true Pareto optimal paths.

The RSA maintains its optimality when the number of objectives is more than two.

Various fuzzy numbers and ranking methods can be adopted in the RSA on account of its flexibility.

We can use metaphorbased descriptions and figures to explain the detailed processes of the RSA, which is more comprehensible.

The RSA is an efficient and robust algorithm for the FMOPOP.

The main limitation of the RSA is that there must be at least one crisp weight. We need a network described by crisp weights to conduct the ripple relay race.
Conclusion
Networks with crisp and fuzzy weights are of interest within a wide range of scientific and industrial processes. In this paper, we define this optimization problem as the fuzzy multiobjective path optimization problem (FMOPOP). Each arc has multiple crisp weights denoted by positive real numbers and multiple fuzzy weights denoted by triangular fuzzy numbers (TFNs) or trapezoidal fuzzy numbers (TrFNs). We adopt two different methods to rank fuzzy numbers based on their fuzzy graded mean values and distances from the fuzzy minimum number. The main contribution of this paper is to propose an algorithm that can determine all Pareto optimal paths from the source node to all other nodes within a single run. To this end, a natureinspired algorithm, the ripplespreading algorithm (RSA), is proposed. The RSA simulates ripple spreading and triggering motions on a water surface. We adapt the triggering condition of new ripples to make the RSA solve the FMOPOP. We prove the optimality of the RSA theoretically and calculate its time complexity. Two numerical examples of the FMOPOP are provided. In the first example, we illustrate how the RSA solves the FMOPOP step by step using metaphorbased language and figures. The second example demonstrates that the RSA can solve the FMOPOP where the number of weights is more than two. Comparative experiments imply the high computational efficiency and robustness of the RSA for the FMOPOP.
In the future study, we want to extend the RSA to path optimization in vague, intuitionistic, and neutrosophic environments [26]. More ranking methods and intervalvalued fuzzy sets could be adopted. Finally, the RSA can combine with some problemspecific operations to solve realworld applications.
References
Fu L, Sun D, Rilett LR (2006) Heuristic shortest path algorithms for transportation applications: state of the art. Comput Oper Res 33(11):3324–3343
Nunes L, Causer T, Ciolkosz D (2020) Biomass for energy: a review on supply chain management models. Renew Sustain Energy Rev 120:109658
Sasabe M, Hara T (2020) Capacitated shortest path tour problembased integer linear programming for service chaining and function placement in NFV networks. IEEE Trans Netwk Service Manag 18(1):104–117
Patle B, Pandey A, Parhi D, Jagadeesh A (2019) A review: On path planning strategies for navigation of mobile robot. Defence Technol 15(4):582–606
Dijkstra EW (1959) A note on two problems in connexion with graphs. Numerische Mathematik 1(1):269–271
Floyd RW (1962) Algorithm 97: shortest path. Commun ACM 5(6):345
Gunantara N (2018) A review of multiobjective optimization: methods and its applications. Cogent Eng 5(1):1502242
Zhang T, Sun L, Yao L, Rong J (2017) Impact analysis of land use on traffic congestion using realtime traffic and POI. Journal of Advanced Transportation 2017
Zadeh LA (1996) Fuzzy sets. Fuzzy Sets. Fuzzy Logic, and Fuzzy Systems: Selected Papers by Lotfi A Zadeh. World Scientific, USA, pp 394–432
Zimmermann HJ (2011) Fuzzy Set Theoryand Its Applications. Springer, New York
Deng Y, Chan FT (2011) A new fuzzy dempster MCDM method and its application in supplier selection. Expert Syst Appl 38(8):9854–9861
Deng Y, Jiang W, Sadiq R (2011) Modeling contaminant intrusion in water distribution networks: a new similaritybased DST method. Expert Syst Appl 38(1):571–578
Yong D, Wenkang S, Feng D, Qi L (2004) A new similarity measure of generalized fuzzy numbers and its application to pattern recognition. Pattern Recognit Lett 25(8):875–883
Zero L, Bersani C, Paolucci M, Sacile R (2019) Two new approaches for the biobjective shortest path with a fuzzy objective applied to HAZMAT transportation. J Hazardous Materials 375:96–106
Sawaragi Y, NAKAYAMA H, TANINO T (1985) Theory of Multiobjective Optimization. Elsevier, USA
Messac A, Sundararaj GJ, Tappeta RV, Renaud JE (2000) Ability of objective functions to generate points on nonconvex Pareto frontiers. AIAA J 38(6):1084–1091
Messac A, IsmailYahaya A, Mattson CA (2003) The normalized normal constraint method for generating the Pareto frontier. Struct Multidisciplinary Opt 25(2):86–98
Deb K, Pratap A, Agarwal S, Meyarivan T (2002) A fast and elitist multiobjective genetic algorithm: NSGAII. IEEE Trans Evol Comput 6(2):182–197
Zhang Q, Li H (2007) MOEA/D: a multiobjective evolutionary algorithm based on decomposition. IEEE Trans Evol Comput 11(6):712–731
Das I, Dennis JE (1997) A closer look at drawbacks of minimizing weighted sums of objectives for Pareto set generation in multicriteria optimization problems. Struct Opt 14(1):63–69
Slowik A, Kwasnicka H (2020) Evolutionary algorithms and their applications to engineering problems. Neural Comput Appl 32(16):12363–12379
Ulungu EL, Teghem J (1995) The two phases method: an efficient procedure to solve biobjective combinatorial optimization problems. Found Comput Decision Sci 20(2):149–165
Guerriero F, Musmanno R (2001) Label correcting methods to solve multicriteria shortest path problems. J Opt Theory Appl 111(3):589–613
Hu XB, Wang M, Di Paolo E (2013) Calculating complete and exact Pareto front for multiobjective optimization: a new deterministic approach for discrete problems. IEEE Trans Cybernet 43(3):1088–1101
Dubois DJ (1980) Fuzzy sets and systems: theory and applications, vol 144. Academic press, USA
Broumi S, Talea M, Bakali A, Smarandache F, Nagarajan D, Lathamaheswari M, Parimala M (2019) Shortest path problem in fuzzy, intuitionistic fuzzy and neutrosophic environment: an overview. Complex Intell Syst 5(4):371–378
Mahdavi I, Nourifar R, Heidarzade A, Amiri NM (2009) A dynamic programming approach for finding shortest chains in a fuzzy network. Applied Soft Computing 9(2):503–511
Deng Y, Chen Y, Zhang Y, Mahadevan S (2012) Fuzzy Dijkstra algorithm for shortest path problem under uncertain environment. Appl Soft Comput 12(3):1231–1237
Zhang Y, Zhang Z, Deng Y, Mahadevan S (2013) A biologically inspired solution for fuzzy shortest path problems. Appl Soft Comput 13(5):2356–2363
Lin L, Wu C, Ma L (2021) A genetic algorithm for the fuzzy shortest path problem in a fuzzy network. Complex Intell Syst 7(1):225–234
Kim YH, Kim JH (2009) Multiobjective quantuminspired evolutionary algorithm for fuzzy path planning of mobile robot. In: 2009 IEEE Congress on Evolutionary Computation, pp. 1185–1192 . IEEE
Yanyang W, Tietao W, Xiangju Q (2012) Study of multiobjective fuzzy optimization for path planning. Chin J Aeronaut 25(1):51–56
Adhikari D, Kim E, Reza H (2017) A fuzzy adaptive differential evolution for multiobjective 3D UAV path optimization. In: 2017 IEEE Congress on Evolutionary Computation (CEC), pp. 2258–2265 . IEEE
Abbaszadeh Sori A, Ebrahimnejad A, Motameni H (2020) The fuzzy inference approach to solve multiobjective constrained shortest path problem. J Intell Fuzzy Syst 38(4):4711–4720
Bagheri M, Ebrahimnejad A, Razavyan S, Lotfi FH, Malekmohammadi N (2021) Solving fuzzy multiobjective shortest path problem based on data envelopment analysis approach. Complex Intell Syst 7(2):725–740
Hu XB, Wang M, Leeson MS, Di Paolo EA, Liu H (2016) Deterministic agentbased path optimization by mimicking the spreading of ripples. Evol Comput 24(2):319–346
Hu XB, Zhang MK, Zhang Q, Liao JQ (2017) Coevolutionary path optimization by ripplespreading algorithm. Trans Res Part B 106:411–432
Hu XB, Zhang C, Zhang GP, Zhang MK, Li H, Leeson MS, Liao JQ (2020) Finding the k shortest paths by ripplespreading algorithms. Eng Appl Artificial Intell 87:103229
Hu XB, Gu SH, Zhang C, Zhang GP, Zhang MK, Leeson MS (2021) Finding all Pareto optimal paths by simulating ripple relay race in multiobjective networks. Swarm and Evolutionary Computation, 100908
Barbati M, Bruno G, Genovese A (2012) Applications of agentbased models for optimization problems: a literature review. Expert Syst Appl 39(5):6020–6028
Chou CC (2003) The canonical representation of multiplication operation on triangular fuzzy numbers. Comput Math Appl 45(10–11):1601–1610
Ganesan K, Veeramani P (2006) Fuzzy linear programs with trapezoidal fuzzy numbers. Ann Oper Res 143(1):305–315
Hassanzadeh R, Mahdavi I, MahdaviAmiri N, Tajdin A (2013) A genetic algorithm for solving fuzzy shortest path problems with mixed fuzzy arc lengths. Math Comput Modell 57(1–2):84–99
Sadeghpour Gildeh B, Gien D (2001) La distancedp, q et le cofficient de corrélation entre deux variables aléatoires floues. Actes de LFA 1:97–102
Chuang TN, Kung JY (2005) The fuzzy shortest path length and the corresponding shortest path in a network. Comput Oper Res 32(6):1409–1428
Asady B, Zendehnam A (2007) Ranking fuzzy numbers by distance minimization. Appl Math Modell 31(11):2589–2598
Ezzati R, Allahviranloo T, Khezerloo S, Khezerloo M (2012) An approach for ranking of fuzzy numbers. Expert Syst Appl 39(1):690–695
Barr N (2020) Economics of the welfare state. Oxford University Press, USA
Paixão JM, Santos JL (2013) Labeling methods for the general case of the multiobjective shortest path problema computational study. Comput Intell Decision Making 61:489–502
Ahn CW, Ramakrishna RS (2002) A genetic algorithm for shortest path routing problem and the sizing of populations. IEEE Trans Evol Comput 6(6):566–579
Funding
Fundamental Research Funds for Central Universities  Civil Aviation University of China special funds (2000530441)
Author information
Authors and Affiliations
Corresponding author
Ethics declarations
Conflict of interest
On behalf of all authors, the corresponding author states that there is no conict of interest.
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article’s Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article’s Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/.
About this article
Cite this article
Ma, YM., Hu, XB. & Zhou, H. A deterministic and natureinspired algorithm for the fuzzy multiobjective path optimization problem. Complex Intell. Syst. 9, 753–765 (2023). https://doi.org/10.1007/s40747022008253
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s40747022008253
Keywords
 Fuzzy graph
 Multiobjective optimization
 Path optimization
 Pareto optimal path
 Ripplespreading algorithm