Next Article in Journal
Performance Evaluation of VANET Routing Protocols in Madinah City
Next Article in Special Issue
Recommending Reforming Trip to a Group of Users
Previous Article in Journal
Innovative Hyperspectral Image Classification Approach Using Optimized CNN and ELM
Previous Article in Special Issue
Enhancing Knowledge of Propagation-Perception-Based Attention Recommender Systems
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Trust-Based Recommendation for Shared Mobility Systems Based on a Discrete Self-Adaptive Neighborhood Search Differential Evolution Algorithm

Department of Computer Science and Information Engineering, Chaoyang University of Technology, Taichung 413310, Taiwan
Submission received: 28 January 2022 / Revised: 25 February 2022 / Accepted: 28 February 2022 / Published: 2 March 2022
(This article belongs to the Special Issue Recommender Systems: Approaches, Challenges and Applications)

Abstract

:
Safety is one concern that hinders the acceptance of ridesharing in the general public. Several studies have been conducted on the trust issue in recent years to relieve this concern. The introduction of trust in ridesharing systems provides a pragmatic approach to solving this problem. In this study, we will develop a trust-aware ridesharing recommender system decision model to generate recommendations for drivers and passengers. The requirements of trust for both sides, drivers and passengers, are taken into consideration in the decision model proposed in this paper. The decision model considers the factors in typical ridesharing systems, including vehicle capacities, timing, location and trust requirements, etc. The decision model aims to determine the shared rides that minimize cost while respecting the trust and relevant constraints. As the decision problem is a nonlinear integer programming problem, we combine a self-adaptive neighborhood search with Differential Evolution to develop an algorithm to solve it. To assess the effectiveness of the proposed algorithm, several other evolutionary computation approaches are also applied to solve the same problem. The effectiveness assessment is done based on the performance of applying different algorithms to find solutions for test cases, to provide a guideline for selecting a proper solution approach.

1. Introduction

Shared mobility refers to transportation services and resources shared among users. Depending on the resources used, several types of transportation modes emerge, e.g., bike-sharing, scooter sharing, carsharing and ridesharing. With shared mobility, the number of e-hailing trips roughly tripled in four years. It has created over 40 million e-hailing trips daily on major e-hailing platforms [1]. Due to the potential benefits to reduce overall costs, energy consumption and greenhouse gas emissions, shared mobility sparks many new research directions and opportunities. Shared mobility may take different forms in the shared economy era. Ridesharing and carpooling are two well-known transportation modes in shared mobility. In Ref. [2,3], an early survey of ridesharing problems was discussed. Ridesharing services rely on an effective recommender system to generate recommendations for users. A ridesharing recommender system must take into account the factors of location, time and cost savings. The research issues relevant to the design of such ridesharing recommender systems include modeling, optimization and allocation of cost savings. These research issues pose challenges in the development of ridesharing recommender systems [4,5].
Despite the numerous potential advantages of ridesharing, e.g., reducing energy consumption, travel cost, greenhouse gas emissions and providing a flexible alternative other than public transport with fixed routing, the concern about safety and trust still hinders the progress for accepting the ridesharing transportation mode. Safety and trust are the primary concern for not adopting ridesharing. One approach to ensuring safety and trust is to exploit the social relation information about potential ridesharing participants from social media [6]. Therefore, several studies on ensuring safety/trust in ridesharing through social networks have been carried out in recent years [7,8,9,10,11,12]. The decision models to generate recommendations for the trust-based ridesharing problem are generally formulated as non-linear integer programming problems, which consist of non-linear constraints and discrete decision variables. These problems are typically non-convex and the computational complexity grows with the scale of the problems. Therefore, an exact optimization method cannot be applied. Instead, approximate methods, such as evolutionary computation approaches, are adopted to find solutions. For example, ridesharing systems that consider the trust factor have been studied in [13,14,15], based on Particle Swarm Optimization (PSO) [16] and Differential Evolution (DE) [17] approaches.
In the literature on evolutionary computation, PSO [16] and DE [17] have over two decades of history and have been successfully applied to problems in several domains. Many variants of Particle Swarm Optimization approaches and Differential Evolution approaches have been proposed. For example, a discrete version of a Particle Swarm Optimization algorithm has been applied to solve to ridesharing problem with trust requirements in [13]. In Ref. [14], a discrete version of Differential Evolution has been developed to solve the trust-based ridesharing problem. Combining a neighborhood search with a Differential Evolution approach is adopted in [15] to solve the trust-based ridesharing problem. However, the effectiveness of applying different variants of DE approaches to solve the trust-based ridesharing decision problem needs to be studied. This study aims to develop a variant of a metaheuristic algorithm to solve the trust-based ridesharing decision problem with the goal to find a more effective solution algorithm. To achieve this goal, we will combine a self-adaptive neighborhood search with Differential Evolution (SaNSDE) to develop an algorithm. In particular, we will study the influence of the learning period parameter on the efficiency of the proposed discrete SaNSDE algorithm. We will assess the effectiveness of the proposed algorithm by comparing the proposed algorithm with other approaches, based on the results obtained by applying these algorithms to solve several test cases of the trust-based ridesharing problems.
The decision problem studied in this paper is different from the studies of [18,19], in that trust requirements are considered. This paper is also different from our recent study on the allocation of cost savings in [20], where trust requirements are not considered. The trust model adopted in this paper is different from the ones used in [9,11]. The contributions of this paper include a problem formulation for trust-based ridesharing systems and the development of a more effective self-adaptive neighborhood search algorithm for solving the trust-based ridesharing problem. The remainder of this paper is structured as follows. In Section 2, we first give a review of the literature relevant to the enhancement of trust in ridesharing systems. We will present the decision model of trust-based ridesharing systems in Section 3. We will propose several algorithms based on several variants of the DE approach in Section 4. In Section 5, we will present the results obtained by applying the algorithms developed. In Section 6, we will discuss the results and provide suggestions for selecting an effective solution approach to the trust-based ridesharing problem. We conclude this paper in Section 7.

2. Literature Review

Although ridesharing is helpful to reduce the number of cars, energy consumption and cost, there are still concerns from drivers and riders in ridesharing. These concerns are the primary obstacles for ridesharing. According to [21,22], cost and time are two determinant factors for the adoption of ridesharing. The issue to maximize monetary incentive has been studied in [19]. Proper allocation of cost savings is an important issue in ridesharing systems [20]. In addition to the two determinant factors for the adoption of ridesharing, according to the review about rideshare crime rates and safety tips in [23], over 3000 sexual assaults were reported in one year for one major ridesharing company, not including unreported cases. The study in [24] indicates that women feel less safe and comfortable when they share a ride in the night or with male strangers. In particular, young women and unemployed women have less trust in ridesharing. Therefore, how to ensure safety and trust in ridesharing systems is an important research issue to promote ridesharing.
One way to ensure safety/trust is to take advantage of the social relationship of ridesharing participants in relevant social networks. Social media provides a platform to extract the information of social networks. A recent survey on the challenges and opportunities of using social media to support ridesharing services is available in [6]. The types of ridesharing based on social networks are referred to as social ridesharing, sharing rides with friends or social-aware ridesharing in the literature. There are several studies relevant to social ridesharing. For example, in [7], the authors proposed a coalition formation algorithm for sharing rides with friends. A cooperative game-theoretic approach to the social ridesharing problem was proposed in [8]. The study of [8] considers a social network described by a graph to describe the social relationship between ridesharing participants. The social network restricts the formation of groups for creating a feasible coalition. A set of riders in the social network are a feasible coalition, if there exists a connected subgraph on the social network and there is at least one rider whose car has enough seats for all the members. However, the social network used in [8] does not consider the level of social relationship between ridesharing participants. In Ref. [9], the authors considered a social-aware ridesharing group query problem. The study of [9] indicates that the social-aware ridesharing group query problem is NP-hard. In Ref. [10], a relevant study of [9], an efficient method to match offers and requests in social-aware ridesharing was developed. A carpooling model based on both social and route networks was proposed in [11]. In Ref. [11], the degrees of separation concept and user preference are used to specify trust between ridesharing participants in the social networks. In [11], two problems are formulated: one problem aims to optimize trust in a ridesharing team based on social networks and the other problem is to minimize the cost for a ridesharing team with an integer programming model based on route networks. A decision model is obtained by combining the trust optimization problem and cost optimization problem. The concept of cohesive ridesharing in geo-social networks was studied in [12]. In Ref. [25], the authors take into account both social relations and revenue in the social-aware ridesharing group query problem.
The social network considered in the papers above is based on the social distance in social network model (an undirected graph). However, in the real world, the level that one participant trusts another may not be totally dependent on the social distance between them. For example, consider two people, A and B. Suppose A is a friend of B. But A also knows B often cannot be on time. The level that A trusts B is low. Suppose A is also a friend of C. Suppose the social distance between A and C is the same as that between A and B. A also knows C is always on time. The level that A trusts C is higher than the level that A trusts B. The above example indicates that although the level of trust between two participants may be linked to social distance, it may be negatively related to social distance between the two participants. A proper model to capture the level that one participant trusts another will be introduced in this paper.
Based on the discussion above, the goals of this study are to propose a decision model for ridesharing, based on a proper trust model, and develop a relevant solution methodology for solving the decision problem. For the decision problem to be addressed in this study, temporal constraints, spatial constraints and constraints due to trust requirements are considered. The decision model proposed in this paper aims to match multiple requests, which is different from the ones in [9,25]. The trust model used in this study can flexibly describe the level that one participant trusts another. In the proposed trust model, the trust level between two ridesharing participants may or may not be negatively related to social distance between the two participants. Therefore, the trust model adopted in this paper is different from the ones used in [9,11,25]. The decision model proposed in this study can be applied regardless of whether the level of trust between two participants is negatively related to their social distance.
The trust-based ridesharing problem is formulated as a non-linear integer programming problem, which consists of non-linear constraints and discrete decision variables. These problems are typically non-convex and the computational complexity grows with the scale of the problems. Therefore, an exact optimization method cannot be applied. Instead, approximate methods, such as evolutionary computation approaches, are adopted to find solutions. Evolutionary computation is inspired by biological evolution for global optimization. In evolutionary computation, a population of solutions is generated initially. The population of solutions is iteratively updated based on mutation and natural selection. Selection is based on the fitness function. Based on the iteratively updated solutions of population and natural selection, the quality of individuals in the population will be improved gradually. In the literature, a lot of evolutionary algorithms have been proposed to solve optimization problems. These include Differential Evolution [17], Particle Swarm Optimization [16] and Firefly algorithms [26], and their variants [27,28,29]. In this study, we will adopt several variants of Differential Evolution to develop algorithms to solve the trust-based ridesharing decision problem.
Many variants of DE algorithms have been proposed to improve the original DE method, including Differential Evolution with Neighborhood Search (NSDE) [30] and Self-adaptive Differential Evolution (SaDE) [31] and Self-adaptive NSDE (SaNSDE) [32], where SaNSDE is able to adapt the parameters of DE and combines the neighborhood search capability of NSDE. As the original DE and variants of DE algorithms are targeted at problems with continuous search space, these methods need to be modified for the discrete optimization problem formulated in this paper. In this paper, we will combine a self-adaptive neighborhood search with Differential Evolution to develop an algorithm variant of a discrete DE algorithm. In particular, we will study the influence of the learning period parameter on the efficiency of the proposed discrete SaNSDE algorithm. We will assess the effectiveness of the proposed algorithm by comparing with two Particle Swarm Optimization-based algorithms (standard PSO [13] and ALPSO [33]), a Firefly algorithm [26] and several DE algorithms, by applying these algorithms to the same set of test cases. We analyze the results of the experiments to compare the effectiveness of the algorithms mentioned above.

