«上一篇 下一篇»
  计算机工程  2020, Vol. 46 Issue (9): 27-34, 43  DOI: 10.19678/j.issn.1000-3428.0057768
0

引用本文  

邢虎, 陈荣, 唐文君. 基于预测算法的在线空间众包任务分配策略[J]. 计算机工程, 2020, 46(9), 27-34, 43. DOI: 10.19678/j.issn.1000-3428.0057768.
XING Hu, CHEN Rong, TANG Wenjun. Online Task Allocation Strategy for Spatial Crowdsourcing Based on Prediction Algorithm[J]. Computer Engineering, 2020, 46(9), 27-34, 43. DOI: 10.19678/j.issn.1000-3428.0057768.

基金项目

国家自然科学基金(61672122);中央高校基本科研业务费专项资金(3132019355)

通信作者

陈荣(通信作者), 教授、博士、博士生导师

作者简介

邢虎(1995-), 男, 硕士研究生, 主研方向为空间众包任务分配;
唐文君, 博士研究生

文章历史

收稿日期:2020-03-17
修回日期:2020-04-21
基于预测算法的在线空间众包任务分配策略
邢虎 , 陈荣 , 唐文君     
大连海事大学 信息科学与技术学院, 辽宁 大连 116026
摘要:根据空间众包任务类型的多样化特点,构建空间众包任务分配模型并提出基于预测算法的在线任务分配策略。在批处理模式下,将最大分数任务分配问题转化为寻找二分图最大权匹配问题,通过匈牙利算法对其进行求解得到每个时间片的最大分数,并利用预测算法使得工人在完成该任务后尽可能处于任务密集区域,避免出现工人没有合适任务可执行的情况发生,实现模型的最优在线任务分配。在滴滴快车数据集上的实验结果表明,与BASIC、LLEP和CDP策略相比,该策略在整个时间段内的总任务分配数量最多能提高10%,具有更高的任务分配效率与质量。
关键词空间众包    任务分配    预测算法    匈牙利算法    约束求解    
Online Task Allocation Strategy for Spatial Crowdsourcing Based on Prediction Algorithm
XING Hu , CHEN Rong , TANG Wenjun     
College of Information Science and Technology, Dalian Maritime University, Dalian, Liaoning 116026, China
Abstract: Based on the diversity of Spatial Crowdsourcing(SC) tasks, this paper constructs a task allocation model for SC, and proposes an online task allocation strategy based on the prediction algorithm.In the batch processing mode, the problem of Maximum Score Assignment(MSA) is transformed into the problem of searching for the maximum weighted bipartite graph matching.The Hungarian algorithm is used to solve the problem to obtain the maximum score of each time interval, and the prediction algorithm is used to ensure workers that have completed the task are in the task-intensive regions as far as possible, so the possibility of workers finding no suitable task to execute is reduced, and the optimal online task allocation of the model is implemented.Experimental results on the real dataset provided by Didi show that compared with the BASIC, LLEP and CDP strategies, the proposed strategy can improve the total number of task assignment in the whole time interval by up to 10%, and has a higher task allocation efficiency and quality.
Key words: Spatial Crowdsourcing(SC)    task allocation    prediction algorithm    Hungarian algorithm    constraint solving    
0 概述

随着移动互联网技术的发展及移动设备计算与感知能力的提高, 空间众包(Spatial Crowdsourcing, SC)技术应运而生, 其能够利用互联网上的零散劳动力来执行具有空间特性的现实任务。空间众包概念由KAZEMI和SHAHABI于2012年[1]提出, 并在近几年得到迅速发展, 被广泛应用于土地利用[2-3]、防灾减灾[4-5]、资源勘查[6]和环境保护[7]等领域, 给人们日常工作和生活带来了巨大变化, 同时为人类社会和经济的发展起到了推动作用。

任务分配问题是空间众包的核心问题, 主要包括批处理模式[1, 8-10]和即时模式[11-12]两种任务分配模式。批处理模式会在较短的时间片内将任务分配给合适的工人。即时模式会在工人一开始加入时就立即分配合适的任务。两种模式在处理动态任务分配时各有优劣, 即时模式能迅速地将任务分配给工人, 但其分配效果难以保证。批处理模式的分配时间较长, 但是分配效果通常优于即时模式, 并且能选择合适的时间片。文献[13]通过实验验证了批处理模式在任务分配上的有效性。因此, 本文将工人和任务属性添加到空间众包任务分配模型中, 并在批处理模式下, 提出基于预测算法的在线任务分配策略(MNTP)。

