当前位置: 首页 > 专利查询>中北大学专利>正文

一种公平的众包工作流分配方法组成比例

技术编号:25837785 阅读:59 留言:0更新日期:2020-10-02 14:18
本发明专利技术公开了一种公平的众包工作流分配方法,包括:S1、输入在线工人集合、众包任务工作流和完成时间;S2、初始化分配参数,开始分配;S3、从工作流中发现待分配任务集合;S4、根据第一个待分配任务的要求提名工人,并根据被提名工人的相似性进行分组生成任务分配提名组;S5、按组征求工人意见,并生成对应的任务分配候选组;S6、计算组间的公平性,并选择受到最不公平待遇的候选组;S7、从候选组中发现受到最不公平待遇的候选工人,并把任务分配给该工人;S8、完成所有待分配任务集合中的任务后,更新分配参数继续寻找下一个待分配任务集合,直到工作流中的任务被全部分配。本发明专利技术在保证工作流被按时完成的前提下,确保分配的最大公平性。

【技术实现步骤摘要】
一种公平的众包工作流分配方法
本专利技术涉及计算机
,具体涉及一种公平的众包工作流分配方法。
技术介绍
众包是一种分布式、以人为中心的问题解决范式,它的基本应用场景是任务被提交到一个平台,再由平台将任务分配给合适的人完成或者由平台上注册的用户自己选择平台发布的任务并完成任务。因此,一个众包系统通常有三种角色,提交任务的人被称为任务请求者,平台被称为众包平台,完成任务的人被称为工人。目前,众包已经被广泛应用到多个领域,包括教育、健康、灾害监测及软件开发等多个领域。众包平台上的任务,即众包任务,通常可分为微任务、复杂任务、宏任务和创造性任务。本专利技术主要针对复杂任务。基于众包的复杂任务解决方案通常是将一个复杂任务分解为若干微任务,并使用工作流表达微任务间的关系。众包的魅力在于有大量的工人资源来提供高质量、低成本的服务。公平是影响工人资源数量的重要因素之一。然而,目前以任务请求者为中心的复杂众包任务分配方法,主要关注如何高质量地按时完成一个工作流,对分配过程中造成的不公平性缺少考虑。因此,基于上述问题,有必要建立一种兼顾公平的众包复杂任务分配方法。
技术实现思路
针对现有技术中的不足,本专利技术的目的在于提供一种既能按时完成任务请求者提交的工作流,又能兼顾分配过程中公平性的众包工作流分配方法,以激励更多的工人参与且高质量地完成众包任务。为实现上述目的,本专利技术采用了以下技术方案:S1、任务请求者将任务工作流和完成时间提交到众包平台,工人在众包平台上提前注册;其中,工作流用有向无环图G={T,E}表示,图G中的顶点ti∈T表示工作流中的任务,图G中的边ei,j∈E是任务ti到tj的一条有向边,表示任务tj在任务ti执行完后才能执行,pred(ti)表示任务ti的前序任务集合,post(ti)表示任务ti的后继任务集合,完成时长用符号Θ表示,众包平台上注册的工人用集合W={wi|i=0,1,...,n}表示;S2、初始化工作流中的任务和工人的分配参数,遍历任务集合T,初始化任务ti∈T的开始时间ti·q0、接收时间ti·q1、完成时长ti·q2、结束时间ti·q3和技能要求,所述技能要求用向量ti·s表示;遍历工人集合W,初始化工人wi∈W的技能最低报酬向量wi·r、接受的任务数wi·n1、分配的任务数wi·n2和技能向量wi·s;S3、寻找图G的最长路径pl={start,t1,t2,...,tn,end},其中,start和end是两个虚拟的起始顶点和结束顶点;如果tn·q3>Θ或路径长度为0则结束本次分配;S4、根据图G生成待分配任务集合T′,即获取起始顶点start的后继顶点post(start);S5、对所有的ti∈T′,生成待分配任务的提名工人集合N;S6、根据提名集合中工人的相似性,生成集合N的一个划分S7、把任务组播给Ni中的每一个工人,生成对应的候选工人集合ci;S8、计算每一个Ci的公平性,并从中选择一个最不公平的候选工人集合C′i。S9、从选中的最不公平的候选工人集合C′i中发现受到最不公平待遇的工人w′j,把任务分配给该工人;S10、从图G中移除任务ti,然后返回S5;S11、当集合T′中的任务全部被工人完成后,更新分配参数继续分配图G中剩余的任务。作为本专利技术的进一步改进,所述步骤S2具体为:S201、遍历任务集合T中的第i个任务ti;S202、如果i=0,即为工作流中的第1项任务,则开始时间ti·q0和接收时间ti·q1初始化为当前时间,任务的完成时长ti·q2是众包平台根据该类型任务完成的历史统计数据的估计值,任务的结束时间ti·q3=ti·q0+ti·q2,任务要求的技能向量ti·s是1个1×m的向量,表示m项技能,当对应的列为0时表示该任务不需要相应的技能,为1表示该任务需要该项技能;S203、当i≠0且i<|T|,则开始时间ti·q0和接收时间ti·q1初始化为ti-1·q3,任务的完成时长ti·q2是众包平台根据该类型任务完成的历史统计数据的估计值,任务的结束时间ti·q3=ti·q0+ti·q2,任务要求的技能向量ti·s是1个1×m的向量,表示m项技能,当对应的列为0时表示该任务不需要相应的技能,为1表示该任务需要该项技能;S204、遍历在线工人集合W′中第i个工人wi;在线工人集合W′中的第i个工人wi,同时也属于注册工人集合W;S205、当i<|W′|时,众包平台从工人注册的数据库中提取信息,初始化在线工人wi,工人的最低报酬向量wi·r由工人维护,技能向量wi·s是众包平台通过对工人进行技能测试获得,接受的任务数wi·n1、分配的任务数wi·n2随众包平台分配任务而变化,对新注册的工人而言,这个两个参数的值为0。作为本专利技术的进一步改进,所述步骤S3中寻找图G的最长路径pi具体为:S301、令pl={start},临时任务变量t=start;S302、当t≠end时,获得t的后继任务集合post(t);S303、遍历ti∈post(t),通过比较ti·q1+ti·q2找到完成时间最长的任务ti,并把ti加入到集合pl。作为本专利技术的进一步改进,所述步骤S4具体为:S401、通过遍历寻找图G的起始顶点start的后继顶点集合post(start);S402、post(start)即为本次待分配任务集合T′。作为本专利技术的进一步改进,所述步骤S5具体为:S501、遍历待分配任务集合T′中的第i个任务ti;S502、当i<|T′|时,遍历在线工人集合W′中的第j个工人wj;S503、当j<|W′|时,计算工人拥有的技能向量wi·s和任务要求的技能向量ti·s间的距离,d(wj·s,ti·s)=∑|wj·sm-ti·sm|,如果d(wj·s,ti·s)小于阈值dΘ则把该工人放到提名集合N中。作为本专利技术的进一步改进,所述步骤S6具体为:S601、当集合时,把提名工人集合N中的一个工人wi移动到新的集合Nj中;S602、遍历提名工人集合N中剩下的工人wj,并计算wj和wi的相似程度,两个工人的技能相似度sim1(wi,wj)=∑|wi·sm-wj·sm|,要价的相似度sim2(wi,wj)=∑|wi·rm-wj·rm|,总的相似度sim=k1×sim1+k2×sim2,如果sim小于阈值simΘ则把该工人移动到集合Nj。作为本专利技术的进一步改进,所述步骤S7具体为:S701、遍历提名工人集合N的划分集{N1,N2,N3,...,Nm}中的第i个子集Ni;S702、当i<m时,遍历集合Ni给所有被提名的工人wj∈Ni发送任务信息,征求工人wj是否同意接受该任务,如果接受则放入对应的候选工人集合Ci。作为本专利技术的进一步改进,所述步骤S8具体为:S801、遍历候选工人集合{C1,C2,C3,...,Cm}中的第本文档来自技高网...