3. The Recommendation Problem of Trust-Based Shared Mobility Systems

In this section, we consider a shared mobility system in which trust requirements are considered. In shared mobility systems, drivers share rides with passengers to meet the transportation requirements. In this paper, a shared mobility system that considers the trust requirements of passengers and drivers is called a trust-based shared mobility system. A driver and a passenger can share a ride only if their trust requirements can be satisfied.
Although social network provides the social distance information that may be linked to safety or trust between people, in the real world, the level that one participant trusts another may not be totally dependent on the social distance between them. For example, consider two people, A and B, who are friends. Suppose A is always on time whereas B is rarely on time. The level that A trusts B is low but the level that B trusts A is high. The above example indicates that shorter social distance in the social network does not always imply a higher level of trust. That is, social distance may not always be negatively related to the level of trust. A proper trust model to capture the level that one participant trusts another is used in this study. The trust model used in this study can flexibly describe the level that one participant trusts another. In the proposed trust model, the trust level between two ridesharing participants may or may not be negatively related to social distance between the two participants. The solution methodology proposed in this study can still be applied, regardless of whether the trust model is the same as the social distance model. To describe the decision model in this paper, we summarize the notations used in this paper in Table 1.
Trust between drivers and passengers is described based on their social network. The trust requirements are directly related to the connection of drivers and passengers in the social network. A graph-based model is adopted in this study to represent the social network. To represent drivers and passengers in the social network model, we use V to denote the set of nodes associated with drivers and passengers. The trust level between nodes is represented by weight, associated with the set of edges, E , in the social network model. Let v i and v j be two nodes in V . We use e i j to denote a directed edge e i j connecting v i to v j and use weight Θ i j to denote the trust relation between v i and v j , where the weight Θ i j specifies the degree (trust level) that v i trusts v j . As the goal of this study is to develop a decision model and relevant solution methodology, it is assumed that Θ i j is available.
Let Θ denote the V by V matrix with element Θ i j for all v i , v j V . The greater the value of Θ i j , the more v i trusts v j . If Θ i j equals zero, v i does not trust v j . More specifically, there is a directed edge e i j connecting v i to v j with weight Θ i j for each v i and v j in V . We use a graph S ( V , E , Θ ) with weight Θ to compactly represent the trust model.
In a trust-based shared mobility system, a driver may request his/her minimal trust level requirements to share a ride with a passenger. If the minimal trust level requirements requested by the driver cannot be satisfied, the driver will not share a ride with the passenger. Similarly, a passenger may request his/her minimal trust level requirements to share a ride with a driver. If the minimal trust level requirements requested by the passenger cannot be satisfied, the passenger will not share a ride with the driver. Furthermore, a passenger, say A, may request his/her minimal trust level requirements to share a ride with another passenger, say B. If the minimal trust level requirements requested by passenger A cannot be satisfied, passenger A will not share a ride with passenger B.
To represent the above trust level requirements requested by drivers and passengers, we use Γ d to denote the minimal trust level requested by driver d and Λ p to denote the minimal trust level requested by passenger p . A driver d will share a ride with passenger p only if Θ d p Γ d . A passenger p can be a rider with driver d only if Θ p d Λ p . A passenger p can be a rider with another passenger p only if Θ p p Λ p .
Potential drivers and passengers express their transportation requirements and trust requirements by submitting requests to the shared mobility system. The shared mobility system needs to determine the drivers and passengers for ridesharing.
To formulate the decision problem, information from the requests submitted by drivers and passengers are briefly described first. A request of passenger p is denoted by R p , where R p is defined by the origin L o p , destination, L e p , earliest departure time, ω p e , latest arrival time, ω p l , number of passengers, n p , and the minimal trust level requested, Λ p . That is, R p = ( L o p , L e p , ω p e , ω p l , n p , Λ p ) .
A driver’s request is denoted by R d , where R d is defined by the origin, L o d , destination, L e d , earliest departure time, ω d e , latest arrival time, ω d l , quantity of seats available, a d , maximum detour ratio, τ ¯ d , and the minimal trust level Γ d . That is, R d = ( L o d , L e d , ω d e , ω d l , a d , τ ¯ d , Γ d ) .
Let P be the total number of potential passengers that submit requests to the shared mobility system and let { 1 , 2 , , P } be the set of all potential passengers. Without loss of generality, it is assumed that there is only one request, R p , submitted by each passenger p { 1 , 2 , , P } . For each passenger p { 1 , 2 , , P } , a procedure will be invoked by the shared mobility system to generate bid P _ B I D p = ( s p 1 1 , s p 2 1 , s p 3 1 , , s p K 1 , s p 1 2 , s p 2 2 , s p 3 2 , , s p K 2 , f p , Λ p ) based on R p , where K is the number of locations, s p k 1 is the number of seats requested to pick up passengers at location k , s p k 2 is the number of seats released after dropping passengers at location P + k , f p is the bid price and Λ p is the minimal trust level requested.
Let D denote the total number of potential drivers that submit requests to the shared mobility system and let { 1 , 2 , , D } be the set of all potential drivers. Without loss of generality, it is assumed that there is only one request, R d , will be submitted by each driver d { 1 , 2 , , D } . For each driver d { 1 , 2 , , D } , a procedure will be invoked by the shared mobility system to generate J d bids D _ B I D d j = ( q d j 1 1 , q d j 2 1 , , q d j k 1 , , q d j K 1 , q d j 1 2 , q d j 2 2 , , q d j k 2 , , q d j K 2 , π d j , o d j , c d j , a d , Γ d ) based on R d , where J d is the total number of bids of a driver d , j is the j t h bid of driver d with j { 1 , 2 , , J d } , K is the number of locations, q d j k 1 is the number of seats available to pick up passengers at location k , q d j k 2 is the number of seats released after dropping passengers at location P + k , o d j is the original cost of driver d without ridesharing, c d j is the cost for driver d to transport passengers in the bid, a d is the total number of seats and Γ d is the minimal trust level requested.
Based on the bids, P _ B I D p , p { 1 , 2 , , P } and D _ B I D d j , d { 1 , 2 , , D } , j { 1 , 2 , , J d } , we define decision variables, x d j d { 1 , , D }   j { 1 , , J d } for the bids submitted by drivers. The j -th bid placed by driver d is a winning bid if x d j = 1. Otherwise, x d j = 0. We define decision variables as, y p p { 1 , 2 , 3 , P } . The bid submitted by passenger p is a winning bid if y p = 1 and is not a winning bid if y p = 0. We define the objective function defined in (1) to maximize the cost savings, where F ( x , y ) = p = 1 P y p f p + d = 1 D j = 1 J d x d j ( o d j c d j ) .
We formulate the problem for trust-based shared mobility systems considering the constraints that the number of seats supplied and the number of seats requested at each pick-up location must be the same (defined in (2)), the number of seats released must be equal to the number of passengers dropped off at each drop-off location (defined in (3)), the cost savings must be nonnegative (defined in (4)), each driver can have at most one bid accepted (defined in (5)), the minimal trust level requested by each driver must be satisfied (defined in (6)) and the minimal trust level requested by each passenger must be satisfied (defined in (7)). The decision variables must be binary (defined in (8)). The problem formulation is as follows:
max x , y   F ( x , y ) s . t .
d = 1 D j = 1 J d x d j q d j k 1 = y p s p k 1 p { 1 , 2 , , P }   k { 1 , 2 , , P }  
d = 1 D j = 1 J d x d j q d j k 2 = y p s p k 2 p { 1 , 2 , , P }   k { 1 , 2 , , P }
p = 1 P y p f p + d = 1 D j = 1 J d x d j o d j d = 1 D j = 1 J d x d j c d j
j = 1 J d x d j 1 d { 1 , , D }
k = 1 K q d j k s p k x d j y p ( Θ d p x d j y p Γ d ) 0 d { 1 , , D } j { 1 , , J d } p { 1 , 2 , 3 , P }
k = 1 K q d j k s p k x d j y p ( Θ d p x d j y p Λ p ) 0 d { 1 , , D }   j { 1 , , J d }   p { 1 , 2 , 3 , P }
x d j { 0 , 1 } d { 1 , , D }   j { 1 , , J d } , y p { 0 , 1 } p { 1 , 2 , , P }