1 相关工作 1.1 空间众包

文献[14]将众包根据不同标准划分为不同类别, 便于对不同众包问题展开研究。根据空间任务的发布模式, 将空间众包分为服务器端指派任务(Server Assigned Task, SAT)模式[15-16]和工人选择任务(Worker Selected Task, WST)模式[11, 17]。现有任务多数为SAT模式, 因为SC服务器可通过将任务分配给工人来实现对工人的控制。而在WST模式下, 工人根据自己的兴趣选择任务, 而较少受到SC服务器的影响, 很难通过任务分配实现目标优化。因此, 本文基于SAT模式提高任务分配的数量和质量。

根据系统对工人任务信息的了解情况, 将空间众包分为离线和在线两种情况。在离线情况下, 由于系统对工人和任务信息非常了解, 因此可以最大化全局目标函数, 如最大化分配任务数[1], 但是离线空间众包在多数现实场景下为无效, 而在线情况下系统以流方式接收输入并进行立即处理[18], 此时众包工人和任务均为动态变化[19-20], 工人任务信息对于服务器而言为未知, 虽然该情况提升了研究难度, 但其代表了多数SC的实际情况, 因此本文的研究重点为在线情况下的动态任务分配。

1.2 空间众包任务分配

空间众包任务分配常被建模为动态任务分配问题进行求解, 目前已有许多学者提出各种算法来解决该问题。文献[18]提出贪婪策略, 对在线二分匹配问题展开研究。贪婪策略的基本思想是将新到来的工人(任务)分配给当前最接近的未分配任务(工人)。文献[1]提出批处理模式解决动态任务分配问题, 其将连续时间分为多个时间片(即批次), 并尝试在每个时间片中实现任务分配最大化, 因此在每一个时间片中可以将任务分配问题转化为最大流问题, 继而采用经典的Ford-Fulkerson算法求解该问题以及位置熵和工人移动距离等实际问题。文献[11]在此基础上提出最大分数任务分配(Maximum Score Assignment, MSA)问题, 将每个时间片中的任务分配转化为二分图最大权匹配问题, 采用经典的匈牙利算法求解二分图匹配问题。为应对多名工人完成一个任务的情况, 文献[16]提出一种RDB-Sam采样算法来解决空间众包的可靠性及多样性问题, 并设计分治法提高任务分配效率, 即将整个问题实例划分为多个子问题实例, 先求解子问题实例再进行结果合并, 从而在求解效率和有效性之间取得权衡, 但是若子问题之间冲突过于频繁, 则会大幅增加运行时间。

2 空间众包模型及问题定义

本文采取批处理模式解决动态任务分配问题, 将整个时间段分成若干个时间间隔较短的时间片, 假设在每个时间片内的工人和任务均为静态。

定义1 (时间片)给定集合Φ={s1, s2, …}, Φ表示整个时间段, si表示将Φ进行等分后的时间片, 每个时间片内存在不同的工人和任务集合, 在时间片内工人和任务信息均为已知。

2.1 空间众包任务

空间众包任务是整个空间众包活动的起点, 假设T为SC中的任务集合, tiT为集合T中的众包空间任务, 使用ti= < ls, le, Tt, δ, σ, ty>六元组对空间众包任务进行形式化定义, 其中:ls表示任务开始位置; le表示结束位置; Tt表示空间任务提交时间; δ表示任务失效时间; σ表示完成任务所需时间; ty表示任务类型, 不同类型的任务需要具有不同能力的工人完成。工人只有在失效时间Tt+δ前到达开始位置ls才能正常执行任务, 并且只有耗费时间σ达到le才能完成任务。

2.2 空间众包工人

空间众包工人是整个空间活动的重要参与者, 假设W表示SC中工人的集合, wiW为集合W的一名工人, 使用wi= < Id, la, Tw, τ, sk, r>六元组对空间众包工人进行形式化定义, 其中:Id表示工人标识; la= < lat, lng>表示工人当前位置; Tw表示工人开始接受任务的时间; τ表示工人连续工作时间; sk={ty1, ty2, …}表示工人的技能, 代表其擅长的任务类型, 服务器会优先为工人安排其擅长或者倾向于的任务, 以提高工人的积极性和任务完成质量; r表示工人工作半径, 工人会接受其工作半径内的任务。在该模型下工人存在工作时长, 需要在规定时长内才可以接受任务, 而任务要工人花费时间并且任务的完成伴随空间位置的移动。因此, 在该模型下存在很多约束, 增加了问题研究的难度。

