CN106557871A - A kind of method for allocating tasks in gunz system based on stable matching algorithm - Google Patents
A kind of method for allocating tasks in gunz system based on stable matching algorithm Download PDFInfo
- Publication number
- CN106557871A CN106557871A CN201610985542.8A CN201610985542A CN106557871A CN 106557871 A CN106557871 A CN 106557871A CN 201610985542 A CN201610985542 A CN 201610985542A CN 106557871 A CN106557871 A CN 106557871A
- Authority
- CN
- China
- Prior art keywords
- task
- worker
- workers
- algorithm
- quality level
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06311—Scheduling, planning or task assignment for a person or group
Landscapes
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Economics (AREA)
- Operations Research (AREA)
- Game Theory and Decision Science (AREA)
- Development Economics (AREA)
- Marketing (AREA)
- Educational Administration (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种群智系统中基于稳定匹配算法的任务分配方法,全面考虑工人的质量水平和偏好以及任务的质量要求和预算限制,通过将原问题转化为一个有严格上边界要求(预算限制)和松散下边界要求(质量要求)的多对一匹配问题,实现了稳定有效的任务分配结果。
The invention discloses a task allocation method based on a stable matching algorithm in a crowd intelligence system, which fully considers the quality level and preferences of workers, as well as the quality requirements and budget constraints of tasks, and transforms the original problem into a task with strict upper boundary requirements (budget constraints) ) and a loose lower bound requirement (quality requirement) for many-to-one matching problems, achieving stable and efficient task assignment results.
Description
技术领域technical field
本发明属于群智系统技术领域,尤其涉及一种群智系统中基于匹配算法的保证任务质量要求的任务分配方法。The invention belongs to the technical field of swarm intelligence systems, and in particular relates to a task allocation method based on a matching algorithm to ensure task quality requirements in a swarm intelligence system.
背景技术Background technique
群智系统是一种开放的、自愿的、为公司或个人提供可靠环境的新的合作模式。群智系统具有共享性,各公司可以在群智系统上发布问题或者任务,个人可以挑选问题或者任务,众多个人用户贡献的规模性可以达到过去难以完成的目标。通过集合众人的智慧,群智系统可以以低成本和高质量,完成诸如环境数据搜集和设计评估新产品等任务。The group intelligence system is an open, voluntary, new cooperation model that provides a reliable environment for companies or individuals. The swarm intelligence system is shared. Companies can publish questions or tasks on the swarm intelligence system, and individuals can choose questions or tasks. The scale of contributions from many individual users can achieve goals that were difficult to achieve in the past. By gathering the wisdom of crowds, the crowd intelligence system can complete tasks such as environmental data collection and design and evaluation of new products with low cost and high quality.
由于人们经验、熟练程度、技能和专业知识具有多样性,他们对任务有不同的偏好,并且完成特定任务的质量也各不相同。为一个特定的任务选择一组合适的工人是至关重要的,这个问题在群智系统中被称为任务分配。在群智系统的任务分配中,需要考虑发布的任务的不同的质量要求和预算,同时在工人选取上要考虑工人的能力和偏好。Due to the diversity of people's experience, proficiency, skills, and expertise, they have different preferences for tasks, and the quality with which they complete specific tasks also varies. Selecting a suitable set of workers for a specific task is crucial, a problem known as task assignment in swarm intelligence systems. In the task allocation of the crowd intelligence system, it is necessary to consider the different quality requirements and budgets of the released tasks, and at the same time, the ability and preference of workers should be considered in the selection of workers.
在群智系统中,根据工人的技术、经验和熟练程度的不同,不同工人的质量水平不同。假设任务发布者知道所有工人的技术水平。一个有高质量水平的工人在执行一项工作时往往会要求有更高的报酬,因为这些工人需要花更多时间去培训,而任务发布者也更愿意对更能信赖的结果支付更多的报酬。由于群智任务的完成依靠工人们集体的智慧,因此,一个任务如果要成功,必须招募到足够的工人。任务发布者必须确保他能够吸引到足够的工人来达到质量要求,而招募大量的工人能够达到更高的质量水平,但是任务发布者的预算是有限的,这也限制了他招募工人的数量,因此,一个任务招募到工人的总质量水平要大于任务的质量要求,而支付给工人的报酬要小于任务的预算资金值。In a swarm intelligence system, different workers have different levels of quality based on their skills, experience, and proficiency. Assume that the task issuer knows the skill level of all workers. A worker with a high quality level tends to demand higher compensation when performing a job, because these workers need to spend more time training, and task issuers are more willing to pay more for more reliable results. remuneration. Since the completion of swarm intelligence tasks depends on the collective intelligence of workers, sufficient workers must be recruited for a task to be successful. The task issuer must ensure that he can attract enough workers to meet the quality requirements, and recruiting a large number of workers can achieve a higher quality level, but the task issuer's budget is limited, which also limits the number of workers he can recruit. Therefore, the total quality level of workers recruited by a task is greater than the quality requirements of the task, and the remuneration paid to workers is less than the budgeted value of the task.
每个工人面对所有任务都有自己的偏好列表。例如,如果有两个任务发布者在两个不同的地点收集交通信息,工人更愿意选择靠近自己住所的那个位置。同样地,每个任务发布者根据工人的质量水平对所有工人也有自己对应的偏好列表。Each worker has its own preference list for all tasks. For example, if there are two task issuers collecting traffic information at two different locations, workers prefer to choose the location closer to their own residence. Likewise, each task issuer also has its own preference list for all workers according to their quality level.
综上所述,一个考虑到质量要求、预算约束和工人的偏好的任务分配方案是群智系统能够正常运行的关键所在。针对群智系统的任务分配是一个热门的研究问题,在很多文献中都提出了移动群智系统中可靠的任务分配策略。要保证令人满意的分配,涉及到质量要求和工人的偏好,以前的解决方案并没有将工人和任务做出很好的匹配。有的提出了多对一匹配问题,尽管考虑到了工人的偏好和预算限制,但是没有考虑到质量要求。To sum up, a task allocation scheme that takes into account quality requirements, budget constraints, and workers' preferences is the key to the normal operation of the crowd intelligence system. Task allocation for swarm intelligence systems is a hot research issue, and reliable task allocation strategies for mobile swarm intelligence systems have been proposed in many literatures. Guaranteeing satisfactory assignments involves quality requirements and worker preferences, and previous solutions do not match workers and tasks well. Some propose the many-to-one matching problem, and although worker preferences and budget constraints are taken into account, quality requirements are not considered.
发明内容Contents of the invention
本发明针对现有群智系统任务分配方案的不足,提出了一种全面考虑工人偏好、任务质量要求和预算限制的稳定的任务分配方法。Aiming at the deficiency of the existing group intelligence system task allocation scheme, the present invention proposes a stable task allocation method that fully considers worker preferences, task quality requirements and budget constraints.
本发明所采用的技术方案是:一种群智系统中基于稳定匹配算法的任务分配方法,包括以下步骤:The technical scheme adopted in the present invention is: a task assignment method based on a stable matching algorithm in a crowd intelligence system, comprising the following steps:
步骤1:获取每个工人s的质量水平{rs}s∈S以及其偏好列表{>s}S,其中S是所有工人集合;获取每个任务t的偏好列表{>t}τ、质量要求{qt}t∈τ和预算限制{bt}t∈τ,其中τ是所有任务的集合;Step 1: Get the quality level {r s } s∈S of each worker s and its preference list {> s } S , where S is the set of all workers; get the preference list {> t } τ , quality of each task t Requirements {q t } t ∈ τ and budget constraints {b t } t ∈ τ , where τ is the set of all tasks;
步骤2:根据工人s的偏好列表{>s}S将s的偏好顺序写进s的申请列表p(s)中;Step 2: According to the preference list {> s } S of worker s, write the preference order of s into the application list p(s) of s;
步骤3:判断工人s的申请列表p(s)是否为空;Step 3: Determine whether the application list p(s) of worker s is empty;
若是,则执行下述步骤4;If yes, perform step 4 below;
若否,则结束本流程;If not, end this process;
步骤4:取申请列表p(s)的第一个任务t,并在p(s)中将t移除;Step 4: Take the first task t in the application list p(s), and remove t from p(s);
步骤5:判断任务t当前分配到工人的总质量水平是否小于任务t的质量要求;Step 5: Determine whether the total quality level of the workers currently assigned to task t is less than the quality requirements of task t;
若是,则执行下述步骤6;If yes, then perform the following step 6;
若否,则执行下述步骤7;If not, then perform the following step 7;
步骤6:执行REDA算法;Step 6: Execute the REDA algorithm;
步骤7:计算所有任务中还没达到质量要求那一部分的差值△Q和所有未分配工人的总质量水平△R;Step 7: Calculate the difference △Q of all tasks that have not met the quality requirements and the total quality level △R of all unassigned workers;
步骤8:判断△R-rs与△Q的大小;Step 8: Judging the size of △ Rrs and △Q;
若△R-rs大于差值△Q,则执行REDA算法;If △ Rrs is greater than the difference △Q, execute the REDA algorithm;
若△R-rs小于差值△Q,则执行步骤9If △ Rrs is less than the difference △Q, go to step 9
步骤9:工人s不能分配给任务t,取下一个工人信息作为工人s,并回转执行所述步骤3;Step 9: Worker s cannot be assigned to task t, take the next worker information as worker s, and execute the above step 3;
所述REDA算法,包括以下步骤:Described REDA algorithm comprises the following steps:
步骤6.1:获取工人s和任务t信息,工人s∈S,任务t∈τ;Step 6.1: Obtain worker s and task t information, worker s∈S, task t∈τ;
步骤6.2:判断任务的剩余预算是否大于工人的报酬;Step 6.2: Determine whether the remaining budget of the task is greater than the worker's compensation;
若是,则将工人s分配给任务t,然后取下一个工人信息作为工人s,并回转执行所述步骤3;If so, assign worker s to task t, then take the next worker information as worker s, and execute step 3 in reverse;
若否,则执行下述步骤6.3;If not, perform the following step 6.3;
步骤6.3:在任务t当前分配的工人中找出质量水平低于工人s的工人集合A;Step 6.3: Find out the worker set A whose quality level is lower than worker s among the workers currently assigned to task t;
步骤6.4:判断集合Α中是否存在总质量水平小于工人s最小质量水平的工人子集合B;Step 6.4: Determine whether there is a sub-set B of workers whose total quality level is less than the minimum quality level of worker s in set A;
若是,则选取所有符合步骤6.4的集合中工人总质量水平最小的集合Bmin,解除任务t和集合Bmin中所有工人的分配关系,将工人s分配给任务t,然后取下一个工人信息作为工人s,并回转执行所述步骤3;If yes, select the set B min with the smallest total quality level of workers in all sets that meet step 6.4, cancel the assignment relationship between task t and all workers in set B min , assign worker s to task t, and then take the next worker information as Worker s, and turn around to execute the step 3;
若否,则工人s不能分配给任务t,取下一个工人信息作为工人s,并回转执行所述步骤3。If not, then worker s cannot be assigned to task t, take the next worker information as worker s, and go back to step 3.
本发明假设群智系统每个任务发布者都发布一个特定任务。实际中,在群智系统中每个任务发布者允许发布多个任务,可以将这种情况下任务发布者看成多个虚拟的任务发布者,一个虚拟任务发布者只发布一个特定任务。The present invention assumes that each task issuer of the crowd intelligence system issues a specific task. In practice, each task publisher in the swarm intelligence system is allowed to publish multiple tasks. In this case, the task publisher can be regarded as multiple virtual task publishers, and a virtual task publisher only publishes a specific task.
在本发明中,每一个任务发布者都更加偏好高质量水平的工人,因此所有任务发布者的偏好列表都是相同的(按照工人质量水平高低排序)。In the present invention, each task issuer prefers workers with high quality level, so all task issuers have the same preference list (sorted according to the quality level of workers).
在本发明中,如果一个工人不愿意做一些任务,他可以在自己的偏好列表中插入一个空的任务,并把所有不可接受的任务放在空的任务后面。In the present invention, if a worker is unwilling to do some tasks, he can insert an empty task in his preference list, and put all unacceptable tasks behind the empty task.
本发明利用稳定的匹配算法,全面考虑群智系统中工人和任务发布者的偏好、任务的预算限制和质量要求以及工人的质量水平,实现了群智系统中稳定的任务分配。The invention utilizes a stable matching algorithm, fully considers the preferences of workers and task publishers in the swarm intelligence system, the budget limit and quality requirements of tasks, and the quality level of workers, and realizes stable task allocation in the swarm intelligence system.
附图说明Description of drawings
图1本发明实施例的流程图;The flowchart of Fig. 1 embodiment of the present invention;
图2本发明实施例的REDA算法流程图;The REDA algorithm flowchart of Fig. 2 embodiment of the present invention;
图3本发明实施例的TAQR算法与基准算法成功率比较实验结果图,其中(a)M=8(b)N=50;The TAQR algorithm of the embodiment of the present invention of Fig. 3 and benchmark algorithm success rate comparison experiment result figure, wherein (a) M=8 (b) N=50;
图4本发明实施例的TAQR算法与基准算法的工人满意度比较实验结果图,其中(a)M=12(b)N=40;The TAQR algorithm of the embodiment of the present invention and the worker's satisfaction comparison experiment result figure of benchmark algorithm of Fig. 4, wherein (a) M=12 (b) N=40;
图5本发明实施例的TAQR算法与基准算法的时间复杂度比较实验结果图,其中(a)M=4,(b)N=40。Fig. 5 is a comparison experiment result diagram of the time complexity between the TAQR algorithm of the embodiment of the present invention and the benchmark algorithm, where (a) M=4, (b) N=40.
具体实施方式detailed description
为了便于本领域普通技术人员理解和实施本发明,下面结合附图及实施例对本发明作进一步的详细描述,应当理解,此处所描述的实施示例仅用于说明和解释本发明,并不用于限定本发明。In order to facilitate those of ordinary skill in the art to understand and implement the present invention, the present invention will be described in further detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the implementation examples described here are only used to illustrate and explain the present invention, and are not intended to limit this invention.
本发明的目标是考虑到工人和任务发布者的偏好、任务的预算限制和质量要求以及工人的质量水平,实现群智平台中任务的稳定分配。为解决这个问题,本发明将群智平台的任务分配问题作为一个有严格上边界要求(预算限制)和松散下边界要求(质量要求)的多对一匹配问题,提出了相应算法并证明该算法的分配结果是稳定而有效的。The goal of the present invention is to achieve a stable allocation of tasks in the crowd intelligence platform, taking into account the preferences of workers and task publishers, the budget constraints and quality requirements of tasks, and the quality level of workers. In order to solve this problem, the present invention regards the task allocation problem of the swarm intelligence platform as a many-to-one matching problem with a strict upper boundary requirement (budget restriction) and a loose lower boundary requirement (quality requirement), proposes a corresponding algorithm and proves the algorithm The distribution results are stable and efficient.
首先做出如下定义:First make the following definitions:
定义1:(任务分配)群智平台的任务分配μ是满足如下5个条件的映射S∪τ→2S∪τ:Definition 1: (task allocation) The task allocation μ of the Swarm Intelligence platform is a mapping S∪τ→2 S ∪τ that satisfies the following five conditions:
1)对所有的工人s∈S,有μ(s)∈τ;1) For all workers s∈S, there is μ(s)∈τ;
2)对所有任务发布者t∈τ,有μ(t)∈S;2) For all task issuers t∈τ, there is μ(t)∈S;
3)对任意s∈S和t∈τ,当s∈μ(t)时,都有μ(s)=t,其中μ(t)指匹配到任务t的工人的集合;3) For any s∈S and t∈τ, when s∈μ(t), there is μ(s)=t, where μ(t) refers to the set of workers matched to task t;
4)严格下边界(预算限制):对所有t∈τ有∑s∈μ(t)rs≤bt;4) Strict lower bound (budget constraint): ∑ s∈μ(t) r s ≤ b t for all t∈τ;
5)松散上边界(质量要求)下:Α={t:t∈Α,∑s∈μ(t)rs≥qt}表示质量要求能够被满足的任务集合。表示成功率,|.|表示集合中的元素个数。当Suc=1时,μ是一个完全的任务分配,否则就是一个部分任务分配。5) Under loose upper bound (quality requirement): Α={t:t∈Α,∑ s∈μ(t) r s ≥q t } represents the set of tasks whose quality requirement can be satisfied. Indicates the success rate, |.| indicates the number of elements in the set. When Suc=1, μ is a full task assignment, otherwise it is a partial task assignment.
此模型是包含质量要求的依靠共同努力的群智平台,大多数文献中的多对一匹配模型没有像本发明中模型那样考虑下限约束。考虑到下限约束的多对一匹配模型均假定每个工人的质量水平都相同,即rs=1,在这种简化的模型中,当且仅当工人的总质量水平大于任务要求的质量水平∑s∈Srs≥∑t∈τqt,才会达到完全任务分配。然而当工人的质量水平不同时,∑s∈Srs≥∑t∈τqt,不再能满足每个任务的质量要求。例如,如果两个工人的质量水平比是0.3:0.7,两个任务的质量要求比是0.4:0.5,尽管有0.3+0.7>0.4+0.5,但是没有任何的任务分配方式能同时满足这两个任务的质量要求。验证是否存在完全的任务分配相当于检查以下的线性规划问题是否存在可行方案。This model is a crowd intelligence platform that includes quality requirements and relies on joint efforts. Most of the many-to-one matching models in the literature do not consider the lower limit constraints like the model in the present invention. The many-to-one matching models considering the lower bound constraints all assume that the quality level of each worker is the same, that is, r s =1. In this simplified model, if and only if the total quality level of workers is greater than the quality level required by the task ∑ s∈S r s ≥∑ t∈τ q t will achieve complete task allocation. However, when the quality levels of workers are different, ∑ s∈S r s ≥∑ t∈τ q t , it can no longer meet the quality requirements of each task. For example, if the quality level ratio of two workers is 0.3:0.7, and the quality requirement ratio of two tasks is 0.4:0.5, although there is 0.3+0.7>0.4+0.5, there is no task allocation method that can satisfy both The quality requirements of the task. Verifying that there is a complete assignment of tasks is equivalent to checking whether the following linear programming problem has a feasible solution.
其中,当μ(s)=t时,xs,t=1,否则xs,t=0。Wherein, when μ(s)=t, x s,t =1, otherwise x s,t =0.
事实上,本发明只关注目标函数是否有可行解,这是一个NP难题。因此,本发明只能尽可能地提高任务分配的成功率。In fact, the present invention only focuses on whether the objective function has a feasible solution, which is an NP-hard problem. Therefore, the present invention can only improve the success rate of task assignment as much as possible.
如果没有任何工人或任务发布者有不同于分配结果的更好的选择,那么这个分配就是稳定的,因为工人和任务发布者如果有更好的选择,都会放弃这个分配结果。在工人自由选择任务、任务发布者自由招募工人的群智平台上,只有分配结果稳定才能实现任务分配。稳定的任务分配的特点是个体合理性、公平性、无浪费性。An allocation is stable if no worker or task issuer has a better choice than the assignment, since both workers and task issuers will discard the assignment if they have a better choice. On the swarm intelligence platform where workers freely choose tasks and task publishers freely recruit workers, task allocation can only be achieved if the allocation results are stable. Stable task allocation is characterized by individual rationality, fairness, and non-wastefulness.
定义2:(个体合理性)当分配μ满足一下条件时,这个分配就是具有个体合理性的。Definition 2: (individual rationality) When the allocation μ satisfies the following conditions, the allocation is individual rationality.
1)每个工人都愿意被分配到当前的任务中而不是未被分配,即 1) Each worker is willing to be assigned to the current task instead of being unassigned, ie
2)每个任务发布者都偏好当前分配的工人集合而不是该集合的子集合,即 2) Each task issuer prefers the currently assigned set of workers over a subset of that set, i.e.
个体合理性是任务分配的最低要求。为了对公平性进行定义,首先介绍I型阻塞对的概念。Individual rationality is the minimum requirement for task assignment. In order to define fairness, the concept of a Type I blocking pair is first introduced.
定义3:(I型阻塞对)如果存在任务发布者t、工人s与非空子集且满足以下条件时,工人s和任务t构成一个I型阻塞对。Definition 3: (Type I blocking pair) if there is a task publisher t, worker s and non-empty subset And when the following conditions are met, worker s and task t form a type I blocking pair.
1)任务发布者t更偏好工人s而不是集合Α中的工人,并且工人s也更偏好任务t而不是他当前分配的任务。1) Task issuer t prefers worker s to workers in set A, and worker s also prefers task t to his current assigned task.
2)在不违反任务t预算约束的情况下,工人s可以替代子集Α中的工人。2) Worker s can replace workers in subset A without violating the budget constraint of task t.
3)工人s的离开不会影响他当前被分配的任务μ(s)的质量要求。3) The departure of worker s will not affect the quality requirements of the task μ(s) he is currently assigned.
将其数学化,即当存在任务发布者t、工人s与非空子集且满足以下条件时,工人和任务t能够组成一个I型阻塞对。具体条件如下:Mathematically, that is, when there is a task issuer t, a worker s and a non-empty subset And when the following conditions are met, worker and task t can form a type I blocking pair. The specific conditions are as follows:
1)tsμ(s),并且r(s)≥∑s'∈Αrs' 1) t s μ(s), and r(s)≥∑ s'∈Α r s'
2)rs+∑s'∈μ(t)\Αrs'≤bt 2)r s +∑ s'∈μ(t)\Α r s' ≤b t
3)∑s'∈μ(u(s))rs'-rs≥qt 3)∑ s'∈μ(u(s)) r s' -r s ≥q t
I型阻塞对会导致分配不稳定,因为工人会考虑换一个更喜欢的任务取代当前被分配到的这个任务。Type I blocking pairs can lead to allocation instability, as workers consider replacing their current assigned task with a preferred task.
定义4:(公平性)只有当不存在I型阻塞对时,任务分配μ才具有公平性。Definition 4: (Fairness) The task assignment μ is fair only when there are no Type I blocking pairs.
定义5:(II型阻塞对)当满足一定条件时,工人s和任务t构成一个II型阻塞对(s,t)。具体条件如下:Definition 5: (Type II blocking pair) When certain conditions are met, worker s and task t form a type II blocking pair (s, t). The specific conditions are as follows:
1)工人s更偏好任务t而不是他当前分配的任务;1) Worker s prefers task t to his current assigned task;
2)将工人s加到任务t中不会超出t的预算限制。2) Adding worker s to task t will not exceed t's budget limit.
3)如果工人s离开,不会影响当前所分配任务μ(s)的总质量水平要求。3) If the worker s leaves, it will not affect the total quality level requirement of the currently assigned task μ(s).
将其数学化,即在分配中,如果满足一定条件,工人s和任务t会组成一个II型阻塞对。具体条件如下:Mathematically, in an assignment, a worker s and a task t form a Type II blocking pair if certain conditions are met. The specific conditions are as follows:
1)tsμ(s)1)t s μ(s)
2)rs+∑s'∈μ(t)rs'≤bt 2) r s +∑ s'∈μ(t) r s' ≤b t
3)∑s'∈μ(u(s))rs'-rs≥qt 3)∑ s'∈μ(u(s)) r s' -r s ≥q t
II型阻塞对会导致分配不稳定,因为任务发布者有足够的预算来招募所有想要做这项任务的工人。Type II blocking pairs lead to unstable assignments because the task issuer has enough budget to recruit all the workers who want to do the task.
定义6:(无浪费性)当不存在II型阻塞对时,任务分配μ才具有无浪费性。Definition 6: (Wasteless) Task allocation μ is wasteless only when there are no type II blocking pairs.
所提出的算法是基于传统的稳定匹配算法--推迟接受算法(DA)--来实现的,该算法在经典的多对一匹配问题下能实现稳定的匹配结果。然而这种传统的算法有两个缺陷。第一,群智系统中的工人具有异质性,具体表现为工人的报酬和技术水平各不相同,因此采用DA算法产生的任务分配结果不稳定。第二,DA算法不考虑质量要求下边界,分配结果使得任务完成的成功率较低。本发明提出的分布式算法可以产生一个稳定的任务分配,该分配严格满足预算限制,并提高有质量要求的任务的完成成功率。The proposed algorithm is implemented based on a traditional stable matching algorithm - Delayed Acceptance Algorithm (DA) - which can achieve stable matching results in the classic many-to-one matching problem. However, this traditional algorithm has two drawbacks. First, the workers in the swarm intelligence system are heterogeneous, which is manifested in the different compensation and technical level of the workers, so the task assignment results generated by the DA algorithm are unstable. Second, the DA algorithm does not consider the lower bound of quality requirements, and the distribution results make the success rate of task completion low. The distributed algorithm proposed by the invention can generate a stable task allocation that strictly meets budget constraints and improves the success rate of tasks with quality requirements.
在本发明中,限制一个工人只能接受一个任务,但是每个任务可以分配给多个工人。在本发明中,假设每个工人对同一个任务的质量水平不变且群智系统上所有的参与者(包括工人和任务发布者)都知道所有的偏好列表,并且偏好列表是固定的。In the present invention, a worker is limited to accept only one task, but each task can be assigned to multiple workers. In the present invention, it is assumed that the quality level of each worker for the same task is constant and all participants (including workers and task publishers) on the swarm intelligence system know all preference lists, and the preference lists are fixed.
请见图1,本发明提供的一种群智系统中基于稳定匹配算法的任务分配方法,包括以下步骤:Please see Fig. 1, the task distribution method based on stable matching algorithm in a kind of crowd intelligence system provided by the present invention, comprises the following steps:
步骤1:获取每个工人s的质量水平{rs}s∈S以及其偏好列表{>s}S,其中S是所有工人集合;获取每个任务t的偏好列表{>t}τ、质量要求{qt}t∈τ和预算限制{bt}t∈τ,其中τ是所有任务的集合;Step 1: Get the quality level {r s } s∈S of each worker s and its preference list {> s } S , where S is the set of all workers; get the preference list {> t } τ , quality of each task t Requirements {q t } t ∈ τ and budget constraints {b t } t ∈ τ , where τ is the set of all tasks;
步骤2:根据工人s的偏好列表{>s}S将s的偏好顺序写进s的申请列表p(s)中;Step 2: According to the preference list {> s } S of worker s, write the preference order of s into the application list p(s) of s;
步骤3:判断工人s的申请列表p(s)是否为空;Step 3: Determine whether the application list p(s) of worker s is empty;
若是,则执行下述步骤4;If yes, perform step 4 below;
若否,则结束本流程;If not, end this process;
步骤4:取申请列表p(s)的第一个任务t,并在p(s)中将t移除;Step 4: Take the first task t in the application list p(s), and remove t from p(s);
步骤5:判断任务t当前分配到工人的总质量水平是否小于任务t的质量要求;Step 5: Determine whether the total quality level of the workers currently assigned to task t is less than the quality requirements of task t;
若是,则执行下述步骤6;If yes, then perform the following step 6;
若否,则执行下述步骤7;If not, then perform the following step 7;
步骤6:执行REDA算法;Step 6: Execute the REDA algorithm;
步骤7:计算所有任务中还没达到质量要求那一部分的差值△Q和所有未分配工人的总质量水平△R;Step 7: Calculate the difference △Q of all tasks that have not met the quality requirements and the total quality level △R of all unassigned workers;
步骤8:判断△R-rs与△Q的大小;Step 8: Judging the size of △ Rrs and △Q;
若△R-rs大于差值△Q,则执行REDA算法;If △ Rrs is greater than the difference △Q, execute the REDA algorithm;
若△R-rs小于差值△Q,则执行步骤9If △ Rrs is less than the difference △Q, go to step 9
步骤9:工人s不能分配给任务t,取下一个工人信息作为工人s,并回转执行所述步骤3;Step 9: Worker s cannot be assigned to task t, take the next worker information as worker s, and execute the above step 3;
请见图2,本实施例采用的REDA算法,包括以下步骤:See also Fig. 2, the REDA algorithm that present embodiment adopts, comprises the following steps:
步骤6.1:获取工人s和任务t信息,工人s∈S,任务t∈τ;Step 6.1: Obtain worker s and task t information, worker s∈S, task t∈τ;
步骤6.2:判断任务的剩余预算是否大于工人的报酬;Step 6.2: Determine whether the remaining budget of the task is greater than the worker's compensation;
若是,则将工人s分配给任务t,然后取下一个工人信息作为工人s,并回转执行所述步骤3;If so, assign worker s to task t, then take the next worker information as worker s, and execute step 3 in reverse;
若否,则执行下述步骤6.3;If not, perform the following step 6.3;
步骤6.3:在任务t当前分配的工人中找出质量水平低于工人s的工人集合A;Step 6.3: Find out the worker set A whose quality level is lower than worker s among the workers currently assigned to task t;
步骤6.4:判断集合Α中是否存在总质量水平小于工人s最小质量水平的工人子集合B;Step 6.4: Determine whether there is a sub-set B of workers whose total quality level is less than the minimum quality level of worker s in set A;
若是,则选取所有符合步骤6.4的集合中工人总质量水平最小的集合Bmin,解除任务t和集合Bmin中所有工人的分配关系,将工人s分配给任务t,然后取下一个工人信息作为工人s,并回转执行所述步骤3;If yes, select the set B min with the smallest total quality level of workers in all sets that meet step 6.4, cancel the assignment relationship between task t and all workers in set B min , assign worker s to task t, and then take the next worker information as Worker s, and turn around to execute the step 3;
若否,则工人s不能分配给任务t,取下一个工人信息作为工人s,并回转执行所述步骤3。If not, then worker s cannot be assigned to task t, take the next worker information as worker s, and go back to step 3.
对算法的分配结果进行分析。可以证明出以下定理。Analyze the distribution results of the algorithm. The following theorem can be proved.
定理1:所提出的任务分配算法的事件复杂度是O(|S||τ|d),其中d指的是REDA算法中查找βmin的运行时间。Theorem 1: The event complexity of the proposed task allocation algorithm is O(|S||τ|d), where d refers to the running time of finding β min in the REDA algorithm.
定理2:(个体合理性)算法的任务分配具有个体合理性。Theorem 2: (Individual Rationality) The task allocation of the algorithm has individual rationality.
定理3:(无浪费性)算法的分配结果具有无浪费性。Theorem 3: (No waste) The distribution result of the algorithm has no waste.
定理4:(公平性)所提出的任务分配算法具有公平性。Theorem 4: (Fairness) The proposed task allocation algorithm is fair.
定理5:(稳定性)所提出的任务分配算法是稳定的。Theorem 5: (Stability) The proposed task assignment algorithm is stable.
举例对本算法的具体过程进行描述,并对结果进行分析。如下表1所示,有6个工人及其对应偏好列表和质量水平,2个任务和对应的预算限制和质量要求。显然所有的任务发布者的偏好列表会是s5t s2t s6t s3t s4t s1。Give an example to describe the specific process of this algorithm, and analyze the results. As shown in Table 1 below, there are 6 workers and their corresponding preference lists and quality levels, 2 tasks and their corresponding budget constraints and quality requirements. Obviously all task issuers' preference lists would be s 5t s 2t s 6t s 3t s 4t s 1 .
表1Table 1
任务分配算法运行过程如下:The operation process of the task allocation algorithm is as follows:
第一轮:工人s1申请任务t1:t1的质量要求没有满足且预算资金充足。将s1分配给t1,则有μ(s1)=t1,μ(t1)=s1。Round 1: Worker s 1 applies for task t 1 : the quality requirements of t 1 are not met and the budget is sufficient. Assign s 1 to t 1 , then μ(s 1 )=t 1 , μ(t 1 )=s 1 .
第二轮:工人s2申请任务t2:t2的质量要求没有满足且预算资金充足。将s2分配给t2,则有μ(s2)=t2,μ(t2)=s2。The second round: worker s 2 applies for task t 2 : the quality requirements of t 2 are not met and the budget funds are sufficient. Assign s 2 to t 2 , then μ(s 2 )=t 2 , μ(t 2 )=s 2 .
第三轮:工人s3申请任务t2:t2的质量要求没有满足且预算资金充足。将s3分配给t2,则有μ(s3)=t2,μ(t2)={s2,s3}。Round 3: Worker s 3 applies for task t 2 : the quality requirements of t 2 are not met and the budget is sufficient. Assign s 3 to t 2 , then μ(s 3 )=t 2 , μ(t 2 )={s 2 ,s 3 }.
第四轮:工人s4申请任务t2:t2的质量要求没有满足且预算资金充足。将s4分配给t2,则有μ(s4)=t2,μ(t2)={s2,s3,s4}。Fourth round: worker s 4 applies for task t 2 : the quality requirements of t 2 are not met and the budget is sufficient. Assign s 4 to t 2 , then μ(s 4 )=t 2 , μ(t 2 )={s 2 ,s 3 ,s 4 }.
第五轮:工人s5申请任务t2:t2的质量要求没有满足,但是预算资金不足以支付给s5,比s5优先级小的工人集合Α={s2,s3,s4},Α中工人的质量水平小于s5并能为s5腾出足够预算的集合有两个,分别是{s2}和{s3,s4}。由于{s3,s4}的总质量水平小于{s2},则βmin={s3,s4},从任务t2的匹配集合中移除βmin,将s5分配给t2,即μ(s5)=t2,μ(t2)={s2,s5}。The fifth round: worker s 5 applies for task t 2 : the quality requirements of t 2 are not met, but the budget funds are not enough to pay s 5 , the set of workers with lower priority than s 5 Α={s 2 ,s 3 ,s 4 }, in Α, there are two sets whose quality level of workers is less than s 5 and can spare enough budget for s 5 , namely {s 2 } and {s 3 ,s 4 }. Since the total mass level of {s 3 , s 4 } is less than {s 2 }, then β min = {s 3 , s 4 }, remove β min from the matching set of task t 2 , assign s 5 to t 2 , that is, μ(s 5 )=t 2 , μ(t 2 )={s 2 ,s 5 }.
第六轮:工人s6申请任务t2:t2有足够的预算,但是其质量要求已经满足,经过判断,将工人s6分配给任务t2将导致其他任务的质量要求得不到满足。因此s6被t2拒绝。Round 6: Worker s 6 applies for task t 2 : t 2 has sufficient budget, but its quality requirements have been met. After judgment, assigning worker s 6 to task t 2 will cause the quality requirements of other tasks to not be met. So s 6 is rejected by t 2 .
第七轮:工人s3申请任务t1:t1的质量要求没有满足且预算资金充足。将s3分配给t1,则有μ(s3)=t1,μ(t1)={s1,s3}。Round 7: Worker s 3 applies for task t 1 : the quality requirements of t 1 are not met and the budget is sufficient. Assign s 3 to t 1 , then μ(s 3 )=t 1 , μ(t 1 )={s 1 ,s 3 }.
第八轮:工人s4申请任务t1:t1的质量要求没有满足且预算资金充足。将s4分配给t1,则有μ(s4)=t1,μ(t1)={s1,s3,s4}。Eighth round: worker s 4 applies for task t 1 : the quality requirements of t 1 are not met and the budget is sufficient. Assign s 4 to t 1 , then μ(s 4 )=t 1 , μ(t 1 )={s 1 ,s 3 ,s 4 }.
第九轮:工人s5申请任务t1:t1的质量要求没有满足且预算资金充足。将s5分配给t1,则有μ(s5)=t1,μ(t1)={s1,s3,s4,s5}。Ninth round: worker s 5 applies for task t 1 : the quality requirements of t 1 are not met and the budget is sufficient. Assign s 5 to t 1 , then μ(s 5 )=t 1 , μ(t 1 )={s 1 , s 3 , s 4 , s 5 }.
最终任务分配结果是μ(t1)={s1,s3,s4,s5},μ(t2)={s2,s5}。The final task allocation result is μ(t 1 )={s 1 , s 3 , s 4 , s 5 }, μ(t 2 )={s 2 ,s 5 }.
在此对所提出的算法性能进行评估,将本发明提出的任务分配算法简称TAQR算法,作为对比的基准为Anchor算法。每个仿真实验运行500次以消除系统随机性。Here, the performance of the proposed algorithm is evaluated, and the task allocation algorithm proposed by the present invention is referred to as the TAQR algorithm, and the benchmark for comparison is the Anchor algorithm. Each simulation experiment was run 500 times to eliminate system randomness.
实验1:验证任务完成成功率Experiment 1: Verify the success rate of task completion
仿真实验显示TAQR比Anchor有更高的任务完成成功率。一个任务成功的前提是工人总质量水平高于任务的质量要求。成功率是成功完成的任务占总任务的比例。q,b,r分别是是从[3,5],[6,10],[1,2]中随机选出的数字。图3(a)是任务完成成功率随着工人数量变化的曲线,图中表明TAQR的成功率比Anchor提高了16%。图3(b)是任务完成成功率随任务的数量变化的曲线,TAQR和Anchor之间的成功率差值接近18%。Simulation experiments show that TAQR has a higher task completion rate than Anchor. The prerequisite for the success of a task is that the total quality level of workers is higher than the quality requirements of the task. The success rate is the ratio of successfully completed tasks to the total tasks. q, b, r are numbers randomly selected from [3,5], [6,10], [1,2] respectively. Figure 3(a) is the curve of task completion success rate changing with the number of workers, which shows that the success rate of TAQR is 16% higher than that of Anchor. Figure 3(b) is a curve of the success rate of task completion as a function of the number of tasks, and the success rate difference between TAQR and Anchor is close to 18%.
实验2:工人满意度比较Experiment 2: Comparison of Worker Satisfaction
仿真实验表明TAQR在工人满意度上比Anchor有更高的性能。工人的满意度定义为其匹配的任务在其偏好列表中的百分比排位。q、b、r是分别从[3,5],[6,10],[1,4]中随机抽取的数字。图4(a)是工人满意度随工人数量变化的曲线,TAQR算法比Anchor的工人满意度高约5%。图4(b)是工人满意度随任务数量变化的曲线,TAQR算法的工人满意度比Anchor大6%。Simulation experiments show that TAQR has higher performance than Anchor in terms of worker satisfaction. Worker satisfaction is defined as the percentage rank of its matching tasks in its preference list. q, b, r are numbers randomly drawn from [3,5], [6,10], [1,4] respectively. Figure 4(a) is the curve of worker satisfaction changing with the number of workers, and the TAQR algorithm is about 5% higher than Anchor's worker satisfaction. Figure 4(b) is the curve of worker satisfaction changing with the number of tasks, and the worker satisfaction of TAQR algorithm is 6% greater than that of Anchor.
实验3:运行时间Experiment 3: Running Time
图5表明无论是随工人数量的增加还是任务数量的增加,Anchor比TAQR算法的时间复杂度低。q,b,r是分别从[0.8,1.5],[1.4,2],[0,1]中随机抽取的数字。结合图3、图4,TAQR通过增加运行时间(在合理范围内),提高了群智系统的性能(任务完成率和工人满意度)。Figure 5 shows that the time complexity of Anchor is lower than that of TAQR algorithm, no matter with the increase of the number of workers or the number of tasks. q, b, r are numbers randomly drawn from [0.8,1.5], [1.4,2], [0,1] respectively. Combining Figures 3 and 4, TAQR improves the performance (task completion rate and worker satisfaction) of the crowd intelligence system by increasing the running time (within a reasonable range).
应当理解的是,本说明书未详细阐述的部分均属于现有技术。It should be understood that the parts not described in detail in this specification belong to the prior art.
应当理解的是,上述针对较佳实施例的描述较为详细,并不能因此而认为是对本发明专利保护范围的限制,本领域的普通技术人员在本发明的启示下,在不脱离本发明权利要求所保护的范围情况下,还可以做出替换或变形,均落入本发明的保护范围之内,本发明的请求保护范围应以所附权利要求为准。It should be understood that the above-mentioned descriptions for the preferred embodiments are relatively detailed, and should not therefore be considered as limiting the scope of the patent protection of the present invention. Within the scope of protection, replacements or modifications can also be made, all of which fall within the protection scope of the present invention, and the scope of protection of the present invention should be based on the appended claims.
Claims (3)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201610985542.8A CN106557871A (en) | 2016-11-09 | 2016-11-09 | A kind of method for allocating tasks in gunz system based on stable matching algorithm |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201610985542.8A CN106557871A (en) | 2016-11-09 | 2016-11-09 | A kind of method for allocating tasks in gunz system based on stable matching algorithm |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN106557871A true CN106557871A (en) | 2017-04-05 |
Family
ID=58444753
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201610985542.8A Pending CN106557871A (en) | 2016-11-09 | 2016-11-09 | A kind of method for allocating tasks in gunz system based on stable matching algorithm |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN106557871A (en) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107609796A (en) * | 2017-09-30 | 2018-01-19 | 杭州圣建供应链管理有限公司 | A kind of production optimization method of steel member |
| CN108055095A (en) * | 2017-12-08 | 2018-05-18 | 武汉大学 | A kind of combined spectral matching algorithm of stabilization |
| CN111861104A (en) * | 2020-06-05 | 2020-10-30 | 北京嘀嘀无限科技发展有限公司 | Service distribution method, apparatus and electronic device |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN1529851A (en) * | 2000-11-06 | 2004-09-15 | 皇家菲利浦电子有限公司 | Method and system for allocating budgets to tasks |
| CN103870990A (en) * | 2014-03-31 | 2014-06-18 | 上海交通大学 | Method for realizing incentive mechanism of coverage problem in mobile crowdsensing system |
| CN104463424A (en) * | 2014-11-11 | 2015-03-25 | 上海交通大学 | Crowdsourcing task optimal allocation method and system |
| CN105976205A (en) * | 2016-05-04 | 2016-09-28 | 南京邮电大学 | Crowdsourcing sensing method and system for quality sensitive geographical regional information |
-
2016
- 2016-11-09 CN CN201610985542.8A patent/CN106557871A/en active Pending
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN1529851A (en) * | 2000-11-06 | 2004-09-15 | 皇家菲利浦电子有限公司 | Method and system for allocating budgets to tasks |
| CN103870990A (en) * | 2014-03-31 | 2014-06-18 | 上海交通大学 | Method for realizing incentive mechanism of coverage problem in mobile crowdsensing system |
| CN104463424A (en) * | 2014-11-11 | 2015-03-25 | 上海交通大学 | Crowdsourcing task optimal allocation method and system |
| CN105976205A (en) * | 2016-05-04 | 2016-09-28 | 南京邮电大学 | Crowdsourcing sensing method and system for quality sensitive geographical regional information |
Non-Patent Citations (2)
| Title |
|---|
| WEI XU等: ""DATA: A Double Auction Based Task Assignment Mechanism in Crowdsourcing Systems"", 《2013 8TH INTERNATIONAL CONFERENCE ON COMMUNICATIONS AND NETWORKING IN CHINA (CHINACOM)》 * |
| 王青: ""基于用户主题精确感知大数据群体计算任务分配算法"", 《计算机应用》 * |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107609796A (en) * | 2017-09-30 | 2018-01-19 | 杭州圣建供应链管理有限公司 | A kind of production optimization method of steel member |
| CN107609796B (en) * | 2017-09-30 | 2020-06-26 | 杭州圣建供应链管理有限公司 | Production optimization method of steel member |
| CN108055095A (en) * | 2017-12-08 | 2018-05-18 | 武汉大学 | A kind of combined spectral matching algorithm of stabilization |
| CN108055095B (en) * | 2017-12-08 | 2020-11-17 | 武汉大学 | Stable combined spectrum matching algorithm |
| CN111861104A (en) * | 2020-06-05 | 2020-10-30 | 北京嘀嘀无限科技发展有限公司 | Service distribution method, apparatus and electronic device |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| De Backer et al. | 'Manufacturing or Services-That is (not) the Question': The Role of Manufacturing and Services in OECD Economies | |
| CN108364190A (en) | In conjunction with the online motivational techniques of mobile intelligent perception of reputation updating | |
| Ni et al. | Spectrum Allocation Based on Game Theory in Cognitive Radio Networks. | |
| Hartfeil | Bank one measures profitability of customers, not just products | |
| CN106557871A (en) | A kind of method for allocating tasks in gunz system based on stable matching algorithm | |
| CN104077634B (en) | active-reactive type dynamic project scheduling method based on multi-objective optimization | |
| KR102503520B1 (en) | Personnel management system | |
| CN106447386A (en) | Network advertisement examination method and system | |
| CN103064744A (en) | Resource optimizing method applied to multi-layer web application based on SLA (Service Level Agreement) | |
| Al-Sabahi et al. | Exploring criteria and critical factors for governmental projects implementation in Yemen: a case study | |
| CN103854208A (en) | Cloud market multi-type resource allocation pricing mechanism and implementation algorithm thereof | |
| US20230087620A1 (en) | Systems and methods of dynamic optimization of data element utilization according to objectives | |
| Shah et al. | Optimal GENCO's bidding strategy in a power exchange facilitating combined power and emission trading using Intelligent Programmed Genetic Algorithm | |
| Chandra et al. | Novel mechanisms for online crowdsourcing with unreliable, strategic agents | |
| CN108921598A (en) | The real-time bid optimization method of advertisement, device, medium and computer equipment | |
| CN106845718A (en) | A kind of efficient cloud market elasticity time limit computing resource auction mechanism | |
| CN106657058B (en) | Event resource allocation method and device | |
| Chang et al. | Analysis on improving the application of machine learning in product development | |
| CN111047170B (en) | Manufacturing service cooperative scheduling method based on long-term and short-term utility | |
| Alkhanak et al. | A hyper-heuristic approach using a prioritized selection strategy for workflow scheduling in cloud computing | |
| Pittl et al. | Cloudtax: A cloudsim-extension for simulating tax systems on cloud markets | |
| Agbo | A paradox about the multi-level marketing | |
| Sutrisna et al. | Regional Financial Management Strategies To Improve The Community Welfare In Bali Province | |
| CN109886596B (en) | Method for improving cooperative rate of crowd sensing system based on psychological account theory | |
| Ankolekar et al. | MET: an enterprise market for tasks |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PB01 | Publication | ||
| PB01 | Publication | ||
| SE01 | Entry into force of request for substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170405 |
|
| RJ01 | Rejection of invention patent application after publication |