【技术保护点】
1.一种公平的众包工作流分配方法,其特征在于:所述方法包括如下步骤:/nS1、任务请求者将任务工作流和完成时间提交到众包平台,工人在众包平台上提前注册;其中,工作流用有向无环图G={T,E}表示,图G中的顶点t

【技术特征摘要】
1.一种公平的众包工作流分配方法,其特征在于:所述方法包括如下步骤:
S1、任务请求者将任务工作流和完成时间提交到众包平台,工人在众包平台上提前注册;其中,工作流用有向无环图G={T,E}表示,图G中的顶点ti∈T表示工作流中的任务,图G中的边ei,j∈E是任务ti到tj的一条有向边,表示任务tj在任务ti执行完后才能执行,pred(ti)表示任务ti的前序任务集合,post(ti)表示任务ti的后继任务集合,完成时长用符号Θ表示,众包平台上注册的工人用集合W={wi|i=0,1,...,n}表示;
S2、初始化工作流中的任务和工人的分配参数,遍历任务集合T,初始化任务ti∈T的开始时间ti.q0、接收时间ti.q1、完成时长ti.q2、结束时间ti.q3和技能要求,所述技能要求用向量ti.s表示;遍历工人集合W,初始化工人wi∈W的技能最低报酬向量wi.r、接受的任务数wi.n1、分配的任务数wi.n2和技能向量wi.s;
S3、寻找图G的最长路径pl={start,t1,t2,...,tn,end},其中,start和end是两个虚拟的起始顶点和结束顶点;如果tn.q3>Θ或路径长度为0则结束本次分配;
S4、根据图G生成待分配任务集合T‘,即获取起始顶点start的后继顶点post(start);
S5、对所有的ti∈T‘,生成待分配任务的提名工人集合N;
S6、根据提名集合中工人的相似性,生成集合N的一个划分
S7、把任务组播给Ni中的每一个工人,生成对应的候选工人集合Ci;
S8、计算每一个Ci的公平性,并从中选择一个最不公平的候选工人集合C‘i;
S9、从选中的最不公平的候选工人集合C‘i中发现受到最不公平待遇的工人w’i,把任务分配给该工人;
S10、从图G中移除任务ti,然后返回S5;
S11、当集合T‘中的任务全部被工人完成后,更新分配参数继续分配图G中剩余的任务。