2.3 最大分数任务分配问题

任务存在不同类型, 而工人能完成不同类型的任务, 当工人完成任务的类型符合自身技能时, 通常任务完成的质量及积极性都会得到提升。为对该情况进行描述, 本文定义分数概念对上述情况进行衡量。

定义2(任务分配)假设WT表示总任务分配集合, WTi表示时间片si上的所有任务分配策略, 那么每个分配策略wtpWTiwtp= < wj, tk>二元组进行表示, 其中, wjW, tkT。每个任务分配策略代表服务器在满足工人任务双方约束条件的情况下将任务分配给工人执行, 一旦分配就不更改。

定义3(分数)假设gm表示分数, m表示第m个任务分配, 用于衡量分配质量。不同的任务分配会产生不同的分数, 若工人技能正好包含任务类型, 则会得到较高的分数, 称为专业分配, 否则会得到较低的分数, 称为普通分配, 分数的高低由wjtk的匹配情况决定。

定义4(最大分数任务分配问题)在给定时间段Φ={s1, s2, …}内, 在每个时间片si中, 若Gi代表其第si个时间片的分数, 则每个时间片的分数就是分配集合中所有任务之和, 即$G_{i}=\sum\limits_{p=1}^{\left|W_{{\rm T}_{i}}\right|} g_{i}$, 那么该时间段内的总分数$G_{\mathrm{t}}=\sum\limits_{t=1}^{|\Phi|} G_{i}$, 最大分数任务分配问题即使任务分配的总分数最大化。

图 1描述了某个时间片内的工人和任务集合, 工人和任务分布在整个地理空间上, 其中不同颜色表示不同类型。如果工人和任务的颜色相同, 代表其类型一致, 则会得到一个较高的分值。假定颜色相同的专业分配分数为3, 颜色不同的普通分配分数为1。工人只能接受在其工作半径范围内的任务, 即以每个工人为圆心的圆形范围。假设工人满足其他约束, w1能够分配的任务为t1t2t3t6, 其中:t2t3是专业分配, 得到的分配分数为3;t1t6是普通分配, 得到的分配分数为1。本文的目标是通过任务分配策略使得分配分数之和最大化。

Download:
图 1 某个时间片内的工人和任务集合 Fig. 1 Worker and task sets in certain time slice
3 基于预测算法的任务分配策略

本文策略的任务分配模型如图 2所示, 工人和任务将相关信息发送给服务器, 服务器通过策略进行任务分配, 将最合适的任务分配给工人, 通过任务分配实现目标优化。

Download:
图 2 任务分配模型 Fig. 2 Task allocation model
3.1 最大分数的任务集合寻找

由于在每个时间片内工人和任务均为静态, 因此将任务分配转化为静态任务分配问题, 而解决该问题的最佳方法是将最大分数任务分配问题转化为二分图最大权匹配问题。

在图论中, 二分图为一类特殊的图, 二分图的顶点可以分成两个互斥的独立集合UV, 图中所有边的两个顶点分别连接UV中的一个点。设工人和任务两个互不相交的集合分别为WT, 给定一个图G=(V, E), 将工人和任务映射为G的顶点, 保证WT=V, 同时工人和任务之间的关系映射为G的边, ei, jE, 边的起点对应工人wiW, 边的终点对应tjT, 工人、任务及其匹配关系可以用G进行表示, 因此将寻找满足最大分数之和的任务分配集合问题转化为二分图最大权匹配问题。

图 1中的工人、任务及其分配关系对应到二分图上, 例如w1在其工作半径中存在4个任务, 工人能完成4个任务中的1个任务, 由于w1t2t3是相同的颜色, 会得到较高的分数3, 因此w1t2t3的边的权重为3, t1t6是普通匹配, 权重为1, 同理可得另外两位工人和任务的分配关系, 如图 3(a)所示。

Download:
图 3 二分图及其最大分数匹配结果 Fig. 3 Bipartite graph and its maximum score matching result

目前, 解决二分图最大权匹配问题的经典算法为匈牙利算法。在对工人和任务采用匈牙利算法后得到的最大分数匹配结果如图 3(b)所示, 其中实线代表最终分配结果 < w1, t2>、< w2, t6>、< w3, t4>, 得到最大分数为7。该分配策略既能保证在一个时间片内任务分配得到最大分数, 又能通过匈牙利算法求解二分图最大权匹配问题, 从而解决最大分数任务分配问题。

