ICDE-2020 论文简析:依赖感知空间众包中的任务分配 - Task Allocation in Dependency-aware Spatial Crowdsourcing

  • 研究背景
  • 研究目标
  • 问题挑战
  • 作者贡献
  • 问题定义
  • 1 基本概念
  • 2 证明DA-SC问题是NP-hard
  • 3 DASC_Greedy
  • 4 DA-SC博弈
  • 数据集
  • 实验分析
  • 困惑/思考
  • 附件

研究背景

在一些空间众包场景(例如:房屋修复和举办体育比赛)中,其中的任务之间可能有一些依赖关系。具体来说,有一个任务只有在已经分配了它的相关任务时才能被分配。

但是,以前的研究:多技能/复杂任务导向的空间众包,则侧重于将一组多技能工人分配给特定的复杂任务,以便任务所需的技能可以完全由分配工人的技能集的联合覆盖。然而, 在实践中,每个复杂任务可以是多个子任务的组合,并且子任务之间存在依赖关系。如果直接使用以前的解决方案,那么子任务之间的依赖性将导致分配的效率变得非常低(即一些被分配的工人需要等待其子任务的依赖性得到满足后才能去执行该任务)。

研究目标

  • 由此,本文作者定义了依赖感知空间众包(DA-SC),它的重点是在依赖关系、工人技能、移动距离和截止日期的约束下找到最优的工人和任务分配,以最大限度地实现成功分配任务,使得分配的工人和任务对的总数最大化。

举例:在示例中,空间众包平台有三个工作人员(R1−R3)和五个任务(T1−T5),如下图(a)所示,其中破折号箭头线指向从任务到其依赖任务。关于工人和任务的详细情况见表一和表二。


如果平台贪婪地将最近的技能满意的工作人员分配给任务,但不考虑依赖关系,则分配由图(b)中的红色箭头显示。请注意,由于t1是t2的依赖项,因此未分配赋值(w1,t2)无效。同样,赋值(w3,t3)也无效。然后,只能每个工人执行一项任务。

但是,如果平台考虑到依赖关系,则该分配将由图1(c)中的红色箭头显示。每个工作人员都可以被分配给一个任务,并且可以满足每个被分配的任务的依赖关系。因此,可以执行3个任务。

问题挑战

  • DA-SC问题是NP-hard的;

作者贡献

作者从子集和优化问题减少上,先证明了 DA-SC 问题是 NP-hard 的。然后,用“ DA-SC 贪心算法”和 “DA-SC 博弈算法”两种近似算法来解决 DA-SC 问题,它们在技能、依赖关系、距离和截止日期的约束下,有效地获得了每个批处理过程的近似最优结果,并证明近似比。

作者主要贡献如下:

  • 将依赖感知的空间众包(DA-SC)问题形式化,并证明了它是 NP-hard 的;
  • 提出了两种基于批处理的近似算法,即贪心和博弈论方法,这两种方法都保证了最终赋值结果的近似边界;
  • 在真实数据集和合成数据集上进行了广泛的实验,并在展示了所提方法的效率和有效性;

问题定义

1 基本概念

在介绍问题前先,介绍几个定义:

  • 工人:表示为 w=<lw , sw , ww , vw , dw , WSw>,时间戳 sw 时出现在平台上,初始位置是lw,并在最多等待 ww时间内分配任务。此外,工人 w 随速度 vw移动,具有最大移动距离 dw。此外,每个工人 w 都有一套技能 WSw⊆Ψ(Ψ={ψ1 , ψ2 , ·· , ψr}是 r 项能力/技能的集合)。

  • 依赖感知空间任务:表示为:t=<lt , st , wt , rst , Dt>。任务请求者创建一个依赖感知的空间任务 t,它需要具有技能 rst 的工作人员移动到特定的位置 lt 并在截至时间 st + wt之前开始服务。同时,当请求者提出任务时,他们可以指定任务之间的依赖性关系。对于任何任务 t,只有在其上一个任务Dt被执行之后才能继续进行。

  • 依赖感知空间众包问题:给定一组工人集 W 和一组任务集 T,DA-SC 问题是在W 和T之间获得一个分配集 M,以最大限度地增加分配的工人和任务对的数量

    其中I(w,t)=1,如果任务对(w,t)在分配集M中匹配,否则I(w , t)=0,从而满足以下约束:

2 证明DA-SC问题是NP-hard

证明过程参考D. S. Johnson发表论文“Approximation algorithms for combinatorial problems”中的子集和优化问题(SSO)

