Download as pdf or txt
Download as pdf or txt
You are on page 1of 14

1288 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 18, NO.

6, JUNE 2019

FooDNet: Toward an Optimized Food Delivery


Network Based on Spatial Crowdsourcing
Yan Liu, Bin Guo , Senior Member, IEEE, Chao Chen, He Du, Zhiwen Yu , Senior Member, IEEE,
Daqing Zhang, Member, IEEE, and Huadong Ma , Member, IEEE

Abstract—This paper builds a Food Delivery Network (FooDNet in short) using spatial crowdsourcing (SC). It investigates the
participation of urban taxis to support on demand take-out food delivery. Unlike existing SC-enabled service sharing systems
(e.g., ridesharing), the delivery of food in FooDNet is more time-sensitive and the optimization problem is more complex regarding
high-efficiency, huge-number of delivery needs. In particular, two on demand food delivery problems under different situations are
studied in our work: (1) for O-OTOD, the food is opportunistically delivered by taxis when carrying passengers, and the optimization
goal is to minimize the number of selected taxis to maintain a relatively high incentive to the participated drivers; (2) for D-OTOD, taxis
dedicatedly deliver food without taking passengers, and the aim is to minimize the number of selected taxis (i.e., to raise the reward for
each participant) and the total traveling distance to reduce the cost. A two-stage approach, including the construction algorithm and the
Adaptive Large Neighborhood Search (ALNS) algorithm based on simulated annealing, is proposed to solve the problem. We have
conducted extensive experiments based on the real-world datasets, including city-wide restaurant data, cell tower data, and the
large-scale taxi trajectory data with 10,000 taxis in the city of Chengdu, China. Experimental results demonstrate that our proposed
algorithms are more effective and efficient than baselines, fulfilling the food delivery service using a smaller number of taxis within
the given time.

Index Terms—Spatial Crowdsouring, online takeout ordering & delivery, task allocation, optimization

1 INTRODUCTION

I N recent years, with the prevalence of the mobile Internet,


Online Takeout Ordering & Delivery (OTOD) using smart
phones has become an emerging service. In the OTOD service,
Though having rising development in the last few years,
existing OTOD services still suffer some limitations. First,
food delivery is usually completed by using bicycles or
the user could receive the take-out food delivered by the electric motorcars rather than cars in view of the delivery
restaurant staff after ordering online. In addition, some cost (e.g., ele.me), which decreases the delivery efficiency
new platforms are developed as the new model of the and results in the limited delivery range in geography
OTOD service, such as Seamless1, UberEats2, and ele.me3. because of the slow speed. Though the take-out food is
Different from the traditional delivery method that take-
delivered by cars in some platforms (e.g., UberEats), the
out food is delivered independently by staffs of different
delivery cost is quite high for the requesters if they order
restaurants, the merchants who register in these platforms
could share the resources of professional delivery staffs the food frequently. Second, most food orders appear in the
to reduce the cost. In general, the OTOD service is con- same time period (e.g., lunch time or dinner time), which
venient and time-saving especially for people who are results in a large number of delivery requests within a short
taking rest at home or busy working. time duration. Therefore, it becomes difficult to deliver food
on time during the rush hour due to the limited number of
delivery staffs. Merely expanding staffs may solve the prob-
1. http://www.seamless.com
2. http://www.ubereats.com
lem on some point, but the resources of professional delivery
3. http://www.ele.me staffs can be wasted as there are few food orders during
most of the other moments of a day. Therefore, a new method
 Y. Liu, B. Guo, H. Du, and Z. Yu are with Northwestern Polytechnical is under investigated to tackle these challenges.
University, Xi’an, Shaanxi 710129, China. E-mail: {yanly.emily, guobin.
Spatial Crowdsourcing (SC) is an emerging paradigm
keio, zhiweny}@gmail.com, duhe@mail.nwpu.edu.cn.
 D. Zhang is with the Institut Mines-Telecom/Telecom SudParis, Evry, that extends traditional crowdsourcing to the physical
Essonne 91011, France. E-mail: daqing.zhang@telecom-sudparis.eu. world, by assigning location-based tasks to moving workers
 C. Chen is with Chongqing University, Chongqing 400044, China. [1], [2]. It has been proved useful in quite a few application
E-mail: cschaochen@cqu.edu.cn.
 H. Ma is with the Beijing University of Posts and Telecommunications, areas, such as environment monitoring and event sensing
Beijing, 100876, China. E-mail: mhd@bupt.edu.cn. [3], [4]. Note that most of the existing studies [5] on SC con-
Manuscript received 2 Nov. 2017; revised 1 July 2018; accepted 23 July 2018. centrate on object profiling/sensing, i.e., tasking individuals
Date of publication 1 Aug. 2018; date of current version 2 May 2019. to perform the sensing tasks with their mobile devices [6],
(Corresponding author: Bin Guo.) [7]. Other types of location-based tasks are not well inves-
For information on obtaining reprints of this article, please send e-mail to:
reprints@ieee.org, and reference the Digital Object Identifier below. tigated. In this paper, we view OTOD as a special type of
Digital Object Identifier no. 10.1109/TMC.2018.2861864 SC task, which refers to object delivery that delivers objects
1536-1233 ß 2018 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission.
See ht_tp://www.ieee.org/publications_standards/publications/rights/index.html for more information.

uthorized licensed use limited to: NATIONAL INSTITUTE OF TECHNOLOGY TIRUCHIRAPALLI. Downloaded on August 20,2022 at 13:10:38 UTC from IEEE Xplore. Restrictions appl
LIU ET AL.: FOODNET: TOWARD AN OPTIMIZED FOOD DELIVERY NETWORK BASED ON SPATIAL CROWDSOURCING 1289

from one place (i.e., restaurants) to another place (i.e., the income from food delivery, such as the income should be
site of food requesters). Furthermore, we aim to extend and greater than the travelling cost. Specifically, we define the
improve the OTOD service by leveraging SC. places of the restaurant and the requester in an order as start-
Quite recently, there have been several works that try to ing and destination areas. If the order happens in the fre-
combine SC and object delivery. Ridesharing [8] is a typical quent-interaction areas (i.e., there are more taxis running
application of object delivery among multiple passengers between the starting and destination areas), the taxi can
based on SC. Specifically, a ridesharing system aims to plan deliver food opportunistically. For infrequent-interaction
a set of vehicle routes with minimum cost, and vehicles are areas, the taxi needs to deliver food in a dedicated manner
capable of accommodating as many passengers as possible. (i.e., without passengers).
In addition to riding requests from travelers, there also In general, we have made the following contributions:
might be delivery requests about goods, like parcels, which
 We present a novel system framework to deliver the
could share the resources of vehicles with people to utilize
take-out food by leveraging existing resources of
the vehicles resources sufficiently. For example, Crowdde-
taxis in the city. To the best of our knowledge, this is
liver [9] is a novel system where packages share the resour- the first work that applies SC in the field of the
ces of vehicles with passengers. OTOD service.
Inspired by previous studies, we devote to building a  We elaborate the OTOD service in two typical sit-
food delivery network that uses an abundance of taxis in uations and formulate the problems accordingly,
the road network to deliver food based on SC. For taxi driv- including the O-OTOD problem and the D-OTOD
ers, extra income from the food delivery service can be problem. For the O-OTOD problem, food packages
obtained to lead to the long-term engagement of drivers. are delivered incidentally by taxis when carrying pas-
For passengers, sharing the resources of taxis with food sengers, and the optimization goal is to minimize the
could reduce the taxi fare, and increase the riding comfort number of selected taxis to increase the average
without sharing the limited space of the taxi with other income of taxi drivers (i.e., to make high incentives for
strangers in ridesharing. From the perspective of restau- active human participation); for the D-OTOD prob-
rants, delivering food using existing resources of urban lem, taxis deliver food packages specially without tak-
taxis can decrease the cost on recruiting extra delivery staffs, ing passengers, and it aims to minimize the number of
and enable the long-distance food delivery. Finally, from a selected taxis as well as the total traveling distance.
city perspective, this network has a potential to relieve  We propose a two-stage method to solve the abo-
urban traffic congestion by piggybacking new services ve problems, which consists of the construction
(food delivery) on existing ones (passenger delivery). algorithm and the Adaptive Large Neighborhood
To the best of our knowledge, this is the first work that Search (ALNS) algorithm. Specifically, the construc-
studies efficient delivery network by sharing rides of pas- tion algorithm constructs an initial solution, and
sengers and food packages using taxis. Recently, there have ALNS optimizes the original solution by removing
been several studies on shared package-passenger delivery and inserting delivery requests.
[9], [10]. This is, however, quite different from shared food-  We conduct experiments using three real-world
passenger delivery as studied in this work. First, compared datasets, including the data of taxi trajectories, res-
with average package delivery, food delivery has more taurants and cell towers in the city Chengdu, China.
strict ‘pick-up’ (from the restaurant) and ‘arrival’ (to the The results indicate that our proposed algorithms
food requester) time constraints to ensure the quality of are efficient compared to the baselines.
food and meet user dining demands. Second, the food pack- The rest of the paper is organized as follows: We review
age is usually smaller in size compared with other types of the related literature in Section 2. Section 3 gives an over-
packages, and a taxi could serve more food orders to view of the proposed system. The two food delivery prob-
increase the delivery efficiency and lower the cost. These lems, namely the O-OTOD problem and the D-OTOD
issues will result in a much more complicated optimization problem, are described respectively in Sections 4 and 5.
problem on delivery task assignment. Therefore, the solu- Section 6 evaluates the performance of proposed algorithms
tion of food delivery needs to be further explored. based on real-world datasets. In Section 7, we discuss some
To address the above challenges, we propose FooDNet, limitations and future directions of our work. Finally,
which is a novel Food Delivery Network that fulfills the Section 8 concludes the paper.
OTOD service based on SC. In particular, we solve the OTOD
crowdsourcing problem by leveraging pervasive taxis run-
2 RELATED WORK
ning in cities. This paper significantly extends our previous
work [11] by considering different states of taxis, proposing 2.1 Spatial Crowdsourcing
the corresponding methods and conducting realistic experi- In recent years, by leveraging the power of ordinary people,
ments as well as evaluations. Specifically, we elaborate the crowdsourcing has become an efficient way to complete com-
design of FooDNet from the following two usage situations. plex tasks. A lot of crowdsourcing applications have been
The first one is that taxis with passengers deliver the food, developed, such as image labeling and language translating.
named the Opportunistic OTOD Service (O-OTOD). Note With the development of smart devices and mobile Internet,
that the priority of passengers is higher than food packages, Spatial Crowdsourcing (SC) [12] has become a new form of
which means that the taxi should pick up all food packages crowdsourcing that engages users to obtain the information
before picking up the passenger, and deliver food after the with spatio-temporal features[13], [14], [15], such as environ-
passenger takes off. The second one is that taxis only deliver mental sensing and traffic information mapping. Most of SC
food packages, named the Dedicated OTOD Service (D- applications focus on mobile crowd sensing (MCS) [16], [17],
OTOD). Note that taxis do not accept passengers’ orders namely a crowd of users utilize their mobile phones to com-
when delivering food, since drivers can obtain sufficient plete location-based tasks [18], [19]. In addition, there have