通过观察图 3(b)的匹配结果, 发现经过二分图最大权匹配算法得到的结果不止一个, 例如 < w3, t5>可以代替 < w3, t4>, 此时得到的最大分数仍是7, 同理可更改其他分配集合, 均满足最大分数的要求, 因此可得到多个二分图匹配结果, 为进一步优化提供了可能。

3.2 最大分数的任务集合优化

通过上述分析可以得出, 若存在多个满足最大分数条件的任务分配, 则可以重新定义不同的权重, 采用约束求解方法对上述解进行进一步优化, 定义如下指示变量:

$ {x_{j,k}} = \left\{ {\begin{array}{*{20}{l}} {1,{e_{j,k}} \in {W_{{{\rm{T}}_i}}}}\\ {0,{\rm{ 其他 }}} \end{array}} \right. $

其中:xj, k是一个指示变量, 表示任务tk是否被分配给工人wj, 若是, 则为1, 否则为0;WTi代表时间片si二分图中的所有任务分配集合。令fmax为匈牙利算法求得的最大权之和, 并将其作为约束加入到整数规划中, 在最大权的基础上最小化成本, 其目标和约束具体如下:

$ \begin{array}{*{20}{l}} {\min \sum\limits_{j,k} {{x_{j,k}}} {c_{j,k}}}\\ {{\rm{ s}}{\rm{.t}}{\rm{. }}\sum\limits_{j,k} {{x_{j,k}}} {w_{j,k}} = {f_{\max }}}\\ {\forall {w_j} \in {W_{{s_i}}},\sum\limits_k {{x_{j,k}}} \le 1;\forall {t_k} \in {T_{{s_i}}},\sum\limits_j {{x_{j,k}}} \le 1} \end{array} $

其中, cj, k为重新定义的权重, 其对上文得到的任务分配的解做进一步优化。

为掌握不同时间片的任务分布情况, 本文使用网格法对整个地理区域的任务分布进行量化, 将当前所在区域划分为若干网格, 不同网格中会存在不同数量的任务, 同时在不同时间片上每个网格内的任务数量也不尽相同。因此, 需统计每个时间片内不同网格中的任务数量并将其作为训练集, 针对数据选择合适的分类器或者回归模型进行预测, 从而预测出任务所在网格在不同时间片内的任务数量。假设ni(t)表示任务分布情况, 将${c_{j, k}} = \frac{1}{{1 + n\left( {{t_k}} \right)}}$作为整数规划中的最小成本加入到整数规划计算过程中, 这样得到的任务分配既能保证当前时间片分数之和最大, 又能使得工人在完成本次任务后位于任务较多的区域, 从而大幅提升工人分配到任务的概率, 减少工人资源的浪费, 提高任务分配甚至是专业分配的概率, 进而提升分配总分数。

4 任务分配算法设计

本文首先采用预测算法对任务进行初步分配, 然后在保证每个时间片内任务分配分数最大化的同时, 尽可能地将更适合工人的任务进行优先分配, 保证工人在完成任务后能够迅速分配到新任务, 防止工人资源的浪费, 同时能提高任务分配质量。任务分配算法的伪代码具体如下:

算法1  任务分配算法

输入  开始时间片Ts、结束时间片Te、时间片si、工人集合Wi、空间任务集合Ti、工人工作半径r

输出  任务分配集合WTi

1.Wp=ϕ;//初始化工人池中的工人集合

Tp=ϕ;//初始化任务池中的任务集合

2.for si←Ts to Te do

Wa=ϕ;//初始化初步符合分配条件的工人集合

Ta=ϕ;//初始化初步符合分配条件的任务集合

3.for wj∈Wp do

4.if wj.Tw=si then Wi←wj; end if

5.end for

6.for tk∈Tp do

7.if tk.Tt=si then Ti←tk; end if

8.end for

9.for wj∈Wi do

Tj=ϕ;//初始化工人wj的候选空间任务集合

10.for tk∈Ti do

11. if distance < wj, tk>≤r & & wj.τ≥tk.σ then

Tj←tk, Ta←tk; end if

12.if Tj≠ϕ Wa←wj; end if

13.end for

14.end for

15.将Wa和Ta通过匈牙利算法求出WTh和最大分数Gi;

16.令${{\rm{c}}_{{\rm{j, k}}}} = \frac{1}{{1 + {\rm{n}}\left( {{{\rm{t}}_{\rm{k}}}} \right)}}$构建目标和约束条件进行约束求解:

$ \begin{array}{*{20}{l}} {\min \sum\limits_{{\rm{j, k}}} {\frac{{{{\rm{x}}_{{\rm{j, k}}}}}}{{{\rm{1 + n}}\left( {{{\rm{t}}_{\rm{k}}}} \right)}}} }\\ {{\rm{ s}}{\rm{. t}}.\sum\limits_{{\rm{j, k}}} {{{\rm{x}}_{{\rm{j, k}}}}} {\rm{g}}\left( {{{\rm{w}}_{\rm{j}}}{\rm{, }}{{\rm{t}}_{\rm{k}}}} \right){\rm{ = }}{{\rm{G}}_{\rm{i}}}}\\ {\forall {{\rm{w}}_{\rm{j}}} \in {{\rm{W}}_{\rm{a}}}{\rm{, }}\sum\limits_{\rm{k}} {{{\rm{x}}_{{\rm{j, k}}}}} \le 1}\\ {\forall {{\rm{t}}_{\rm{k}}} \in {{\rm{T}}_2}, \sum\limits_{\rm{j}} {{{\rm{x}}_{{\rm{j, k}}}}} \le 1} \end{array} $

17.Return WTi

18.end for

19.Update(Wp);

Update(Tp)

任务分配算法的输入为工人和任务集合, 输出为任务分配集合, 算法第1行~第14行将可继续分配的工人和任务根据约束筛选出能够进行分配的工人和任务集合。第15行是应用匈牙利算法进行工人和任务的分配, 得到初步解及该时间片的最大化分数。第16行~第18行是通过约束求解过程既能得到最大分数, 又能使工人完成任务后出现在任务分布较多的区域。第19行是更新工人池和任务池中的信息, 该步骤是实现动态更新的关键, 因为工人和任务在每个时间片内不断变化, 需要不断更新工人和任务信息, 并将过期失效的工人和任务从工人池和任务池中删除, 而能继续出现的工人和任务更新对应的时间片和位置, 从而使该模型更符合实际空间众包。由于工人在未匹配的情况下并不表示静止, 通常会在某个固定范围内自由移动, 因此在工人和任务动态变化的情况下, 能更好地验证本文任务分配算法的有效性。

5 实验结果与分析

本文实验采用滴滴快车在西安和成都两个城市2019年11月某一天的司机轨迹数据, 提取司机和订单数据分别作为工人和任务数据集, 共4组数据集进行实验, 其中数据集1和数据集2为西安市内2019年11月某一天的工人和任务数据集, 数据集3和数据集4为成都市内2019年11月某一天的工人和任务数据集。实验分为预测实验和分配实验两部分。

5.1 预测实验

在预测实验中, 本文使用常见的Decision Table、K-Star、Multilayer Perceptron、Zero-R、Bagging、Vote、Polynomial等预测算法进行对比实验, 评价标准具体如下:

1) 错误率(Error Rate, ER)

