online multi-skilled task assignment on road...

12
SPECIAL SECTION ON DATA MINING AND GRANULAR COMPUTING IN BIG DATA AND KNOWLEDGE PROCESSING Received September 21, 2018, accepted October 8, 2018, date of publication November 2, 2018, date of current version May 14, 2019. Digital Object Identifier 10.1109/ACCESS.2018.2879331 Online Multi-Skilled Task Assignment on Road Networks YU LIANG 1,2 , WENJUN WU 1 , KAIXIN WANG 1 , AND CHUNMING HU 1 1 School of Computer Science and Engineering, Beihang University, Beijing 100091, China 2 Shen Yuan Honors College, Beihang University, Beijing 100091, China Corresponding author: Chunming Hu ([email protected]) This work was supported in part by the State Key Laboratory of Software Development Environment under Grant SKLSDE-2017ZX-03 and in part by NSFC under Grant 61532004. ABSTRACT With the development of smart phones and online to offline, spatial platforms, such as TaskRabbit, are getting famous and popular. Tasks on these platforms have three main characters: they are in real-time dynamic scenario, they are on the road networks, and some of them have multiple skills. However, existing studies do not take into account all these three things simultaneously. Therefore, an important issue of spatial crowdsourcing platforms is to assign workers to tasks according to their skills on road networks in a real-time scenario. In this paper, we first propose a practical problem, called online multi-skilled task assignment on road networks (OMTARN) problem, and prove that the OMTARN problem is NP-Hard and no online algorithms can achieve a constant competitive ratio on this problem. Then, we design a framework using batch-based algorithms, including fixed and dynamic batch-based algorithm, and we show that how the algorithms update the batch. After that, we use the hierarchically separated tree structure to accelerate our algorithms. Finally, we implement all the algorithms of the OMTARN problem and clarify their strengths and weaknesses by testing them on both synthetic and real datasets. INDEX TERMS Hierarchically separated tree, road networks, spatial crowdsourcing, task assignment. I. INTRODUCTION In recent years, crowdsourcing has attracted industries and enterprises to setup some successful platforms, such as Amazon Mechanical Turks (AMT), 1 oDesk, 2 etc. Moreover, thanks to the development of smart mobile phones and wire- less networks [1], [2], some of these famous crowdsourcing platforms, according to our research, are gradually becoming more based on spatial [3], [4], namely spatial crowdsourc- ing platforms, for example Gigwalk 3 and Gmission. 4 These spatial crowdsourcing platforms allow people to submit or participate in some spatial tasks, such as preparing for a party or repairing houses. TaskRabbit, 5 a typical type of spatial platforms, is used to assign a number of workers to fulfill a certain nearby spatial task, which requires workers to physically move to the location of the spatial task within the road networks and complete it in real-time environment. 1 www.mturk.com 2 www.upwork.com 3 www.gigwalk.com 4 www.gmissionhkust.com 5 www.taskrabbit.com Compared with traditional crowdsourcing platforms [5], these spatial platforms mainly focus on three things about task assignment [3], [4], [6]–[8]. Firstly, these task assign- ments are in a real-time dynamic scenario, so we cannot predict what might happen afterwards. Secondly, some tasks need to be completed by multi-skills workers together. Lastly, in the real-life scenario, the workers’ physical movements to the task are on the road networks, so it is necessary to measure by road-network distance instead of by Euclidean distance. It is noteworthy that there are two types of existing studies on task assignment oriented spatial crowdsourcing [9]–[13]. One is online multi-skilled task assignment problem mea- sured by Euclidean distance [14]. The other is traditional task assignment problem measured by how well a worker matches up a task on road networks [15], [16]. However, no one has taken all these three things into account as a whole. Therefore, we cannot directly use the previous solutions on these plat- forms. We can imagine the following scenario. On a cloudy Saturday morning, Steven forecast that it would rain tonight, so he intended to reinforce his house to make it firm enough to weather the coming storm. His tasks included repairing the VOLUME 7, 2019 2169-3536 2018 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information. 57371

Upload: others

Post on 10-Jul-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

SPECIAL SECTION ON DATA MINING AND GRANULAR COMPUTINGIN BIG DATA AND KNOWLEDGE PROCESSING

Received September 21, 2018, accepted October 8, 2018, date of publication November 2, 2018, date of current version May 14, 2019.

Digital Object Identifier 10.1109/ACCESS.2018.2879331

Online Multi-Skilled Task Assignmenton Road NetworksYU LIANG 1,2, WENJUN WU1, KAIXIN WANG1, AND CHUNMING HU 11School of Computer Science and Engineering, Beihang University, Beijing 100091, China2Shen Yuan Honors College, Beihang University, Beijing 100091, China

Corresponding author: Chunming Hu ([email protected])

This work was supported in part by the State Key Laboratory of Software Development Environment underGrant SKLSDE-2017ZX-03 and in part by NSFC under Grant 61532004.

ABSTRACT With the development of smart phones and online to offline, spatial platforms, such asTaskRabbit, are getting famous and popular. Tasks on these platforms have three main characters: they are inreal-time dynamic scenario, they are on the road networks, and some of them have multiple skills. However,existing studies do not take into account all these three things simultaneously. Therefore, an important issueof spatial crowdsourcing platforms is to assign workers to tasks according to their skills on road networksin a real-time scenario. In this paper, we first propose a practical problem, called online multi-skilled taskassignment on road networks (OMTARN) problem, and prove that the OMTARN problem is NP-Hard andno online algorithms can achieve a constant competitive ratio on this problem. Then, we design a frameworkusing batch-based algorithms, including fixed and dynamic batch-based algorithm, and we show that howthe algorithms update the batch. After that, we use the hierarchically separated tree structure to accelerateour algorithms. Finally, we implement all the algorithms of the OMTARN problem and clarify their strengthsand weaknesses by testing them on both synthetic and real datasets.

INDEX TERMS Hierarchically separated tree, road networks, spatial crowdsourcing, task assignment.

I. INTRODUCTIONIn recent years, crowdsourcing has attracted industries andenterprises to setup some successful platforms, such asAmazon Mechanical Turks (AMT),1 oDesk,2 etc. Moreover,thanks to the development of smart mobile phones and wire-less networks [1], [2], some of these famous crowdsourcingplatforms, according to our research, are gradually becomingmore based on spatial [3], [4], namely spatial crowdsourc-ing platforms, for example Gigwalk3 and Gmission.4 Thesespatial crowdsourcing platforms allow people to submit orparticipate in some spatial tasks, such as preparing for aparty or repairing houses. TaskRabbit,5 a typical type ofspatial platforms, is used to assign a number of workers tofulfill a certain nearby spatial task, which requires workers tophysically move to the location of the spatial task within theroad networks and complete it in real-time environment.

1www.mturk.com2www.upwork.com3www.gigwalk.com4www.gmissionhkust.com5www.taskrabbit.com

