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 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, , in the social network model. Let and be two nodes in . We use to denote a directed edge connecting to and use weight to denote the trust relation between and , where the weight specifies the degree (trust level) that trusts . As the goal of this study is to develop a decision model and relevant solution methodology, it is assumed that is available.
Let denote the by matrix with element for all . The greater the value of , the more trusts . If equals zero, does not trust . More specifically, there is a directed edge connecting to with weight for each and in . We use a graph 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 to denote the minimal trust level requested by driver and to denote the minimal trust level requested by passenger . A driver will share a ride with passenger only if . A passenger can be a rider with driver only if . A passenger can be a rider with another passenger only if .
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 is denoted by , where is defined by the origin , destination, , earliest departure time, , latest arrival time, , number of passengers, , and the minimal trust level requested, . That is, = .
A driver’s request is denoted by , where is defined by the origin, , destination, , earliest departure time, , latest arrival time, , quantity of seats available, , maximum detour ratio, , and the minimal trust level . That is, = .
Let be the total number of potential passengers that submit requests to the shared mobility system and let be the set of all potential passengers. Without loss of generality, it is assumed that there is only one request, , submitted by each passenger . For each passenger , a procedure will be invoked by the shared mobility system to generate bid = based on , where is the number of locations, is the number of seats requested to pick up passengers at location , is the number of seats released after dropping passengers at location , is the bid price and is the minimal trust level requested.
Let denote the total number of potential drivers that submit requests to the shared mobility system and let be the set of all potential drivers. Without loss of generality, it is assumed that there is only one request, , will be submitted by each driver . For each driver , a procedure will be invoked by the shared mobility system to generate bids = based on , where is the total number of bids of a driver , is the bid of driver with , is the number of locations, is the number of seats available to pick up passengers at location , is the number of seats released after dropping passengers at location , is the original cost of driver without ridesharing, is the cost for driver to transport passengers in the bid, is the total number of seats and is the minimal trust level requested.
Based on the bids, , and , , , we define decision variables, for the bids submitted by drivers. The -th bid placed by driver is a winning bid if = 1. Otherwise, = 0. We define decision variables as, . The bid submitted by passenger is a winning bid if = 1 and is not a winning bid if = 0. We define the objective function defined in (1) to maximize the cost savings, where .
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:
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
, a solution in the current population,
satisfies constraints (1)–(8).
is the set of all feasible solutions in the current population. Let
be the object function value of the worst feasible solution in the current population. More formally,
.
The fitness function used in this paper is defined by
as follows:
, where
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
. In the initialization step, the standard DE algorithm creates a population of
trial individuals
=
, where
is the generation index,
is the index of an individual,
, and
is the dimension index. In the second step, the DE algorithm generates a mutant vector
=
for individual
in the
-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
=
and the randomly selected individuals,
,
,
,
and
, in the population, where
,
,
,
and
are random integers between 1 and
. The six mutation strategies are defined as follows:
The third step is a crossover operation that follows after a mutant vector is generated. The crossover operation will create a trial vector by selecting the element between the mutant vector and the original individual with some probability. The last step is selection. In the selection step, will be replaced by if is better than .
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,
and
. These two parameters will be self-adapted to influence the scale factor and the crossover rate of DE. The scale factor
is determined randomly based on the parameter
. The crossover rate
of individual
is generated randomly according to the parameter
.
The SaNSDE algorithm keeps track of four variables, , , and , to adapt the parameter as follows:
, where , , and are defined as follows:
: the number of individuals (offspring) generated by mutation strategy in (9) that successfully replace the original individual and enter the next generation,
: the number of individuals (offspring) generated by mutation strategy in (9) that fail to replace the original individual and are discarded,
: the number of individuals (offspring) generated by mutation strategy in (13) that successfully replace the original individual and enter the next generation,
: 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
associated with individual
that enter the next generation in an array
to adapt the parameter
. Adaptation of the parameter
is done by the following formula:
As the solution space of the decision problem is discrete, a procedure,
, 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 |
Input: |
Output: |
Begin |
|
|
Generate a random variable with uniform distribution |
|
Return |
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 applied can lead to improvement in solution quality, the strategy success counter will be increased by one. Otherwise, the failure counter will be increased by one. After the learning period, the success counter and the failure counter will be used to calculate , 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.
5.1.1. Scenario 1
The origins and destinations of the drivers and passengers are listed in
Table 4.
The minimal trust level
requested by each driver
is listed in
Table 5. The minimal trust level
requested by each passenger
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:
= 10,000.
Population size = 30.
= 0.5.
= , where is a Gaussian distribution .
= 10, 50, 100, 200, 1000.
= 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.
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
requested by each driver
is listed in
Table 12. The minimal trust level
requested by each passenger
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
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.
5.2. Influence of Learning Period on Performance and Efficiency
There is an algorithmic parameter, learning period (), in the proposed SaNSDE algorithm. To apply the proposed method to solve problems, we first study the influence of the algorithmic parameter on convergence speed.
The parameters used in the Self-adaptive Neighborhood Search Differential Evolution (SaNSDE) algorithm are listed as follows:
= 10,000.
Population size = 30.
= 0.5.
= , where is a Gaussian distribution .
= 10, 50, 100, 200, 1000.
= 4.
Table 17 shows the results obtained by setting the algorithmic parameter
to 10, 50, 100, 200 and 1000, respectively. For each test case, the average fitness values obtained by setting
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
. 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
for most test cases. This is due to the quality of the best strategy being improved with the growth of the algorithmic parameter
. If the algorithmic parameter
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
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
= 1000 is the worst, the average fitness value for Case 9 with
= 1000 is 139.7357, which is the best of all, according to
Table 17. Therefore, for Case 9, the SaNSDE algorithm with
= 1000 still outperforms other
parameters, in the average fitness value
Table 17. The average number of generations for Case 9 with
= 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
= 1000 outperforms other
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:
The parameters used in the Self-adaptive Neighborhood Search Differential Evolution (SaNSDE) algorithm are listed as follows:
= 10,000.
Population size = 30.
= 0.5.
= , where is a Gaussian distribution .
= 1000.
= 4.
Table 18 shows the results obtained by applying the DE algorithm with six strategies and the SaNSDE algorithm with algorithmic parameter
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:
= 10,000.
Population size = 30.
= 0.5.
= , where is a Gaussian distribution .
= 4.
The parameters used in the Self-adaptive Neighborhood Search Differential Evolution (SaNSDE) algorithm are listed as follows:
= 10,000.
Population size = 30.
= 0.5.
= , where is a Gaussian distribution .
= 1000.
= 4.
Table 19 shows the results obtained by applying the NSDE algorithm and the SaNSDE algorithm, with algorithmic parameter
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:
The parameters used in the Firefly algorithm are listed as follows:
The parameters used in the ALPSO algorithm are listed as follows:
The parameters used in the Self-adaptive Neighborhood Search Differential Evolution (SaNSDE) algorithm are listed as follows:
= 10,000.
Population size = 30.
= 0.5.
= , where is a Gaussian distribution .
= 1000.
= 4.
Table 20 shows the results obtained by applying the PSO algorithm, Firefly algorithm (FA), ALPSO algorithm and the SaNSDE algorithm, with algorithmic parameter
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
= 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 for most test cases. This is due to the fact that the best strategy can be found only if the learning period parameter is big enough. If the algorithmic parameter 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 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.