$ {E_{{\rm{ER}}}} = \frac{1}{t}\sum\limits_{i = 1}^t {\frac{{\sum\limits_{j = 1}^g {\left| {{a_{i, j}} - {{\tilde a}_{i, j}}} \right|} }}{{\sum\limits_{j = 1}^g {{a_{i, j}}} }}} $

其中:ai, j表示网格j在时间片i中预测的任务数量; ${{\tilde a}_{i, j}}$表示测试集中网格j在时间片i内实际存在的任务数量; EER表示在整个时间段内, 不同网格中每个时间片的预测值和实际值的相对误差均值, 用于衡量预测准确性, 该值越小代表预测效果越好。

2) 均方根对数误差(Root Mean Squared Logarithmic Error, RMSLE)

$ {R_{{\rm{RMSLE}}}} = \frac{1}{t}\sum\limits_{i = 1}^t {\sqrt {\frac{1}{g}\sum\limits_{j = 1}^g {{{\left( {{{\log }_a}\left( {{a_{i, j}} + 1} \right) - {{\log }_a}R\left( {{{\tilde a}_{i, j}} + 1} \right)} \right)}^2}} } } $

其中, RRMSLE表示在整个时间段内, 不同网格中每个时间片的预测值对数和实际值对数的均方根, 用于衡量预测准确性, 该值越小代表预测效果越好。