Compared with traditional crowdsourcing platforms [5],these spatial platforms mainly focus on three things abouttask assignment [3], [4], [6]–[8]. Firstly, these task assign-ments are in a real-time dynamic scenario, so we cannotpredict what might happen afterwards. Secondly, some tasksneed to be completed by multi-skills workers together. Lastly,in the real-life scenario, the workers’ physical movements tothe task are on the road networks, so it is necessary tomeasureby road-network distance instead of by Euclidean distance.It is noteworthy that there are two types of existing studieson task assignment oriented spatial crowdsourcing [9]–[13].One is online multi-skilled task assignment problem mea-sured by Euclidean distance [14]. The other is traditional taskassignment problemmeasured by howwell a worker matchesup a task on road networks [15], [16]. However, no one hastaken all these three things into account as a whole. Therefore,we cannot directly use the previous solutions on these plat-forms. We can imagine the following scenario. On a cloudySaturday morning, Steven forecast that it would rain tonight,so he intended to reinforce his house to make it firm enoughto weather the coming storm. His tasks included repairing the

VOLUME 7, 20192169-3536 2018 IEEE. Translations and content mining are permitted for academic research only.

Personal use is also permitted, but republication/redistribution requires IEEE permission.See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

57371

Y. Liang et al.: OMTARN

FIGURE 1. Multi-skilled tasks and workers on road networks.

roofs, checking the circuit and reinforcing the windows. Andthen Steven released the online task on a spatial platform likeTaskRabbit and ordered the platform to assign workers beforeit got dark. These online workers had one or more skills andcame from different districts of this city, and the conditions ofdifferent type of roads vary a lot, choosing which of roads toget Steven’s house seemed especially important. Therefore,we may encounter such a question: how to assign movingworkers to multi-skilled tasks efficiently on road networks ina real-time (a.k.a online) scenario?

Inspired by the phenomenon of the complicated spatialtasks on the road networks, in this paper, we are going topropose a significant problem in the spatial crowdsourc-ing system, which is very common on crowdsourcing plat-forms, namelyOnlineMulti-skilled Task Assignment on RoadNetworks (OMTARN) problem, which is about assigningmulti-skilled workers to the complicated tasks according tothe road networks, with the maximum number of the finishedtasks.Example 1: Suppose there are four workers w1 − w4 and

four tasks t1 − t4 appearing on a spatial crowdsourcing plat-form, whose initial locations are shown in a road networksof main districts of Beijing in Fig. 1, while those workersand tasks’ skills (descriptions are shown in Table 1), releasetimes and durations (a.k.a deadlines) are shown in Table 2.In this example, when time comes to 11:23, the release timeof worker w3, the task t1 can be finished. Then in order tofully cover all task t1’s skills, we must use worker w1, w2,and w3, just as the green lines shows. Each route between asingle worker and the certain task is the least time-consumingroute on the road networks. And these routes compose anassignment. However, it seems that this assignment is notgood enough because only one task has been finished. If wedo not assign workers to task t1 immediately at 11:23 because

TABLE 1. Description of the skills.

TABLE 2. A sequence of workers and tasks.

task t1 still has a 21-hour duration, instead, we wait foranother time, such as at 14:12, then we can finish task t2by assigning workers w3 and w4; we can finish task t3 byassigning worker w1; we can finish task t4 by assigning w2.In this way, we can finish three tasks, as pink lines show.In terms of the number of finished tasks, the latter one isbetter.

From the example above, we can find that tasks requiremulti-skilled workers to complete together. Both tasks andworkers appear dynamically and randomly on the road net-works, and they are both constrained by time. When we areat a time point, because we cannot predict what will happenafterwards, there needs to be a balance between assigningimmediately to finish as many tasks as possible and providingthe possibilities to finish more tasks in the future. However,how to balance it is difficult. Moreover, calculating by usingroad-network distance is more complicated than by just usingEuclidean distance, so how to measure the workers’ move-ment by using road-network distance efficiently also seemschallenging.

Therefore, in this paper, we first prove the OMTARNproblem in the spatial crowdsourcing system is NP-Hard byreducing it to Vertex Cover Problem [17]. Thus, we cannotfind an optimal solution in polynomial time. So, in this paper,we will use two batch-based algorithms – fixed batch-basedalgorithm and dynamic batch-based algorithm – to achievean approximative solution. Besides, we also propose effectivealgorithms to improve the time complexity of calculating thedistance of the road networks.

In summary, we make the following contributions.• We define Online Multi-skilled Task Assignment onRoad Networks (OMTARN) problem, under the con-straints of multi-skilled covering, time and distance

57372 VOLUME 7, 2019

Y. Liang et al.: OMTARN

on the road networks of spatial crowdsourcingplatforms.

• We prove that the OMTARN problem is NP-Hard byreducing it to a classical problem Vertex Cover, andany online algorithm for the OMTARN problem has noconstant ratio.

• We propose two effective algorithms, namely fixedbatch-based and dynamic batch-based algorithms,to tackle the problem. Furthermore, we use Hierarchi-cally Separated Tree (HST) structure to reconstruct theroad networks, which can accelerate our algorithms.

• We conduct several extensive experiments on syntheticand real datasets and present the efficiency and effec-tiveness of our algorithms.

The rest paper is organized as follows. In Section II,we define OMTARN problem and present its hardness andcompetitive ratio. In Section III, we propose two algorithmsto solve the problem and use HST structure to acceleratethem. In Section IV, we present our experimental datasetsand analysis results. Finally, we compare our work with otherrelated efforts and give a conclusion of our paper in Section Vand Section VI, respectively.

II. THE OMTARN PROBLEMIn this section, we will present formal definition ofOnline Multi-skilled Task Assignment on Road Networks(OMTARN) problem, in whichwe assign onlinemulti-skilledworkers to the online multi-skilled tasks with time constraint,and then prove its hardness.

A. PROBLEM DEFINITIONThis subsection presents the formal definition of OnlineMulti-skilled Task Assignment on Road Networks problem.We use a graph G = (V ,E) to represent a road network

that consists of a vertex set V and an edge set E . For eachedge (u, v) ∈ E(u, v ∈ V ) attached with a weight w(u, v)suggests the value from u to v. This value can be measured asthe travel distance or travel time from u to v. If the averagespeed of going through each road is known, then the traveldistance and time can be converted to each other. In this paper,we define the weight value w(u, v) as the travel time from uto v.

Besides, as Table 1 shows, each θi represents one of theskills. In this paper, we assume that 2 = {θ1, θ2, . . .} is auniverse of all skills or techniques.Definition 1 (Online Multi-Skilled Task): An online multi-

skilled task, denoted by t = (lt , rt , et ,2t ), can be deliveredon the road network G(V ,E) at location lt ∈ V at its releasetime rt . The task, containing a set of skills 2t ⊆ 2, shouldbe completed by a group of workers before its expirationtime et . The time interval [rt , et ] is called the valid intervalof t.Definition 2 (Online Multi-Skilled Worker): An online

multi-skilled worker, denoted by w = (lw, rw, ew,2w), canappear on the road network G(V ,E) at location lw ∈ V at itsrelease time rw. The worker w, with a set of skills 2w ⊆ 2,

can get only one task before his expiration time ew. The timeinterval [rw, ew] is called the valid interval of w.