uthorized licensed use limited to: NATIONAL INSTITUTE OF TECHNOLOGY TIRUCHIRAPALLI. Downloaded on August 20,2022 at 13:10:38 UTC from IEEE Xplore. Restrictions appl
1290 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 18, NO. 6, JUNE 2019

been some SC platforms developed to support human partici-


pation, like PRISM [20], and SPACE-TA [21].

2.2 Object Delivery with Spatial Crowdsourcing


Based on the studies on SC, the object delivery problem (e.g.,
people, goods) with SC has attracted much attention recently.
Vehicle routing problem (VRP) [22] with different constraints
is a basic problem in object delivery. Pisinger et al. [23] pre-
sented a new and general heuristic framework, denoted
Adaptive Large Neighborhood Search (ALNS), which has
been used to several variants of VRP in the present paper. Fig. 1. Examples of food delivery using taxis.
Christiaens et al. [24] introduced a fresh ruin and recreate
approach to solve capacitated VRP. In addition, a closely
related problem to object delivery is the Dial-a-Ride Problem leveraging spatial crowdsourcing. Without loss of generality,
(DARP) [25]. Rahmani et al. [26] formulated a heterogeneous we made the following assumptions to formulate the food
DARP, and they proposed a column generation approach to delivery problem in FooDNet. First, taxi drivers are willing to
generate feasible vehicle routes dynamically. Gschwind et al. accept the food delivery requests assigned by the system
[27] provided a novel approach based on the ALNS to solve because they can obtain extra rewards. Second, the passenger
the DARP. Ma et al. [28] developed a taxi-sharing system that is willing to wait for a relatively short time period (e.g.,
can accept passengers’ requests in real-time and schedule 10 minutes) cost on picking up food packages as we can give
appropriate taxis. DARP arises in many practical application her/him discounts for shared-riding. Third, all the given food
areas, for instance, combining taxi transportation and goods delivery requests in the FooDNet SC platform can be served
delivery can create attractive business opportunities. Li et al. because we have enough taxis in urban environments.
[29] considered conceptual and mathematical models in In Fig. 1, we show the basic ideas of the two delivery sit-
which people and parcels are handled in an integrated way uations in FooDNet. Specifically, in O-OTOD, taxis with
by the same taxi network. Chen et al. [9] proposed to exploit passengers deliver the food, while in D-OTOD, food is
existing taxis that are carrying passengers on the street to delivered by taxis without passengers. In Fig. 1a, dotted
deliver packages collaboratively, which can simultaneously lines depict the original routes of taxis to deliver passengers
lower the cost and accelerate the speed. only, and solid lines depict the final routes to deliver both
The above-mentioned object delivery problems can be passengers and food. In Fig. 1b, Solid lines depict the routes
seen as variants of the Pickup and Delivery Problem with of taxis only delivering the food.
Time Windows (PDPTW) [30]. The PDPTW and its variants Opportunistic OTOD Service (O-OTOD). The taxi (e.g.,
have been studied extensively in the literature. Landrieu taxi1) at place A accepts a passenger’s (e.g., passenger1)
et al. [31] developed a Tabu search procedure to solve the request riding from C to E. Meanwhile, the user (e.g., user1 )
problem with a single vehicle. Ropke et al. [32] presented an at D orders the food of the restaurant at B. In this case, we
ALNS heuristic, and showed that this heuristic gives very can assign the food delivery task to taxi1 , because taxi1 can
good results for the PDPTW. Farahani et al. [33] proposed a deliver the food incidentally when taking passenger1. As
model that integrates the short-term production and distri- shown in Fig. 1a, taxi1 accepts the food delivery request and
bution planning to optimize the time between the produc- first picks up the food package at B. It then picks up passen-
tion and the delivery of perishable goods. Masson et al. [34] ger1 and drops her/him off at E. Finally, taxi1 delivers the
optimized a city logistics transportation system with mixed food to user1 at D. Moreover, the taxi also can complete mul-
passengers and goods, and proposed a mathematical model tiple food delivery tasks, e.g., the taxi (e.g., taxi2 ) at F whose
to minimize the number of vehicles. route is as the blue routes.
With the development of the OTOD service, the delivery of Dedicated OTOD Service (D-OTOD). As shown in Fig. 1b,
take-out food has been common in the city. Therefore, it is there are some food delivery tasks, i.e., delivering from B to
necessary to develop the generic system to deliver food at a C and from D to E. The taxi (e.g., taxi3) at A can complete the
low cost. Similar to object delivery, there also exist starting two food delivery tasks, and does not carry passengers. Spe-
and ending points with some requirements for take-out food cifically, taxi3 can first pick up the food at B and deliver it to
delivery. However, there is still little research on the efficiency C, and then picks up the food at D and delivers it to E. In gen-
gains that can be obtained by combining taxi transportation eral, the completion sequence of food delivery requests is
and food delivery. The main reason could be that time-sensi- determined by different distributions and time constrains of
tivity and huge-number requests in food delivery pose some food orders, and a taxi could deliver multiple food packages
challenges to model the optimization problems. For example, simultaneously. For example, the taxi (e.g., taxi4 ) at F can
a large number of requests could lead to a large solution space first pick up the food at G and H, and then deliver them.
of the model. In our paper, we focus on the combination of the
transportation of passengers and food delivery, and propose 3.2 System Overview
a novel delivery system, namely FooDNet, to optimize on The proposed FooDNet framework is shown in Fig. 2.
demand take-out food delivery using SC. Food ordering. The system has three stakeholders, namely
restaurants, taxi drivers, and users. First, restaurants pro-
vide the relevant information for the system, including the
3 SYSTEM DESIGN
location rl, the business hour rt and the food category rf.
3.1 Basic Description Meanwhile, the information of taxis is collected, i.e., the cur-
We propose FooDNet, which is a novel system where the rent location, the historical trajectories, and the passenger’s
take-out food is delivered by taxis in the OTOD service by travel request denoted as prðpl; pd; ptÞ, including the current

uthorized licensed use limited to: NATIONAL INSTITUTE OF TECHNOLOGY TIRUCHIRAPALLI. Downloaded on August 20,2022 at 13:10:38 UTC from IEEE Xplore. Restrictions appl
LIU ET AL.: FOODNET: TOWARD AN OPTIMIZED FOOD DELIVERY NETWORK BASED ON SPATIAL CROWDSOURCING 1291

TABLE 1
Parameters and Variables