5.1.1 不同预测算法对预测结果的影响实验

该实验给出了相同参数和数据集下不同预测算法的ER和RMSLE值, 如表 1所示, 其中最优结果加粗显示。通过比较发现:在相同参数下, Zero-R和Vote两种算法的预测结果最差, 可能是因为两种算法的模型简单, 作为基本算法进行对比, 而其他预测算法的结果比较接近, 其中Polynomial算法的预测结果为最优, 说明当前数据集能够拟合成一条较合理的曲线使得预测结果较准确, 因此在下文实验中会继续验证不同预测算法在不同数据集和网格划分数量下的性能表现, 进而确定每个数据集的最优预测算法。

下载CSV 表 1 7种预测算法的错误率和均方根对数误差对比 Table 1 Comparison of ER and RMSLE of seven prediction algorithms
5.1.2 不同数据集对预测结果的影响实验

该实验给出了不同数据集和相同参数下不同预测算法的ER和RMSLE值, 如图 4图 5所示。实验结果表明, 数据集1和数据集2在预测效果上要差于数据集3和数据集4, 因为成都数据集在任务数量上要多于西安数据集, 且在每个网格中的任务数量较多, 所以在预测时产生的误差及其带来的影响会更小, 同时发现无论数据集如何变化, Polynomial算法效果均为最优。

Download:
图 4 不同数据集下7种算法的错误率对比 Fig. 4 Comparison of ER of seven algorithms under different datasets
Download:
图 5 不同数据集下7种算法的均方根对数误差对比 Fig. 5 Comparison of RMSLE of seven algorithms under different datasets
5.1.3 不同网格划分数量对预测结果的影响实验

该实验在相同数据集下验证不同网格划分数量对预测结果的影响, 得到的结果如图 6图 7所示, 分别描述了算法在不同网格划分数量下ER和RMSLE的变化情况, 其中网格划分数量为6代表将当前的区域划分成为6×6个网格, 然后预测不同网格在不同时间片内的任务数量, 可以看出不同算法的预测结果随着网格划分数量的增多而逐渐变差, 这是因为随着网格划分数量的增多, 在网格内的任务数量越来越少, 那么对异常值就会越来越敏感, 较小的误差也会产生较大的影响。通过上述实验发现, 在不同数据集和网格划分数量的情况下, Polynomial算法的预测效果均为最优, 因此本文采用Polynomial算法进行任务分配预测。

Download:
图 6 不同网格划分数量下7种算法的错误率比较 Fig. 6 Comparison of ER of seven algorithms with the number of different grid partition
Download:
图 7 不同网格划分数量下7种算法的均方根对数误差对比 Fig. 7 Comparison of RMSLE of seven algorithms with the number of different grid partition
5.2 分配实验

在分配实验中采用文献[11]提出的BASIC、CDP和LLEP策略以及本文基于预测算法的在线任务分配策略(MNTP)进行对比, 评价标准具体如下:

1) 总分数, 表示整个时间段内任务分配的分数之和, 在实验中专业分配为3分, 普通分配为1分, 分数越大代表分配效果越好。

2) 总分配数量, 表示整个时间段内总任务分配的数量, 其值越大代表任务分配越多, 分配效果越好。

3) 总专业分配数量, 表示整个时间段内的总专业分配任务数量, 其值越大代表专业分配越多, 分配效果越好。

4) 平均工人移动距离, 表示工人到达分配任务起点的平均欧式距离, 距离越短, 代表工人需要移动的范围越小, 对于工人而言能够降低成本, 平均工人移动距离越小, 代表分配效果越好。

5.2.1 不同任务分配策略对分配结果的影响实验

该实验给出了相同参数和数据集下BASIC、CDP、LLEP和MNTP策略在不同评价标准下的任务分配性能比较情况, 如表 2所示, 其中最优结果加粗显示。可以看出, MNTP策略在总分数、总分配数量和总专业分配数量上相对于其他策略约分别能提高11 %、10 %和11 %, 该实验结果验证了上文理论分析的正确性以及MNTP策略的有效性。

下载CSV 表 2 4种任务分配策略的性能比较 Table 2 Performance comparison of four task allocation strategies
5.2.2 不同工人工作半径对分配结果的影响实验