4. Development of a Self-Adaptive Neighborhood Search Differential Evolution Algorithm

In this section, we will present the proposed algorithm. Table 2 lists the symbols and notations used in this section. In the development of an evolutionary computation algorithm, a fitness function must be properly designed to guide the evolution process to find a solution. A proper fitness function needs to take into consideration the objective function of the problem and the constraints that need to be satisfied. A properly designed fitness function has to guide the evolution process based on constraint violations. We will apply a variant of penalty methods to design a fitness function.
The problem formulated in the previous section is an integer programming optimization problem, in which the decision variables are binary. A characteristic of this problem is the exponential growth of solution space with problem size and constraints. The exponentially growing solution space leads to high complexity from a computational point of view. In the literature, many variants of classical penalty methods have been proposed to deal with constraints in constrained optimization problems by applying penalty methods. Although these methods may work under the proper setting of penalty coefficients, they suffer from parameter tuning problems that are problem/data dependent. It is hard to find a one-size-fits-all approach to finding the right parameters for classical penalty methods. The variant of a penalty method, proposed in [34] and adopted in this paper, is different from the classical penalty methods in that it does not require any penalty parameter. It applies pair-wise comparison between two solutions in the optimization processes to select the better solution in the following way. If both solutions to be compared are feasible, the one with better objective function value will be selected. If one feasible solution and another infeasible solution is to be compared, the feasible one will be selected. If both solutions to be compared are infeasible, the one with a smaller constraint violation will be selected. This approach effectively reduces the constraint violation in the optimization processes and makes the solution found move towards the feasible region.
We adopt the method proposed in [34] to differentiate feasible solutions and infeasible ones. Just like classical penalty methods, this approach also captures the effects of constraint violation by adding several penalties. To describe the above method, we define the following notations. Let S f = { ( x , y ) ( x , y ) } , a solution in the current population, ( x , y ) satisfies constraints (1)–(8). S f is the set of all feasible solutions in the current population. Let S f min be the object function value of the worst feasible solution in the current population. More formally, S f min = min ( x , y ) S f F ( x , y ) .
The fitness function used in this paper is defined by F 1 ( x , y ) as follows: F 1 ( x , y ) = F ( x , y )   i f   ( x , y )   s a t i s f i e s   c o n s t r a i n t s   ( 1 ) ~ ( 8 ) U ( x , y )   o t h e r w i s e , where
U ( x , y ) = S f min + U 1 ( x , y ) + U 2 ( x , y ) + U 3 ( x , y ) + U 4 ( x , y ) + U 5 ( x , y ) U 1 ( x , y ) = p = 1 P k = 1 K ( d = 1 D j = 1 J d x d j q d j k y p s p k ) U 2 ( x , y ) = d = 1 D ( 1 j = 1 J d x d j ) U 3 ( x , y ) = min ( p = 1 P y p f p + d = 1 D j = 1 J d x d j o d j d = 1 D j = 1 J d x d j c d j ) , 0.0 ) U 4 ( x , y ) = d = 1 D j = 1 J d p = 1 P min ( k = 1 K q d j k s p k ) x d j y p ( Θ d p x d j y p Γ d ) , 0.0 ) U 5 ( x , y ) = d = 1 D j = 1 J d p = 1 P min ( k = 1 K q d j k s p k x d j y p ( Θ d p x d j y p Λ p ) , 0.0 )
As the proposed SaNSDE algorithm is based on an extension of the standard DE algorithm, a brief introduction to the standard DE algorithm will be presented first. The details of the SaNSDE algorithm will be described next.
The standard DE algorithm follows a four-step evolution process to iteratively improve the quality of solutions. The first step of the standard DE algorithm is initialization. Suppose the problem dimension is L . In the initialization step, the standard DE algorithm creates a population of N P trial individuals z g i = ( z g i l ) , where g is the generation index, i is the index of an individual, i { 1 , 2 , , N P } , and l { 1 , 2 , , L } is the dimension index. In the second step, the DE algorithm generates a mutant vector v g i = ( v g i l ) for individual i in the g -th generation by applying a mutation strategy. There are six well-known mutation strategies for the standard DE algorithm in the literature. These six mutation strategies are defined based on the best individual Z g b l = ( z g b l ) and the randomly selected individuals, z g r 1 l , z g r 2 l , z g r 3 l , z g r 4 l and z g r 5 l , in the population, where r 1 , r 2 , r 3 , r 4 and r 5 are random integers between 1 and N P . The six mutation strategies are defined as follows:
v ( g + 1 ) i l = z g r 1 l + F i ( z g r 2 l z g r 3 l )
v ( g + 1 ) i l = z g b l + F i ( z g r 2 l z g r 3 l )
v ( g + 1 ) i l = z g r 1 l + F i ( z g r 2 l z g r 3 l ) + F i ( z g r 4 l z g r 5 l )
v ( g + 1 ) i l = z g b l + F i ( z g r 1 l z g r 2 l ) + F i ( z g r 3 l z g r 4 l )
v ( g + 1 ) i l = z g i l + F i ( z g b l z g i l ) + F i ( z g r 1 l z g r 2 l )
v ( g + 1 ) i l = z g i l + F i ( z g b l z g i l ) + F i ( z g r 1 l z g r 2 l ) + F i ( z g r 3 l z g r 4 l )
The third step is a crossover operation that follows after a mutant vector v g i is generated. The crossover operation will create a trial vector u g i by selecting the element between the mutant vector v g i and the original individual z g i with some probability. The last step is selection. In the selection step, z g i will be replaced by u g i if u g i is better than z g i .
In the proposed Self-adaptive Neighborhood Search Differential Evolution (SaNSDE) Algorithm, the neighborhood search concept is combined with the self-adaptation of mutation strategies and scale factor to search solutions. The pseudocode of the SaNSDE algorithm is shown in Table 3. In SaNSDE, there are two algorithmic parameters, f p and C R m . These two parameters will be self-adapted to influence the scale factor and the crossover rate of DE. The scale factor F i is determined randomly based on the parameter f p . The crossover rate c r i of individual i is generated randomly according to the parameter C R m .
The SaNSDE algorithm keeps track of four variables, n 1 , n 2 , m 1 and m 2 , to adapt the parameter f p as follows:
f p = n 1 ( n 2 + m 2 ) n 2 ( n 1 + m 1 ) + n 1 ( n 2 + m 2 ) , where n 1 , n 2 , m 1 and m 2 are defined as follows:
n 1 : the number of individuals (offspring) generated by mutation strategy in (9) that successfully replace the original individual and enter the next generation,
m 1 : the number of individuals (offspring) generated by mutation strategy in (9) that fail to replace the original individual and are discarded,
n 2 : the number of individuals (offspring) generated by mutation strategy in (13) that successfully replace the original individual and enter the next generation,
m 2 : the number of individuals (offspring) generated by mutation strategy in (13) that fail to replace the original individual and are discarded.
In the SaNSDE algorithm, it records the crossover rate value c r i associated with individual i that enter the next generation in an array C R r e c to adapt the parameter C R m . Adaptation of the parameter C R m is done by the following formula:
C R m = k = 1 C R r e c C R r e c ( k ) C R r e c .
As the solution space of the decision problem is discrete, a procedure, B i n a r y T r a s f o r m , is used to transform the continuous decision variables to zero or one. The fitness function is computed based on the transformed binary values of decision variables.
Procedure B i n a r y T r a s f o r m
Input: a
Output: c
Begin
b = V max i f   a > V max a i f   V max a V max V max i f   a < V max
s ( b ) = 1 1 + exp b
Generate a random variable r s i d with uniform distribution   U ( 0 , 1 )
c = 1   r s i d < s ( b ) 0   o t h e r w i s e
Return c
Based on the notations defined above, the proposed algorithm is shown in Table 3.
The underlying principle of the SaNSDE algorithm is very simple and intuitive. The learning period (LP) parameter is used to specify the number of generations to learn the effectiveness of different strategies. During the learning period, the SaNSDE algorithm attempts to apply different strategies to solve the problem and collects the data based on the solution found to calculate the probability to select different strategies. If a strategy s applied can lead to improvement in solution quality, the strategy success counter n s will be increased by one. Otherwise, the failure counter m s will be increased by one. After the learning period, the success counter n s and the failure counter m s will be used to calculate f p , which will influence the probability to select different strategies in Step 1. The strategy with the higher success count will have higher probability to be selected after the learning period.

5. Results

The purpose of this section is twofold: (1) to verify the functionality to meet trust requirements of drivers and passengers, (2) to study the characteristics of the proposed algorithm and (3) to assess the effectiveness of the proposed algorithm. For the first part, we apply the proposed algorithm to an example of the trust-based ridesharing problem to assess its functionality to satisfy the trust requirements of drivers and passengers, based on the results of the algorithm. For the second part, we study the influence of the learning period on the performance and efficiency of the proposed algorithm. For the third part, we study the effectiveness of the proposed algorithm by performing a number of experiments based on several test cases and analyze the numerical results of the experiments.

5.1. Two Scenarios

We consider two scenarios with different trust requirements to illustrate the influence of trust requirements on ridesharing. In Scenario 1 and Scenario 2, below, we consider the same set of three drivers and ten passengers in a trust-based ridesharing system. However, some of the trust requirements are not the same.
The data for these two scenarios can be downloaded from the following link: https://drive.google.com/drive/folders/1W4OdMQ6z8O0fX38TpSVFcVbsbzJkjHy3?usp=sharing (accessed on 20 January 2022).

5.1.1. Scenario 1