Due to the definition of online multi-skilled task andworker, both of them emerge and disappear dynamically onthe road networks. We assume that each worker and task’srelease time is always no greater than its expiration time,i.e., rt 6 et and rw 6 ew, and their skill sets are not empty,i.e., 2t 6= φ and 2w 6= φ as well.

Given an online multi-skilled task set T = {t1, t2, . . . tn}and an online multi-skilled worker setW = {w1,w2, . . .wm},every task t is either assigned to a group of workersWc at timec or removed until its expiration time et . A task assignment,denoted by

⟨t,Wc

⟩, is defined as a pair of the task t and worker

set Wc who finished the task t .Definition 3 (Task Assignment Set): Given a task set T ={t1, t2, . . . t|T |} and a worker set W = {w1,w2, . . .w|W |},a task assignment set M =

{⟨t,Wc

⟩| t ∈ T ,W ⊇ Wc 6= φ

}satisfies:• ∀

⟨t,Wc

⟩∈ M:

1) ∀w ∈ Wc, worker w should arrive at task t’slocation lt before task t’s expiration time et .

2) ∀w ∈ Wc, worker w’s skills should cover one ormore skills the task t requires, 2w

⋂2t 6= φ.

3) All the workers’ skills in Wc should fully cover theskills that task t requires, 2t ⊆

⋃w∈Wc

2w.• For a certain worker w, he can be assigned at most onetime during his valid interval [rw, ew]. That is, with anytwo task assignments

⟨ti,Wci

⟩and

⟨tj,Wcj

⟩picking from

M, we can get ti 6= tj ⇐⇒ Wci⋂Wcj = φ.

As shown in Fig. 1, both the green lines and the pink linesare task assignment sets. Now, they also can be written intoMpink =

{⟨t2, {w3,w4}

⟩,⟨t3, {w1}

⟩,⟨t4, {w2}

⟩}and Mgreen ={⟨

t1, {w1,w2,w3}⟩}.

Definition 4 (OMTARN Problem): Given a task set T ={t1, t2, . . . , t|T |}, a worker set W = {w1,w2, . . . ,w|W |} anda road networks G = (V ,E), which has no tasks or workersinitially. The online multi-skilled task assignment on road net-works (OMTARN) problem is to find a best task assignmentset Mb which has the maximum size |Mb| among all the taskassignments.

B. THE HARDNESS OF OMTARN PROBLEMIn this subsection, we present the hardness of OMTARNproblem, and prove it by reducing it to vertex cover problem.Theorem 1: The OMTARN problem is NP-Hard.Proof: We prove the lemma by reducing the OMTARN

problem to a classical NP-Completed problem, vertex coverproblem [17]. An instance of a vertex cover problem consistsof a graph G(V ,E). The vertex cover problem is to find asmallest scale subset V ′, so that ∀(u, v) ∈ E H⇒ u ∈V ′or v ∈ V ′. Now, we give an instance of OMTARN problemas follows, which can be transformed to an instance of vertexcover problem.

We give a task set T = {t1, t2, . . . t|T |} and a worker setW = {w1,w2, . . . ,w|2|}. Each task ti has a non-empty skillset 2ti ⊆ 2, and the time before its deadline dti lasts long

VOLUME 7, 2019 57373

Y. Liang et al.: OMTARN

enough for any worker to arrive in time. Worker set W has afixed size |2|. Each worker wj has only one unique skill θj ∈2. Now we build a conflicting graph Gc(Vc,Ec) followingsuch rules:

1) ∀ti ∈ T ⇒ ti ∈ Vc.2) ∀ti, tj ∈ T ,2ti

⋂2tj 6= φ ⇒ (ti, tj) ∈ Ec.

If we can find a smallest scale subset V ′c ⊆ Vc that is thesolution of this vertex cover problem, then the task set T \V ′ccontains the most finished tasks. And |T \ V ′c| is the solutionof this instance of OMTARN problem. Since the hardness ofvertex cover problem is NP-Completed, OMTARN problemis NP-Hard.

C. COMPETITIVE ANALYSISWe use competitive ratio to measure the performance ofonline algorithms. Since OMTARN is a maximization prob-lem, the competitive ratio CR on an online algorithm isdefined as:

CR = minE[|Mb|alg

]E[|Mb|opt

]where |Mb|alg is the result of an online algorithm alg for aninstance while |Mb|opt is the optimal result.Lemma 1: No deterministic algorithm for OMTARN prob-

lem has a constant competitive ratio.Proof: We prove the lemma by showing an instance

that deterministic algorithms perform bad, as Fig. 2a shows.We only consider a simple road network with A, B, and C ,while |AC| = |CB| = 1.We assume that the universe of skillsis 2 = {θ1, θ2, . . .}. Let m be an arbitrary positive integerand ε = 1

m . At time 0, m workers (w1, . . . ,wm) appear at A.Each wi has a unique skill θi and his expiration time ewi = 3.Meanwhile, a task t0 appears at B with an expiration timeet0 = 2 + ε, and its skills are {θ1, θ2, . . . , θm}. At time 2,m tasks (t1, . . . , tm) appear at C . Each ti has a unique skill θiand its expiration time eti = 3 − ε. In an optimal solution,every worker can directly go to C after they are released onthe road networks, and they arrive at C before time 2, whenm tasks are released. Each wi can finish a specific task ti.Therefore, the optimal result of this instance is m. However,in a deterministic algorithm alg, when task t0 is released,we should assign all workers to finish the task t0 at B, becausethere is only task t0 at time 0 while all workers’ skills canfully cover t0’s skills. As a result, the workers arrive at Bat time 2 but they cannot finish t1 − tm afterwards. Then,the competitive ratio should be

CR = minE[|Mb|alg

]E[|Mb|opt

] = 1m= ε → 0

because m can be an arbitrary large value. Thus, OMTARNproblem does not have a deterministic algorithm with a con-stant competitive ratio.Lemma 2: No randomized algorithm for OMTARN prob-

lem has a constant competitive ratio.Proof: We prove the lemma by showing an instance

that randomized algorithms perform bad, as Fig. 2b shows.

FIGURE 2. Competitive analysis. (a) Deterministic algorithms performbad. (b) Randomized algorithms perform bad.

Let m be an arbitrary positive integer and ε = 1m . There are

m roads from A to B while there is also an inflection pointon each road, namely l1, l2, . . . , lm. At time 0, n workers(w1, . . . ,wn) are released at A. Each wi has a unique skill θiand his expiration time ewi = 2. At time 1, with probability1m , n tasks (t1, . . . , tn) are released at one location lj (1 6j 6 m). Each ti has a unique skill θi and its expiration timeeti = 1 + ε. This yields a probability distribution X overthe input of tasks. No matter where these m tasks appear,in optimal solution all workers can wait at location lj untiltasks appear. Therefore, the optimal result on distributionX isE[|Mb|opt

]= n. Now consider a generic deterministic online

algorithm alg. These m workers randomly choose the roadand at time 1, they each are at a location in l1, l2, . . . , lm.This means that the expectation of the result under the inputdistribution X is that

E[|Mb|alg

]= n ∗

n∏i=1

1m=

nmn

Therefore, the competitive ratio of this instance should be

CR = minE[|Mb|alg

]E[|Mb|opt

] = 1mn= εn→ 0