该实验给出了不同工人工作半径下BASIC、LLEP、CDP和MNTP策略的总分数, 如图 8~图 11所示。可以看出, 随着工人工作半径的增大, 4种策略在4个评价标准上的数值均产生了不同程度的增加, 由于随着工人工作半径的增大, 每个工人能够分配的任务数量也在增加, 那么任务能够被分配出去的概率也随之增大, 因此总分数、总分配数量和总专业分配数量均呈上升趋势, 同时因为工人半径增大, 分配的任务也随之变得更远, 所以平均工人移动距离也有所增加。不同策略之间的情况也不尽相同, MNTP策略和其他策略的差距在不断缩小, 这是由于随着工人工作半径的增加, 工人能够分配的任务越来越多, 在任务数量过多时, 工人能以较大概率分配到执行任务, 这就会导致MNTP策略的作用越来越小, 因此4种策略的分配效果趋向于一致, 但是MNTP策略始终能取得最优的任务分配效果, 从而验证其在不同工人工作半径下的有效性。

Download:
图 8 工人工作半径对不同策略总分数的影响 Fig. 8 The effect of worker working radius on total score of different strategies
Download:
图 9 工人工作半径对不同策略总分配数量的影响 Fig. 9 The effect of worker working radius on the number of total allocation of different strategies
Download:
图 10 工人工作半径对不同策略总专业分配数量的影响 Fig. 10 The effect of worker working radius on the number of total expertise allocation of different strategies
Download:
图 11 工人工作半径对不同策略平均工人移动距离的影响 Fig. 11 The effect of worker working radius on average worker moving distance of different strategies
5.2.3 不同数据集对分配结果的影响实验

该实验给出了不同数据集下不同策略的任务分配结果, 如表 3~表 6所示, 其中最优结果加粗显示。可以看出, 在不同数据集上MNTP策略的分配效果均为最优, 在数据集1和数据集2上总分数、总分配数量和总专业分配数量最多分别能提高3 %、4 %和7 %, 在数据集3和数据集4中总分数、总分配数量和总专业分配数量最多分别能提高11 %、10 %和11 %。不同数据集的提升效果不同的主要原因为工人和任务的数量比例和分布不同, 西安数据集的工人任务少, 在相同的网格划分数量下预测效果要比成都数据集差很多, 并且西安数据集的任务分配比成都数据集更为均衡, 同时工人和任务的平均距离相对较远, 任务被分配的概率本身就要小于成都数据集, 因此在此情况下利用MNTP策略的任务分配提升效果相对会差一些, 但其任务分配性能仍为最优。

下载CSV 表 3 不同数据集下4种策略的总分数对比 Table 3 Comparison of total score of four strategies under different datasets
下载CSV 表 4 不同数据集下4种策略的总分配数量对比 Table 4 Comparison of the number of total allocation of four strategies under different datasets
下载CSV 表 5 不同数据集下4种策略的总专业分配数量对比 Table 5 Comparison of the number of total expertise allocation of four strategies under different datasets
下载CSV 表 6 不同数据集下4种策略的平均工人移动距离对比 Table 6 Comparison of average worker moving distance of four strategies under different datasets  
6 结束语

本文通过定义分数概念衡量任务类型和工人技能的匹配度, 对专业分配赋予较高的分数, 并利用最大分数任务分配问题保证任务分配的专业性。在此基础上, 对空间众包实例中的工人和任务属性进行分析, 构建空间众包任务分配模型, 针对最大分数任务分配问题设计基于预测算法的任务分配策略, 将区域划分为网格并对每个网格在不同时刻的任务数量进行预测, 保证工人在完成任务后尽可能处于任务密集区域, 从而提高整个时间段内任务分配的总分数。实验结果验证了本文策略的有效性。后续将引入深度学习技术提升Polynomial算法的预测准确性, 进一步提高任务分配的数量与质量。