The origins and destinations of the drivers and passengers are listed in Table 4.
The minimal trust level Γ d requested by each driver d is listed in Table 5. The minimal trust level Λ p requested by each passenger p is listed in Table 6. The trust level between driver and passenger is represented by the matrix Θ , shown in Table 7.
Table 8 and Table 9 show the bids of all drivers and passengers, respectively, generated by the bid generation procedure in Appendix II [31].
We apply the proposed SaNSDE algorithm to solve the decision problem using the following parameters:
  • M A X _ G E N = 10,000.
  • Population size N P = 30.
  • C R = 0.5.
  • F i = 0.3 r 1 + 0.5 , where r 1 is a Gaussian distribution N ( 0 , 1 ) .
  • L P = 10, 50, 100, 200, 1000.
  • V max = 4.
Based on the above input data, the solution found by applying the SaNSDE algorithm is shown in Table 10 and Table 11.
The cost savings for this solution are 18.305.
The two shared routes generated by the solution found by applying the SaNSDE algorithm for Example 1 are shown in Figure 1. Please visit the following link to display the routes of Driver 1 and Driver 2 and the associated ridesharing passengers. https://www.google.com/maps/d/edit?mid=1_i--xWSlx6_a-ISgTLMzKP8_PPzjYACH&usp=sharing (accessed on 20 January 2022).

5.1.2. Scenario 2

In Scenario 2, the itineraries of drivers and passengers are the same as those of Scenario 1. However, the trust requirements between drivers and passengers in Scenario 2 are different from those of Scenario 1. We will study the influence of trust requirements between drivers and passengers on the number of matched shared rides.
As the itineraries of drivers and passengers in Scenario 2 are the same as those of Scenario 1, the origins and destinations of the drivers and passengers in Scenario 2 are the same as the information listed in Table 4.
The minimal trust level Γ d requested by each driver d is listed in Table 12. The minimal trust level Λ p requested by each passenger p is listed in Table 13. The trust level between driver and passenger is represented by the matrix Θ , shown in Table 14.
We apply the proposed SaNSDE algorithm to solve the decision problem using the same parameters used in Scenario 1.
Based on the above input data, the solution found by applying the SaNSDE algorithm is shown in Table 15 and Table 16. The results of Scenario 2 indicate that Γ d has influence on the number of matched shared rides. The results of Scenario 2 show that the number of ridesharing passengers has been reduced to one. This is due to the constraints of the trust requirement set by driver two.
The cost savings for this solution are 13.07.
Two shared routes for Case 2 of Example 1 are shown in Figure 2.
Please visit the following link to display the routes of Driver 1 and Driver 2 and the associated ridesharing passengers. https://www.google.com/maps/d/edit?mid=1l_XW_SzWAu3hkvkS5pLrJF3XPqrm6xNh&usp=sharing (accessed on 20 January 2022).

5.2. Influence of Learning Period on Performance and Efficiency

There is an algorithmic parameter, learning period ( L P ), in the proposed SaNSDE algorithm. To apply the proposed method to solve problems, we first study the influence of the algorithmic parameter L P on convergence speed.
The parameters used in the Self-adaptive Neighborhood Search Differential Evolution (SaNSDE) algorithm are listed as follows:
  • M A X _ G E N = 10,000.
  • Population size N P = 30.
  • C R = 0.5.
  • F i = 0.3 r 1 + 0.5 , where r 1 is a Gaussian distribution N ( 0 , 1 ) .
  • L P = 10, 50, 100, 200, 1000.
  • V max = 4.
Table 17 shows the results obtained by setting the algorithmic parameter L P to 10, 50, 100, 200 and 1000, respectively. For each test case, the average fitness values obtained by setting L P to 100, 200 and 1000 are very close. However, the average number of generations required to find the best solutions are different for different algorithmic parameters L P . The average number of generations for Case 1, Case 2, Case 3, Case 4 and Case 5 are shown in the bar chart of Figure 3. The average number of generations for Case 6, Case 7, Case 8, Case 9 and Case 10 are shown in the bar chart of Figure 4. The results indicate that the average number of generations required to find the best solutions tend to decrease by increasing L P for most test cases. This is due to the quality of the best strategy being improved with the growth of the algorithmic parameter L P . If the algorithmic parameter L P is too small, the best strategy cannot be learned within the learning period. In this case, the probability to select the best strategy to create a mutant vector will be lower than expected. Therefore, the number of generations required to find the best solutions will be greater. If the algorithmic parameter L P is big enough, the best strategy can be learned within the learning period. In this case, the probability to select the best strategy to create a mutant vector will be higher. Therefore, the number of generations required to find the best solutions will be smaller. Based on the above reasoning, the results in Figure 3 and Figure 4 are consistent with our expected results for almost all test cases, with the exception of Case 9. This is due to the fact that the SaNSDE algorithm is a stochastic optimization method.
The effectiveness of an evolutionary algorithm is assessed based on two indices: the average fitness value and the average number of generations needed to find the solutions. The average fitness value is the primary index to evaluate performance, whereas the average number of generations is the secondary index to evaluate computational efficiency. Although the average number of generations for Case 9 with L P = 1000 is the worst, the average fitness value for Case 9 with L P = 1000 is 139.7357, which is the best of all, according to Table 17. Therefore, for Case 9, the SaNSDE algorithm with L P = 1000 still outperforms other L P parameters, in the average fitness value Table 17. The average number of generations for Case 9 with L P = 1000 is the worst. This is due to the fact that the SaNSDE algorithm is a stochastic optimization method. The number of generations to find the best solutions may not always be the smallest, even if it has learned the best strategy during the learning period. Despite the results of Case 9, the SaNSDE algorithm with L P = 1000 outperforms other L P parameters in all the other Cases, in terms of the average fitness value and the average number of generations. This means that the SaNSDE algorithm, with a sufficient large learning period, has a higher probability to achieve better performance and efficiency.

5.3. Effectiveness of the Proposed Algorithm

In this subsection, we will compare the proposed algorithm with several evolutionary algorithms through the results of the experiments. These evolutionary algorithms include standard DE [14], NSDE [15], PSO [13], Firefly [26] and ALPSO [33] algorithms. Comparison with the standard DE algorithm will be presented first, followed by comparisons with NSDE, PSO, Firefly and ALPSO algorithms.

5.3.1. Comparison with DE

In this subsection, we compare the proposed algorithm with the standard DE algorithm [14]. As there are six mutation strategies in the standard DE approach, we use DE1, DE2, DE3, DE4, DE5 and DE6 to represent the six standard DE algorithms with the six mutation strategies.
The parameters used in the DE1, DE2, DE3, DE4, DE5 and DE6 are listed as follows:
  • M A X _ G E N = 10,000.
  • Population size N P = 30.
  • C R = 0.5.
  • F : a value arbitrarily selected from uniform (0, 2).
  • V max = 4.
The parameters used in the Self-adaptive Neighborhood Search Differential Evolution (SaNSDE) algorithm are listed as follows:
  • M A X _ G E N = 10,000.
  • Population size N P = 30.
  • C R = 0.5.
  • F i = 0.3 r 1 + 0.5 , where r 1 is a Gaussian distribution N ( 0 , 1 ) .
  • L P = 1000.
  • V max = 4.
Table 18 shows the results obtained by applying the DE algorithm with six strategies and the SaNSDE algorithm with algorithmic parameter L P set to 1000. The results indicate that the average fitness function values achieved by applying the DE algorithms are worse than those of the SaNSDE algorithm for some cases. In addition, the average fitness function values achieved by the SaNSDE algorithm are either as good as or better than DE. This indicates that the SaNSDE algorithm can stably find better solutions. In terms of convergence speed, the average number of generations required for the SaNSDE algorithm to find the best solutions is significantly smaller than those of the DE algorithm with six strategies, for most test cases, according to Table 18, Figure 5 and Figure 6.

5.3.2. Comparison with NSDE

In this subsection, we compare the proposed algorithm with the NSDE algorithm [15].
The parameters used in the Neighborhood Search Differential Evolution algorithm are listed as follows:
  • M A X _ G E N = 10,000.
  • Population size N P = 30.
  • C R = 0.5.
  • F i = 0.5 r 1 + 0.5 , where r 1 is a Gaussian distribution N ( 0 , 1 ) .
  • V max = 4.
The parameters used in the Self-adaptive Neighborhood Search Differential Evolution (SaNSDE) algorithm are listed as follows:
  • M A X _ G E N = 10,000.
  • Population size N P = 30.
  • C R = 0.5.
  • F i = 0.3 r 1 + 0.5 , where r 1 is a Gaussian distribution N ( 0 , 1 ) .
  • L P = 1000.
  • V max = 4.
Table 19 shows the results obtained by applying the NSDE algorithm and the SaNSDE algorithm, with algorithmic parameter L P set to 1000. The results indicate that the average fitness function values achieved by the SaNSDE algorithm are either as good as or better than the NSDE algorithm for all test cases. In addition, the average number of generations required for the SaNSDE algorithm to find the best solutions is significantly smaller than those of the NSDE algorithm, for all test cases, according to Table 19, Figure 7 and Figure 8. In short, the SaNSDE algorithm is more efficient than the NSDE algorithm.

5.3.3. Comparison with PSO, FA and ALPSO

In this subsection, we compare the proposed algorithm with the PSO algorithm [13], Firefly algorithm [26] and ALPSO algorithm [33].
The parameters used in the PSO algorithm are listed as follows:
  • M A X _ G E N = 10,000.
  • Population size N P = 30.
  • c 1 = 0.4.
  • c 2 = 0.6.
  • ω = 0.4.
  • V max = 4.
The parameters used in the Firefly algorithm are listed as follows:
  • M A X _ G E N = 10,000.
  • Population size N P = 30.
  • β 0 = 1.0.
  • γ = 0.2.
  • α = 0.2.
  • V max = 4.