because n can be an arbitrary large value. Thus, OMTARNproblem does not have a randomized algorithm with a con-stant competitive ratio.Theorem 2: No online algorithm, neither deterministic

nor random, can achieve a constant competitive ratio onOMTARN problem.

Proof: The theorem is a direct result fromLemma 1 and 2.

57374 VOLUME 7, 2019

Y. Liang et al.: OMTARN

Algorithm 1 Evaluation Function GreedyInput : A batch B = (Qt ,Qw, db)Output: Assignments set Mc

1 Mc← φ;2 for t ∈ Qt do3 W ← φ;4 Q′w← {w ∈ Qw | db + cost(lw, lt ) 6 dt };5 if 2t ⊆

⋃w∈Q′w

2w then6 while 2t 6= φ do7 find w ∈ Q′w with the maximum f (t,w, db);8 remove w from Q′w and then add w to W ;9 2t ← 2t −2w;

10 add 〈t,W 〉 to Mc;

11 return Mc;

III. SOLUTIONS TO OMTARN PROBLEMAlthough no deterministic or randomized algorithms canachieve a constant competitive ratio, we propose two effi-cient heuristic algorithms, fixed batch-based algorithm anddynamic batch-based algorithm, to solve the OMTARNproblem.

A. BATCH-BASED APPROACHEach worker and task has its deadline, which means that theworker and task can be staying on the road networks, waitingfor a better assignment until the time is up. In order to describethe assignment based on the tasks and workers on the roadnetworks in a period of time, we use batch to record thedynamic status of the road networks.Definition 5 (Batch): A batch, denoted by B = (Qt ,

Qw, db), describes a task set Qt and a worker set Qw on theroad networks before a certain time db.Qt is a subset of the whole tasks and Qw is a subset of the

whole workers. And every task in Qt and every worker in Qwmust be on the road networks before the time db. In otherwords, tasks in Qt and workers in Qw are still waiting for theassignment at time db.In a certain batch B, a task may have more than one

assignment strategy. In order to find a relatively good assign-ment both currently and globally, we will use an evaluationfunction to choose workers according to a certain task. Theevaluation function may appraise the pair of a task and aworker from the following aspects. First of all, the numberof covered skills is the most important. For a task t and aworker w, we first consider the size of the intersection ofworker’s skill set and task’s skill set |2w

⋂2t |. Second is

the number of wasted skills. For a task t and a worker w,the wasted skills are those skills that are not contained in2t but contained in 2w. So, we also consider the size of the|2w −2t |. Last but not the least, the remaining time that theworker will be on the road networks should be considered. If aworker w1 and another worker w2 have the same numbers ofcovered skills andwasted skills, butw1 will reach his deadline

Algorithm 2 Generate Conflicted GraphInput : Assignments set

Mc ={〈t1,Wt1〉, 〈t2,Wt2〉, . . .

}Output: Undirected Conflicted Graph Gc(Vc,Ec)

1 Vc← φ,Ec← φ;2 for 〈ti,Wti〉 ∈ Mc do3 Vc← Vc

⋃{ti};

4 for ti, tj ∈ Vc do5 if Wti

⋂Wtj 6= φ then

6 Ec← Ec⋃{(ti, tj)};

7 return (Vc,Ec)

soon whereas w2 can still be on the road networks for a longtime, it is intuitively obvious that worker w1 is the betterchoice.Definition 6 (Evaluation Function): Function

f (t,w, c) =|2w

⋂2t |

|2w −2t | × (dw − c)

is to evaluate how well the worker w fits the task t at times-tamp c.

When a batch B reaches its deadline db, we can find everytask’s best assignment by using evaluation function greedyalgorithm presented in Alg. 1. However, these assignmentsare not the final assignments, because some tasks share thesame workers. Thus, we denote these assignments as con-flicted assignment Mc.

1) FIND CURRENT BEST ASSIGNMENT SETThis section will introduce the algorithm of finding currentbest assignment based on the conflicted assignment Mc byreducing it to vertex cover problem.

An instance of a vertex cover problem, given an undirectedgraph G(V ,E), is to find a smallest scale subset V ′, so that

∀(u, v) ∈ E H⇒ u ∈ V ′or v ∈ V ′

In the Section III-A, we have explained that some tasksmay share the same workers. If we assign some workersto finish one task, then the other tasks cannot be finished.Therefore, we generate a conflicted graph Gc(Vc,Ec) basedon conflicted assignments Mc to record this. We propose analgorithm to generate the conflicted graph shown in Alg. 2.

In Alg. 2, we initialize the vertex set Vc and the edge setEc of conflict graph empty (line 1). We put all the tasks inthe conflicted graph Mc into the vertex set Vc (lines 2-3).If two tasks share the same workers, then we add this pair oftwo conflicted tasks into the edge Ec of the conflicted graph(lines 4-6).

Because the hardness of vertex cover problem isNP-Completed, we will use its approximation algorithm tosolve. Since we have generated the conflicted graph Gc,we can find a current best assignment set according toAlg. 3.

VOLUME 7, 2019 57375

Y. Liang et al.: OMTARN

Algorithm 3 Find Current Best Assignment SetInput : Undirected Conflicting Graph Gc(Vc,Ec)Output: Current Best Assignment Set M c

b1 V ′← φ,E ′← Ec;2 while E ′ 6= φ do3 let (ti, tj) be an arbitrary edge of E ′;4 V ′← V ′

⋃{ti, tj};

5 remove edges incident on either ti or tj from E ′;

6 for ti ∈ Vc \ V ′ do7 M c

b ← M cb⋃{〈ti,Wti〉};

8 return M cb

In Alg. 3, every time when the rest edge set E ′ is not empty,we randomly pick an edge from E ′, and add the two verticesof the edge into the V ′. In this way, we can get the tasks thatcannot be assigned to the workers in V ′ (lines 3-5). At last,we will get the current best assignment M c

b .

2) FRAMEWORK OF BATCH-BASED ALGORITHMBased on the algorithms proposed above, we will proposethe framework of batch-based algorithm (Alg. 4) in thissection.

3) FIXED BATCH-BASED ALGORITHMThe fixed time slide batch-based algorithm is using the sametime interval between two adjacent batches. Given two adja-cent batches Bi and Bi+1, it satisfied the condition that thedifference between their deadline is constant, dbi+1 − dbi =const . For example, if the previous batch’s deadline is 10:50,and we set the time interval as 30 minutes, this batch’sdeadline should be 11:20, and the next will be 11:50 andso on.Time Complexity. Given a road network G(V ,E), a task

set T , a worker set W , line 5 and line 12 will costO((E + V logV )|T ||W |

)by using Dijkstra algorithm to

find shortest path from a worker to a task. Line 7 willcost O(|T |2 + |T |), and line 8 will also cost at mostO(|T | + |T |2). According to this, line 12 costs the most.Because we use fixed batch-based algorithm, the number ofbatches will be at most λ, which we can get directly. Thus,the total time complexity will be at most O

(λ(E + V logV )

|T ||W |).