Symbol Description
n Number of food packages
m Number of passengers/number of taxis
m All the delivery requests, m ¼ n þ m
K Set of taxis, K ¼ f1; 2 . . . ;mg
Vf Set of food package nodes, V f ¼ V fo [ V fd
Vp Set of passenger nodes, V p ¼ V po [ V pd
V fo Set of pickup nodes of food packages,
Fig. 2. An overview of FooDNet. V fo ¼ f1; 2 . . . ng
V po Set of pickup nodes of passengers,
V po ¼ fn þ 1; n þ 2 . . . mg
location pl, the destination pd, and pick-up time pt. When
V fd Set of delivery nodes of food packages,
the user starts to order food in restaurant r, she should pro- V fd ¼ fm þ 1; m þ 2 . . . m þ ng
vide her request information, including the location ul, the V pd Set of delivery nodes of passengers,
delivery time period ut½uto ; utd  (i.e., the order time uto V pd ¼ fm þ n þ 1; m þ n þ 2 . . . 2mg
and the deadline utd ), and the kind of food rf. Finally, V tc Set of taxi nodes, V tc ¼ f2m þ 1; 2m þ 2 . . . 2m þ mg
the food delivery request frðrl; ul; ½uto ; utd ; rfÞ is formed, [tsi ,tei ] Time window for request i
where rl and ul represent the start and end points of the dij Distance between node i and node j
food order respectively. tij Travel time between node i and node j
Food-delivery request handling. After the user submits the v Speed of the taxi
food-delivery request, the system will determine whether to t ik Time point when taxi k arrives at node i
accept it. Based on the information of the restaurants and Tk Maximum waiting time of the passenger
when taxi k pickups the food
taxis, as well as the user’s request, the system will accept the
si Service time for loading/unloading at node i
food request fr if it satisfies the constraints. Particularly, if the li Amount of food packages at the node i
user and the restaurant locate in frequent-interaction areas, it qk Quantity of food packages delivered by taxi k
falls into the O-OTOD mode, and the constraint will rely on Cf Fare charged for delivering one food package
the order time (e.g., the order time should be 30 minutes ear- Cp Fare charged for carrying the passenger per
lier than the delivery time, utd  uto þ 30). In addition, if the kilometer
regions are within infrequent-interaction areas, the order will be Xijk Binary decision variables equal to 1 if taxi k
handled under the D-OTOD mode, where both the order time goes directly from node i to node j
and the taxis’ income should be considered as constraints.
Delivery task allocation. The system will allocate accepted
food-delivery tasks to proper taxis. The selection method is time duration for loading or unloading the food package, and
mainly divided into two steps. First, we apply the heuristic the time window indicates the food delivery request i must
algorithm to obtain the initial feasible solution. Second, take place between tsi and tei . For passenger j 2 V p , her wait-
ALNS optimizes the initial solution by removing and insert- ing time when taxi k picks up food is no more than Tk in view
ing requests continually based on the local search frame- of passengers’ experience. Finally, we use a binary variable
work. Finally, the optimized solution is obtained, i.e., the Xijk ¼ 1 ði; j 2 V; k 2 KÞ to represent that taxi k travels from
planned route of each selected taxi. node i directly to node j.
A mathematical model is:
4 THE O-OTOD PROBLEM X X X
4.1 Problem Formulation min k2K i2V tc j2V
Xijk (1)
Food is delivered in the O-OTOD problem incidentally
Subject to:
when taxis carry passengers. Note that the total reward for
delivering a number of food packages is fixed, and the X X
fewer number of selected taxis, the more income for each k2K j2V
Xijk ¼ 1 8i 2 V fo [ V po (2)
driver to deliver food. Therefore, the main optimization objec- X X
tive is to minimize the number of selected taxis in order to j2V
Xijk ¼ j2V
Xj;iþm;k 8i 2 V fo [ V po 8k 2 K (3)
increase the earning of the taxi driver and attract more driv-
ers to participate over the long-term running. X X
X2mþk;j;k ¼ Xi;nþk;k ¼ Xnþk;mþnþk;k 8k 2 K (4)
Assuming that there are m available taxis with passenger j2V i2V
orders, and there is a sequence of requests with n food
X
orders that need to be delivered in the system. Therefore, X2mþk;j;k ¼ 1 8k 2 K (5)
the total number of requests needed to be served by taxis is j2V

mðm ¼ n þ mÞ. Then we can define a complete undirected X


graph G ¼ ðV; EÞ. Table 1 lists all the relevant parameters Xi;2mþk;k ¼ 0 8k 2 K (6)
i2V
and variables used in this paper.
In the O-OTOD problem, the graph G ¼ ðV; EÞ consists of X X X X
the nodes V ¼ V f [ V p [ V tc and the arcs E ¼ V  V . For i2V fo [V po j2V f [V p
Xijk  i2V fd [V fd j2V f [V p
Xijk
the food delivery request i 2 V f , there are a service time si ¼ 18k 2 K
and the time window [tsi ; tei ]. The service time represents the (7)
uthorized licensed use limited to: NATIONAL INSTITUTE OF TECHNOLOGY TIRUCHIRAPALLI. Downloaded on August 20,2022 at 13:10:38 UTC from IEEE Xplore. Restrictions appl
1292 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 18, NO. 6, JUNE 2019

X X the construction algorithm and the ALNS (Adaptive Large


i2V
Xijk  i2V
Xjik ¼ 0 8j 2 V fo [ V po 8k 2 K (8) Neighborhood Search) algorithm [32]. Specifically, the con-
struction algorithm constructs an initial solution of the
X X
Xijk ¼ 1 8j 2 V po (9) problem, and ALNS optimizes the original solution.
k2K i2V fo [V tc

X X 4.2 The Construction Algorithm


k2K j2V pd
Xijk ¼ 1 8i 2 V po
(10) This section constructs the initial solution by the heuristic
algorithm. The heuristic algorithm in this paper simply
X X selects the proper taxi for each food delivery request in
k2K j2V nV fd
Xijk ¼ 0 8i 2 V pd (11) view of all the food packages can be delivered on time. In
addition, the routing planning problem should be consid-
  ered to determine the cost of taxis when selecting the taxi.
t jk  t ik þ tij þ si Xijk 8i; j 2 V; 8k 2 K (12)
Note that we adopt two insertion methods to schedule the
taxi route, which are introduced specifically in 4.3.2. In gen-
tsi  t ik < t iþn;k  tei 8i 2 V fo ; 8k 2 K (13) eral, we propose three greedy methods.

rk ¼ t jk  t ik 8i 2 V tc ; j 2 V po ; 8k 2 K (14) 4.2.1 First Taxi (FT)


The main idea of FT is to choose the first available taxi for
dij the food delivery request when searching taxis in the taxi
T k  rk  8i 2 V tc ; j 2 V po ; 8k 2 K (15)
v pool. However, the solution of FT mainly relies on the
Xm search order of taxis, which affects the efficiency to deliver
q ¼n
k¼1 k
(16) the food. It is difficult to determine the search order of taxis
for different delivery requests, because one taxi can deliver
Xijk 2 f0; 1g 8i; j 2 V; 8k 2 K: (17) multiple food packages, and previous selections will affect
the following food delivery request.
The objective function (1) of the O-OTOD problem mini-
mizes the number of selected taxis to deliver food. 4.2.2 Best Taxi (BT)
Constraint (2) ensures that each pickup location is visited BT obtains the solution by selecting the best taxi from all
once. Constraint (3) defines that the delivery location is vis- available taxis that minimizes the increase in the overall
ited if the pickup location is visited, and the visit is per- cost of the solution after inserting the request. We define the
formed by the same taxi. Constraint (4) guarantees that the cost function Cik of request i in O-OTOD as (18), which
passenger request k must be served by taxi k. Each taxi consists of two components. The first component is the
should leave the original node to pick up the passenger or increased number of taxis (i.e., DðNik Þ) after inserting
food, which is defined in constraints (5) and (6). After com- request i to taxi k. DðNik Þ ¼ 0 if the selected taxi k has deliv-
pleting all the requests, the destination node of the taxi ered other food requests. Otherwise DðNik Þ ¼ 1. The second
should be one of the delivery nodes, as shown in constraint component is the waiting time of the passenger j (i.e.,
(7). Every pickup node must have one preceding stop and DðTjk Þ) for taxi k, and Tk is the normalization.
one succeeding stop, which is defined in constraint (8). Con-
   
straints (9), (10) and (11) define the service sequence of Cik ¼ DðNik Þ þ D Tjk =Tk ¼ ðNþi ðsÞ  N ðsÞÞ þ D Tjk =Tk :
delivery requests that the taxi picks up the food before pick-
ing up the passenger, and delivers the food after the passen- (18)
ger takes off. Constraint (12) computes the travel time from
4.2.3 Best Delivery (BD)
node i to node j. The time window constraint is defined in
constraint (13). Taxis spend extra time to pick up the food, BT can gain the optimal solution if there is only one food
which is less than the maximum waiting time of the passen- request in the system, but it does not take into account other
ger, as shown in constraints (14) and (15). Constraint (16) food delivery requests in the system which may have the
ensures that all the food requests are delivered. lower cost. To get the optimal solution of the delivery
Obviously, O-OTOD problem is known to be an NP-hard request in the system, BD not only tries to find the best taxi
[35] problem, since it contains the TSP [36] as a special case. In for the request, but also tries to select the best undelivered
general, there are two challenging issues to be addressed. requests from all requests which can be inserted next.
Since the search space of the model is too large, therefore, tra- Briefly, BD chooses the best food delivery request whose
ditional linear programming methods are not suitable to solve insertion causes the least cost among all the undelivered
this problem in view of the high computational complexity. requests. There are two steps in the BD method. First, we
Moreover, for the platform in our work, it aims to get the select the best taxi among the set of taxis K for each undeliv-
good solution in a relatively short time rather than the optimal ered request i in the system, i.e., minimizing the cost Cik .
solution for a long time. Generally, some heuristics (e.g., tabu We then define Ci as Ci ¼ mink2K Cik , which is the cost
search) can be used to solve the problem with a large number when inserting request i in its best taxi. Second, we choose
of requests by searching a number of available solutions. the best request i that minimizes Ci ðmini Ci Þ, and insert it in
However, our food delivery problems have many tight con- the route of its best taxi.
straints, and such heuristics face difficulties in moving from
one promising area of the solution space to another. So, they 4.3 Adaptive Large Neighborhood Search (ALNS)
have a tendency to get trapped in a local minimum. Algorithms
According to the analysis of the O-OTOD problem, This section describes the ALNS algorithm to optimize
we propose the two-stage method to solve it, consisting of the initial solution obtained by the heuristic algorithm.

uthorized licensed use limited to: NATIONAL INSTITUTE OF TECHNOLOGY TIRUCHIRAPALLI. Downloaded on August 20,2022 at 13:10:38 UTC from IEEE Xplore. Restrictions appl
LIU ET AL.: FOODNET: TOWARD AN OPTIMIZED FOOD DELIVERY NETWORK BASED ON SPATIAL CROWDSOURCING 1293

The ALNS algorithm proposed in the paper is based on the choose using roulette wheel selection based on their past per-
ALNS heuristic described by Ropke et al. [32], which is an formances. Finally, the acceptance criterion from simu-
extension of the LNS heuristic [37]. In general, ALNS is a lated annealing is used to check whether the new adjusted
local search framework in which several competing removal solution s’ should be accepted. Specifically, if the cost of
and insertion heuristics are picked at random with adaptive the new solution s’ is less than the current solution s, then
selection probabilities to modify the current solution. Due s’ is unconditionally accepted (lines 9 and 10). Otherwise,
to the diversity of large neighborhoods, ALNS will explore the probability of acceptance of s’ is p (lines 12). Simulated
large parts of the solution space in a structured way. annealing uses a temperature T that determines the proba-
Compared to LNS, ALNS has the ability to get away from a bility of accepting a non-improving solution, and T is
local minimum based on the search framework, e.g., simu- updated after each iteration (lines 16-18).
lated annealing and Tabu search.
Note that BD gets the local optimal solution iteratively 4.3.1 Request Removing
rather than the global optimal solution, since the combina-
In the O-OTOD problem, the more number of delivered
tion of multiple requests is not considered. Obviously, we
requests by each taxi, the less value of the objective function
can solve the O-OTOD as the combination optimization
of the problem. Therefore, it is reasonable to remove
problem to obtain the optimal solution. However, the route
requests delivered by one of selected taxis. This section
planning of taxis and many constraints of requests make it
introduces three heuristics to select requests for removal.
difficult to obtain the optimal solution. Therefore, ALNS, as
(1) Random Removal (RR). RR randomly selects a taxi from
a feasible way, is applied to optimize the initial solution,
all available taxis delivering food packages, and removes
which is one of the most successful metaheuristic approaches
some requests delivered by the selected taxi. Although RR
for a broad range of routing problems.
is so simple that seldom improves the solution, it can diver-
sify the search.
Algorithm 1 Adaptive Large Neighborhood Search (2) Worst Removal (WR). We propose WR to remove some
(ALNS) requests delivered by the worst taxi which delivers the min-
Input: Initial solution s, T , Tmax , a imum number of food packages among all routed taxis. To
Output: Best solution s . avoid situations where the same requests are removed over
and over again, we randomize the WR with the degree of
1: Initialize best solution s s randomization controlled by the parameter p.
2: while stopping criteria not met do (3) Shaw Removal (SR). The Shaw removal heuristic was
3: j 0 proposed by Shaw [37], and it is slightly modified to suit
4: set mi ; "i to 0 the O-OTOD problem in this section. Note that the number
5: while j < segment size do of requests delivered by the taxi cannot completely reflect
6: choose a destroy neighborhood N  the utility of the taxi. Therefore, SR removes some requests
7: choose a repair neighborhood N þ delivered by the taxi with lower utility. Here, we define the
8: generate a new solution s0 utility function Uk of taxi k as (19), including two parts with
9: if fðs0 Þ < fðsÞ then different weights W1 and W2 . The first one is the number of
10: set s s0 delivered requests Nk , and the second one is the similarity
11: else between the taxi and other selected taxis, denoted as Rk .
12: set s s0 with probability p ¼ expððfðs0 Þ  fðsÞÞ=T Þ X
13: if fðsÞ < fðs Þ then Uk ¼ W1  Nk þ W2  Rk ¼ W1  Nk þ W2  R :
i2K=k ik
14: set s s, Tb T (19)
15: update mi ; "i
16: T aT In particular, we compute the similarity of two taxis by
17: if T < 0.01 then using the relatedness measure Rðk1 ;k2 Þ , defined as (20). The
18: Tb 2  Tb , T minfTb ; Tmax g lower Rðk1 ;k2 Þ means the more related two taxis. The related-
19: update weights wi ness measure consists of two terms between two taxis: a dis-
20: return s tance term including the current location of the taxi, the
pick-up and drop-off locations of the passenger, and a time
Since the objective of the O-OTOD problem is to mini- term representing the pick-up time of the passenger. Two
mize the number of selected taxis, ALNS improves the ini- terms are weighted using weights W3 and W4 . Moreover,
tial solution based on the food requests delivered by the the distance and time are normalized by Dis and T 0 sepa-
taxi. Assuming that an initial solution is obtained by the rately. Note that we set Rðk1 ;k2 Þ ¼ 1 when the taxi k1 and k2
heuristic algorithm, ALNS then adjusts the current solu- are the same one.
tion until a stop criteria is met. The ALNS with simulated
annealing as a local search framework is presented in Dðk1 ;k2 Þ Tðk ;k Þ
Rðk1 ;k2 Þ ¼ W3  þ W4  1 2
Algorithm 1, where lines 2–19 form the main loop of simu- Dis T
lated annealing. In each iteration of the main loop, it ðd1 ðk1 ; k2 Þ þ d2 ðk1 ; k2 Þ þ d3 ðk1 ; k2 ÞÞ tðk1 ; k2 Þ
includes two parts: one is choosing one destroy neighbor- ¼ W3  þ W4  :
Dis T0
hood (line 6) to remove a number of requests from the (20)
current solution s, and the other is choosing one repair
neighborhood (line 7) to reinsert these requests into the 4.3.2 Request Inserting
current routes of taxis again to repair the initial solution This section describes three insertion methods to plan taxis
and generate a new solution s’ (line 8). Note that an adap- routes. Note that the taxi is not allowed to pick up or deliver
tive layer stochastically controls which neighborhoods to food during the riding time of the passenger.

uthorized licensed use limited to: NATIONAL INSTITUTE OF TECHNOLOGY TIRUCHIRAPALLI. Downloaded on August 20,2022 at 13:10:38 UTC from IEEE Xplore. Restrictions appl
1294 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 18, NO. 6, JUNE 2019

(1) Sequential Insertion (SI). Given a route s of the taxi and iteration j in that segment k, the scores of both the used
a food package request needed to be delivered, an easy and removal and insertion heuristics are updated by the same
intuitive way to plan the taxi route is sequentially inserting number, depending on the solution found in this iteration.
the request after other delivered requests. More precisely, when a heuristic i is used at a given iteration
(2) Best Insertion (BI). BI seeks out the best position from j, its score at iteration j þ 1 is updated as (23):
all available positions in the route s to insert the request. 8
The best position is the one with the minimum increase in >
> s 1 if a new best solution is produced
>
< s if the solution is better than the current one
the total distance while meeting the constraints of food and jþ1 j 2
mi ¼ mi þ
the passenger. >
> s 3 if the solution is accepted;
>
:
(3) Regret Insertion (RI). The regret insertion heuristic tries but is worse than the current one :
to circumvent the problem by incorporating a kind of look-
(23)
ahead information when selecting the request to insert,
which has been used in [32]. Let Dfik denote the change in
4.3.4 Acceptance and Stopping Criteria
the objective value incurred by inserting request i into its
best position in the kth cheapest route for request i. We To avoid getting trapped in a local minimum, we not only
define a regret value cki as cki ¼ Dfik  Dfi1 . For example, c2i accept solutions that are better than the current solution,
is the difference in the cost when inserting request i in its but sometimes we also accept worse solutions. Therefore,
best route and its second-best route respectively. In each we use acceptance criteria from simulated annealing(SA) [38].
Specifically, if the cost of new solution s0 is less than current
iteration, RI (regret-k) chooses the requestPi from unselected
solution s, s0 is unconditionally accepted. Otherwise, we
requests that maximizes i ¼ arg maxf kj¼2 ðDfij  Dfi1 Þg, 0
and inserts request i at its minimum cost position. In con- accept s0 with probability p ¼ eðfðs ÞfðsÞÞ=T , where f(s) is the
trast with basic greedy heuristic, the regret-k heuristic could objective value of solution s and T > 0 is the temperature.
discover earlier that possibilities for inserting a request T is initialized with Tstart , depending on the initial solution.
become limited, and avoid leaving bad insertions for later. The start temperature Tstart is set such that a solution that is
w% worse than the initial solution is accepted with probabil-
4.3.3 Selection Principle and Adaptive Weight ity 0.5. In every iteration, T is updated as follows: T ¼ c  T ,
Adjustment where c is the cooling rate ð0 < c < 1Þ.
Because the O-OTOD problem is a tightly constrained
In our ALNS algorithm, instead of selecting one removal
problem, it is very easy to be trapped in local optima. Thus,
and one insertion, we use all removal and insertion heu-
the temperature is increased when the current temperature
ristics throughout the entire search, because alternating
is lower than 0.01 to help the search escape from the trap.
between different removal and insertion heuristics could
More specifically, we use Tb to record the temperature
diversify the search and give us robust heuristic overall.
when finding the best solution. When the temperature is ris-
Thus, at each iteration of the ALNS, we use roulette wheel
ing, we double the Tb first and then set T as Tb . To avoid the
selection principle to choose the heuristic based on assigned
search to restart from a randomly scratched solution, we
weights. Note that the removal and insertion heuristics are
limit the temperature T to Tmax .
selected independently. Assuming that there are n heuris-
Considering of the timeliness of delivering food pack-
tics with weights wik at iteration k, and we define Pik as the
ages, we prefer to get good results in a short time rather
probability of choosing heuristic i as (21).
than optimal solutions in a long time. Therefore, the ALNS
wik algorithm terminates the optimization when one of the
Pik ¼ Pn : (21) following stopping criteria is met: the maximum number of
j¼1 wjk
iterations g max has been reached; t iterations have been per-
In general, the weights of different heuristics should rep- formed without improving the best known solution; the
resent the performance of the heuristic, for instance, a high time tlimit allowed to the algorithm is elapsed.
value corresponds to a successful heuristic. We introduce
an adaptive weight adjustment procedure to automatically 5 THE D-OTOD PROBLEM
adjust weights, defined as (22): 5.1 Problem Formulation
mi Due to the insufficient quantity of taxis that frequently carry
wi;kþ1 ¼ ð1  rÞwik þ r : (22) passengers between the restaurant and user areas, taxis are
"i
required to deliver the food specially without taking pas-
The search is divided into time segments of 100 itera- sengers in D-OTOD. The optimization objectives are to mini-
tions. At the end of each segment, new weights for the mize the number of selected taxis and the total movement
removal and insertion heuristics are updated. In the first distance. Note that it is different from the O-OTOD problem
segment we can set weights by hand, such as all heuristics from the following aspects. First, the taxis in D-OTOD do
equally. The weight of heuristic i for the next segment k þ 1, not need to carry passengers. Second, the income of the taxi
i.e., wi;kþ1 , is based on the weight of the previous segment k, driver that only delivers the food should exceed the cost of
and the reaction factor r controls how quickly the weight- the taxi which mainly depends on the traveling distance.
adjustment algorithm reacts to changes in the effectiveness We assume that there are m available taxis and n food
of the heuristics. "i is the number of times attempted to use orders needed to be delivered. The total number of requests
heuristic i in segment k, and a specific score obtained in this needed to be served is m. Then the D-OTOD is defined on a
segment is mi . complete undirected graph G ¼ ðV; EÞ, where V ¼ V f [ V tc .
At the start of each segment in the ALNS heuristic, the Let FDk be the set of requests delivered by taxi k, and
scores of heuristics are initialized at zero. After each qk ¼ jFDk j is the number of requests in set FDk . The

uthorized licensed use limited to: NATIONAL INSTITUTE OF TECHNOLOGY TIRUCHIRAPALLI. Downloaded on August 20,2022 at 13:10:38 UTC from IEEE Xplore. Restrictions appl
LIU ET AL.: FOODNET: TOWARD AN OPTIMIZED FOOD DELIVERY NETWORK BASED ON SPATIAL CROWDSOURCING 1295

formulation of the D-OTOD is as follows: 5.3 Adaptive Large Neighborhood Search (ALNS)
X X X Algorithms
min tc Xijk (24) ALNS is proposed to improve the feasible solution of the
k2K i2V j2V
D-OTOD. Unlike O-OTOD, D-OTOD not only minimizes
X X X the number of selected taxis, but also minimizes the total
min k2K i2V tc j2V
dij Xijk (25) movement distance. Therefore, compared to O-OTOD,
ALNS in D-OTOD is different in two aspects. On one hand,
Subject to: when choosing the requests in the removal method, we
X X select q requests from multiple different taxis one by one
k2K j2V f
Xijk ¼ 1 8i 2 V fo (26) instead of one taxi. On the other hand, taxi route planning
X X considers different objectives.
j2V f
Xijk  j2V f
Xj;iþn;k ¼ 0 8i 2 V fo ; 8k 2 K (27) In general, ALNS in D-OTOD first removes q requests
from the current solution, then reinserts those requests in the
X adjusted solution again. Note that the size of the neighbor-
j2V fo
X2nþk;j;k  1 8k 2 K (28)
hood depends on the value of parameter q. Obviously, the
X larger value of q is, the easier it is to get the different solution
i2V
Xi;2nþk;k ¼ 0 8k 2 K (29) in the bigger search space. However, the search space will
X X X X increase dramatically with the increasing of q, and the pro-
i2V fo j2V f
Xijk  i2V fd j2V f
Xijk ¼ 1 8k 2 K; qk > 0 cess of insertion is going to be slower. To get the robust
result, the number of requests to be removed is determined
(30)
randomly in each iteration. This number, q, is chosen in the
X X interval 4  q  min(100, ’n), where n is the total number of
Xijk Xjik ¼ 0 8j 2 V fo ; 8k 2 K (31)
i2V i2V requests and ’ is a predetermined parameter. Notice that the
  local search framework of ALNS in D-OTOD is similar to the
t jk  t ik þ tij þ si Xijk 8i; j 2 V 8k 2 K (32) ALNS framework in O-OTOD, so we just emphasize the dif-
ference in request removing and inserting in this section.
tsi  t ik < t iþn;k  tei 8i 2 V fo ; 8k 2 K (33)
X X 5.3.1 Requests Removing
Dk ¼ d X 8k 2 K
j2V ij ijk
(34)
i2V Four removal methods are introduced in this section: Ran-
X dom Removal(RR), Worst Removal(WR), Shaw Removal (SR)
Cf  l
i2FDk i
 Cp  Dk 8k 2 K (35) and One-route Remaval(OR). Specifically, RR randomly
selects q requests to remove, WR removes some worst
Xm
q ¼n (36) requests with high cost Cik one by one, SR removes some
k¼1 k similar requests, and OR selects a routed taxi at random
and removes all requests delivered by this taxi.
Xijk 2 f0; 1g 8i; j 2 V; 8k 2 K: (37) We define the similarity Rði; jÞ between requests i and j in
The objective functions (24) and (25) minimize the num- view of three factors as (39). The first one is the distance
ber of selected taxis and the total distance. Constraints (34) between two requests including the origin and destination of
and (35) ensure that the income of the taxi only delivering the request. The second one is the time for pickup and deliv-
food exceeds the income to carry people in the same dis- ery. The third one P ði; jÞ considers whether two requests are
tance. Constraint (36) defines that all food delivery tasks are delivered by the same taxi. P ði; jÞ ¼ 0 if the taxis delivering
completed. Similar to the O-OTOD, we propose the two- requests i and j are the same one, otherwise P ði; jÞ ¼ 1: Three
stage method to solve D-OTOD including the construction factors are weighted using weights W3 ; W4 and W5 .
algorithm and ALNS algorithm.
R ði; jÞ ¼ W3  Dði; jÞ þ W4  T ði; jÞ þ W5  P ði; jÞ
5.2 The Construction Algorithm ¼ W3  ðdo ði; jÞ þ dd ði; jÞÞ=Disþ (39)
This section obtains the initial solution of D-OTOD by the W4  ðjto ði; jÞj þ jtd ði; jÞjÞ=T þ W5  P ði; jÞ
heuristics similar to the O-OTOD. Note that there are two
main differences between the construction algorithms of 5.3.2 Requests Inserting
O-OTOD and D-OTOD problems. First, the method to plan
the taxi routes takes account of different constraints. We propose three methods to insert requests in the routes of
Second, the criterion to select the best taxi to deliver the taxis: Sequential Insertion (SI), Best Insertion (BI) and Regret
food considers different objective functions. In view of two Insertion (RI). Unlike the insertion method of O-OTOD, the
objective functions of D-OTOD, the cost function Cik of the solution of insertion method in D-OTOD just needs to sat-
request i is defined in (38). It includes two aspects with dif- isfy the constraints of food delivery.
ferent weights: the increased number of taxis when request
i is inserted in the route of taxi k, and the increased distance
6 EVALUATION
after inserting request i. Dis is the normalization for the 6.1 Datasets and Experiment Design
distance. 6.1.1 Experiment Datasets
We use three kinds of real-world datasets (taxi trajectories,
Cik ¼ W1  DðNik Þ þ W2  DðDik Þ=Dis
restaurant information and cell tower data) for evaluation,
¼ W1  ðNþi ðsÞ  N ðsÞÞ þ W2  ðDþi ðsÞ  DðsÞÞ=Dis: which are from the city of Chengdu, China. Specifically, the
(38) taxi trajectories data involves 10,000 taxis and contains

uthorized licensed use limited to: NATIONAL INSTITUTE OF TECHNOLOGY TIRUCHIRAPALLI. Downloaded on August 20,2022 at 13:10:38 UTC from IEEE Xplore. Restrictions appl
1296 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 18, NO. 6, JUNE 2019

Fig. 4. The statistics of driving time and distance distributions.


Fig. 3. Distributions of restaurants and user areas.

the information of taxis’ locations and passenger requests. represents one restaurant area. Therefore, we can compute
The restaurant data includes the information of location, the interaction pattern between the user area and restaurant
food and sales. The data of cell towers depicts the number area based on the taxi trajectory dataset and the historical
of calls at each cell, which is used to simulate the distribu- sales information of restaurants. For example, if there are
tion of users, and the covering area of each cell represents some taxis carrying passengers from the restaurant area to
one user area. Fig. 3 shows the distributions of restaurants user area during each time period (e.g., each 10 minutes
and user areas in the datasets. between 10:00 and 13:00), and the number of taxis is no
less than the number of requirements to deliver the food,
then we can say that the interaction is frequent. Otherwise it
6.1.2 Experiment Design
is infrequent. Specifically, the number of food delivery
(1) Taxi data analysis. The original taxi routes to serve pas- requirements depends on the historical sales volumes
sengers in the O-OTOD is the main factor affecting the food between the restaurants area and the user area.
delivery. Therefore, it is necessary to analyze taxi trajecto-
ries in advance. We analyze the data of 10,000 taxis in one 6.2 Experiment Setups
month, and the statistics of driving time and distance distri-
butions are shown in Fig. 4. We can find that the driving 6.2.1 Evaluation Setups
time between 5 and 25 minutes occupies the most percent- In the OTOD service, whether the food is delivered on time
age, and it is reasonable to deliver fresh food in 30 minutes is the main factor affecting user experience. In order to
in view of users’ experience. Moreover, the moving distance achieve this in FooDNet, we require users to order the food
between 1 and 9 kilometers occupies the most percentage, in advance. Considering the quality of food, we assume that
which means that the taxi can get to the most places of the the time duration between restaurants preparing food and
downtown to deliver food. Therefore, we can conclude that taxi drivers delivering food to users should be less than
it is feasible to deliver food by taxis. 30 minutes for hot food or 60 minutes for cold food respec-
(2) Food-delivery requests simulation. Since the dataset of res- tively. Moreover, to predict the delivery time of taxis, we
taurants do not contain the specific information of the food need to determine the delivery distance and the speed of
delivery requests, we simulate the information of food taxis. Here, we simply calculate the Manhattan distance
requests based on the distribution of users and historical sales between the locations of the restaurants and users and set
information of restaurants. Note that the number of calls at the speed of taxis to 50km/h, since the information mining
each cell can reflect the distribution of users in the city. There- taxi data and road network is not the main work in this
fore, we assume that the total number of take-out food orders paper, which will be studied in our future work. In general,
on one day in the city is known, so the number of food orders it is improper to allocate the delivery task as long as a food
in each user area (i.e., the cell tower) can be computed, which delivery request appears, which could waste the system
is proportional to the number of calls at each cell. Then, these resource. So each time we allocate a number of delivery
food delivery requests in each user area are assigned to each tasks that appears in the system during TT minutes (e.g.,
restaurant in the region based on the popularity of each res- 10 minutes). Note that TT is the constant in the following
taurant. In general, the sales of restaurants can reflect the pop- experiments, and we will study the variable of TT consider-
ularity of restaurants. Thus, we use the ratio of restaurants’ ing some complicated situations in our future work.
sales in one month to represent their popularity. With the
known total number of food delivery requests of the restau- 6.2.2 Evaluation Metrics
rant on one day, we can simulate the order time of food (1) The number of selected taxis. Given the fixed number of
requests in each restaurant based on Gaussian distribution [39]. food delivery requests, the less number of selected taxis to
For example, we break the working time into multiple sec- deliver food, the more income of each taxi driver can get,
tions by ten-minute blocks, and compute the number of which could attract more drivers to participate.
requests at different time with Gaussian distribution. Finally, (2) Waiting time of passengers. In O-OTOD, the waiting
we can get a sequence of food delivery requests in advance time of passengers is the extra time that taxis spend to
which should arrive as a data stream in one day. pick up the food, which is calculated in (40). PT ðR1 ðpi ;
(3) Area interactions. In order to simulate the food delivery ff1 ; f2 . . . fi . . .gÞÞ is the pick-up time to take passenger pi
of O-OTOD and D-OTOD problems respectively, we define along the route R1 with delivering food as well, and
two interaction patterns between user and restaurant areas: PT ðR2 ðpi ÞÞ is the pick-up time along the route R2 only deliv-
frequent interaction and infrequent interaction. In particular, ering the passenger.
the area covered by each cell tower can represent the user
area. The restaurant area is determined by the clusters of WT ðpi Þ ¼ PT ðR1 ðpi ; ff1 ; f2 . . . fi . . .gÞÞ  PT ðR2 ðpi ÞÞ: (40)
restaurants based on k-means method [40], and each cluster

uthorized licensed use limited to: NATIONAL INSTITUTE OF TECHNOLOGY TIRUCHIRAPALLI. Downloaded on August 20,2022 at 13:10:38 UTC from IEEE Xplore. Restrictions appl
LIU ET AL.: FOODNET: TOWARD AN OPTIMIZED FOOD DELIVERY NETWORK BASED ON SPATIAL CROWDSOURCING 1297

(3) Moving distance of taxis. In D-OTOD, the moving dis- TABLE 2


tance of taxis is the chief indicator which determines the Performance Comparison of Different Algorithms
delivery cost. Therefore, the moving distance should be as for the O-OTOD Problem
short as possible in D-OTOD. Note that the moving distance
The number of taxis Running time(s)
is not important in O-OTOD, since taxis must take passen-
gers, and the waiting time of passengers can reflect the extra Data set D1 D2 D3 D1 D2 D3
distance for delivering food. FTSI 98 111 107 5 7 5
FTBI 42 54 30 6 10 4
6.2.3 Baseline Methods BTSI 98 97 100 29 28 26
BTBI 35 34 29 61 58 60
In our evaluations, we provide some baselines, including six BDSI 97 96 98 34 49 30
construction algorithms and twelve LNS algorithms. BDBI 31 30 28 89 81 78
(1) The construction algorithm. We propose FTSI, FTBI, FTSI-WR 39 38 30 40 55 59
BTSI, BTBI, BDSI and BDBI to obtain initial solutions of the FTBI-WR 33 28 22 40 42 50
BTSI-WR 36 38 29 69 63 71
problem. For example, FTSI means that it selects the proper BTBI-WR 30 28 20 92 95 106
taxi for the food-delivery requests by using FT and plans BDSI-WR 35 36 30 76 65 63
the new taxi route to deliver food by using SI. BDBI-WR 27 27 19 116 126 120
(2) The LNS algorithm. LNS optimizes the initial solution FTSI-SR 35 37 30 63 61 64
by selecting only one removal and insertion methods to FTBI-SR 32 27 21 62 67 128
remove and reinsert requests continually. For example, BTSI-SR 31 38 27 76 74 66
BTBI-SR 32 27 19 92 104 153
BDBI-SR indicates that SR and BI methods are used to BDSI-SR 30 34 26 92 93 86
improve the solution obtained by BDBI. BDBI-SR 25 21 19 128 136 148
ALNS 18 20 17 1091 790 934
6.2.4 Parameter Tuning
To determine the parameter setting of our algorithm, we
adopt the parameter tuning strategy proposed in [19]. Start- the performance of ALNS only improves about 5 percent in
ing from a reasonable parameter setting found during the D2. In addition, the running time of ALNS is much larger
implementation of our method, we can refine the setting of than others, because ALNS iteratively searches more neigh-
each parameter constantly. Specifically, every time only one bors by the local search framework. For the LNS (e.g., BDBI-
parameter is adjusted, while the rest are being fixed. Then, SR), it prematurely stops the search in terms of stopping crite-
we evaluate the objective values for each parameter. Finally, rion because it traps in local optima. In general, ALNS has the
the best value is kept as the final setting for the respective potential to get better solution and it is more robust than LNS,
parameter, and we subsequently proceed with tuning the because the adaptive mechanism in ALNS is able to find a
next parameter. For instance, we can determine different sensible set of weights. Notice that the running time of ALNS
weights of the cost function by using parameter tuning in our experiments is much larger because all experiments
strategy. The temperature of SA has a significant impact on were performed on the ordinary computer. In real applica-
the solution because of the highly constrained problem. tions, we will consider to use distributed computing to obtain
Thus, the value w and c are also determined through tuning solutions as soon as possible in terms of time efficiency.
strategy, and w ¼ 0:1 and c ¼ 0:99 significantly lead to
the best results through preliminary tests. Moreover, the 6.3.2 Different Number of Food-Delivery Requests
method is not sensitive to other parameters, so they are set In general, the number of food delivery requests appearing
to the suggested values. For example, Tmax ¼ 25 is large in the system at different time durations is hard to predict
enough to accept a quite deteriorating solution, and considering various situations. Therefore, it is necessary to
ðs 1 ; s 2 ; s 3 Þ is set to (15,10,5) [41]. evaluate the performance of FooDNet to serve different
number of requests. In this experiment, we choose one con-
6.3 Experimental Results of O-OTOD struction algorithm (e.g., FTBI) and one LNS algorithm (e.g.,
6.3.1 Different Algorithms FTBI-SR) as baselines.
As shown in Fig. 5a, the number of selected taxis grows
Table 2 presents the performance comparison among differ-
gradually with the increasing number of requests. The
ent methods under three data sets (i.e., D1, D2, D3), each of
results show that the ALNS selects the smallest number of
which contains 200 food orders needed to be delivered. We
taxis compared to other algorithms, and it becomes better as
assume that each passenger could wait up to 5 minutes.
the number of requests increases. Fig. 5b illustrates that
From Table 2, we can find that construction algorithms with
passengers need to wait some time when taxis pick up the
BD outperform FT and BT, because BD chooses the best
food, which is no more than the maximum waiting time. In
delivery request from all un-delivered food requests in each
general, we can conclude that our proposed algorithm could
iteration. In addition, it is clear that the number of selected
get the better result even though the number of delivery
taxis in the construction algorithms with BI is less than that
requests increases continuously. Moreover, the system
with SI. Moreover, we can find that LNS can improve the
could prepare a lot of available taxis in advance to serve a
original solution obtained by the construction algorithm.
large number of delivery requests in some special time peri-
For the removal method in LNS, we can see that SR outper-
ods (e.g., the festival).
forms WR to some extent.
We can find that ALNS shows different performance in
different data sets. For instance, the number of taxis 6.3.3 Different Number of Iterations
selected by ALNS reduces by up to 28 percent on average Obviously, the performance of ALNS and LNS depends on
compared to the best solution obtain by LNS in D1. However, the number of iterations, because they adjust the current

uthorized licensed use limited to: NATIONAL INSTITUTE OF TECHNOLOGY TIRUCHIRAPALLI. Downloaded on August 20,2022 at 13:10:38 UTC from IEEE Xplore. Restrictions appl
1298 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 18, NO. 6, JUNE 2019

Fig. 5. Performance comparison under different number of requests.

Fig. 7. Performance comparison under different delivery time.

problem in different distributions of food delivery requests.


In this work, we choose three typical distributions of the food
delivery requests. CC represents the compact distributions of
both restaurant areas and user areas, CS represents the
compact distribution of restaurant areas and the scattered dis-
tribution of user areas, and SS represents the scattered distri-
butions of both restaurant areas and user areas.
Table 3 summarizes the computational results of ALNS.
We can find that the number of selected taxis in SS is largest
among three distributions. Since the distance between food
Fig. 6. Performance comparison under different number of iterations. requests in SS is longer than other two distributions, and
taxis need to move longer distance and spend more time to
solution gradually until stopping criterion is met. Therefore, pick up and deliver food. In general, the number of selected
we compare the performance of ALNS and LNS under differ- taxis relies on the distribution of requests, and more number
ent number of iterations. Note that the solutions of ALNS and of selected taxis in SS areas, less number of food requests
LNS without iteration are the original solutions obtained by delivered by each drivers. So we need to design different
the construction algorithm. From Fig. 6, we can see that the incentive mechanisms to attract drivers to participate in dif-
number of selected taxis decreases with the increasing of the ferent areas, which will be studied in our future work.
number of iterations. In addition, although the number of
taxis selected by ALNS is less than LNS when the number of 6.3.6 Different Waiting Time of Passengers
iterations is more than 300, ALNS performs worse than LNS In this experiment, we set three maximum waiting time of
when the number of iterations is less than 300. The main rea- passengers: 5, 10, and 15 minutes. From Table 4, we find
son is that the local search framework in the ALNS accepts that the number of taxis decreases with the increase of the
some worse solutions in order to escape from local minima. maximum waiting time, because the taxi has longer time to
Therefore, we can conclude that LNS may get general solu- pick up more food packages. The actual waiting time of the
tions in a short time, but ALNS can find good results in a long passenger is less than the maximum waiting time, especially
time. In general, we can select appropriate algorithm accord- when the maximum waiting time is 15 minutes. The main
ing to different requirements. reason is that the routes of taxis not only need to satisfy the
time constraints of passengers, but also need to satisfy the
6.3.4 Different Delivery Time time constraints of delivery requests.
The state of taxis is the main factor that affects the food
delivery in FooDNet. In general, the state of taxis to serve 6.3.7 Extra Income of Users
passengers consists of two stages: the peak period and non- This section analyzes the income of users, which is a main
peak period. In this experiment, we select four typical time factor influencing the feasibility of our proposed food-
to deliver food: 11:30 and 17:30 during the non-peak period, delivery system. For simplicity, we just compute the income
and 12:00 and 18:00 during the peak period. of taxis, and the discount for passengers in terms of the
The peak period means that there are more available taxis to waiting time is not considered in this experiment.
pick up passengers. Therefore, the number of taxis to deliver Let Cr denotes the delivery cost per food request, and n
food at 12:00 is less than 11:30, and the number of selected taxis denotes the number of food requests. The total delivery cost
at 18:00 is less than 17:30, as shown in Fig. 7. So we can con- thus can be represented as Cr  n. We further use Dt to
clude that the result of the O-OTOD problem highly depends denote taxis’ total distance for taking passengers and food
on the original taxi routes carrying passengers. From this packages, and Dp to denote the distance only for taking pas-
experiment, we can see that the number of selected taxis at sengers, so the additional distance of taxis for delivering
lunch/dinner time (e.g., 12:00 and 18:00) is less than other time food is (Dt-Dp). We assume that the income of taxis for tak-
(e.g., 11:30 and 17:30). Therefore, it is reasonable to deliver ing a passenger is Cp per kilometers. Therefore, the extra
food at mealtime by taxis when taking passengers in O-OTOD. income of taxis is Cr  n  ðDt  DpÞ  Cp, which means the
additional income relative to the income for carrying pas-
6.3.5 Different Distributions of Food-Delivery Requests senger in the same movement distance. In general, we think
The distributions of restaurants and users in various areas or taxi drivers are willing to deliver food if the extra income is
cities are different. Therefore, it is necessary to investigate the greater than 0.

uthorized licensed use limited to: NATIONAL INSTITUTE OF TECHNOLOGY TIRUCHIRAPALLI. Downloaded on August 20,2022 at 13:10:38 UTC from IEEE Xplore. Restrictions appl
LIU ET AL.: FOODNET: TOWARD AN OPTIMIZED FOOD DELIVERY NETWORK BASED ON SPATIAL CROWDSOURCING 1299

TABLE 3 TABLE 6
Performance Comparison under Different Distributions Performance Comparison of Different Algorithms
for the D-OTOD Problem
Requests’ distribution The number of taxis Waiting time(m)
The number of taxis Total distance (km)
CC 18 3.78
CS 21 4.04 Data set D1 D2 D3 D1 D2 D3
SS 23 4.83 FTSI 110 100 117 1010 1158 1108
FTBI 22 37 54 188 336 491
BTSI 57 47 59 489 505 514
TABLE 4 BTBI 21 26 39 148 198 317
Performance Comparison under Different BDSI 43 38 41 352 350 350
Waiting Time BDBI 14 18 31 106 134 266
FTSI-WR 48 36 49 393 348 416
Maximum waiting The number Waiting FTBI-WR 20 30 35 123 261 296
time(m) of taxis time(m) BTSI-WR 37 30 38 224 215 238
BTBI-WR 20 22 33 148 164 263
5 22 4.23 BDSI-WR 32 26 29 209 163 179
10 19 6.05 BDBI-WR 12 16 28 74 133 236
15 17 7.38 FTSI-SR 47 35 47 401 352 399
FTBI-SR 19 28 34 159 296 313
BTSI-SR 35 30 37 213 213 252
TABLE 5 BTBI-SR 20 21 32 148 198 317
Results of ALNS on Different Number BDSI-SR 32 26 29 206 162 179
of Requests BDBI-SR 12 16 23 76 133 158
ALNS 10 11 10 61 81 73
The number of requests 100 200 300
The number of taxis 9 20 36
Total distance (km) 76 122 239 TABLE 7
Passengers’ distance (km) 23 51 83 Performance of ALNS on Different Values of ’
Extra income (¥) 341 787 1032
Extra income per taxi (¥) 37.8 39.3 28.6 ’ 0.1 0.2 0.3 0.4 0.5
The number of taxis 23 17 16 13 14
Total distance (km) 156 122 128 91 102
In this experiment, we set Cr ¼ 5 and Cp ¼ 3 according
to the practical situation. The results of ALNS on different
number of requests are shown in Table 5. We can see that iteration. Table 7 shows the influence of ’. Generally speak-
extra income per taxi is greater than 0 on all three data sets, ing, the larger scale of the neighborhood, the higher possi-
so we can conclude that it is reasonable to select taxis to bility to find the optimal solution. Therefore, we can see
deliver food when they carry passengers. In addition, extra that the method is not able to move very far in each itera-
income per taxi has no obvious change in different number tion, and has a higher chance to be trapped in the local
of requests, because of the time constraints of passengers minima when ’ is small. However, the performance of
(e.g., the maximum waiting time), which means the taxis the ALNS becomes worse when ’ is larger because a
cannot accept many requests. larger number of q stretches the capabilities of our inser-
tion heuristics. The insertion methods work fairly well
6.4 Experimental Results of D-OTOD when they must insert a limited number of requests into
We study the results of proposed algorithms in terms of a partial solution, but they cannot build a good solution
both the number of selected taxis and the total movement from scratch. In general, ’ ¼ 0:4 is a good choice in our
distance. In general, ALNS for D-OTOD tries to optimize experiment.
the solution in each iteration based on q requests. Therefore,
we study the performance of ALNS under different values 6.4.3 Extra Income of Users
of q controlled by the parameter ’. In addition, we analyze
Table 8 summarizes the results of ALNS on different num-
the income of drivers when they only deliver food, which is
ber of requests. Note that the extra income of taxis means
the main incentive to stimulate more users to participate in.
the additional income related to the income for carrying
passengers within the same movement distance. It is rea-
6.4.1 Different Algorithms
sonable that taxi drivers are willing to deliver food if the
We compare the performance of proposed algorithms under extra income is greater than 0. We can find that the extra
three data sets in Table 6, and each data set includes 200 food income increases with the increasing of the number of
delivery requests. We can see that LNS can improve the bad requests in Table 8. However, the increased number of the
solution obtained by the construction algorithm to some extra income decreases when the number of requests
extent. In addition, the performance of ALNS is superior in becomes large. The reason may be that there are tight time
both number of selected taxis and the total movement dis- constraints for food delivery requests in our system.
tance in comparison to the best result obtained by LNS.

6.4.2 Different Values of q 7 DISCUSSION


We perform the experiments by using parameter tuning In this section, we discuss some issues that are not reported
method to determine the value of the parameter ’, which or addressed in this work due to space and time constraints,
controls how many requests we remove and insert in each which will be considered in our future work.

uthorized licensed use limited to: NATIONAL INSTITUTE OF TECHNOLOGY TIRUCHIRAPALLI. Downloaded on August 20,2022 at 13:10:38 UTC from IEEE Xplore. Restrictions appl
1300 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 18, NO. 6, JUNE 2019

TABLE 8 2018cdqyjsj0024), and the Open Research Fund Program of


Results of ALNS on Different Number of Requests the Shenzhen Key Laboratory of Spatial Smart Sensing and
Services (Shenzhen University).
The number of requests 100 200 300
The number of taxis 10 13 18
Total distance (km) 76 91 117 REFERENCES
Extra income (¥) 272 727 1149 [1] L. Kazemi and C. Shahabi, “Geocrowd: enabling query answering
Extra income per taxi (¥) 27.2 55.9 63.8 with spatial crowdsourcing,” in Proc. 20th Int. Conf. Adv. Geo-
graphic Inform. Syst., 2012, pp. 189–198.
[2] B. Guo, Y. Liu, L. Wang, V. Li, J. Lam, and Z. Yu, “Task allocation
Real-time food delivery. We attempt to support the real- in spatial crowdsourcing: Current state and future directions,”
time food delivery once users order food in our future IEEE Internet Things, vol. 5, no. 3, pp. 1749–1764, Jun. 2018.
work. Based on the predicted movement of taxis and the [3] Z. Yu, F. Yi, Q. Lv, and B. Guo, “Identifying on-site users for social
events: Mobility, content, and social relationship,” IEEE Trans.
predicted time for each restaurant preparing the food, the Mobile Comput., vol. 17, no. 9, pp. 2055–2068, Sept. 2018.
system can compute the food delivery time immediately [4] F. Yi, Z. Yu, H. Chen, H. Du, and B. Guo, “Cyber-physical-social
once the user submits the food order. collaborative sensing: From single space to cross-space,” Frontiers
Large-scale user study. In our work, we solve the food Comput. Sci., vol. 12, no. 4, pp. 609–622, 2018.
[5] B. Guo, H. Chen, Q. Han, Z. Yu, D. Zhang, and Y. Wang, “Worker-
delivery problem with a sequence of simulated food deliv-
contributed data utility measurement for visual crowdsensing
ery requests, while the system does not consider that the systems,” IEEE Trans. Mobile Comput., vol. 16, no. 8, pp. 2379–
requests could appear randomly. Therefore, we intend to 2391, Aug. 2017.
make large-scale user studies over FooDNet, and test [6] L. Wang, Z. Yu, Q. Han, B. Guo, and H. Xiong, “Multi-objective
the performance of the system to solve the dynamic food- optimization based allocation of heterogeneous spatial crowd-
sourcing tasks,” IEEE Trans. Mobile Comput., vol. 17, no. 7,
delivery requests, which will help identify practical issues pp. 1637–1650, Jul. 2018.
and improve our system. [7] B. Guo, H. Chen, W. Nan, Z. Yu, X. Xie, D. Zhang, and X. Zhou,
Incentive mechanism for taxi drivers. We just consider that “TaskMe: Toward a dynamic and quality-enhanced incentive
the incentive of the taxi driver is proportional to the number mechanism for mobile crowd sensing,” Int. J. Hum. Comput. Stud-
of delivered food packages, which does not take into ies, vol. 102, no. 6, pp. 14–26, 2017.
[8] S. Ma, Y. Zheng, and O. Wolfson, “T-share: A large-scale dynamic
account other factors. As for future work, we will define the taxi ridesharing service,” in Proc. IEEE 29th Int. Conf. Data Eng.,
incentive mechanism for the taxi driver in view of different 2013, pp. 410–421.
situations, such as different time periods. [9] C. Chen, D. Zhang, X. Ma, B. Guo, L. Wang, Y. Wang, and E. Sha,
Practical applications. Food is delivered by taxis in FooD- “Crowddeliver: Planning city-wide package delivery paths lever-
Net, which is beneficial to the long-distance food delivery. aging the crowd of taxis,” IEEE Trans. Intell. Transp. Syst., vol. 18,
no. 6, pp. 1478–1496, Jun. 2017.
However, it may not be a cost-effective way for taxis when [10] C. Chen, S. Jiao, S. Zhang, W. Liu, L. Feng, and Y. Wang,
delivering the short-distance food packages. Therefore, to “TripImputor: Real-time imputing taxi trip purpose leveraging
apply our work in practice, it is important to study the com- multi-sourced urban data,” IEEE Trans. Intell. Transp. Syst.,
plementary features and combination issues between the pp. 1–13, Jan. 2018.
[11] Y. Liu, B. Guo, H. Du, Z. Yu, D. Zhang, and C. Chen, “Poster:
long-distance food delivery by FooDNet and the existing FooDNet: Optimized on demand take-out food delivery using
short-distance food delivery systems. spatial crowdsourcing,” in Proc. 23rd Annu. Int. Conf. Mobile Com-
put. Netw., 2017, pp. 564–566.
[12] D. Zhao, X. Li, and H. Ma, “How to crowdsource tasks truthfully
8 CONCLUSION without sacrificing utility: Online incentive mechanisms with
budget constraint,” in Proc. IEEE Conf. Comput. Commun., 2014,
In this paper, we present a novel framework called FooD- pp. 1213–1221.
Net for food delivery by using the existing resources of [13] Y. Zheng, F. Liu, and H.-P. Hsieh, “U-air: When urban air quality
taxis, which can save the human resource, reduce the delivery inference meets big data,” in Proc. 19th ACM SIGKDD Int. Conf.
Knowl. Discovery Data Mining, 2013, pp. 1436–1444.
cost, and improve the delivery efficiency. Specifically, we pro- [14] B. Guo, H. Chen, Z. Yu, X. Xie, S. Huangfu, and D. Zhang,
pose two problems: O-OTOD problem starts from the given “Fliermeet: A mobile crowdsensing system for cross-space public
taxis routes to carry passengers, and then inserts food deliv- information reposting, tagging, and sharing,” IEEE Trans. Mobile
ery requests in the routes. D-OTOD problem only handles Comput., vol. 14, no. 10, pp. 2020–2033, Oct. 2015.
[15] Z. Yu, H. Xu, Z. Yang, and B. Guo, “Personalized travel package
food delivery requests with taxis in idle load, and designs the
with multi-point-of-interest recommendation based on crowd-
optimal taxi routes and schedules for a number of food deliv- sourced user footprints,” IEEE Trans. Human-Mach. Syst., vol. 46,
ery requests with pickup and drop-off points. In addition, the no. 1, pp. 1–23, Feb. 2016.
two-stage method is proposed to solve the above two prob- [16] B. Guo, Q. Han, H. Chen, L. Shangguan, Z. Zhou, and Z. Yu,
lems, which consists of the construction algorithm and the “The emergence of visual crowdsensing: Challenges and opp-
ortunities,” IEEE Commun. Surveys Tutorials, vol. 19, no. 4,
ALNS algorithm. Evaluations based on three real-world data- pp. 2526–2543, Oct.-Dec. 2017.
sets showed that our proposed algorithms could get the better [17] B. Guo, Z. Wang, Z. Yu, Y. Wang, N. Yen, R. Huang, and X. Zhou,
solution compared to the baseline methods. “Mobile crowd sensing and computing: The review of an emerg-
ing human-powered sensing paradigm,” ACM Comput. Surveys,
vol. 48, no. 1, pp. 1–31, 2015.
ACKNOWLEDGMENTS [18] B. Guo, Y. Liu, W. Wu, Z. Yu, and Q. Han, “ActiveCrowd: A
This work is supported by the National Key R&D Program framework for optimized multi-task allocation in mobile crowd-
sensing systems,” IEEE Trans. Hum.-Mach. Syst., vol. 47, no. 3,
of China (2017YFB1001800), the National Natural Science pp. 392–403, Jun. 2017.
Foundation of China (grant nos. 61332005, 61772428, [19] H. Chen, B. Guo, Z. Yu, L. Chen, and X. Ma, “A generic framework
61602067, and 61725205), the National Basic Research Pro- for constraint-driven data selection in mobile crowd photographing,”
IEEE Internet Things J., vol. 4, no. 1, pp. 284–296, Feb. 2017.
gram of China (grant no. 2015CB352400), the Fundamental
Research Funds for the Central Universities (grant no.

uthorized licensed use limited to: NATIONAL INSTITUTE OF TECHNOLOGY TIRUCHIRAPALLI. Downloaded on August 20,2022 at 13:10:38 UTC from IEEE Xplore. Restrictions appl
LIU ET AL.: FOODNET: TOWARD AN OPTIMIZED FOOD DELIVERY NETWORK BASED ON SPATIAL CROWDSOURCING 1301

[20] M. Kwiatkowska, G. Norman, and D. Parker, “Prism 4.0: Verifica- Bin Guo received the PhD degree in computer
tion of probabilistic real-time systems,” in Computer Aided Verifica- science from Keio University, Japan, in 2009,
tion. Berlin, Germany: Springer, 2011, pp. 585–591. and then was a postdoc researcher with Institut
[21] L. Wang, D. Zhang, D. Yang, A. Pathak, C. Chen, X. Han, H. Xiong, Te le
com SudParis, France. He is a professor with
and Y. Wang, “SPACE-TA: Cost-effective task allocation exploiting Northwestern Polytechnical University, China. His
intradata and interdata correlations in sparse crowdsensing,” research interests include ubiquitous computing,
ACM Trans. Intell. Syst. Technol., vol. 9, no. 2, pp. 1–28, 2018. mobile crowd sensing, and human-computer
[22] D. Vigo, “Vehicle routing: Problems, methods and applications,” interaction.
Society for Industrial and Applied Mathematics, Philadelphia, PA,
USA, 2015.
[23] D. Pisinger and S. Ropke, “A general heuristic for vehicle routing
problems,” Comput. Operations Res., vol. 34, no. 8, pp. 2403–2435, 2007.
[24] J. Christiaens and G. Berghe,“A fresh ruin & recreate implementa- Chao Chen received the PhD degree from
tion for the capacitated vehicle routing problem,” 2016. Pierre and Marie Curie University and Institut
[25] R. Masson, F. Lehuede, and O. Peton, “The dial-a-ride problem Mines-Te le
com/Te le
 com SudParis, Evry, France,
with transfers,” Comput. Operations Res., vol. 41, pp. 12–23, 2014. in 2014. He is a professor with the College of
[26] N. Rahmani, B. Detienne, R. Sadykov, and F. Vanderbeck, “A col- Computer Science, Chongqing University, China.
umn generation based heuristic for the dial-a-ride problem,” in His research interests include pervasive comput-
Proc. Int. Conf. Inf. Syst. Logistics Supply Chain, Jun. 2016. ing, social network analysis, urban logistics, and
[27] T. Gschwind and M. Drexl, “Adaptive large neighborhood search data mining from large-scale taxi data.
with a constant-time feasibility test for the dial-a-ride problem,” Dec.
2016.
[28] S. Ma, Y. Zheng, and O. Wolfson, “Real-time cityscale taxi
ridesharing,” IEEE Trans. Knowl. Data Eng., vol. 27, no. 7,
pp. 1782–1795, Jul. 2015. He Du received the bachelor’s degree from North-
[29] B. Li, D. Krushinsky, H. A. Reijers, and T. Van Woensel, “The western Polytechnical University, Xi’an, China. She
share-a-ride problem: People and parcels sharing taxis,” Eur. is currently working toward the PhD degree in the
J. Operational Res., vol. 238, no. 1, pp. 31–40, 2014. School of Computer Science, Northwestern Poly-
[30] T. Curtois, D. Landa-Silva, Y. Qu, and W. Laesanklang, “Large technical University. Her research interests include
neighbourhood search with adaptive guided ejection search for ubiquitous computing and mobile sensing.
the pickup and delivery problem with time windows,” EURO
J. Trans. Logistics, pp. 1–42, 2017.
[31] A. Landrieu, Y. Mati, and Z. Binder, “A tabu search heuristic for
the single vehicle pickup and delivery problem with time win-
dows,” J. Int. Manuf., vol. 12, no. 5-6, pp. 497–508, 2001.
[32] S. Ropke and D. Pisinger, “An adaptive large neighborhood
search heuristic for the pickup and delivery problem with time Zhiwen Yu received the PhD degree from North-
windows,” Transportation Sci., vol. 40, no. 4, pp. 455–472, 2006. western Polytechnical University, Xi’an, China.
[33] P. Farahani, M. Grunow, and H. G€ unther, “Integrated production He is currently a professor and vice-dean with
and distribution planning for perishable food products,” Flexible the School of Computer Science, Northwestern
Serv. Manuf. J., vol. 24, no. 1, pp. 28–51, 2012. Polytechnical University. His research interests
[34] R. Masson, A. Trentini, F. Lehuede, N. Malhene, O. Peton, and cover ubiquitous computing and human-com-
H. Tlahig, “Optimization of a city logistics transportation system puter interaction.
with mixed passengers and goods,” EURO J. Transportation Logis-
tics, vol. 6, no. 1, pp. 81–109, 2017.
[35] J. K. Lenstra and A. Kan, “Complexity of vehicle routing and
scheduling problems,” Netw., vol. 11, no. 2, pp. 221–227, 1981
[36] Y. Bartal, L.-A. Gottlieb, and R. Krauthgamer, “The traveling
salesman problem: Low-dimensionality implies a polynomial
Daqing Zhang received the PhD degree from the
time approximation scheme,” SIAM J. Comput., vol. 45, no. 4,
University of Rome “La Sapienza” and the Univer-
pp. 1563–1581, 2016. sity of L’Aquila, Rome, Italy, in 1996. He is currently
[37] P. Shaw, “Using constraint programming and local search meth- a full professor in the Te  le
com SudParis, Institut
ods to solve vehicle routing problems,” in Proc. Int. Conf. Principles Mines-Te le
 com, Evry, France. His research inter-
Practice Constraint Program., 1998, pp. 417–431. ests include context-aware computing, urban
[38] A. Breedam, “Comparing descent heuristics and metaheuristics
computing, mobile computing, big data analytics,
for the vehicle routing problem,” Comput. Operations Res., vol. 28,
pervasive elderly care, etc.
no. 4, pp. 289–315, 2001.
[39] R. Chhikara and J. Folks, “The inverse gaussian distribution as a
lifetime model,” Technometrics, vol. 19, no. 4, pp. 461–468, 1977.
[40] K. Alsabti, S. Ranka, and V. Singh, “An efficient k-means cluster-
ing algorithm,” Electrical Engineering and Computer Science,
1997. Huadong Ma received the PhD degree in com-
[41] B. Li, D. Krushinsky, T. Woensel, and H. Reijers, “An adaptive puter science from the Institute of Computing
Technology, Chinese Academy of Science,
large neighborhood search heuristic for the share-a-ride prob-
lem,” Comput. Operations Res., vol. 66, pp. 170–180, 2016. in 1995. He is a professor and the director of the
Beijing Key Lab of Intelligent Telecommunications
Software and Multimedia, and executive dean of
Yan Liu received the BE degree from Northwest- the School of Computer Science, Beijing Univer-
ern Polytechnical University, Xi’an, China. She is sity of Posts and Telecommunications, China. His
currently working toward the PhD degree in the current research focuses on multimedia system
School of Computer Science, Northwestern Poly- and networking.
technical University. Her research interests include
mobile crowd sensing and spatial crowdsouring.
" For more information on this or any other computing topic,
please visit our Digital Library at www.computer.org/publications/dlib.

uthorized licensed use limited to: NATIONAL INSTITUTE OF TECHNOLOGY TIRUCHIRAPALLI. Downloaded on August 20,2022 at 13:10:38 UTC from IEEE Xplore. Restrictions appl

You might also like