The parameters used in the ALPSO algorithm are listed as follows:
  • M A X _ G E N = 10,000.
  • Population size N P = 30.
  • c 1 = 0.4.
  • c 2 = 0.6.
  • ω = 0.4.
  • V max = 4.
The parameters used in the Self-adaptive Neighborhood Search Differential Evolution (SaNSDE) algorithm are listed as follows:
  • M A X _ G E N = 10,000.
  • Population size N P = 30.
  • C R = 0.5.
  • F i = 0.3 r 1 + 0.5 , where r 1 is a Gaussian distribution N ( 0 , 1 ) .
  • L P = 1000.
  • V max = 4.
Table 20 shows the results obtained by applying the PSO algorithm, Firefly algorithm (FA), ALPSO algorithm and the SaNSDE algorithm, with algorithmic parameter L P set to 1000. The results indicate that the average fitness function values achieved by applying the PSO algorithm, Firefly algorithm (FA) and ALPSO algorithm are worse than those of the SaNSDE algorithm, for Test Case 8 through Test Case 10. This indicates that the SaNSDE algorithm can stably find better solutions. In terms of convergence speed, the average number of generations required for the SaNSDE algorithm to find the best solutions is significantly smaller than those of the PSO algorithm, Firefly algorithm (FA) and ALPSO algorithm, for most test cases, according to Table 20, Figure 9 and Figure 10. Therefore, the SaNSDE algorithm also enjoys faster convergence speed.
The experiments are conducted on a laptop with Intel(R) Core(TM) i7 CPU, 16 GB of memory on board and a base clock speed of 2.6 GHz. The average CPU time for SaNSDE with L P = 1000 is shown in Figure 11. Case 9 takes about (over) 3 min. Case 10 takes about (over) 5 min. The CPU time can be cut down if a newer laptop with Intel(R) Core(TM) i9 CPU with a base clock speed of 3.5 GHz and a turbo clock speed of 4.8 GHz is used.

6. Discussion

Ridesharing has long been recognized as one potential way to improve sustainability in cities, by reducing energy consumption and greenhouse gas emissions. Besides the factors of cost and time, due to the relatively high rideshare crime rate, safety and trust become major determinants for the adoption of ridesharing. This paper aims to propose a social network assisted decision-making formulation for trust-based ridesharing and a more effective self-adaptive neighborhood search algorithm for solving the trust-based ridesharing problem. The proposed SaNSDE algorithm searches solutions by jointly taking into account scale factor, neighborhood search concept and self-adaptation of mutation strategies in the stochastic optimization process.
The lack of considering the trust factor is one of the main obstacles for people to adopt the ridesharing mode of transport in daily life. In this study, we propose a decision model to take the trust requirements of drivers and riders into account in the ridesharing problem. In this paper, a shared mobility system that considers the trust requirements of passengers and drivers is called a trust-based shared mobility system. To consider the trust factor in the ridesharing problem, it is assumed that a driver and a passenger can share a ride only if their trust requirements can be satisfied. A directed graph-based social network model is adopted in this study. Trust between drivers and passengers is described based on their social network. The trust level between nodes is represented by weight, associated with the set of edges in the social network model. The trust requirements are related to the trust level between drivers and passengers in the social network. In a trust-based shared mobility systems, a driver may request his/her minimal trust level requirements to share a ride with a passenger. If minimal trust level requirements requested by the driver cannot be satisfied, the driver will not share a ride with the passenger. Similarly, a passenger may request his/her minimal trust level requirements to share a ride with a driver. If minimal trust level requirements requested by the passenger cannot be satisfied, the passenger will not share a ride with the driver. Based on the trust level specified in the social network model, and minimal trust level requirements requested by the drivers/passengers, an optimization decision problem is formulated to find the solution for ridesharing recommendations. Due to computational complexity, a metaheuristic algorithm based on the Differential Evolution approach has been developed to solve the trust-based ridesharing decision problem and assess its effectiveness.
We verified the functionality to meet the trust requirements of drivers and passengers and studied the characteristics and effectiveness of the proposed algorithm. To verify the functionality to satisfy the trust requirements of drivers and passengers, we applied the proposed algorithm to two examples of the trust-based ridesharing problem and analyzed based on the outputs of the algorithm. The results indicate the proposed algorithm can meet the trust requirements of drivers and passengers.
To study the characteristics of the proposed algorithm, we conducted several experiments by changing the learning period parameter. The results indicate that the average number of generations required to find the best solutions tends to decrease by increasing L P for most test cases. This is due to the fact that the best strategy can be found only if the learning period parameter L P is big enough. If the algorithmic parameter L P is too small, the best strategy cannot be learned within the learning period. In this case, the probability to select the best strategy to create a mutant vector will be lower than expected and, therefore, the number of generations required to find the best solutions will be greater. If the algorithmic parameter L P is big enough, the best strategy can be learned within the learning period. In this case, the probability to select the best strategy to create a mutant vector will be higher and, hence, the number of generations required to find the best solutions will be smaller.
To study the effectiveness of the proposed algorithm, we performed a number of experiments on several test cases by applying the proposed SaNSDE algorithm and other algorithms, including DE, NSDE, PSO, FA and ALPSO algorithms, and analyzed the numerical results of the experiments. The results indicate that the average fitness function values achieved by the SaNSDE algorithm are either as good as or better than DE, NSDE, PSO, FA and ALPSO. In terms of convergence speed, the average number of generations required for the SaNSDE algorithm to find the best solutions is significantly smaller than those of the DE, NSDE, PSO, FA and ALPSO algorithms for most test cases. Therefore, the SaNSDE algorithm enjoys faster convergence speed.
The effectiveness of the SaNSDE algorithm is due to the mechanism to learn better strategies in the optimization. After the learning period, the SaNSDE algorithm will select better strategies in the evolution processes. The number of generations required for many evolutionary algorithms to find the best solutions grows dramatically with the problem scale. Therefore, the number of generations required by the SaNSDE algorithm to find the best solutions will also increases dramatically. The advantage is that the SaNSDE algorithm is able to identity better strategies to find better solutions and jointly switch between strategies. The issue to deal with larger cases is an interesting future research direction.
There are alternatives to deal with passengers and drivers that may enter the ridesharing system sequentially in the real world. Typically, a decision support system for ridesharing makes decisions within a time period. The requests of drivers and passengers arriving before the start of the decision time period will be considered by the ridesharing decision support system. The decision support system will determine the matched drivers and passengers. Unmatched drivers and passengers will be considered in the next time period. The decision model proposed in this paper supports multi-drivers/multi-passengers, multi-drivers/single-passenger and single-driver/multi-passengers. Although the decision model proposed in this paper is based on the multi-driver/multi-passenger scenario, it can be applied to multi-driver/single-passenger and single-driver/multi-passenger scenarios. The proposed decision support system for ridesharing may consider each passenger and the potential drivers as a matching problem and solves the problem one after another. It may also consider each driver and the potential passengers as a matching problem and solves the problem one by one. There is a trade-off between performance and response time of different application scenarios, mentioned above. A ridesharing decision support system based on the multi-driver/multi-passenger scenario may achieve better performance but need more computational time. A ridesharing decision support system based on the multi-driver/multi-passenger scenario may achieve better performance but may not be able to respond to users quickly, as it requires more computational time. A ridesharing decision support system based on the multi-driver/single-passenger or single-driver/multi-passenger scenarios need less computational time and provide quick responses to users, but the performance may be degraded.

7. Conclusions

Due to the relatively high rideshare crime rate, safety and trust become important factors for the adoption of ridesharing, besides the factors of cost and time. One way to ensure safety/trust is to take advantage of the social relationship of ridesharing participants in relevant social networks. Although trust level may be linked to social distance, it is not the same as social distance. A proper model to capture the level that one participant trusts another is to consider both the social distance and other factors not directly relevant to social distance. In this study, we consider a trust model that takes into account social distance as well as non-social distance factors. In this paper, we have taken the first step to develop a well-compatible ridesharing decision-making algorithm, taking into account the trust factor in the poly-variant stochastic optimization process. This study aims to develop a decision model and associated solution methods to ensure the satisfaction of trust requirements of ridesharing participants. In the proposed decision model, the trust level between nodes is represented by weight, associated with the set of edges in the social network model. In a trust-based shared mobility system, a driver may request his/her minimal trust level requirements to share a ride with a passenger. A ride can be shared between a driver and relevant passengers only if the minimal trust level requirements requested by the driver and relevant passengers are satisfied. Based on the trust level specified in the social network model and minimal trust level requirements requested by the drivers/passengers, an optimization problem is formulated to find the solution. Due to computational complexity, a self-adaptive DE with neighborhood search (SaNSDE) algorithm, based on the Differential Evolution approach, has been developed to solve the trust-based ridesharing decision problem and assess its effectiveness.
To study the effectiveness of the proposed algorithm, we performed a number of experiments by applying the proposed SaNSDE, DE, NSDE, PSO, FA and ALPSO algorithms to find solutions for several test cases. The results indicate that the solutions found by the SaNSDE algorithm are either as good as or better than DE, NSDE, PSO, FA and ALPSO algorithms. In addition, the SaNSDE algorithm outperforms DE, NSDE, PSO, FA and ALPSO algorithms in terms of convergence speed for most test cases. This study shows that the SaNSDE algorithm can be applied to generate ridesharing recommendations effectively. One future research direction is to apply the SaNSDE algorithm to other types of recommender systems or applications.

Funding

This research was supported in part by the Ministry of Science and Technology, Taiwan, under Grant MOST 110-2410-H-324-001.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Data available in a publicly accessible repository described in the article.

Acknowledgments

The author would like to thank the anonymous reviewers and editors for their comments and suggestions, which are invaluable for the author to improve the presentation, clarity and quality of this paper.

Conflicts of Interest