4) DYNAMIC BATCH-BASED ALGORITHMAlthough using the fixed time slide batch-based algorithmhas a good time complexity, it has several limitations. In acertain fixed batch, if some workers or tasks appear fre-quently, some of them may exceed their deadline, or someworkers cannot arrive at task’s position in time. On theother hand, if some workers or tasks appear infrequently,there will be few tasks finished in this batch. In orderto avoid this situation, we will set the batch’s deadlinedynamically according to the attributes of workers and tasks,

Algorithm 4 Framework of Batch-Based AlgorithmInput : A road networks G(V ,E), a task set

T = {t1, t2, . . . , t|T |} and a worker setW = {w1,w2, . . .w|W |} ordered by time.

Output: The best Task Assignment Set Mb.1 Mb← φ;2 use batch-based algorithm to calculate the batch B;3 while new arrival of the batch’s deadline B.db do4 B.Qt ← tasks on G, B.Qw← workers on G;5 Mc←EvaluationFunctionGreedy(B);6 while Mc 6= φ do7 Gc←GenerateConflictedGraph(Mc);8 M (B)

b ←FindCurrentBest(Gc);9 remove tasks and workers in M (B)

b from G;10 add M (B)

b to Mb;11 B.Qt ← tasks on G, B.Qw← workers on G;12 Mc←EvaluationFunctionGreedy(B) ;

13 use batch-based algorithm to update the batch B;

14 return Mb;

ensuring that each task and worker is assigned as muchas possible. In this section, we will improve the perfor-mances of batch-based algorithm by using a dynamic timeslide.

We consider that a worker w and a task t have skillsintersection and the worker w can arrive at task t’s positionbefore its deadline. Then we use the pair (t,w) to describethis relationship. Intuitively, this pair of worker and task haspossibility of composing an assignment. However, this pair isnot immutable. Whenever time hits the deadline of worker ortask, this pair will disappear.Definition 7 (Longest Waiting Time): Longest waiting

time, denoted by lwt(t,w), aims to describe a deadlineof a pair of a task and a worker (t,w) on the roadnetworks.

Definition 7 describes that if time exceeds lwt(t,w), thenwe cannot assign task t to the worker even if worker w hasthe skills that task t requires. In other words, lwt(t,w) is thelatest time when the worker w should set off for the task t . So,we have the following equation:

lwt(t,w) = min(dw, dt − cost(lw, lt )

)According to the equation, each worker and task has a

longest waiting time. For the purpose of not losing any pairs,we can find a pair whose longest waiting time is the earliest,and then update the next batch’s deadline. The pseudocode ispresented in Alg. 5.Time Complexity. Given a road network G(V ,E), a task

set T , a worker setW , because of using dynamic batch-basedalgorithm, time cost on calculating next batch’s deadline willbe at most O

(|T ||W | log(|T | + |W |)

)according to Alg. 5.

Thus, the total time complexity will be at most O((E +

V logV )|T |2|W |2 log(|T | + |W |)).

57376 VOLUME 7, 2019

Y. Liang et al.: OMTARN

Algorithm 5 Update Batch’s DeadlineInput : current time now, road networks GOutput: The next Batch’s deadline db

1 P← φ, db←∞;2 Qt ← tasks on G, Qw← workers on G;3 while new arrival of a task or a worker v do4 if release time of v is larger than db then5 break;

6 if new arrival of a task then7 for w ∈ Qw do8 if lwt(v,w) > now then9 add lwt(v,w) to P;

10 add v to Qt ;

11 if new arrival of a worker then12 for t ∈ Qt do13 if lwt(t, v) > now then14 add lwt(t, v) to P;

15 add v to Qw;

16 db← minimum lwt(t,w) in P;

17 return db;

B. THE FAST BATCH-BASED ALGORITHMSThe fast batch-based algorithms aim to quickly calculate theresult under the condition that the size of the best assignment|Mb| is not much decreased. Because a road network is arelatively stable system and it changes little in a long periodof time. In this way, we use a structure, called hierarchi-cally separated tree (HST), as metric space, to reorganize thewhole road network. Since the following two algorithms areusing HST, we first introduce this structure and review thosetwo algorithms (Fixed Batch-based Algorithm with HST andDynamic Batch-based Algorithm with HST).α-Hierarchically Separated Tree (α-HST): Given a met-

ric (V , d), we say a metric (V ′, d ′) dominates another met-ric (V , d) if for all u, v ∈ V , d ′(u, v) > d(u, v). Theα-hierarchically separated tree (α-HST) is a rooted tree, andits metric is a metric that dominates the original metric,which also guarantees that E[dT (u, v)] ≤ O(α log k)d(u, v).In addition, the HST has the following three properties on thedistance metric [18]:

• For an arbitrary vertex v ∈ V , if c1(v) and c2(v) are thechildren of v in the HST, d(v, c1(v)) = d(v, c2(v)).

• For an arbitrary vertex v ∈ V , let p(v) be the parent of vand c(v) be a child of v, then d(v, p(v)) = αd(v, c(v)).

• All the leaf vertices are at the same level of the HST. Foran arbitrary vertex v ∈ V , let λ1(v) and λ2(v) be the leafvertices that are the descendants of v, then d(v, λ1(v)) =d(v, λ2(v)).

By using HST, although the distance between the workerand a certain task is not accurate, it is bounded and does notvary so much. Assuming that worker’s location is u ∈ V

TABLE 3. Experiments settings.

on the road networks while a task’s location is v ∈ V ,we search on the HST until u and v have the same ancestor.And then the appropriative result of the cost from u to v canbe calculated by the distance on the tree. Given the longestdistance dmax on the road networks, the search on the treeonly costs O(log dmax), which can be seen as constant. In thisway, changing from using Dijkstra algorithm to using HSTalgorithm can contribute to a more efficient result in termsof time complexity. Fixed batch-based algorithm’s time com-plexity will beO

(λmax(|T |, |W |)|T |

), where λ is the number

of the batches, while dynamic batch-based algorithm’s timecomplexity will be O

(max(|T |, |W |)|T |2|W | log(|T | + |W |)

)IV. EXPERIMENTAL STUDYIn this section, we first test the performance of our proposedalgorithms through varying different parameters, and analyzethe results. And then we test those algorithms by enlargingthe size of task set and worker set and perform them on realdatasets. Finally, we give an evaluation on each algorithm.

A. EXPERIMENTAL SETUP1) DATASETSWe evaluate the performance of the proposed algorithms onboth synthetic and real datasets. Table 3 shows the settings ofthe synthetic datasets, where defaulting settings are markedin bold. Tasks and workers are randomly sampled on thevertices of road networks of Beijing, with different valuesof |T | and |W |. Similar to [19], we generate the release timeof tasks and workers by a uniform distribution in one day.We also change the expiration time of tasks and workers(et and ew). And the duration of each task (worker) follows aGaussian distribution. Besides, we also generate the skills ofworkers and tasks. The number of skills of each task (worker)obeys Gaussian distribution, but the specific skills are subjectto the uniform distribution. We also generate datasets withlarge scales to test the scalability of our algorithms. For thereal datasets, we use the taxi order data, collected from ataxi-calling service platform. The release time of a task isgenerated from an order’s release time and its location is gen-erated from the order’s starting location. Similarly, the releasetime of a worker is also generated from an order’s release timewhile his/her location is generated from the order’s startinglocation. Other settings are the same as the synthetic datasets.