参考文献
[1]
KAZEMI L, SHAHABI C.GeoCrowd: enabling query answering with spatial crowdsourcing[C]//Proceedings of the 20th International Conference on Advances in Geographic Information Systems.New York, USA: ACM Press, 2012: 189-198.
[2]
FRITZ S, MCCALLUM I, SCHILL C, et al. Geo-Wiki.Org:the use of crowdsourcing to improve global land cover[J]. Remote Sensing, 2009, 1(3): 345-354. DOI:10.3390/rs1030345
[3]
XING Hanfa, MENG Yuan, HOU Dongyang, et al. Employing crowdsourced geographic information to classify land cover with spatial clustering and topic model[J]. Remote Sensing, 2017, 9(6): 602-608. DOI:10.3390/rs9060602
[4]
TWIGG J, CHRISTIE N, HAWORTH J, et al. Improved methods for fire risk assessment in low-income and informal settlements[J]. International Journal of Environmental Research and Public Health, 2017, 14(2): 139-158. DOI:10.3390/ijerph14020139
[5]
LUE E, WILSON J P, CURTIS A. Conducting disaster damage assessments with spatial video, experts, and citizens[J]. Applied Geography, 2014, 52: 46-54. DOI:10.1016/j.apgeog.2014.04.014
[6]
PETTINARI M L, OTTMAR R D, PRICHARD S J, et al. Development and mapping of fuel characteristics and associated fire potentials for South America[J]. International Journal of Wildland Fire, 2014, 23(5): 643-654. DOI:10.1071/WF12137
[7]
BOULOS M N K, RESCH B, CROWLEY D N, et al. Crowdsourcing, citizen sensing and sensor Web technologies for public and environmental health surveillance and crisis management:trends, OGC standards and application examples[J]. International Journal of Health Geographics, 2011, 10(1): 67-78. DOI:10.1186/1476-072X-10-67
[8]
TO H, SHAHABI C, KAZEMI L. A server-assigned spatial crowdsourcing framework[J]. ACM Transactions on Spatial Algorithms and Systems, 2015, 1(1): 1-28.
[9]
CHENG Peng, LIAN Xiang, CHEN Lei, et al. Task assignment on multi-skill oriented spatial crowdsourcing[J]. IEEE Transactions on Knowledge and Data Engineering, 2016, 28(8): 2201-2215. DOI:10.1109/TKDE.2016.2550041
[10]
HU Huiqi, BAO Zhifeng, LI Guoliang, et al.Crowdsourced POI labelling: location-aware result inference and task assignment[C]//Proceedings of the 32nd International Conference on Data Engineering.Washington D.C., USA: IEEE Press, 2016: 61-72.
[11]
DENG D X, SHAHABI C, DEMIRYUREK U.Maximizing the number of worker's self-selected tasks in spatial crowdsourcing[C]//Proceedings of the 21st ACM SIGSPATIAL International Conference on Advances in Geographic Information Systems.New York, USA: ACM Press, 2013: 324-333.
[12]
LI Y, YIU M L, XU W J.Oriented online route recommendation for spatial crowdsourcing task workers[C]//Proceedings of International Symposium on Spatial and Temporal Databases.Berlin, Germany: Springer, 2015: 137-156.
[13]
LI Yiming, FANG Jingzhi, ZENG Yuxiang, et al. Two-sided online bipartite matching in spatial data:experiments and analysis[J]. GeoInformatica, 2020, 24(1): 175-198.
[14]
GUMMIDI S R B, XIE X K, PEDERSEN T B. A survey of spatial crowdsourcing[J]. ACM Transactions on Database Systems, 2019, 44(2): 1-46.
[15]
CHENG Peng, LIAN Xiang, CHEN Lei, et al.Prediction-based task assignment in spatial crowdsourcing[C]//Proceedings of the 33rd International Conference on Data Engineering.Washington D.C., USA: IEEE Press, 2017: 997-1008.
[16]
CHENG Peng, LIAN Xiang, CHEN Zhao, et al. Reliable diversity-based spatial crowdsourcing by moving workers[J]. Proceedings of the VLDB Endowment, 2015, 8(10): 1022-1033. DOI:10.14778/2794367.2794372
[17]
DENG D X, SHAHABI C, DEMIRYUREK U, et al. Task selection in spatial crowdsourcing from worker's perspective[J]. GeoInformatica, 2016, 20(3): 529-568. DOI:10.1007/s10707-016-0251-4
[18]
KARP R M. On-line algorithms versus off-line algorithms:how much is it worth to know the future?[J]. Mathematical Social Sciences, 1993, 25(3): 307-315.
[19]
ASGHARI M, SHAHABI C.An on-line truthful and individually rational pricing mechanism for ride-sharing[C]//Proceedings of the 25th ACM SIGSPATIAL International Conference on Advances in Geographic Information Systems.New York, USA: ACM Press, 2017: 1-10.
[20]
TONG Yongxin, WANG Libin, ZHOU Zimu, et al. Flexible online task assignment in real-time spatial data[J]. Proceedings of the VLDB Endowment, 2017, 10(11): 1334-1345. DOI:10.14778/3137628.3137643