The author declares no conflict of interest.

References

  1. McKinsey and Company. Shared Mobility: Where It Stands, Where It’s Headed. 2021. Available online: https://www.mckinsey.com/industries/automotive-and-assembly/our-insights/shared-mobility-where-it-stands-where-its-headed (accessed on 10 January 2022).
  2. Agatz, N.; Erera, A.; Savelsbergh, M.; Wang, X. Optimization for dynamic ride-sharing: A review. Eur. J. Oper. Res. 2012, 223, 295–303. [Google Scholar] [CrossRef]
  3. Furuhata, M.; Dessouky, M.; Ordóñez, F.; Brunet, M.; Wang, X.; Koenig, S. Ridesharing: The state-of-the-art and future directions. Transp. Res. Part B Methodol. 2013, 57, 28–46. [Google Scholar] [CrossRef]
  4. Mourad, A.; Puchinger, J.; Chu, C. A survey of models and algorithms for optimizing shared mobility. Transp. Res. Part B Methodol. 2019, 123, 323–346. [Google Scholar] [CrossRef]
  5. Martins, L.C.; Torre, R.; Corlu, C.G.; Juan, A.A.; Masmoudi, M.A. Optimizing ride-sharing operations in smart sustainable cities: Challenges and the need for agile algorithms. Comp. Ind. Eng. 2021, 153, 107080. [Google Scholar] [CrossRef]
  6. Tang, L.; Duan, Z.; Zhao, Y. Toward using social media to support ridesharing services: Challenges and opportunities. Transp. Plan. Technol. 2019, 42, 355–379. [Google Scholar] [CrossRef]
  7. Bistaffa, F.; Farinelli, A.; Ramchurn, S.D. Sharing rides with friends: A coalition formation algorithm for ridesharing. In Proceedings of the 29th AAAI Conference on Artificial Intelligence Pattern, Austin, TX, USA, 25–30 January 2015; pp. 608–614. [Google Scholar]
  8. Bistaffa, F.; Farinelli, A.; Chalkiadakis, G.; Ramchurn, S.D. A cooperative game-theoretic approach to the social ridesharing problem. Artif. Intell. 2017, 246, 86–117. [Google Scholar] [CrossRef] [Green Version]
  9. Li, Y.; Chen, R.; Chen, L.; Xu, J. Towards Social-Aware Ridesharing Group Query Services. IEEE Trans. Serv. Comp. 2017, 10, 646–659. [Google Scholar] [CrossRef]
  10. Fu, X.; Zhang, C.; Lu, H.; Xu, J. Efficient Matching of Offers and Requests in Social-Aware Ridesharing. In Proceedings of the 2018 19th IEEE International Conference on Mobile Data Management (MDM), Aalborg, Denmark, 25–28 June 2018; pp. 197–206. [Google Scholar]
  11. Xia, J.; Curtin, K.M.; Huang, J.; Wu, D.; Xiu, W.; Huang, Z. A carpool matching model with both social and route networks. Comp. Environ. Urban Syst. 2017, 75, 90–102. [Google Scholar] [CrossRef]
  12. Shim, C.; Sim, G.; Chung, Y.D. Cohesive Ridesharing Group Queries in Geo-Social Networks. IEEE Access 2020, 8, 97418–97436. [Google Scholar] [CrossRef]
  13. Hsieh, F.S. A Particle Swarm Optimization Algorithm to Meet Trust Requirements in Ridesharing Systems. In Proceedings of the 2020 11th IEEE Annual Ubiquitous Computing, Electronics & Mobile Communication Conference (UEMCON), New York, NY, USA, 28–31 October 2020; pp. 592–595. [Google Scholar]
  14. Hsieh, F.S. A Differential Evolution Approach to Trust based Ridesharing Systems. In Proceedings of the IECON 2021—47th Annual Conference of the IEEE Industrial Electronics Society, Toronto, ON, USA, 13–16 October 2021; pp. 1–6. [Google Scholar]
  15. Hsieh, F.S. Neighborhood Search in Differential Evolution for Solving Trusted Ridesharing Problems. In Proceedings of the IEEE 12th Annual Information Technology, Electronics and Mobile Communication Conference (IEEE IEMCON 2021), Vancouver, BC, Canada, 27–30 October 2021; pp. 46–51. [Google Scholar]
  16. Kennedy, J.; Eberhart, R.C. Particle swarm optimization. In Proceedings of the IEEE International Conference on Neural Networks, Perth, WA, Australia, 27 November–1 December 1995; pp. 1942–1948. [Google Scholar]
  17. Storn, R.; Price, K. Differential evolution—A simple and efficient heuristic for global optimization over continuous spaces. J. Glob. Optim. 1997, 11, 341–359. [Google Scholar] [CrossRef]
  18. Hsieh, F.S.; Zhan, F.; Guo, Y. A solution methodology for carpooling systems based on double auctions and cooperative coevolutionary particle swarms. Appl. Intell. 2019, 49, 741–763. [Google Scholar] [CrossRef]
  19. Hsieh, F.S. A Comparative Study of Several Metaheuristic Algorithms to Optimize Monetary Incentive in Ridesharing Systems. ISPRS Int. J. Geo-Inf. 2020, 9, 590. [Google Scholar] [CrossRef]
  20. Hsieh, F.-S. A Comparison of Three Ridesharing Cost Savings Allocation Schemes Based on the Number of Acceptable Shared Rides. Energies 2021, 14, 6931. [Google Scholar] [CrossRef]
  21. Waerden, P.; Lem, A.; Schaefer, W. Investigation of Factors that Stimulate Car Drivers to Change from Car to Carpooling in City Center Oriented Work Trips. Transp. Res. Proced. 2015, 10, 335–344. [Google Scholar] [CrossRef] [Green Version]
  22. Shaheen, S.A.; Chan, N.D.; Gaynor, T. Casual carpooling in the San Francisco Bay Area: Understanding user characteristics, behaviors, and motivations. Transp. Policy 2016, 51, 165–173. [Google Scholar] [CrossRef] [Green Version]
  23. Bough, C. Rideshare Crime Rates and Safety Tips for Women: Understand the Risks of Your Trip. 2021. Available online: https://www.reviews.com/insurance/car/ride-share-safety-tips/ (accessed on 20 January 2022).
  24. Meshram, A.; Choudhary, P.; Velaga, N.R. Assessing and Modelling Perceived Safety and Comfort of Women during Ridesharing. Transp. Res. Proced. 2020, 48, 2852–2869. [Google Scholar] [CrossRef]
  25. Li, Y.; Wan, J.; Chen, R.; Xu, J.; Fu, X.; Gu, H.; Lv, P.; Xu, M. Top-kk Vehicle Matching in Social Ridesharing: A Price-Aware Approach. IEEE Trans. Knowl. Data Eng. 2021, 33, 1251–1263. [Google Scholar]
  26. Yang, X.S. Firefly algorithms for multimodal optimization. In Stochastic Algorithms: Foundations and Applications; Lecture Notes in Computer Science; Springer: Berlin/Heidelberg, Germany, 2009; Volume 5792, pp. 169–178. [Google Scholar]
  27. Bilal; Pant, M.; Zaheer, H.; Garcia-Hernandez, L.; Abraham, A. Differential Evolution: A review of more than two decades of research. Eng. Appl. Artif. Intell. 2020, 90, 103479. [Google Scholar] [CrossRef]
  28. Zhang, Y.; Wang, S.; Ji, G. A Comprehensive Survey on Particle Swarm Optimization Algorithm and Its Applications. Math. Probl. Eng. 2015, 2015, 931256. [Google Scholar] [CrossRef] [Green Version]
  29. Fister, I.; Fister, I., Jr.; Yang, X.-S.; Brest, J. A comprehensive review of firefly algorithms. Swarm Evolut. Comput. 2013, 13, 34–46. [Google Scholar] [CrossRef] [Green Version]
  30. Yang, Z.; He, J.; Yao, X. Making a difference to differential evolution. In Advances in Metaheuristics for Hard Optimization; Michalewicz, Z., Siarry, P., Eds.; Springer: Berlin/Heidelberg, Germany, 2007; pp. 415–432. [Google Scholar]
  31. Qin, A.K.; Suganthan, P.N. Self-adaptive differential evolution algorithm for numerical optimization. In Proceedings of the 2005 IEEE Congress on Evolutionary Computation, Edinburgh, UK, 2–5 September 2005; pp. 1785–1791. [Google Scholar]
  32. Yang, Z.; Tang, K.; Yao, X. Self-adaptive differential evolution with neighborhood search. In Proceeding of the 2008 IEEE Congress on Evolutionary Computation, Hong Kong, China, 1–6 June 2008; pp. 1110–1116. [Google Scholar]
  33. Wang, F.; Zhang, H.; Li, K.; Lin, Z.; Yang, J.; Shen, X.L. A hybrid particle swarm optimization algorithm using adaptive learning strategy. Inf. Sci. 2018, 436–437, 162–177. [Google Scholar] [CrossRef]
  34. Deb, K. An efficient constraint handling method for genetic algorithms. Comput. Methods Appl. Mech. Eng. 2000, 186, 311–338. [Google Scholar] [CrossRef]