VOLUME 7, 2019 57377

Y. Liang et al.: OMTARN

FIGURE 3. Results on varying the cardinality of T and W , task’s duration µet−rt and worker’s duration µew−rw . (a) |Mb| of varying |T |. (b) |Mb| ofvarying |W |. (c) |Mb| of varying µet−rt . (d) |Mb| of varying µew−rw . (e) Time of varying |T |. (f) Time of varying |W |. (g) Time of varying µet−rt . (h) Timeof varying µew−rw . (i) Memory of varying |T |. (j) Memory of varying |W |. (k) Memory of varying µet−rt . (l) Memory of varying µew−rw .

2) COMPARED ALGORITHMS AND EXPERIMENTSENVIRONMENTWe study the performances of fixed batch-based algorithm,fixed batch-based algorithm with HST, dynamic batch-basedalgorithm and dynamic batch-based algorithm with HST onthe real road networks of Beijing. We study the effects ofvarying parameters on the performance of the algorithmsin terms of the number of finished tasks, running time andmemory consumption. All the algorithms are implemented inJava 9, and the experiments are performed on a machine with24 Intel(R) Xeon(R) E5 2.40GHz CPUs and 96G memory.

B. EXPERIMENT RESULTSIn this section, we will analyze the results of varying differentparameters. Fig. 3 shows the results of varying |T |, |W |, task’sduration and worker’s duration. Fig. 4 shows the results ofvarying other parameters and the algorithms’ performance onscalability and real datasets.

1) EFFECT OF CARDINALITY OF TThe first column of Fig. 3 shows the results of varying |T |.All algorithms show a similar trend in terms of the number of

finished tasks. The two dynamic algorithms complete moretasks than the corresponding fixed algorithms, while dynamicbatch-based algorithm performs the best. In Fig. 3(a), as |T |becomes larger, |Mb| is increasing while the rate of increaseslows down. That’s because, on one hand, when adding tasks,those workers may have more choices, thus they can havea higher possibility to get a better assignment; on the otherhand, those workers can finish up to |W | tasks. As for the run-ning time, shown in Fig. 3(e), HST structure has a great effecton time cost. The algorithms with HST run 102 to 104 timesfaster than those without using HST. Moreover, the dynamicbatch-based algorithm consumes much more time than otheralgorithms because the increase of tasks means that there willbe more dynamic batches and cost more time on solving theconflicted graphs. In Fig. 3(i), those two algorithms with HSTuse less memory than the other two.

2) EFFECT OF CARDINALITY OF WThe results of varying |W | are shown in the second col-umn of Fig. 3. All algorithms also show the similar trendin terms of the number of finished tasks. The two dynamicalgorithms also complete more tasks than the corresponding

57378 VOLUME 7, 2019

Y. Liang et al.: OMTARN

fixed algorithms, while dynamic batch-based algorithm per-forms the best. In Fig. 3(b), as |W | becomes larger, |Mb|

is increasing while the rate of increase slows down. That’sbecause, on one hand, adding workers means that they canfinish more tasks; on the other hand, those workers can finishup to |T | tasks. As for the running time, shown in Fig. 3(f),the algorithms using HST structure are also effective. Thealgorithms with HST run 102 to 104 times faster than thosewithout using HST. Furthermore, dynamic batch-based algo-rithm also consumes the most time. Meanwhile, we findthat all algorithms cost less time when adding workers. Thepossible reason is that most tasks are finished by the earlierworkers among the worker set. In this way, there are notmany even no tasks left in last batches. In Fig. 3(j), thosealgorithms with HST still perform better than those withoutHST.

3) EFFECT OF TASK’s DURATIONThe third column of Fig. 3 presents the results of vary-ing the duration of tasks. First, for the number of finishedtasks, shown in Fig. 3(c), we can observe that it increasesslightly when the duration increases, which indicates thatour algorithms have a good robustness for different-durationtasks. Also, when the tasks’ duration increases, the num-ber of finished tasks increases, because the longer the taskwaits, the higher possibility they will get better assignment.For running time, presented in Fig. 3(g), it also increasesas duration increases. The algorithms with HST run 102 to104 times faster than those without using HST. Meanwhile,fixed algorithms consume less time than dynamic algorithms.Finally, in Fig. 3(k), algorithms with HST have few changesas the duration increases, and they use less memory than thosewithout HST.

4) EFFECT OF WORKER’s DURATIONThe results of varying the duration of workers are presentedin the fourth column of Fig. 3. In Fig. 3(d), for the numberof finished tasks, again, we observe that it increases whenthe workers’ duration increases. That’s because when theduration increases, the possibility that a group of workersfully cover a task’s skills becomes higher. For running time,shown in Fig. 3(h), it also increases as the duration increases.The algorithms with HST run 102 to 104 times faster thanthose without using HST. Meanwhile, fixed algorithms con-sume less time than dynamic algorithms. Finally, for memoryconsumption, presented in Fig. 3(l), algorithms with HSThave few changes as the duration increases, and they use lessmemory than those without HST.

5) EFFECT OF CARDINALITY OF 2The results of varying |2| are presented in the first columnof Fig. 4. First, in Fig. 4(a), for the number of finishedtasks, we can observe that it decreases when the numberof skills increases. That’s because when the number ofskills increases, the possibility that a group of workers fullycover a task’s skills becomes lower. And again, for different

algorithms, dynamic batch-based algorithm performs thebest. For running time, shown in Fig. 4(e), it also decreasesas the number of skills increases, and the algorithms withHST run 102 to 104 times faster than those without usingHST. Meanwhile, fixed algorithms consume less time thandynamic algorithms. Finally, for memory consumption, pre-sented in Fig. 4(i), all algorithms have relatively stablememory consumption when the number of skills increases.The reason is that the conflicted graph in each batch doesnot expand much. Although the number of skills increases,the possibility of a worker and a task sharing the same type ofskill decreases. Thus, the memory consumption does not varymuch.

6) EFFECT OF RATIOIn the second column of Fig. 4, the results of varying theratio are presented. For the number of finished tasks, shownin Fig. 4(b), we observe that it decreases when the ratioincreases. That’s because when the ratio increases, finish-ing a task needs more workers. For running time, presentedin Fig. 4(f), it increases as the ratio increases. The reason isthat, in a batch, the higher the ratio is, the higher possibilitythat two tasks share the same worker, which means that itwill cost more time to solve the conflicted graph. Again,the algorithms with HST run 102 to 104 times faster thanthose without using HST. Finally, in Fig. 4(j), algorithms withHST have few changes as the ratio increases, and they use lessmemory than those without HST.

7) SCALABILITYThe scalability results are shown in the third column of Fig. 4.Since the algorithms without HST are not efficient enoughfrom the experimental results above, we only study the scala-bility of those two algorithms with HST. In Fig. 4(c), we cansee that dynamic batch-based algorithm with HST has aslightly better performance than fixed batch-based algorithmwith HST. As for the time and memory consumption, shownin Fig. 3(g) and Fig. 3(k), fixed batch-based algorithm withHST costs less than the dynamic batch-based algorithm withHST.

8) REAL DATASETSThe results of the performance on real datasets are shownin the fourth column of Fig. 4. Again, since the algorithmswithout HST are not efficient enough, we only perform thereal datasets on those two algorithms with HST. In Fig. 3(d),we can observe that the dynamic batch-based algorithm withHST has a better performance on the number of finishedtasks. Besides, an interesting phenomenon is that the numberof finished tasks is quite large for both of these two algorithmsbetween 12PMand 18PM, and is smallest from 0AM to 6AM,which conforms to the situation that the taxi orders are quitea lot in the afternoon while there are few taxi orders at mid-night. For time and memory consumption, shown in Fig. 4(h)and Fig. 4(l), fixed batch-based algorithmwith HST performsbetter.

VOLUME 7, 2019 57379

Y. Liang et al.: OMTARN

FIGURE 4. Results on varying skill number |2|, ratio µ|2t | : µ|2w |, scalability, and performance on real datasets. (a) |Mb| of varying |2|. (b) |Mb| ofvarying µ|2t | : µ|2w |. (c) |Mb| of varying |T ||W |. (d) |Mb| in real datasets. (e) Time of varying |2|. (f) Time of varying µ|2t | : µ|2w |. (g) Time of varying|T ||W |. (h) Time in real datasets. (i) Memory of varying |2|. (j) Memory of varying µ|2t | : µ|2w |. (k) Memory of varying |T ||W |. (l) Memory in realdatasets.

C. SUMMARYThrough the whole analysis above, we can find that eachalgorithm has its own advantage. Now we will evaluate themfrom three aspects.• The first and the most important aspect is the number ofthe finished tasks. For these four algorithms, thosewhichdo not use HST structure perform better than thosewhich use HST in this aspect. Besides, using dynamicbatch-based algorithms performs better than using fixedalgorithms. Thus, the ranking of these algorithms indescending order of their performance of |Mb| is thatDynamic > Dynamic+ HST > Fixed > Fixed+ HSTbatch-based algorithm.

• As for the efficiency of these four algorithms, we useboth time cost and memory consumption to measure it.For time cost, those algorithms which use HST structuretake much less time than those which do not use that.More specifically, the algorithms with HST run 102 to104 times faster than those without using HST. Besides,dynamic batch-based algorithms take more time thanfixed algorithms. As for the memory consumption,

Fixed+HST andDynamic+HST cost less than the othertwo. Thus, if we consider these two factors together,the ranking in descending order of the efficiency is thatFixed+HST > Dynamic+HST� Fixed > Dynamicbatch-based algorithm.

• For the test of scalability and real datasets, two efficientalgorithms, Dynamic+HST algorithm completes moretasks but takes more time and uses more memory thanFixed+ HST algorithm.

Therefore, if we want to use these algorithms in practice,we recommend dynamic batch-based algorithm with HSTstructure because of its relatively good performance on allthe aspects discussed above.

V. RELATED WORKIn this section, we review related works from two categories,spatial crowdsourcing and vertex cover.

A. SPATIAL CROWDSOURCINGIn recent years, with the development of smart phonesand wireless networks [1], [2], many studies on spatial

57380 VOLUME 7, 2019

Y. Liang et al.: OMTARN

crowdsourcing have been proposed, especially after [4].Furthermore, one of the most important issues in spatialcrowdsourcing is task assignment [4], [14], [20], [21]. For areal-life scenario, there are three typical characteristics: tasksandworkers are dynamic; all workersmove on road networks;some tasks are rather complex.

Kazemi et al. [6] further study the reliability of workersaccording to [4]. To et al. [22] summarize the model of [4]by adding a score function to each pair of a worker and a taskto evaluate the assignment, and then choose an assignmentwith the maximum total scores. Tong et al. [23] propose aprotocol that aims to guide idle workers based on the predic-tion of tasks and workers so as to increase the total numberof assigned worker-task pairs. But these works mainly focuson offline scenario, where spatiotemporal information of alltasks and workers is known before tasks allocation is con-ducted.

Tong et al. [21] propose a new online micro-task alloca-tion problem, called global online micro-task allocation inspatial crowdsourcing, and design algorithms to maximizethe total scores. Tong et al. [12] give a great proof thatgreedy algorithms perform quite well for some online prob-lems. Although the aforementioned works study the onlinetask assignment oriented spatial crowdsourcing, they mostlyfocus on the model in which one worker finishes one task.In other words, they assume that spatial crowdsourcing tasksare simple. However, some tasks need more than one workerto collaboratively complete.

Some recent works have considered the multi-skilledtask assignment, such as [14]. The biggest differencebetween [14] and our work lies on the problem definition.First, our research is oriented to the road networks, but [14]only use Euclidean distance as metric space. Also, eachworker has an expired time in our model while in [14], andeach worker has a maximum moving distance. In addition,the solutions of [14] fail to give any competitive ratio proof.Some problems caused by searching on road networks canmake some algorithms perform well on Euclidean metric butperform badly on road networks.

B. VERTEX COVERThe vertex cover is a classical NP-Completed problem [17],which aims to choose a minimum subset of the vertex setso that all the edges have at least one vertex in this subset.Vertex cover is an important part in our algorithm whensolving the conflicted graph in each batch. The well-knowngreedy solution [24] takes linear-time to get a result with anapproximation ratio of 2. Thus, for our problem, if the sizeof the universe task set is |T | and the optimal result of ourproblem solving is |T |−|t|, where |t| is the size of unfinishedtasks, our algorithms can get a result at least |T |−2|t|, whichis a quite good performance.

VI. CONCLUSIONIn this paper, we study a practical problem, calledOnline Multi-skilled Task Assignment on Road Networks

(OMTARN) problem, and prove that the OMTARN problemis NP-Hard and no online algorithms can achieve a constantcompetitive ratio on this problem. Then, we propose a frame-work of using batch-based algorithms, including fixed anddynamic batch-based algorithm, and we show that how thealgorithms update the batch separately. In order to make ouralgorithms more efficient, we use Hierarchically SeparatedTree (HST) structure to accelerate our algorithms. Finally,we implement all the algorithms of OMTARN problem andclarify their strengths andweaknesses by testing them on bothsynthetic and real datasets. Among these four algorithms,the dynamic batch-based algorithm with HST has a relativelygood performance.

REFERENCES[1] W. Li et al., ‘‘Crowd intelligence in AI 2.0 era,’’ Frontiers Inf. Technol.

Electron. Eng., vol. 18, no. 1, pp. 15–43, 2017.[2] W.-T. Tsai, W. Wu, and M. N. Huhns, ‘‘Cloud-based software crowdsourc-

ing,’’ IEEE Internet Comput., vol. 18, no. 3, pp. 78–83, May/Jun. 2014.[3] D. Deng, C. Shahabi, and U. Demiryurek, ‘‘Maximizing the number of

worker’s self-selected tasks in spatial crowdsourcing,’’ in Proc. 21st Int.Conf. Adv. Geogr. Inf. Syst. (SIGSPATIAL), Orlando, FL, USA, Nov. 2013,pp. 314–323.

[4] L. Kazemi and C. Shahabi, ‘‘GeoCrowd: Enabling query answeringwith spatial crowdsourcing,’’ in Proc. 20th Int. Conf. Adv. Geogr. Inf.Syst. (SIGSPATIAL), Redondo Beach, CA, USA, Nov. 2012, pp. 189–198.

[5] Y. Tong, L. Chen, Z. Zhou, H. V. Jagadish, L. Shou, and W. Lv, ‘‘SLADE:A smart large-scale task decomposer in crowdsourcing,’’ IEEE Trans.Knowl. Data Eng., vol. 30, no. 8, pp. 1588–1601, Aug. 2018.

[6] L. Kazemi, C. Shahabi, and L. Chen, ‘‘GeoTruCrowd: Trustworthy queryansweringwith spatial crowdsourcing,’’ inProc. 21st Int. Conf. Adv. Geogr.Inf. Syst. (SIGSPATIAL), Orlando, FL, USA, Nov. 2013, pp. 304–313.

[7] H. To, G. Ghinita, and C. Shahabi, ‘‘A framework for protecting workerlocation privacy in spatial crowdsourcing,’’ Proc. VLDB Endowment,vol. 7, no. 10, pp. 919–930, Jun. 2014.

[8] Y. Tong, L. Wang, Z. Zhou, L. Chen, B. Du, and J. Ye, ‘‘Dynamic pricingin spatial crowdsourcing: A matching-based approach,’’ in Proc. 37thACM Int. Conf. Manage. Data (SIGMOD), Houston, TX, USA, Jun. 2018,pp. 773–788.

[9] Y. Tong, L. Chen, and C. Shahabi, ‘‘Spatial crowdsourcing: Challenges,techniques, and applications,’’ Proc. VLDB Endowment, vol. 10, no. 12,pp. 1988–1991, 2017.

[10] J. She, Y. Tong, L. Chen, and C. C. Cao, ‘‘Conflict-aware event-participantarrangement and its variant for online setting,’’ IEEE Trans. Knowl. DataEng., vol. 28, no. 9, pp. 2281–2295, Sep. 2016.

[11] L. Chen and C. Shahabi, ‘‘Spatial crowdsourcing: Challenges and oppor-tunities,’’İIEEE Data Eng. Bull., vol. 39, no. 4, pp. 14–25, Dec. 2016.

[12] Y. Tong, J. She, B. Ding, L. Chen, T. Wo, and K. Xu, ‘‘Online minimummatching in real-time spatial data: Experiments and analysis,’’ Proc. VLDBEndowment, vol. 9, no. 12, pp. 1053–1064, 2016.

[13] Q. Tao, Y. Zeng, Z. Zhou, Y. Tong, L. Chen, and K. Xu, ‘‘Multi-worker-aware task planning in real-time spatial crowdsourcing,’’ in Proc. 23rd Int.Conf. Database Syst. Adv. Appl. (DASFAA), Gold Coast, QLD, Australia,May 2018, pp. 301–317.

[14] P. Cheng, X. Lian, L. Chen, J. Han, and J. Zhao, ‘‘Task assignment onmulti-skill oriented spatial crowdsourcing,’’ IEEE Trans. Knowl. DataEng., vol. 28, no. 8, pp. 2201–2215, Aug. 2016.

[15] Y. Tong, Y. Zeng, Z. Zhou, L. Chen, J. Ye, and K. Xu, ‘‘A unified approachto route planning for shared mobility,’’ Proc. VLDB Endowment, vol. 11,no. 11, pp. 1633–1646, 2018.

[16] R. Zhong, G. Li, K.-L. Tan, and L. Zhou, ‘‘G-tree: An efficient index forKNN search on road networks,’’ in Proc. 22nd ACM Int. Conf. Inf. Knowl.Manage. (CIKM), San Francisco, CA, USA, Oct./Nov. 2013, pp. 39–48.

[17] R.M. Karp, ‘‘Reducibility among combinatorial problems,’’İinComplexityof Computer Computations (The IBMResearch Symposia Series). Boston,MA, USA: Springer, 1972, pp. 85–103.

[18] J. Fakcharoenphol, S. Rao, and K. Talwar, ‘‘A tight bound on approximat-ing arbitrary metrics by tree metrics,’’ in Proc. 35th Annu. ACM Symp.Theory Comput. (STOC), San Diego, CA, USA, Jun. 2003, pp. 448–455.

VOLUME 7, 2019 57381

Y. Liang et al.: OMTARN

[19] D. Gao, Y. Tong, J. She, T. Song, L. Chen, and K. Xu, ‘‘Top-k teamrecommendation in spatial crowdsourcing,’’ in Proc. 17th Int. Conf. Web-Age Inf. Manage. (WAIM), Nanchang, China, Jun. 2016, pp. 191–204.

[20] T. Song et al., ‘‘Trichromatic online matching in real-time spatial crowd-sourcing,’’ in Proc. 33rd IEEE Int. Conf. Data Eng. (ICDE), San Diego,CA, USA, Apr. 2017, pp. 1009–1020.

[21] Y. Tong, J. She, B. Ding, L. Wang, and L. Chen, ‘‘Online mobile micro-task allocation in spatial crowdsourcing,’’ in Proc. 32nd IEEE Int. Conf.Data Eng. (ICDE), Helsinki, Finland, May 2016, pp. 49–60.

[22] H. To, C. Shahabi, and L. Kazemi, ‘‘A server-assigned spatial crowd-sourcing framework,’’ ACM Trans. Spatial Algorithms Syst., vol. 1, no. 1,pp. 2:1–2:28, 2015.

[23] Y. Tong et al., ‘‘Flexible online task assignment in real-time spatial data,’’Proc. VLDB Endowment, vol. 10, no. 11, pp. 1334–1345, 2017.

[24] R. Bar-Yehuda and S. Even, ‘‘A linear-time approximation algorithmfor the weighted vertex cover problem,’’ J. Algorithms, vol. 2, no. 2,pp. 198–203, 1981.

YU LIANG received the B.S. degree in computerscience from Beihang University, Beijing, China,in 2017. He is currently pursuing the Ph.D. degreewith the School of Computer Science and Engi-neering and the Shen Yuan Honors College (anelite program), Beihang University. His researchinterests include crowdsourcing, intelligent tutor-ing system, and program analysis.

WENJUN WU received the Ph.D. degree in com-puter science from Beihang University, Beijing,China. He is currently a Professor with BeihangUniversity. His research interests include intelli-gent tutoring system, crowdsourcing, cloud com-puting, and eScience. He is a member of the ChinaComputer Federation.

KAIXIN WANG is currently pursuing the B.S.degree with the School of Computer Science andEngineering, Beihang University, Beijing, China.His research interests include crowdsourcing,spatio-temporal data, and artificial intelligence.

CHUNMING HU received the Ph.D. degreein computer science from Beihang University,Beijing, China, in 2006. He is currently an Asso-ciate Professor with the School of Computer Sci-ence and Engineering, Beihang University. Hiscurrent research interests include distributed sys-tems, cloud computing, crowdsourcing, and bigdata mining and analytics.

57382 VOLUME 7, 2019