由于SSO是已知的NP-hard的,所以DA-SC也是NP-hard的,这完成了证明。

因此,由于DA-SC问题的NP-hard,所以作者提出了两种近似算法,即DASC_Greedy DA-SC博弈,以有效地解决DA-SC问题,并证明了每个批处理的近似比。具体来说,空间众包平台为每个恒定的时间间隔(例如,5秒)为工人分配每批处理的任务。在每个批处理进程,服务器应用近似算法,在依赖关系、技能、移动距离和最后期限的约束下为工人分配任务,从而使在当前批处理过程中完成的任务的数量最大化。

3 DASC_Greedy

作者提出了一种贪婪的方法来快速获得有界的结果,将每个任务及其相关任务组合为一个关联任务集,并迭代地将最大的关联任务集分配给工人。

定义:将任务 ti 及其依赖任务表示为一个关联任务集(即 tci={ti}∪Di)。
例如:在实例 1 中, 任务 t4 及其依赖任务 t5 组为关联任务集{t4,t5}。在 DASC_Greedy 中,每次我们将分配一组 工人到关联任务集 tci,tci 中的任务可以由指定的工人完全完成。尤其是,在分配一个关联 任务集 tci 后,我们将更新包含 tci 中任何任务的其他相关关联任务集。特别地,我们将从这 些相关的关联任务集中删除这些任务。例如,在例 1 中,有五个关联任务集{{t1},{t1,t2}, {t1,t2,t3},{t4},{t4,t5}}等。如果我们首先选择关联任务集来工作,那么其余的关联任务集将被更新为{{t2},{t2,t3},{t4},{t4,t5}}。

算法:下图显示了DASC贪心算法的伪码,算法贪心地选择在每次迭代中大小最大的关联任务集。

  • 生成关联任务集TCb(第1行)。
  • 在每次迭代中,我们选择一个关联的任务集,它可以由活动的工人来完成,并且具有最大的大小(第2-10行)。
  • 对于TCb中的每个关联任务集tc,试图找到一组可以通过匈牙利算法来完成任务集tc的工人集tw。(第5行)
  • 如果可以找到工作人员集tw,则将<tw,tc>添加到候选人员集C中(第6-7行)。
  • 我们将其关联任务集具有的最大的工作分配从候选任务集C移动到Mb(第8行)。
  • 更新TCb中的关联任务集和工作人员集Wb(第9行)。

接着作者证明了有关DASC_Greedy的几个定理:

  • ① DASC_Greedy算法的时间复杂度为O(min{nb,mb} · mb),表明DASC贪婪可以在多项式时间内得到结果;
  • ② Sum(M)是单调和子模块化。
  • DASC_Greedy返回的匹配大小至少是

4 DA-SC博弈

作者将DA-SC问题建模为一个策略博弈,其中每个工人对应一个玩家:他的目标是找到最大限度地发挥自己效用的任务。然后,提出了一种博弈论方法,并对其收敛速度和结果质量进行了理论分析。

最佳回应框架
在博弈策略中,玩家在相同的资源上相互竞争,以优化他们各自的目标功能。在这个框架下,每个玩家总是试图选择 一种策略来最大化他自己的效用,而不考虑他的选择对其他玩家的目标的影响,玩家在相同的资源上相互竞争,以优化各自的目标函数。


该框架的输入是一个 博弈策略,它可以用一个元组来形式地表示:

其中,Wb是在该批次b中设置的工作人员,Wb包含出现在前一批中但仍在等待分配的工人和刚刚出现在这批中的新工人;Sw表示工作人员w在博弈过程中为优化他的函数Uw而可以承担的所有可能的任务;Uw的优化取决于用户w自身的策略以及其他工人的策略。

为了表达所有工人的客观职能,引入了一个单一的职能Φ,称为潜在博弈中的潜在函数,它构成了一类特殊的策略博弈。

如果存在一个潜在的函数Φ,那么一个潜在的博弈就是精确的。对于潜在博弈,最佳响应框架总是收敛到纯纳什均衡。因此,可以利用算法2来得到DA-SC问题的解。

每个w∈W工人的目标是找到由下述方程式3表示的使其自身总效用最大化的任务sw:

其中α是归一化参数。由于依赖性约束,如果分配了其依赖性任务,就可以获得每个任务的实用程序,由于每个任务的效用都受其本身的分配及其依赖任务的分配的影响,所以将每个任务t的效用分为两部分(“自我效用”+“依赖效用”)。

换句话说,每个任务的实用程序由两个部分组成,第一部分是它本身的效用,以及来自其依赖性集包含此任务的任务中的额外效用。并且,由于每个任务可以在最佳响应过程中分配给多个工人,所以将任务t的效用划分为nwt个共享,其中nwt是试图执行相同任务t的工人的数量,并且每个试图执行此任务的工人都有一个效用的份额。因此,在方程式3中,第一项是自我效用,而第二项是来自包含此任务sw的依赖项集的共享依赖效用的总和。对于执行任务t的工人,自我效用表示他/她自己在执行任务t上的效用,依赖效用表示根据任务t执行任务的潜在未来效用。因此,对于一个明智的工人来说,最大化她的Uw(sw,sw¯)是他/她的合理选择。

DASC_Game Alogrithm:算法3展示了DASC博弈算法的伪代码。

  • DASC博弈将每个员工从员工可能的任务集Sw中分配一个随机任务t(第1-2行);
  • 进入最佳响应框架:每个工人w的每个迭代中,它计算用每个可能的任务分配工人w的效用,然后将与最大效用关联的任务分配给工人w。当没有工作人员在一轮中更改其分配的任务时,迭代将终止。(第3-11行);
  • 根据每个工人的选定任务,我们可以得到分配集Mb(第12行);
  • 对于一个以上的工人想要做的任务,随机选择一个工人来完成任务。通过一些启发式方法可以提高DASC博弈的性能。

数据集

Meetup data set from meetup.com between Oct. 2011 and Jan. 2012. There are 5,153,886 users, 5,183,840 events, and 97,587 groups in the Meetup data set。(Hong kong)

Meetup数据集中每个用户与一个位置和一组标签关联,每个组与一组标签关联,每个事件与一个位置和创建事件的组相关联。组的标记被视为组创建的事件的标记。使用Meetup数据集中用户的位置和标签来初始化DA-SC中工作人员的位置和技能,其中每个标签被认为是一种技能。此外,我们利用事件的位置和标签来初始化实验中的位置和所需的任务技能。每个任务都将取决于那些包含两个以上的公共标记并在它之前创建的其他任务。

实验分析

Baseline methods:

①小规模数据集中:

  • Closest
  • Random

②大规模数据集中:

  • D&C
  • G&G
  • GT

实验对比效果如下图所示:


通过实验对比,可以看到本文作者提出的两种方法在运行时间和整体得分上具有良好的接受度。

困惑/思考

  • 现有的研究方法没有考虑子任务之间的依赖关系,因此在一些众包场景下指定的工作人员需要等到它们的子任务准备好了才能继续进行,这使得现有的方法不高效。
  • 在本文中,作者考虑了子任务之间的依赖关系,提出了依赖感知空间众包问题,这是空间众包中基于依赖子任务分配的一个新问题;并提出了两种近似算法(贪婪算法和博弈论方法),以有效地解决DA-SC中每个批处理过程分配工作和任务对的数量的理论边界问题,这是以前从来没有被研究过的。
  • 读完整篇文章,觉得本文作者考虑的“依赖”角度是比较有意思的一个点,且作者在计算分析中能将任务间依赖关系定义量化的解法,就十分强。感觉这任务分配上的定制化“感知数据/特定关系”可以尝试去进行归一化的量化分析,弄个能普适优化其他众包数据集分析的算法。
  • 最后,呜呜呜 说实话这篇论文的数学分析推理部分我没有认真看,是直接看的定理使用,因为这些推理不是我主要关注的地方,各位大佬有兴趣的可以看作者给的附录推理去研究一哈。

附件

  • 作者讲解视频地址:https://www.youtube.com/watch?v=FpkiicbzuUE
  • 作者原文(有积分的支持一下吖,没有的也可以私信我邮箱):https://download.csdn.net/download/Fama_Q/15809095
  • 论文中文翻译版(缺少实验部分):https://download.csdn.net/download/Fama_Q/15809175

ICDE-2020 论文简析:依赖感知空间众包中的任务分配 - Task Allocation in Dependency-aware Spatial Crowdsourcing相关推荐

  1. ICDE-2020 论文简析:空间众包中的预测任务分配 : 一种数据驱动的方法 Predictive Task Assignment in Spatial Crowdsourcing

    ICDE-2020 论文简析:空间众包中的预测任务分配:一种数据驱动的方法 Predictive Task Assignment in Spatial Crowdsourcing: A Data-dr ...

  2. AAAI 2017论文简析:利用可拍照移动设备感知空气质量---Crowdsensing Air Quality with Camera-enabled Mobile Devices

    AAAI 2017论文简析:利用可拍照移动设备感知空气质量 论文思想 论文背景 论文工作 解决方法 总结 补充 论文思想 利用群智感知的思想通过可拍照的移动设备去监测环境空气质量 (即将智能移动设备转 ...

  3. ICDE2020论文简析:空间众包实时交叉在线匹配 - Real Time Cross Online Matching in Spatial Crowdsourcing

    ICDE2020论文简析:空间众包实时交叉在线匹配 - Real Time Cross Online Matching in Spatial Crowdsourcing 研究现状 作者贡献 概念定义 ...

  4. [2020-ECCV]PIPAL-a Large-Scale Image Quality Assessment Dataset for Perceptual Image Restoration论文简析

    [2020-ECCV] PIPAL: a Large-Scale Image Quality Assessment Dataset for Perceptual Image Restoration 论 ...

  5. [2021-ICCV] MUSIQ Multi-scale Image Quality Transformer 论文简析

    [2021-ICCV] MUSIQ: Multi-scale Image Quality Transformer 论文简析 论文:https://arxiv.org/abs/2108.05997 代码 ...

  6. [2020-CVPR] Dynamic Region-Aware Convolution 论文简析

    [2020-CVPR] Dynamic Region-Aware Convolution 论文简析 论文地址:https://arxiv.org/abs/2003.12243 参考代码地址(非官方): ...

  7. SIGMOD 2021 论文简析:当公交网络连接满足通勤需求时的公共交通规划 Public Transport Planning

    SIGMOD-2021 论文简析:当公交网络连接满足通勤需求时的公共交通规划 - Public Transport Planning: When Transit Network Connectivit ...

  8. [2021-CVPR] Jigsaw Clustering for Unsupervised Visual Representation Learning 论文简析及关键代码简析

    [2021-CVPR] Jigsaw Clustering for Unsupervised Visual Representation Learning 论文简析及关键代码简析 论文:https:/ ...

  9. [2021-CVPR] Fine-grained Angular Contrastive Learning with Coarse Labels 论文简析

    [2021-CVPR] Fine-grained Angular Contrastive Learning with Coarse Labels 论文简析 论文地址:https://arxiv.org ...

最新文章

  1. 系列博文-Three.js入门指南(张雯莉)-静态demo和three.js功能概览
  2. VS 之 InstallShield Limited Edition for Visual Studio 2015 图文教程
  3. ABAP Development Tools的语法高亮实现原理
  4. 电子设计从零开始 第一章总结
  5. 【原创】tarjan算法初步(强连通子图缩点)
  6. Browser增加下载路径选择功能
  7. 【JAVA SE】第三章 运算符、条件语句、switch结构、while循环、do…while循环、for循环、break关键字以及break和continue关键字
  8. java annotations详解_Java Annotations详解
  9. vue中使用原始html插值,VUE.JS中的插值表达式、v-cloak、v-text、v-html、v-bind:、v-on:...
  10. android 调用百度地图,高德地图第三方APP进行导航
  11. krpano点击场景获取点击位置的场景坐标
  12. html 中添加提示,如何interpretHTML UIB-提示
  13. Excel批量删除空白行
  14. 【渝粤教育】广东开放大学 开放教育 学生创业案例 形成性考核 (59)
  15. c语言中错误c2084,错误_C2084_函数“int multi(int)”已有主体
  16. 玩游戏计算机频繁重启,win7系统玩lol游戏电脑总是重启如何解决
  17. python怎么让输出的数字右对齐_Python格式化输出的精度和位数控制
  18. Linux应用程序后台运行
  19. Mybatis动态sql是做什么的?都有哪些动态sql?简述一下动态sql的执行原理?
  20. 稀疏表示学习笔记--正交阵,协方差

热门文章

  1. java heap space 什么意思_java heap space解决方法和JVM参数设置
  2. nvh个人检测下载_汽车NVH测试解决方案.PDF
  3. 哪种蓝牙耳机佩戴最舒适?佩戴最舒适的半入耳式蓝牙耳机推荐
  4. Python 免费代理ip的批量获取
  5. android分屏分辨率,Android2.1用罕见15分屏 华为C8600评测
  6. JSP(机器调度问题)使用java调用cplex求解
  7. Linux环境下,查看Tomcat是否启动成功
  8. matlab下载安装及永久激活教程(解决安装失败并不断提示激活问题)
  9. 图片放大后就会变得模糊怎么办?
  10. 荣耀战魂冥界回归服务器维护,血月凌空!《荣耀战魂》万圣节活动“冥界的回归”现已开启...