Figure 1. Two shared routes for Case 1 of the Example.
Figure 1. Two shared routes for Case 1 of the Example.
Electronics 11 00776 g001
Figure 2. The shared route for Case 2 of the Example.
Figure 2. The shared route for Case 2 of the Example.
Electronics 11 00776 g002
Figure 3. The average number of generations for Case 1, Case 2, Case 3, Case 4 and Case 5.
Figure 3. The average number of generations for Case 1, Case 2, Case 3, Case 4 and Case 5.
Electronics 11 00776 g003
Figure 4. The average number of generations for Case 6, Case 7, Case 8, Case 9 and Case 10.
Figure 4. The average number of generations for Case 6, Case 7, Case 8, Case 9 and Case 10.
Electronics 11 00776 g004
Figure 5. The average number of generations obtained by DE1, DE2, DE3, DE4, DE5, DE6 and SaNSDE with L P = 1000 for Case 1, Case 2, Case 3, Case 4 and Case 5.
Figure 5. The average number of generations obtained by DE1, DE2, DE3, DE4, DE5, DE6 and SaNSDE with L P = 1000 for Case 1, Case 2, Case 3, Case 4 and Case 5.
Electronics 11 00776 g005
Figure 6. The average number of generations obtained by DE1, DE2, DE3, DE4, DE5, DE6 and SaNSDE with L P = 1000 for Case 6, Case 7, Case 8, Case 9 and Case 10.
Figure 6. The average number of generations obtained by DE1, DE2, DE3, DE4, DE5, DE6 and SaNSDE with L P = 1000 for Case 6, Case 7, Case 8, Case 9 and Case 10.
Electronics 11 00776 g006
Figure 7. The average number of generations obtained by NSDE and SaNSDE with L P = 1000 for Case 1, Case 2, Case 3, Case 4 and Case 5.
Figure 7. The average number of generations obtained by NSDE and SaNSDE with L P = 1000 for Case 1, Case 2, Case 3, Case 4 and Case 5.
Electronics 11 00776 g007
Figure 8. The average number of generations obtained by NSDE and SaNSDE with L P = 1000 for Case 6, Case 7, Case 8, Case 9 and Case 10.
Figure 8. The average number of generations obtained by NSDE and SaNSDE with L P = 1000 for Case 6, Case 7, Case 8, Case 9 and Case 10.
Electronics 11 00776 g008
Figure 9. The average number of generations obtained by PSO, FA, ALPSO and SaNSDE with L P = 1000 for Case 1, Case 2, Case 3, Case 4 and Case 5.
Figure 9. The average number of generations obtained by PSO, FA, ALPSO and SaNSDE with L P = 1000 for Case 1, Case 2, Case 3, Case 4 and Case 5.
Electronics 11 00776 g009
Figure 10. The average number of generations obtained by PSO, FA, ALPSO and SaNSDE with L P = 1000 for Case 6, Case 7, Case 8, Case 9 and Case 10.
Figure 10. The average number of generations obtained by PSO, FA, ALPSO and SaNSDE with L P = 1000 for Case 6, Case 7, Case 8, Case 9 and Case 10.
Electronics 11 00776 g010
Figure 11. The average CPU time of SaNSDE with L P = 1000 for all Cases.
Figure 11. The average CPU time of SaNSDE with L P = 1000 for all Cases.
Electronics 11 00776 g011
Table 1. Notations of symbols, variables and parameters.
Table 1. Notations of symbols, variables and parameters.
VariableMeaning
P total number of potential passengers
D total number of potential drivers
K total   number   of   locations   of   passengers ,   K
p a   passenger ,   where   p { 1 , 2 , 3 , P }
d a   driver ,   where   d { 1 , 2 , 3 , , D }
k a   location ,   k { 1 , 2 , , K }
J d total   bids   of   driver   d { 1 , 2 , , D }
j The   j t h bid   of   driver   d   with   j { 1 , 2 , , J d }
Γ d the   minimal   trust   level   requested   by   driver d
Λ p the   minimal   trust   level   requested   by   passenger   p
V the set of nodes associated with drivers and passengers in the social network model
v i a   node   in   V
E the set of edges in the social network model
e i j a   directed   edge   in   E   connecting   v i   to   v j ,   where   v i , v j V
Θ a   V   by   V   matrix   with   element   Θ i j   for   all   v i , v j V ,   where   Θ i j   is   the   trust   level   that   v i   trusts   v j .
S ( V , E , Θ ) a   graph   model   of   the   social   network   with   a   set   of   nodes ,   V ,   a   set   of   edges   and   weight   Θ .
R p a   passenger s   request ;   R p = ( L o p , L e p , ω p e , ω p l , n p , Λ p ) ,   where   R p   is   defined   by   the   origin   L o p ,   destination ,   L e p ,   earliest   departure   time ,   ω p e ,   latest   arrival   time ,   ω p l ,   number   of   passengers ,   n p ,   and   the   minimal   trust   level   requested ,   Λ p .
R d a   driver s   request ;   R d = ( L o d , L e d , ω d e , ω d l , a d , τ ¯ d , Γ d ) ,   where   R d   is   defined   by   the   origin ,   L o d ,   destination ,   L e d ,   earliest   departure   time ,   ω d e ,   latest   arrival   time ,   ω d l ,   quantity   of   seats   available ,   a d ,   maximum   detour   ratio ,   τ ¯ d ,   and   the   minimal   trust   level   Γ d .   That   is ,   R d = ( L o d , L e d , ω d e , ω d l , a d , τ ¯ d , Γ d ) .
D _ B I D d j D _ B I D d j = ( q d j 1 1 , q d j 2 1 , , q d j k 1 , , q d j K 1 , q d j 1 2 , q d j 2 2 , , q d j k 2 , , q d j K 2 , π d j , o d j , c d j , a d , Γ d ) ,   the   j t h   bid   of   driver   d ,   where   K   is   the   number   of   locations ,   q d j k 1   is   the   number   of   seats   available   to   pick   up   passengers   at   location   k ,   q d j k 2   is   the   number   of   seats   released   after   dropping   passengers   at   location   P + k ,   o d j   is   the   original   cos t   of   driver   d   without   ridesharing ,   c d j   is   the   cos t   for   driver   d   to   transport   passengers   in   the   bid ,   a d   is   the   total   number   of   seats   and   Γ d is the minimal trust level requested.
P _ B I D p P _ B I D p = ( s p 1 1 , s p 2 1 , s p 3 1 , , s p K 1 , s p 1 2 , s p 2 2 , s p 3 2 , , s p K 2 , f p , Λ p ) :   the   bid   of   passenger   p , where
where   K   is   the   number   of   locations ,   s p k 1   is   the   number   of   seats   requested   to   pick   up   passengers   at   location   k ,   s p k 2   is   the   number   of   seats   released   after   dropping   passengers   at   location   P + k ,   f p   is   the   bid   price   and   Λ p is the minimal trust level requested.
x d j a   binary   decision   variable ;   x d j   equals   1   if   the   j t h   bid   of   driver   d   is   a   winning   bid   and   x d j equals 0 otherwise
y p a   binary   decision   variable ;   y p   equals   1   if   the   bid   of   passenger   p   is   a   winning   bid   and   y p equals 0 otherwise
F ( x , y ) overall   cos t   savings , F ( x , y ) = p = 1 P y p f p + d = 1 D j = 1 J d x d j o d j -   d = 1 D j = 1 J d x d j c d j
Table 2. Notations of symbols, variables and parameters used in the proposed algorithm.
Table 2. Notations of symbols, variables and parameters used in the proposed algorithm.
VariableMeaning
N P population size
G number of generations
g the index of a generation
L P learning period
F i scale   factor   of   individual   i
c r i crossover   rate   of   individual   i
f p a   parameter   to   influence   the   scale   factor   F i
s a   mutation   strategy :   s = 1   denotes   mutation   strategy   in   ( 9 )   and   s = 2 denotes mutation strategy in (13)
n 1 the number of individuals (offspring) generated by mutation strategy in (9) that successfully replace the original individual and enter the next generation
m 1 the number of individuals(offspring) generated by mutation strategy in (9) that fail to replace the original individual and are discarded
n 2 the number of individuals(offspring) generated by mutation strategy in (13) that successfully replace the original individual and enter the next generation
m 2 the number of individuals(offspring) generated by mutation strategy in (13) that fail to replace the original individual and are discarded
f p a   parameter   to   influence   the   scale   factor   F i ,
f p = n 1 ( n 2 + m 2 ) n 2 ( n 1 + m 1 ) + n 1 ( n 2 + m 2 )
C R r e c an   array   that   records   the   crossover   rate   value   c r i   associated   with   individual   i that enter the next generation
C R m a   parameter   to   generate   the   cross   over   rate   c r i   of   individual   i defined by
C R m = k = 1 C R r e c C R r e c ( k ) C R r e c
r A   random   variable   with   uniform   distribution   U ( 0 , 1 )
r 1 A   random   variable   with   Gaussian   distribution   N ( μ , σ 1 2 )   with   mean   μ   and   standard   deviation   σ 1
r 2 A   random   variable   r   with   uniform   distribution   U ( 0 , 1 )
Table 3. The pseudo code of SaNSDE Algorithm.
Table 3. The pseudo code of SaNSDE Algorithm.
Discrete Self-Adaptive Neighborhood Search Differential Evolution with (SaNSDE) Algorithm
Step 0: Initialize a population with N P individuals randomly
   C R m = 0.5
   f p = 0.5
   For g = 1   t o   G
   For i = 1   t o   N P
    Generate a random variable r with uniform distribution U ( 0 , 1 )
    If r < f p
    Generate a random variable r 1 with Gaussian distribution N ( μ , σ 1 2 )
     F i = r 1
    Else
    Generate a random variable r 2 with uniform distribution U ( 0 , 1 )
     F i = r 2
    End If
    Generate a random variable c r i with Gaussian distribution N ( C R m , σ 2 2 )
Step 1:  Create a mutant vector v g i
    Generate r a n d i = U ( 0 , 1 )
    If r a n d i < f p
     s = 1
    Calculate v g i according to (9)
    Else
     s = 2
    Calculate v g i according to (13)
    End If
Step 2:  Create a trial vector u g i
    For l 1, 2,…, L
     u g i l = v g i l   i f   R a n d ( 0 , 1 ) < c r i z g i l   o t h e r w i s e
     u ¯ g i l B i n a r y T r a s f o r m ( u g i l )
    End For
