2. 北京信息科技大学 计算机学院,北京 100101
2. School of Computer Sci., Beijing Info. Sci. & Technol. Univ., Beijing 100101, China
传统物联网受限于成本、灵活性和管理上的问题,大规模部署受到挑战。随着配备了多种嵌入式传感器的移动智能设备得到普及,出现了一种新的感知模式——群智感知[1]。不同于由专用固定传感器组成的无线传感器网络[2],群智感知设备可利用其移动性以较低成本实现大规模、大范围感知任务。因此,群智感知受到广泛关注和研究[3–6]。移动终端基本都具备短距离无线通信技术,如蓝牙(Bluetooth)或Wi-Fi等,为避免传统移动蜂窝网络信号强度覆盖不均匀及在特殊场景中不可用的问题,可利用短距离通信技术进行数据机会传输,这种特殊群智感知模式称为机会群智感知[7]。
在机会群智感知网络中,由于任务的分配与完成都依靠着两节点在相遇时建立的通信链接进行数据通信,所以节点间的相遇时间对任务分配的决策有很大影响。节点的移动具有随机性,任务分发节点在分发任务时,与执行节点之间没有持续连接的通信链路,加之节点的具体信息难以准确获取,所以传统并行机调度[8]领域的研究无法直接应用于机会群智感知网络。
为减少机会网络中完成感知任务的总时间,国内外已开展了多项研究。移动感知任务可能与任务执行节点的位置相关,针对这种情况,He等[3]认为,制定位置相关的任务分配解决方案时需要考虑感知任务的地理特征和移动用户的移动性,并提出了两个有效的近似算法,即LRBA和DLBA,但是,文中并未考虑任务的属性,比如任务的质量要求,这在分配期间是必不可少的。Tang等[9]研究了车载移动网络中的数据收集问题,为了解决智能设备中的存储有限问题,提出了选择策略的优先级概念,并提出了一种基于模拟退火的优先级分配算法,但是文中并没有考虑电池容量的限制。Maia等[10]在求解优化任务完成时间的问题时,加入了电池容量的限制。Shi等[11]提出了Water Filling算法用于任务分配,以最小化最长任务执行时间。该算法即不考虑移动节点的实时移动性,也不考虑移动节点的历史移动轨迹。Yao等[12]以最小化最长任务完成时间为目标,提出了相遇概率敏感的离线和在线任务分配算法。Xiao等[13]以最小化平均任务完成时间为优化目标,提出了NTA算法,并证明了其近似比与平均任务工作量和节点期望相遇时间相关,但要求分配节点掌握所有节点的信息。徐哲等[14]针对最小化任务平均完成时间的多任务分发问题,提出一种基于中枢节点的多任务分发算法HTA,与文献[13]相同,该算法要求任务请求者掌握网络全局信息,即所有节点间的相遇概率,但是在实际应用中较难满足该条件。文献[13]中,针对移动节点间的相遇时间间隔采用了指数分布的假设,通过分析真实数据集可发现,指数分布描述的相遇间隔规律与实际情况之间仍有一定偏差,如人类的移动存在间隙性、人类的夜间活动较少甚至停止等情况下难以利用指数分布反映出来。综上所述,文献[11,13–15]等研究中需要掌握整个节点网络的全局信息,这对算法的应用环境提出了较高的要求,限制了算法的实用性。
作者利用局部信息,研究一种面向最小化任务平均完成时间、支持任务动态增加的在线分配算法。经过对真实数据集的分析发现,在机会群智感知网络中,虽然节点的移动具有自主性和随机性,但节点间在不同时刻的相遇仍然有一定的内在联系。基于节点的历史相遇记录可以寻找相遇间隔分布规律,进而对节点的相遇时间进行预测,由此,设计一种基于预测的在线多任务分配(online multi-task assignment based on prediction,OTAP)算法。OTAP算法的核心思想是每次给执行节点分配在与任务分发者下次相遇间隔内能完成的最大任务量,以降低感知节点在完成感知任务后及与任务发布者相遇提交任务结果之间的等待时间。基于unicalsocialblue[16]、cambridge_city[17]、infocom2005[17]、intel[17]等4个不同数据集,利用ONE机会网络模拟器[18]进行充分实验,验证提出的节点相遇预测模型的准确性,该算法有效降低了机会群智感知网络中平均任务完成时间。
1 问题描述 1.1 网络模型假设机会群智感知网络由
假设上述网络中有一个任务分发者,用
约束条件:1)每个时刻每个节点只能执行一个任务,每个任务只能被一个节点执行,且任务一旦开始执行不能被中断;2)不考虑任务的优先权。
定 义(任务完成时间makespan) 一个感知任务
作者研究的问题是如何确定一种任务分配策略,使感知任务平均完成时间(average makespan,AM)最小化。用
问 题(最小化平均完成时间的在线多任务分配问题) 在机会群智感知网络中,给定一个节点集合
$\min \;AM(\varPi ) = \frac{1}{m}\sum\limits_{i = 1}^m {M({j_i})} 。$ |
式中,
定理1 在清楚所有节点彼此相遇时间的情况下,问题1为NP–完全问题。
证明:针对单机的最小化平均完成时间的在线多任务分配问题已被证明为NP–完全问题[19–20]。而单机情况为问题1的特例,故问题1为NP–完全问题。证毕
2 基于预测的在线任务分配算法 2.1 节点移动模型以往对移动机会网络中任务分配问题的研究均假设节点相遇间隔时间服从指数分布[20],基于对多个真实数据集中记录的分析,发现这些数据集中普遍存在一个规律是:节点间的相遇间隔往往存在周期性,即两个节点在长度为
![]() |
图1 cambridge_city数据集中的节点2与其他节点的相遇记录 Fig. 1 Encounter records between node 2 and other nodes in cambridge_city dataset |
2.2 节点相遇规律发现算法
根据第2.1节中对节点移动规律的分析,可将两个节点的相遇序列划分为交替的持续相遇阶段和长间隔阶段,其中,持续相遇阶段由短持续时长
对于两个节点的一段相遇时间序列
节点相遇规律发现算法的基本思路是:
1)遍历所有相遇记录,将两次相邻相遇间隔
2)将新生成的记录序列的平均时间间隔记为长相遇间隔
具体实现步骤见算法1。
算法1 节点相遇规律发现算法(getHistoryRule)
输入:两节点间相遇记录序列
输出:两节点相遇的长时间间隔
1. 遍历
2. 根据未被标记的记录将
3. 统计所有子序列
4. 提取每个子序列
5. 返回
要使平均任务完成时间最小,即所有任务的完成时间的总和最小。根据第1.2节对任务完成时间的定义,由于任务的工作量固定不变,即执行阶段所消耗的时间是定值。因此,应使分发任务和返回任务结果两个阶段的时间最小。
制定任务分配策略:预测节点间的相遇间隔,每次给执行节点分配在与任务分发者下次相遇间隔内能完成的最大任务量。任务分配子算法的基本思路是:
1)根据相遇历史记录,通过算法1计算节点间相遇规律,得到短持续时长
2)获取最近一次长相遇间隔后的第1次相遇时刻
3)根据
4)如果
5)将待分配任务集中的任务依次分配给节点,直到本次已分配任务的任务量之和大于
该算法具体步骤见算法2。算法2在获取待分配任务集时,并未要求获取所有的任务信息;同时,利用已有节点间相遇历史对下一次相遇间隔进行预测,因此能够适应任务在线分配的要求。
算法2 任务分配子算法(assignTasks)
输入:待分配任务集
输出:相遇节点分配到的任务集
1. 初始化:将结果置为
2.
3. if
4.
5. else if
6.
7. if
8. 将
9.将新分配的任务加入结果中;
10. return 结果。
2.4 整体任务分配框架第3.2、3.3节的算法是作者所设计算法的核心内容,下面介绍算法的整体框架,详见算法3。算法3使用算法1进行节点相遇规律计算得到两节点的长相遇间隔和短持续时长用于预测节点相遇时间,使用算法2作为任务分配算法计算得到分配策略。
由于分配到每个节点的任务数一般为多个,所以还涉及到单机任务调度问题,依据最小化平均完成时间的求解目标可知节点应按照任务工作量从小到大的顺序执行。
算法3 在线多任务分配算法(OTAP)
输入:待分配任务集
输出:分配策略
1.将
2. for
3.
4.
5.
6.
7. for
8.
9. 对
10. While每次与某节点
11. 令
12. if
13.
14. if
15.
16.
17. 将
18.
19. return
对算法各部分的复杂度和可行性进行分析。
定理2 算法3的复杂度为
证明:首先对算法1的复杂度进行证明。算法1将相遇记录序列划分为两个子序列,再分别遍历每个子序列作加减操作,最多做
算法2中,对于7~8行的语句,最坏情况下的执行次数为
算法3中,首先,对
算法3在对节点
采用ONE(opportunistic networking environment)机会网络模拟器[18],使用Crawdad网站提供的4个移动轨迹数据集cambridge_city、infocom2005、intel和unicalsocialblue对OTAP算法的性能进行评估。两个对比算法为:作者实现的NTA算法,及依据文献[13]给出的计算方法得到了最优任务分配策略,前提是将节点间未来的相遇时刻作为已知条件。选择任务平均完成时间、任务完成率作为性能评价指标。任务完成率定义为是
因为OTAP、NTA算法均需要根据一定数量的历史记录对节点间的相遇规律进行分析,因此实验中需要划分数据集为训练集和测试集。训练集用于算法初始化阶段的规律分析,测试集作为任务分发过程中节点间的相遇记录。数据集的详细介绍及参数配置见表1。此外,使用的感知任务集为通过程序以均匀分布的统计特性随机生成,任务集规模为50、100、150、200、250、300时,最小工作量为100 s,最大工作量为2 000 s。
表1 移动轨迹数据集配置 Tab. 1 Statistics of mobile trace datasets |
![]() |
根据对数据集中各节点的相遇间隔进行采样统计分析后,可知所有节点在相遇时间间隔分布上以小于1时和大于等于2 h为主要分布点;并且根据对部分数据的初步试验,发现
首先,评估算法的任务平均完成时间。图2对比了在4种不同移动轨迹数据集中,采用OTAP、NTA算法以及最优策略对不同配置的任务集进行任务分配时所得到的任务平均完成时间。
从图2可以看出,OTAP算法在4个不同移动轨迹数据集中分配各任务集时所得到的平均完成时间均低于NTA算法,但比最优任务分配策略高。在4个不同移动轨迹数据集unicalsocialblue、cambridge_city、infocom2005、intel中,OTAP算法在不同任务集规模中所得到的平均任务完成时间比NTA算法平均缩短了50.49%、45.34%、32.71%、32.23%。
![]() |
图2 OTAP与NTA、最优解在平均任务完成时间上的性能对比 Fig. 2 Performance comparisons among OTAP, NTA and the Optimal solution on the average makespan |
评估算法性能的另一个指标是任务完成率。图3对比了使用4个不同移动轨迹数据集进行实验时,OTAP、NTA算法、最优任务分配策略在任务完成数与任务集规模的关系(即任务完成率)。如图3(a)所示,OTAP和NTA算法所得任务完成率均达到了100%。如图3(b)和(d)所示,在cambridge_city和intel数据集中,OTAP算法的任务完成率高于NTA算法,平均分别高了16.55%、4.57%。如图3(c)所示,在infocom2005数据集中,除任务集规模为50时以外,OTAP的任务完成率均低于NTA算法,平均低了2.75%。其具体原因在于:infocom2005数据集的活动时间较短;OTAP算法在分析和利用节点移动规律时,没有充分发挥出其优势。
![]() |
图3 OTAP与NTA、最优解在最终任务完成数上的性能对比 Fig. 3 Performance comparisons among OTAP, NTA and the Optimal solution on the number of completed tasks |
图4对比了4个不同数据集中,任务集规模为300时,OTAP、NTA算法以及最优任务分配策略的任务完成率与时间的关系。从图4中可以看出OTAP算法比NTA算法的任务策略完成更快。
![]() |
图4 OTAP与NTA、最优解在时间与任务完成率关系上的对比 Fig. 4 Comparisons among OTAP, NTA and the Optimal solution on the relationship between time and task completion rate |
5 结 论
针对机会群智感知网络中的多任务在线分配问题开展研究。基于真实数据集分析了移动节点的相遇规律,将节点间相遇过程分为若干周期,每个周期包含持续相遇阶段和长间隔阶段。据此规律设计了一种基于预测的在线任务分配(OTAP)算法,以缩短任务平均完成时间。OTAP算法的核心思想是对节点间的相遇间隔进行预测,每次给执行节点分配在与任务分发者下次相遇间隔内能完成的最大任务量。在4个不同数据集上进行实验,结果显示本文提出的OTA算法比NTA算法缩短了至少32.23%的任务平均完成时间,同时,任务完成率在其中两个移动轨迹数据集中也有所提高。在未来的研究工作中,将基于不同感知任务的相关性分析、感知任务分布与用户移动性的时空关联分析等对机会群智感知任务分配机制做进一步优化。
[1] |
Zhao Dong,Ma Huadong. Development and challenges of crowd sensing networks[J]. Information and Communications Technologies, 2014(5): 66-70. [赵东,马华东. 群智感知网络的发展及挑战[J]. 信息通信技术, 2014(5): 66-70.] |
[2] |
Li Jianzhong,Gao Hong. Survey on sensor network research[J]. Journal of Computer Research and Development, 2008, 45(1): 1-15. [李建中,高宏. 无线传感器网络的研究进展[J]. 计算机研究与发展, 2008, 45(1): 1-15.] |
[3] |
He Shibo,Shin D H,Zhang Junshan,et al. Near-optimal allocation algorithms for location-dependent tasks in crowdsensing[J]. IEEE Transactions on Vehicular Technology, 2017, 66(4): 3392-3405. DOI:10.1109/TVT.2016.2592541 |
[4] |
Wu Yao,Zeng Juru,Peng Hui,et al. Survey on incentive mechanisms for crowd sensing[J]. Journal of Software, 2016, 27(8): 2025-2047. [吴垚,曾菊儒,彭辉,等. 群智感知激励机制研究综述[J]. 软件学报, 2016, 27(8): 2025-2047. DOI:10.13328/j.cnki.jos.005049] |
[5] |
Zeng Juru,Chen Hong,Peng Hui,et al. Privacy preservation in mobile participatory sensing[J]. Chinese Journal of Computers, 2016, 39(3): 595-614. [曾菊儒,陈红,彭辉,等. 参与式感知隐私保护技术[J]. 计算机学报, 2016, 39(3): 595-614. DOI:10.11897/SP.J.1016.2016.00595] |
[6] |
Zhao Dong,Ma Huadong,Li Qi,et al. A unified delay analysis framework for opportunistic data collection[J]. Wireless Networks, 2018, 24(4): 1313-1325. DOI:10.1007/s11276-016-1403-z |
[7] |
Xiong Yongping,Liu Wei,Liu Zhuohua. Key technologies of opportunistic crowd sensing network[J]. ZTE Technology Journal, 2015, 21(6): 19-22. [熊永平,刘伟,刘卓华. 机会群智感知网络关键技术[J]. 中兴通讯技术, 2015, 21(6): 19-22. DOI:10.3969/j.issn.1009-6868.2015.06.005] |
[8] |
Cheng T C E,Sin C C S. A state-of-the-art review of parallel-machine scheduling research[J]. European Journal of Operatinal Research, 1990, 47(3): 271-292. DOI:10.1016/0377-2217(90)90215-W |
[9] |
Tang Zhipeng,Liu Anfeng,Huang Changqin. Social-aware data collection scheme through opportunistic communication in vehicular mobile networks[J]. IEEE Access, 2016, 4: 6480-6502. DOI:10.1109/ACCESS.2016.2611863 |
[10] |
Maia S L F,Silva É R,Guardieiro P R. A new optimization strategy proposal for multi-copy forwarding in energy constrained dtns[J]. IEEE Communications Letters, 2014, 18(9): 1623-1626. DOI:10.1109/LCOMM.2014.2346488 |
[11] |
Shi C,Lakafosis V,Ammar M H,et al.Serendipity:enabling remote computing among intermittently connected mobile devices[C]//Proceedings of the Thirteenth ACM International Symposium on Mobile Ad Hoc Networking and Computing.New York:ACM,2012:145–154.
|
[12] |
Yao Hong,Xiong Muzhong,Liu Chao,et al. Encounter probability aware task assignment in mobile crowdsensing[J]. Mobile Networks and Applications, 2017, 22(2): 275-286. DOI:10.1007/s11036-016-0794-5 |
[13] |
Xiao Minjun,Wu Jie,Huang Liusheng,et al.Multi-task assignment for crowdsensing in mobile social networks[C]// Proceedings of the 2015 IEEE Conference on Computer Communications (INFOCOM).Hong Kong:IEEE,2015:2227–2235.
|
[14] |
Xu Zhe,Li Zhuo,Chen Xin. Multi-task assignment algorithm for mobile crowdsensing[J]. Journal of Computer Applications, 2017, 37(1): 18-23. [徐哲,李卓,陈昕. 面向移动群智感知的多任务分发算法[J]. 计算机应用, 2017, 37(1): 18-23. DOI:10.11772/j.issn.1001-9081.2017.01.0018] |
[15] |
Liu Yan,Guo Bin,Wu Wenle,et al. Multitask-oriented participant selection in mobile crowd sensing[J]. Chinese Journal of Computers, 2017, 40(8): 1872-1887. [刘琰,郭斌,吴文乐,等,移动群智感知多任务参与者优选方法研究[J]. 移动群智感知多任务参与者优选方法研究[J]. 计算机学报, 2017, 40(8): 1872-1887. DOI:10.11897/SP.J.1016.2017.01872] |
[16] |
Antonio C,Annalisa S,Floriano D R,CRAWDAD:The unical/socialblueconn dataset[EB/OL].(2015-02-08)[2017-05-07].http://crawdad.org/unical/socialblueconn/20150208.
|
[17] |
Dimitrios G,Akestoridis,CRAWDAD:The uoi/haggle dataset[EB/OL].(2016-08-28)[2017-05-07].http://crawdad.org/uoi/haggle/20160828.
|
[18] |
Keranen A,Ott J,Kärkkäinen T.The ONE simulator for DTN protocol evaluation[C]//Proceedings of the the 2nd International Conference on Simulation Tools and Techniques.Brussels:Institute for Computer Sciences,Social-Informatics and Telecommunications Engineering,2009:55.
|
[19] |
Lenstra J K,Kan A H G R,Brucker P. Complexity of machine scheduling problems[J]. Annals of discrete Mathematics, 1977, 1: 343-362. DOI:10.1016/S0167-5060(08)70743-X |
[20] |
Musolesi M,Mascolo C.A community based mobility model for ad hoc network research[C]//Proceedings of the 2nd International Workshop on Multi-hop Ad-Hoc Networks:From Theory to Reality.New York:ACM,2006:31–38.
|