2.根据权利要求1所述的一种公平的众包工作流分配方法,其特征在于:所述步骤S2具体为:
S201、遍历任务集合T中的第i个任务ti;
S202、如果i=0,即为工作流中的第1项任务,则开始时间ti.q0和接收时间ti.q1初始化为当前时间,任务的完成时长ti.q2是众包平台根据该类型任务完成的历史统计数据的估计值,任务的结束时间ti.q3=ti.q0+ti.q2,任务要求的技能向量ti.s是1个1×m的向量,表示m项技能,当对应的列为0时表示该任务不需要相应的技能,为1表示该任务需要该项技能;
S203、当i≠0且i<|T|,则开始时间ti.q0和接收时间ti.q1初始化为ti-1.q3,任务的完成时长ti.q2是众包平台根据该类型任务完成的历史统计数据的估计值,任务的结束时间ti.q3=ti.q0+ti.q2,任务要求的技能向量ti.s是1个1×m的向量,表示m项技能,当对应的列为0时表示该任务不需要相应的技能,为1表示该任务需要该项技能;
S204、遍历在线工人集合W′中第i个工人wi;
S205、当i<|W′|时,众包平台从工人注册的数据库中提取信息,初始化在线工人wi,工人的最低报酬向量wi.r由工人维护,技能向量wi.s是众包平台通过对工人进行技能测试获得,接受的任务数wi.n1、分配的任务数wi.n2随众包平台分配任务而变化,对新注册的工人而言,这个两个参数的值为0。


3.根据权利要求1所述的一种公平的众包工作流分配方法,其特征在于:所述步骤S3中寻找图G的最长路径pl具体为:
S301、令pl={start},临时任务变量t=start;
S302、当t≠end时,获得t的后继任务集合post...

【专利技术属性】
技术研发人员:付东来蔡兴旺
申请(专利权)人:中北大学
类型:发明
国别省市:山西;14

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1