Step 3:  Select the trial vector if it outperforms individual i
    If F 1 ( u ¯ g i ) F 1 ( z g i )
     z ( g + 1 ) i = u g i
    Record c r i in C R r e c
     n s = n s + 1
    Else
     m s = m s + 1
    End If
   End For
   If g > L P
      f p = n 1 ( n 2 + m 2 ) n 2 ( n 1 + m 1 ) + n 1 ( n 2 + m 2 )
      C R m = k = 1 C R r e c C R r e c ( k ) C R r e c
   End If
  End For
Table 4. Origins and Destinations of Participants.
Table 4. Origins and Destinations of Participants.
ParticipantOriginDestination
Driver 124.23785, 120.6699324.11308, 120.65914
Driver 224.1692536, 120.684823324.20195, 120.56815
Driver 324.13425, 120.553924.14289, 120.70549
Passenger124.21872, 120.646924.12877, 120.66223
Passenger224.1790507, 120.665747624.17369, 120.61354
Passenger324.0611, 120.6434224.1465287, 120.6532456
Passenger424.07962, 120.6945424.12438, 120.66244
Passenger524.19422, 120.6953824.15288, 120.69704
Passenger624.16048, 120.6917324.16359, 120.65138
Passenger724.0611, 120.6434224.11009, 120.64146
Passenger824.19422, 120.6953824.13046, 120.7047
Passenger924.13623, 120.6069324.13527, 120.6571
Passenger1024.16429, 120.6852224.15345, 120.65495
Table 5. Γ d for Drivers.
Table 5. Γ d for Drivers.
Driver   ID   ( d ) 123
Γ d 113
Table 6. Λ p for Passengers.
Table 6. Λ p for Passengers.
Passenger   ID   ( d ) 12345678910
Λ p 1111111111
Table 7. Matrix Θ .
Table 7. Matrix Θ .
12345678910
11213231232
22111223312
31232233112
Table 8. Bid submitted by Driver 1.
Table 8. Bid submitted by Driver 1.
Driver   ID   ( d ) q d 11 q d 12 q d 13 q d 14 q d 15 q d 16 q d 17 q d 18 q d 19 q d 110 o d 1 c d 1
1000010000050.402551.4975
2000000000136.74541.1575
3000000001057.48557.485
Table 9. Bids submitted by Passengers.
Table 9. Bids submitted by Passengers.
Passenger   ID   ( p ) s p 1 s p 2 s p 3 s p 4 s p 4 s p 4 s p 4 s p 4 s p 4 s p 4 f p
1100000000037.0475
2010000000018.3475
3001000000028.12
4000100000019.07
5000010000014.1675
6000001000012.25
7000000100017.1175
8000000010033.11
9000000001014.6925
1000000000019.645
Table 10. Solution x for Drivers.
Table 10. Solution x for Drivers.
Driver   ID   ( d ) x 11 x 21 x 31
1110
Table 11. Solution y for Passengers.
Table 11. Solution y for Passengers.
Passenger   ID   ( d ) y 1 y 2 y 3 y 4 y 5 y 6 y 7 y 8 y 9 y 10
10000100001
Table 12. Γ d for Drivers.
Table 12. Γ d for Drivers.
Driver   ID   ( d ) 123
1133
Table 13. Λ p for Passengers.
Table 13. Λ p for Passengers.
Passenger   ID   ( d ) 12345678910
Λ p 1111111111
Table 14. Matrix Θ .
Table 14. Matrix Θ .
12345678910
11213231232
22111223312
31232233112
Table 15. Solution x for Drivers.
Table 15. Solution x for Drivers.
Driver   ID   ( d ) x 11 x 21 x 31
1100
Table 16. Solution y for Passengers.
Table 16. Solution y for Passengers.
Passenger   ID   ( d ) y 1 y 2 y 3 y 4 y 5 y 6 y 7 y 8 y 9 y 10
10000100000
Table 17. Average fitness values and average number of generations for SaNSDE with algorithmic parameter L P to 10, 50, 100, 200 and 1000.
Table 17. Average fitness values and average number of generations for SaNSDE with algorithmic parameter L P to 10, 50, 100, 200 and 1000.
Test CaseParticipant
(D/P)
SaNSDE
( L P = 10 )
SaNSDE
( L P = 50 )
SaNSDE
( L P = 100 )
SaNSDE
( L P = 200 )
SaNSDE
( L P = 1000 )
13/1018.305/100.318.305/32.918.305/9.918.305/6.418.305/2.8
25/1123.518/236.923.518/39.323.518/21.823.518/14.923.518/7.6
35/1224.79/288.724.79/39.524.79/17.624.79/15.324.79/7.1
46/1236.58/752.836.58/12736.58/53.736.58/27.136.58/12.9
57/1329.2442/1426.130.063/50.930.063/92.330.063/31.630.063/14.7
68/1462.18/11662.18/3862.18/22.962.18/18.162.18/7
79/1574.0355/1746.979.64/2055.279.64/609.179.64/200.479.64/45.4
820/2023.644/2582.223.644/656.723.644/4186.723.5513/1005.723.644/601.2
930/30135.0137/17,414.6138.3127/11,675.2138.3988/16,887138.0833/23,072.8139.7357/25,470.7
1040/40144.0469/20,968.4145.3967/21,086146.4824/16,469.5144.7231/25,026.3144.6829/15,030.9
Table 18. Average fitness values and average number of generations for DE with six strategies and SaNSDE with algorithmic parameter L P = 1000.
Table 18. Average fitness values and average number of generations for DE with six strategies and SaNSDE with algorithmic parameter L P = 1000.
Test CaseParticipant
(D/P)
DE1DE2DE3DE4DE5DE6SaNSDE
( L P = 1000 )
14/1018.305/14.318.305/20.918.305/19.218.305/35.918.305/15.718.305/1618.305/2.8
25/1123.518/54.621.1662/129.122.7885/514.323.518/577.123.518/25.923.518/63.523.518/7.6
35/1224.79/63.324.79/334.924.3962/69.624.3962/171.824.0024/413.224.3962/77.924.79/7.1
46/1236.58/167.635.4095/419.536.58/214.235.9755/212.934.1465/20236.58/135.136.58/12.9
57/1329.2442/968.525.482/73.429.0007/18126.2379/139.126.8132/478.529.2442/203.730.063/14.7
68/1462.18/48.762.18/42.562.18/51.860.7055/1056.462.18/341.262.18/41.762.18/7
79/1575.1808/86070.481/165.578.1356/932.776.2821/1139.359.7039/1054.774.4286/100479.64/45.4
820/2023.644/47515.4555/9261.123.644/1098.616.1718/502716.0075/14,904.619.3717/6478.823.644/601.2
930/30126.2855/26,507.981.1175/211.6133.3518/20,689.3108.7805/19,178107.5981/15,306.9114.6592/15,030139.7357/25,470.7
1040/40120.0865/7556.179.7772/21,756.2122.8838/22,660.284.8821/18,684.853.8039/18,172.455.685/12,640.3144.6829/15,030.9
Table 19. Average fitness values and average number of generations for NSDE and SaNSDE with algorithmic parameter L P = 1000.
Table 19. Average fitness values and average number of generations for NSDE and SaNSDE with algorithmic parameter L P = 1000.
Test CaseParticipant
(D/P)
NSDE SaNSDE   ( L P = 1000 )
13/1018.305/106.918.305/2.8
25/1123.518/51.223.518/7.6
35/1224.79/49.824.79/7.1
46/1236.58/154.5436.58/12.9
57/1330.063/11830.063/14.7
68/1462.18/36.962.18/7
79/1579.64/2173.479.64/45.4
820/2023.5513/911.623.644/601.2
930/30137.655/33,899.3139.7357/25,470.7
1040/40137.2235/29,677.1144.6829/15,030.9
Table 20. Average fitness values and average number of generations for PSO, FA and SaNSDE with algorithmic parameter L P = 1000.
Table 20. Average fitness values and average number of generations for PSO, FA and SaNSDE with algorithmic parameter L P = 1000.
Test CaseParticipant
(D/P)
PSOFAALPSO SaNSDE   ( L P = 1000 )
13/1018.305/43.618.305/52.718.305/82.518.305/2.8
25/1123.518/233.120.9662/134.923.518/266.623.518/7.6
35/1224.79/691.824.3962/328.324.79/406.924.79/7.1
46/1236.58/929.136.58/573.136.58/548.636.58/12.9
57/1330.063/969.530.063/1618.630.063/1196.630.063/14.7
68/1462.18/638.362.18/546.562.18/483.462.18/7
79/1579.64/2643.477.3834/320679.64/1245.179.64/45.4
820/2015.6939/27,714.310.8847/19,374.315.7567/30,399.223.644/601.2
930/3027.9224/28,346.9−2.3761/23,731.428.9539/32,209139.7357/25,470.7
1040/40−2.5351/29,242.7−4.0021/21,267.9−0.5502/29,617.2144.6829/15,030.9
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Hsieh, F.-S. Trust-Based Recommendation for Shared Mobility Systems Based on a Discrete Self-Adaptive Neighborhood Search Differential Evolution Algorithm. Electronics 2022, 11, 776. https://0-doi-org.brum.beds.ac.uk/10.3390/electronics11050776

AMA Style

Hsieh F-S. Trust-Based Recommendation for Shared Mobility Systems Based on a Discrete Self-Adaptive Neighborhood Search Differential Evolution Algorithm. Electronics. 2022; 11(5):776. https://0-doi-org.brum.beds.ac.uk/10.3390/electronics11050776

Chicago/Turabian Style

Hsieh, Fu-Shiung. 2022. "Trust-Based Recommendation for Shared Mobility Systems Based on a Discrete Self-Adaptive Neighborhood Search Differential Evolution Algorithm" Electronics 11, no. 5: 776. https://0-doi-org.brum.beds.ac.uk/10.3390/electronics11050776

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop