In this research, the users are divided into two groups including drivers and passengers in a ride-sharing scenario. The drivers intend to have an optimum trip with the minimum time lost, maximum passengers transfer and financial expenses. The passengers desire to be guided from their origins to destinations with the minimum cost.
The required data
The spatial data used in the carpooling system are in vector format; however, we also considered a raster map as a background or base map. The ‘graph of road network’ which consists of the centerline of urban roads directed based on the urban rules (such as one-way and two-ways) are added to the base map. In this study, the spatio-temporal data of the users (drivers and passengers) are the dynamic (real-time) data which are periodically updated.
The system has been developed based on ‘One driver- Multiple passenger’ scenario in Telegram environment using ‘C# programming’ language and .Net framework 4.5. The required spatiotemporal data are stored in ‘PostgreSQL-PostGIS’. The ‘SharpMap’, ‘Brutile’, ‘Proj4net’ and ‘GeoAPI’ are used to implement the GUI and also the algorithm. Telegram C# API is selected as the mediator between the robot servers. The architecture of proposed carpooling system is presented in Figure 11.
Figure 11. The architecture of Geo-social network-based carpooling system
The relevant information of all of the drivers including personal characteristics, type of their car, and their positional interest are stored as their profiles in the server. The information of the passengers (such as origin, destination and time constraint) is entered to the system once they request for a car. The server system computes the computational process for each driver. When the system suggests the most appropriate car to a passenger, he/she accepts the suggestion. Once the passenger rides the car the registered information of passenger is removed from the server. Figure 12 shows the procedure of the proposed system.
Tuning parameters of ACO
There are five effective parameters that determine the performance of ACO including ?,Q,?,? and M. For experimental studies the values are tuned as follows:
Q=100, =0.1 ,?=5 ,?=1, M=21
The objective function is defined as Eq.8.
Figure 12. The procedure of proposed system
Experimental results and discussion
To demonstrate the performance of the algorithm and system, the system was applied in a scenario with 40 different shared routes between 100 passengers and 35 drivers. The system was evaluated based on time performance and system usability that demonstrated the efficiency of the proposed algorithm. The released software consists of a four-stage configuration wizard as depicted in Figure 13(a– d).
Figure 13. The configuration wizard of the system:(a) welcome page, (b) determination of the origin and destination of the passenger (c) searching for the fellow travelers and execution of the algorithm and (d) presentation of the shared route to the passengers.
Time performance of the model
In order to show the efficiency of the algorithm, three performance tests were conducted, for which a Windows7 Ultimate system (Intels Atom (TM) CPUN270 and 2GBRAM) was used. The first test involved measuring the optimality of objective function based on the number of ants in 25 different routes while the numbers of nodes are in 150, 400. Assessing the effect of the number ants on optimality of the objective function showed that the optimum number of ants for ACO algorithm initialization is ’30’. Figure 14 illustrates the relation between the number of ants and RMSE (Root-Mean-Square Error) of the objective function.
Figure 14. The optimum number of ants
The time performance of the algorithm is measured based on the maximum number of nodes in the study area that is equal to 18 km in urban traffic network. Figure 15 illustrates the relation between the time performance and the number of nodes. The results demonstrate that in the worst case the required time for executing the proposed approach is 35 s that is acceptable in ride-sharing services.
Figure 15. Relation between the time performance and the number of nodes
System Usability Scale (SUS)
System Usability Scale (SUS) is a reliable, low-cost usability scale that can be used for global assessments of systems usability (Peres et al., 2013). The SUS is a simple, ten-item scale providing an overall view of subjective usability assessments. A total of 30 were asked to complete the SUS questionnaire regarding the usability of the proposed system (see Table 1).
Table 1. The summary of the users’ feedbacks based on SUS questionnaire.
Question Strongly disagree Disagree
I think that I would like to use this system frequently 10* 20 15 30 25
I found the system unnecessarily complex 15 40 15 25 5
I thought the system was easy to use 0 25 15 40 20
I think that I would need the support of a technical person to be able to use this system 20 35 20 10 15
I found the various functions in this system were well integrated 10 20 15 40 15
I thought there was too much inconsistency in this system 10 35 30 15 10
I would imagine that most people would learn to use this system very quickly 5 15 15 30 35
I found the system very cumbersome to use 20 40 15 15 10
I felt very confident using the system 15 15 20 45 5
I needed to learn a lot of things before I could get going with this system 20 40 15 15 10
Note: The percentage of number of participants.
The analysis of SUS scores demonstrated the average satisfaction of the users form the implemented application.
This study proposes and verifies an optimal carpooling service. The proposed approach has some specific characteristics that make it different from currently used mobile carpooling applications (Wolfler Calvo et al., 2004; Xia et al., 2015; Czioska et al., 2017). The first key feature of the approach is related to the spatio-temporal matching method of the moving passengers and driver that is executed using VCRQ. VCRQ attempts to find the influence zone of each passenger based on urban road network compared to the previous studies that used the Euclidean distance. In addition, this approach considers the velocity of the driver by changing the searching range of VCRQ. However, the other studies use only the allowed speed of streets. The second advantage of this approach is the usage of ACO algorithm that is able to solve different parameters through a cost function. To model the real situation, this paper utilized the average speed of the automobiles on each road that is computed based on its allowed speed and traffic congestion. Finally, the spatio-temporal carpooling service is developed in a Geo-social network environment; it integrates the GIS (i.e., spatial data and analyses) and Telegram capabilities (i.e., social networking) in mobile devices to facilitate the provision of carpooling services in Tehran. Telegram is one of the most popular social network in Tehran and the users could interact with the system effectively as proved by System Usability Scale evaluation.
While the advantages of the proposed approach are evident, the current study acknowledges a few limitations that should be taken into account in future studies. Although the model handles spatiotemporal matching but the waiting time is constant (180s) for the passengers and so there is no temporal adaptation for different passengers. Another limitation is that present study did not consider all of the passengers’ preferences in the system. There might be some other important preferences that are important for optimal route finding