1.一种应用于带偏好众包系统的真实任务分配方法,其特征在于,包含一种带偏好众包系统模型,步骤如下:
步骤201:众包平台发布一个三元组(W,C,I)给所有的任务请求者,其中W={1,2,…,m}表示众包工人集合,C=(C1,C2,…,Cm)表示m个众包工人的工作负载组成的向量,I=(I1,I2,…,Im)表示m个众包工人的努力指示器组成的向量;
步骤202:设请求者集合为R={1,2,…,n},每一个请求者i向平台提交一个请求Bi=(ti,ci,ai,Pi),其中ti是任务请求者i发布的任务,ci>0是任务ti的工作负载;每一个任务ti都有一个与之相关的任务类型ai;是请求者i声明的偏好集合;
步骤203:众包平台计算任务和众包工人之间的分配
步骤204:众包工人执行已分配的任务并把结果反馈给众包平台;
步骤205:众包平台把服务提供给任务请求者。
2.如权利要求1所述的一种应用于带偏好众包系统的真实任务分配方法,其特征在于,在步骤203中,平台计算任务和工作者之间的分配问题形式化表示为:
其中,k∈W表示分配给众包工人k的任务,i∈R表示执行任务i的众包工人,表示分配中任务的总价值,表示众包工人k执行任务i后,任务请求者i所获得的价值;
上述形式化问题的本质是:寻找一个任务和众包工人之间的分配,使得分配给众包工人的任务集合的价值总和最大,并且每一个任务至多被分给一个众包工人,众包工人所完成任务的负载总和不超过自身的最大工作负载。
3.如权利要求1所述的一种应用于带偏好众包系统的真实任务分配方法,其特征在于,在步骤203中,众包平台计算任务和众包工人之间的分配通过真实任务分配方法完成,该方法由两个核心算法组成:基于价值贪心的任务分配算法和基于价值密度贪心的任务分配算法,其中基于价值贪心的任务分配算法的步骤如下:
步骤301:对于每个请求者i∈R和每个偏好k∈Pi,令其中为任务i的难度系数,工作者k的剩余负载
步骤302:初始化分配集合为空;
步骤303:初始化相兼容的任务-众包工人对集合
步骤304:判断是否为空,如果是空,则执行步骤311,否则执行步骤305;
步骤305:在集合中,寻找价值最大的任务-众包工人对(i′,k′);
步骤306:检查是否大于等于0,如果大于等于0,执行步骤307,否则,执行步骤310;
步骤307:更新
步骤308:将任务-众包工人对(i′,k′)并入集合步骤309:置执行步骤304;
步骤310:置执行步骤304;
步骤311:返回分配结束。
4.如权利要求1所述的一种应用于带偏好众包系统的真实任务分配方法,其特征在于,在步骤203中,众包平台计算任务和众包工人之间的分配通过真实任务分配方法完成,该方法由两个核心算法组成:基于价值贪心的任务分配算法和基于价值密度贪心的任务分配算法,其中基于价值密度贪心的任务分配算法的步骤如下:
步骤401:对于每个请求者i∈R和每个偏好k∈Pi,令其中为任务i的难度系数,工作者k的剩余负载
步骤402:初始化分配集合为空;
步骤403:初始化相兼容的任务-众包工人对集合
步骤404:判断是否为空,如果是空,则执行步骤411,否则执行步骤405;
步骤405:在集合中,寻找价值密度最大的任务-众包工人对(i′,k′);
步骤406:检查是否大于等于0,如果大于等于0,执行步骤407,否则,执行步骤410;
步骤407:更新
步骤408:将任务-众包工人对(i′,k′)并入集合步骤409:置执行步骤404;
步骤410:置执行步骤404;
步骤411:返回分配结束。
5.如权利要求1所述的一种应用于带偏好众包系统的真实任务分配方法,其特征在于,在步骤203中,众包平台计算任务和众包工人之间的分配通过真实任务分配方法完成,具体步骤如下:
步骤501:在[0,1]区间生成一个随机数o;
步骤502:初始化分配为空;
步骤503:检查随机数o是否大于等于如果随机数o大于等于执行步骤504,否则执行步骤505;
步骤504:执行价值贪心的任务分配算法;执行步骤506;
步骤505:执行价值密度贪心的任务分配算法;
步骤506:返回分配结束。