Introduction
In recent years, crowdsourcing has emerged as a new service paradigm, such as amazon’s Mechanical Turk, Waze, Upwork, Freelancer, etc. The advantage of crowdsourcing is to make full use of idle resources in smart city, improve work efficiency and reduce work costs. Crowdsourcing has been widely used in smart cities [1], including education, healthcare, public safety, and transportation. Fig. 1 shows the crowdsourcing applications in smart city. Tasks are posted on the crowdsourcing platform by the requester nodes, and then received and executed by the appropriate worker nodes [2]. After evaluating the solutions, the crowdsourcing platform charges the reward between requesters and workers. The effective assignment of tasks is a key challenge for the application of crowdsourcing in smart cities.
The existing researches on crowdsourcing task assignment mainly consider the implementation for the crowdsourcing platforms, maximizing the utility of platforms and minimizing the cost of requesters. However, both the stability of the transaction and maximizing the satisfaction of both sides are not been considered. On the one hand, the stable matching is to find a matching between tasks and workers, considering preference lists in which each side expresses his preference over the members of the opposite side. The output matching must be stable, which intuitively means that there is no (task, worker) pair both of which have incentive to elope. On the other hand, the stable match with the highest satisfaction of both parties should be found to meet the personal interests of requesters and workers.
The main contributions are shown as below:
We propose a satisfaction degree quantization function, which measures the integrated satisfaction degree of both sides from the perspective of multiple attributes.
We propose a task assigning mechanism that focuses on the stability of the transaction and maximize the satisfaction of both sides during the tasks are intelligently matched to workers.
We adopt the improved Generalized Second-Price (GSP) mechanism based on price and satisfaction degree to price the transaction.
We theoretically prove that the task assigning mechanism is truthfulness, individual rationality, stable and satisfactory assignment, and budget-balance. Experimental results are presented to verify our analysis.
The structure of this paper is as follows. Section II introduces the related work. Section III describes the crowdsourcing framework and its definitions. Section IV presents the crowdsourcing task assignment (TASS) mechanism. Section V gives the theoretical analysis of TASS mechanism. Section VI evaluates the performances of the TASS mechanism. Section VII concludes this paper.
Related Work
In order to solve the task assignment in the crowdsourcing, the corresponding solutions are proposed in [4]–[34]. The related works are described from the following two aspects: centralized crowdsourcing task assignment [4]–[22] and distributed crowdsourcing task assignment [23]–[32].
A. Centralized Crowdsourcing Task Assignment
The current crowdsourcing system is mostly developed based on server centralized hosting, such as MTurk, Waze, Upwork, and Freelancer. Research on centralized crowdsourcing service platform mainly includes incentive, online task assignment and heterogeneity.
The goal of incentive strategy is designed to determine who should be awarded and how much should be awarded. The document [4] designed and evaluated a reverse auction based on the dynamic pricing incentive mechanism in which users can sell their sensing data to a service provider with their claimed bids. The proposed incentive mechanism focuses on minimizing and stabilizing incentive cost while maintaining adequate number of participants with a virtual credit. However, this mechanism cannot guarantee the truthfulness, which is likely to cause market manipulation. The document [5] design two incentive models: the crowdsourcer-centric model and the user-centric model respectively, aiming to maximize the utility of the crowdsourcer and solve the truthful problem of worker nodes. The document [6] also proposed an incentive protocol based on reputation. The goal of this protocol is to minimize incentive cost and solve the problems of free-riding and false-reporting at the same time. The incentive mechanism consists of winning bids determination algorithm and critical payment scheme which induces smartphones to disclose their real costs [7].
To solve the problem of online task assignment, the document [8] present incentive compatible mechanisms for maximizing the number of tasks under a given budget, and for minimizing payments given a fixed number of tasks to complete. On this basis, to solve the problem that the unreasonable pricing of tasks leads to either the requester’s inefficient utility or the worker node’s too low utility to give up the task, the document [9] assumes a homogeneous pool of workers, and presents a no-regret posted price mechanism, BP-UCB, to maximize the requester’s utility and ensure the truthfulness of the workers. The document [10] designs two online mechanisms, OMZ and OMG, satisfying individual rationality, budget feasibility, truthfulness and constant competitiveness under the zero arrival-departure interval case and a more general case, respectively.
The problem of heterogeneity can be reduced to the problem of multiple attributes. The document [11] explores the problem of assigning heterogeneous tasks to workers with different, unknown skills set in crowdsourcing markets to maximize the total benefits that the requester obtains from the completed work. The document [12] also incorporates heterogeneous skill levels of worker nodes into their assignment mechanism based on the rating system. Under the matching constraints given by the bipartite graph between workers and tasks, Goel et al. proposes a truthful mechanism, TM-Uniform, for crowdsourcing markets which allocates the tasks to the workers, while ensuring budget feasibility and achieves near-optimal utility for the requester [13]. Further, each worker node is assigned a set of tasks with the goal of maximizing the utility of worker nodes [14]. Considering the heterogeneity of tasks, the documents [15]–[17] are to maximize the utility of requesters. The document [18] considers the selfishness and heterogeneity of worker nodes and designs two incentive mechanisms, MC-VCG and TMC-ST, which meet the requirements of truthful, individual rationality and budget balance. The documents [19]–[22] adopt a variety of methods to learn quality of worker nodes, so as to assign tasks to the worker nodes with the optimal quality and maximize the task completion quality.
B. Distributed Crowdsourcing Task Assignment
Distributed crowdsourcing task assignment is designed to prevent single point of failure and performance bottlenecks in the centralized crowdsourcing [23]. The document [24] uses social relations in crowdsourcing system for task assignment, aiming at solving load balancing problem in distributed models. The document [25] introduces asynchronous distributed task selection in mobile perception. Although the documents [23]–[25] accomplish tasks in a distributed manner, they still rely on third-party centralized systems to provide services. However, it is necessary to reduce reliance on trusted third parties in crowdsourcing. First, the third party and some of its employees might silently misbehave in-house for self-interests. Second, the party often fails to resolve disputes. Third, a centralized platform inevitably suffers from single points of failure inherently. Fourth, user’s sensitive information and task solutions are saved in the database of crowdsourcing systems, which has the risk of large-scale privacy disclosure and data loss. The document [26] points out that blockchain allows transaction parties to communicate and exchange resources in a peer-to-peer network, which can be traced to the source and save security and audit costs. The documents [27]–[30] propose blockchain-based crowdsourcing application systems suitable for specific purposes respectively, while the document [31] conceptualizes a blockchain-based decentralized framework for crowdsourcing named CrowdBC for general purposes. CrowdBC protects the privacy of users in the block chain, and applies to a large number of incentives tasks, however, it does not consider anonymity and auditing. The document [32] designs and implements a decentralized crowdsourcing system with privacy protection, anonymity, and their accountability. The blockchain-based crowdsourcing mechanism is still being explored, in large part because smart contracts that protect privacy and conduct transactions do not currently support sophisticated incentives and work evaluations. This is the direction of future exploration.
Sections A and B deal mainly with task assignment from the perspective of crowdsourcing platforms or requesters, with the goal of maximizing the utility of platforms or minimizing the cost of requesters. However, there are few literatures on how to consider the stable assignment of tasks from the integrated satisfaction of both sides of the transaction. The document [33] proposed a satisfied stable matching strategy based on stable matching [3]. The strategy maximizes the satisfaction of both parties on the basis of stable matching, but it needs to obtain the preference order information of both parties in advance. The document [34] proposed a stable task matching framework based on participants’ preferences. The weakness of it lies in the unreasonable assumption. For example, this paper assumes that the preference of crowdsourcing participants is known in advance, and the quality of worker nodes to complete different tasks is the same, and requesters and participants are truthful.
Crowdsourcing Framework and Definitions
A. System Model and Assumptions
The online crowdsourcing trading platform is shown in Fig. 2, including requester node, worker node, and trading platform. The requesters and workers submit multi-attributes information and reward(cost) for tasks to the crowdsourcing platform. The requesters and workers are citizens in the smart cities. After collecting all the attributes information and reward(cost) from the requesters and workers according to a certain period, the crowdsourcing trading platform conducts the intelligent matching between Requesters and Workers. A reverse auction based on improved GSP mechanism is set as the intelligent process. Then, the winning workers get matched with requesters, receive tasks, submit solutions, and receive payments from the winning requesters.
Intelligent transaction matching is the core task for trading platform, as shown in Fig. 3. We assume that each task can only be completed by one worker node at most, and each worker node can only complete one task at most within the same time period. The multi attributes information of the task includes the personal information of the requester node and the expected information of the worker node. The multi attributes information of the worker node includes the personal information, and the expected information of the task. The budget is the highest payment for tasks set by the requestor node, and the cost is the minimum reward set by the worker node. These multi-attributes information describes the requirements and preferences of buyers and sellers with structured information, and determines the winners, which is suitable for the automation of transactions. The dotted line in Fig. 3 indicates that the nodes on both sides can be matched arbitrarily, while the solid line represents the final matching relationship.
B. Related Definitions and Symbol Descriptions
Definition 1 (Bilateral Satisfaction Degree Function):
Let \begin{equation*} Z=\alpha \sum \nolimits _{i=0}^{m} t_{ik} +\beta \sum \nolimits _{\begin{array}{l} 1 \le k\le n \\ w_{k}\leftarrow t_{i} \\ \end{array}} w_{ki}\tag{1}\end{equation*}
Definition 2 (Multi Attributes Parameters of Task and Worker Nodes):
In crowdsourcing trading, the attribute values of task \begin{align*} Attrib\_{}t_{i}=&\{d_{i1}, d_{i2}, \ldots,d_{ip}\}\tag{2}\\ Attrib\_{}w_{j}=&\{d_{j1}^{\prime }, d_{j2}^{\prime },\ldots,d_{jq}^{\prime }\}\tag{3}\end{align*}
Definition 3 (Truthfulness):
An auction is truthful if for each worker node (resp. requestor node), it cannot increase its utility by bidding a value deviating from its true valuation, no matter what others bid.
Definition 4 (Individual Rationality):
An auction is individually rational if for each worker node (resp. requestor node), its utility is non-negative when reporting its true valuation (resp. cost).
Definition 5 (Budget-Balance):
An auction is budget-balanced if by the end of an auction, the auctioneer’s utility is non-negative.
The symbol definitions used below are shown in Table. 1.
Multi Attributes Satisfied Stable Matching
The TASS model consists of three parts: filtering, decision making, and payment. The filtering is mainly responsible for filtering requester nodes and worker nodes participating in bilateral transactions. The nodes comprehensively consider hard and soft constraints through multi-attributes fusion method and give the satisfaction degree of the other side nodes. In the decision-making, the satisfaction requirements of each node are mainly considered, and then the optimal bilateral satisfied stable matching model is built. After that, we can get the assignment result. Finally, the remuneration is paid to the worker node by the requester node after successfully matching.
A. Filtering
The multiple attributes of task assignment include three types: the standard value type, the interval value type, and the critical value type. The attribute constrains are used to filter tasks and workers. Standard value constraints are hard constraints, interval value constraints and critical value constraints are soft constraints.
Definition 6:
The standard value type constraints refers to the transaction attribute specified by the task and the worker as a specific value, and other value different from this value is unqualified, also known as the judgment type.
It’s formally expressed as:
Definition 7:
Interval constraints refers to the interval between two values of the transaction attribute specified by the task and the worker, and the value within this interval is qualified.
It’s formally expressed as:
Definition 8:
Critical type constraints refers to the condition that the transaction attribute specified by the task and the worker is greater than or less than a certain critical value. Since less than can be converted into greater than, the following only considers the situation of greater than.
It’s formally expressed as:
Definition 9:
Let the matching degree of
For the critical value attribute constraint, there is \begin{equation*} \alpha _{ij}^{k}=\frac {d_{ij}^{k}-d_{min}^{k}}{d_{max}^{k}-d_{min}^{k}};\tag{4}\end{equation*}
For the attribute constraints of standard value type and interval type, there is
Otherwise, if
The following is a further formal representation of the matching degree between the two parties.
Firstly, we quantify worker’s satisfaction degree to tasks with the multi-attributes fusion method.
With the constraints of definition 6–definition 8, we calculate the matching degree of worker \begin{equation*} w{sim}_{i,j}=\frac {\sqrt {\sum \nolimits _{k=1}^{n}(w_{i,j}^{k}\alpha _{i,j}^{k})^{2}}}{n}\in [{0,1}];\tag{5}\end{equation*}
Since it is easy to add the degree of preference of both sides to each attribute to our model, the effect on each attribute preference is not considered in this paper. Assume that each attribute is equally importance, then \begin{equation*} {wsim}_{i,j} = \frac {\sqrt {\sum \nolimits _{k=1}^{n} {\alpha _{i,j}^{k}}^{2}}}{\mathrm {n}}\in [{0,1}];\tag{6}\end{equation*}
The higher \begin{equation*} {sat}_{i,j}^{T}=\begin{cases} b_{i}\ast {wsim}_{i,j,} & \mathit {Constraints~defined}~6-8\\ &\mathit {are~satisfied} \\ 0, & otherwise \end{cases}\tag{7}\end{equation*}
The tasks that meet each worker’s constraints are sorted non-ascending by their integrated satisfaction degree, and the satisfaction ranking matrix
Then, we quantify task’s satisfaction degree to workers with the multi-attributes fusion.
\begin{equation*} {tsim}_{i,j}=\frac {\sqrt {\sum \nolimits _{k=1}^{m} {\alpha _{i,j}^{k}}^{2}}}{m}\in [{0,1}]\tag{8}\end{equation*}
Considering the worker’s cost information \begin{equation*} {sat}_{i,j}^{W}=\begin{cases} \displaystyle \frac {tsim_{i,j}}{c_{j}+0.001}, & \mathrm {Constraints~defined}~ 6-8~\\ &\mathrm {are~satisfied} \\ 0, & \mathrm {otherwise} \\ \end{cases}\tag{9}\end{equation*}
All worker nodes in
B. Task Assignment Decision
Let \begin{align*}&max~Z(T) =\sum \limits _{i=\mathit {1}}^{m}\sum \limits _{j=\mathit {1}}^{n}sat_{i,j}^{W} x_{i,j} \\&max~Z(W) =\sum \limits _{i=\mathit {1}}^{m}{\sum \limits _{j=\mathit {1}}^{n}sat_{i,j}^{T} x_{i,j}} \\&s.t.~\sum \limits _{j=\mathit {1}}^{n}{x}_{i,j} =\mathit {1}, i\in M \\&\hspace{1.5pc}\sum \limits _{i=\mathit {1}}^{m}x_{i,j} \le \mathit {1},\quad j\in N \\&\hspace{1.5pc}x_{i,j} +\sum \nolimits _{k:sat_{i,k}^{T}>sat_{i,j}^{T}} x_{i,k} +\sum \nolimits _{l:sat_{l,j}^{W}>sat_{i,j}^{T}} x_{l,j} \ge \mathit {1}, \\&\hspace{1.5pc} i\in M, \quad j\in N \\&\hspace{1.5pc}x_{i,j} \in \{\mathit {0}, \mathit {1}\},\quad i \in M,~j \in N\tag{10}\end{align*}
In the model,
To solve the model (10), the linear weighting function [36] is used to convert the model (10) into the single-objective optimization model (11). The raw satisfaction degrees from two sides may not be comparable. One common linear 0–1 normalization method is used for those raw satisfaction degrees: for any list of satisfaction degree (workers and tasks), we map the highest satisfaction degree into 1, the lowest satisfaction degree into 0, and any other satisfaction degrees into a value between 0 and 1 by using the equation as follows:\begin{equation*} n\_{}sd = \frac {(raw\_{}sd-min\_{}sd)}{(max\_{}sd\mathbf {-}min\_{}sd)}\tag{11}\end{equation*}
Here \begin{align*}&max~Z=\mathit {0.5}\times \sum \limits _{i=\mathit {1}}^{m}{\sum \limits _{j=\mathit {1}}^{n}sat_{i,j}^{W} x_{i,j}} +\mathit {0.5}\times \sum \limits _{i=\mathit {1}}^{m} {\sum \limits _{j=\mathit {1}}^{n} sat_{i,j}^{T} x_{i,j}} \\&s.t.~\sum \limits _{j=\mathit {1}}^{n}{x_{i,j}} =\mathit {1},\quad i\in M \\&\hspace{1.5pc}\sum \limits _{i=\mathit {1}}^{m} x_{i,j} \le \mathit {1},\quad i \in M,~ j\in N \\&\hspace{1.5pc}x_{i,j} +\sum \nolimits _{k:sat_{i,k}^{T} >sat_{i,j}^{T}}x_{i,k} +\sum \nolimits _{l:sat_{l,j}^{W}>sat_{i,j}^{T}} x_{l,j} \ge \mathit {1}, \\&\hspace{1.5pc}i\in M,\quad j\in N \\&\hspace{1.5pc}x_{i,j} \in \{\mathit {0},\mathit {1}\},\quad i\in M,\quad j\in N\tag{12}\end{align*}
The equation (12) is a 0–1 linear programming with
C. Payment
The GSP mechanism was introduced by Google and almost adopted by all the online ad auctions. It has been proven to be less susceptible to gaming, much more stable, and has higher allocative efficiency. In the sponsored search auctions (SSA) market, the user experience improvement is realized through the implementation of a weighted factor named “quality score” since 2008. The quality score is used in ranking ads, in order to ensure that the priority ads are shown in more prominent positions so as to encourage the quality advertising content [38]. Analogously, we also propose to use quality score (satisfaction degree) to reward those premium workers, so as to improve their probabilities to get higher ranks or get higher rewards.
Assuming that no fees are charged by the crowdsourcing platform, and the transaction price of requesters and workers is equal. Besides, considering the budget of the task and the cost of the worker node, TASS adopts the improved Generalized Second-Price (GSP) based on price and satisfaction degree to pay for a transaction. The payment \begin{equation*} p_{i,j}=\frac {tsim_{i,j}}{tsim_{i,j+1}{^{\prime }}}\ast {c_{j+1}}^{\prime }\tag{13}\end{equation*}
If
In each round of auction, worker nodes strategically choose their own reported cost in order to maximize their profits. The utility of the worker node is defined as the difference between its reward \begin{equation*} u_{j}=\begin{cases} p_{i,j}-\overline {c_{j}}, & \mathrm {if}~x_{i,j}=1;\\ 0, & \mathrm {otherwise} \\ \end{cases}\tag{14}\end{equation*}
In each round of auction, requestors strategically choose his own reported budgets in order to maximize profits. The utility of a task is defined as the difference between his truthful budget (\begin{equation*} u_{i}=\begin{cases} \overline {b_{i}} -p_{i,j}, & \mathrm {if}~x_{i,j}=1; \\ 0, & \mathrm {otherwise} \\ \end{cases}\tag{15}\end{equation*}
Theoretical Analysis of Tass
TASS mechanism is qualitatively analyzed, and the analysis content includes truthfulness, individual rationality, satisfied stable matching and budget balance.
Theorem 1:
The TASS mechanism satisfies Truthful.
Proof:
Since TASS mechanism consists of tasks’ budgets and workers’ costs, we need to prove the mechanism is both tasks’ budget-truthful and workers’ cost-truthful.
A. Workers’ Cost-Truthfulness
Cases 1 and 2:
Worker
Case 3:
Worker
Case 4:
Worker
In summary, we can get
B. The Tass Mechanism Satisfies Tasks’ Budget-Truthful
Cases 1 and 2:
The task
Case 3:
Task
Case 4:
Task
In summary, we can get
Therefore, truthfulness of TASS mechanism is proven.
Theorem 2:
The TASS mechanism satisfies individual rationality.
Proof:
An auction is individually rational if for each buyer (resp. seller), its utility is non-negative when reporting its truthful budget (resp. cost). Theorem 1 shows that both the requester and the worker’s truthful budget or truthful cost in the auction are dominant strategies in the TASS mechanism. For requester node, payment for worker node is less than his budget (that is, the truthful budget),
Theorem 3:
The TASS mechanism satisfies task assignment with stability and satisfactory.
Proof:
In the one to one matching scenario, (\begin{align*} \sum \nolimits _{k:h_{i,k}>h_{i,j}} x_{i,k} \!+\! \sum \nolimits _{l:g_{l,j}>g_{i,j}} x_{l,j} \!+\!x_{i,j}\! \ge \! 1,\quad i\in M,~j\in N \!\!\!\! \\ {}\tag{16}\end{align*}
Constraint (16) ensures that for each acceptable pair (
Theorem 4:
TASS mechanism is budget balanced.
Proof:
According to definition 5, an auction is budget-balanced if by the end of an auction, the auctioneer’s utility is non-negative. The auction platform is the auctioneer. In the scenario we designed, the platform’s utility is always zero, so it satisfies the budget balance.
Performance Evaluation
Given the lack of any publicly available real dataset for our application scenarios for crowdsourcing task assignment in smart cities, we perform simulation experiments to evaluate the performances of TASS, including the truthfulness, the individually rational, the satisfied stable assignment and the budget-balanced. The experiments are run on a Windows PC with 2.7 GHz Intel Core ™ i5-6400 processor and 4Gb memory. It is assumed that the attribute values of participants follow the Poisson distribution, and bidding prices of Worker nodes and tasks are generated randomly within the interval (0,12].
A. Truthfulness
To verify the truthfulness of the TASS mechanism, we randomly select a winner and a loser, and then check how their utility changes when bidding is truthful cost or bidding is different from his truthful cost. Fig. 4(a) shows that the utility of the truthful ask is the highest in all possible prices. The winner requester received the maximum utility value of 5.32 with the truthful ask price
As shown in Fig. 4(b), the utility of the truthful cost is the highest in all possible prices. The winning worker will get a positive utility if he bids with true cost, but will be a loser if he tries to raise his bid, achieving zero utility. On the other hand, if the bidding cost is lowered, it will be won by negative utility. Fig. 4 verifies the truthfulness of the TASS mechanism.
B. Individually Rationality
For each crowdsourcing participant’s non-zero return, we plot his cost and the return he receives in Fig. 5. The reward is always greater than the corresponding cost, which verifies the individual rationality of TASS mechanism.
Fig. 5 shows individual rationality. As is shown in Fig. 5, for each value on the abscissa, the payment is always less than or equal to the budget of the requestor node. According to (15), the utility of the Requestor node is greater than or equal to 0; Similarly, for each value on the abscissa, the transaction price always greater than or equal to the bid of the worker node. According to (15), the utility of the worker node is greater than or equal to 0. That is, the utility of requestor node and worker node is always non-negative, which verifies that the TASS mechanism meets individual rationality.
C. Satisfied and Stable Assignment
We compare the performance of the TASS model with the BOLO model [37]. The BOLO model derives a matching result to separately maximize the sum of satisfaction degree on each side, which can be described as follows:\begin{align*}&max~Z(T) =\sum \limits _{i=\mathit {1}}^{m} {\sum \limits _{{j=\mathit {1}}}^{n}{sat_{i,j}^{W} {x}_{i,j}}} \\&max~Z(W)=\sum \limits _{{i=\mathit {1}}}^{m} {\sum \limits _{{j=\mathit {1}}}^{n} {sat_{i,j}^{T} {x}_{i,j}}} \\&\hspace{1.5pc} {s.t.}~\sum \limits _{{j=\mathit {1}}}^{n}{x}_{i,j} =\mathit {1},\quad i\in {M} \\&\hspace{1.5pc}\sum \limits _{{i=\mathit {1}}}^{m}{x_{i,j}} \leqslant {\mathit {1}},\quad j\in {N} \\&\hspace{1.5pc}{x}_{i,j} \in \{\mathit {0,1}\}, \quad i\in M,~j\in {N}\tag{17}\end{align*}
Analogous to solving model (10), the linear weighting function [36] is still used to convert the model (17) into the single-objective optimization model (17). Considering the fairness of requestor nodes and worker nodes, the weights of both are set to be equal to 0.5. The model (17) is built as follows.\begin{align*}&max~Z = \mathit {0.5}\times \sum \limits _{{i=\mathit {1}}}^{m} {\sum \limits _{{j=\mathit {1}}}^{n} {sat_{i,j}^{W} {x}_{i,j}}} {+\mathit {0.5}}\times \sum \limits _{{i=\mathit {1}}}^{m} {\sum \limits _{{j=\mathit {1}}}^{n} {sat_{i,j}^{T} {x}_{i,j}}} \\&{s.t.}~\sum \limits _{{j=\mathit {1}}}^{n}{x_{i,j}} =\mathit {1},\quad i\in {M} \\&\hspace{1.5pc}\sum \limits _{{i=\mathit {1}}}^{m} {x_{i,j}} \le \mathit {1},\quad i\in M,~j\in {N} \\&\hspace{1.5pc}{x}_{i,j} \in \{\mathit {0,1}\},\quad i\in M,~j \in {N}\tag{18}\end{align*}
The BOLO model gets the maximum of satisfaction degree, but the stability of the results is not guaranteed. Fig. 6 shows the comparison of the satisfaction degree between TASS model and BOLO model. We randomly selected 30 matching results run by the TASS model and the BOLO model. In most cases, the satisfaction degree of the TASS model is slightly less than or equal to the satisfaction degree of the BOLO model.
We further illustrate the superiority of TASS model through the crowdsourcing transaction of randomly selected 4 tasks and 7 worker nodes.
The expectation attribute set of task is
The expected value matrix \begin{equation*} E=\left [{ {\begin{array}{llll} 42 & 50 & 35 & 51 \\ 47 & 46 & 35 & 52 \\ 58 & 53 & 36 & 49 \\ 64 & 49 & 43 & 52 \\ \end{array}} }\right]\end{equation*}
The actual value \begin{equation*} D_{r}=\left [{ {\begin{array}{llll} 420 & 70 & 60 & 88 \\ 500 & 82 & 82 & 82 \\ 480 & 76 & 78 & 78 \\ 600 & 90 & 88 & 80 \\ \end{array}} }\right]\end{equation*}
The expected value matrix \begin{equation*} F=\left [{ {\begin{array}{llll} 300 & 55 & 60 & 50 \\ 391 & 62 & 55 & 71 \\ 387 & 56 & 53 & 64 \\ 321 & 58 & 54 & 55 \\ 323 & 52 & 45 & 65 \\ 353 & 67 & 59 & 51 \\ 300 & 59 & 50 & 65 \\ \end{array}} }\right]\end{equation*}
The actual value \begin{equation*} D_{w}=\left [{ {\begin{array}{cccc} 85 & 65 & 68 & 80 \\ 72 & 78 & 74 & 92 \\ 387 & 56 & 53 & 74 \\ 321 & 58 & 54 & 85 \\ 323 & 60 & 85 & 62 \\ 353 & 78 & 92 & 90 \\ 300 & 88 & 85 & 66 \\ \end{array}} }\right]\end{equation*}
Firstly, the normalized satisfaction degree matrix \begin{align*}&\hspace {-1pc}{Sat}^{W}\\=&\left [{ {\begin{array}{l} 0.0064~0.0000~0.1551~1.0000~0.1143~0.2410~0.3140 \\ 0.0000~0.0041~0.1124~1.0000~0.1021~0.2400~0.3118 \\ 0.0000~0.0212~0.1010~1.0000~0.1001~0.2736~0.3085 \\ 0.0000~0.0373~0.1084~1.0000~0.0825~0.2636~0.2960 \\ \end{array}} }\right]\\&\hspace {-1pc}{Sat}^{T}\\=&\left [{ {\begin{array}{l} 0.0000~0.0000~0.0000~0.0000~0.4964~0.0000~0.0000\\ 1.0000~0.7210~0.7281~0.9246~1.0000~0.7986~1.0000\\ 0.9844~0.6109~0.6149~0.8727~0.9721~0.7097~0.9860\\ 0.9543~1.0000~1.0000~1.0000~0.0000~1.0000~0.9695\\ \end{array}} }\right]\end{align*}
Then, the TASS model and the BOLO model are built. By solving the above optimization models, the matching results can be obtained. The comparison results are presented in Table. 2.
Compared with the two results, it can be found the latter satisfaction degree is a little more than the former (2.5467 > 2.2051), but the latter does not have the property of stable matching. For example, satisfaction degree for
D. Budget-Balanced
Since the utility of the platform is always 0 and satisfies the non-negative condition, the platform satisfies the budge-balanced. For the non-zero payment of each requester node, Fig. 5 shows his budget and the payment for worker. Obviously, the payment never exceeds the budget, which verifies that the TASS model meets the budget-balanced.
Conclusion
In this paper, we propose a multi attributes crowdsourcing task assignment with stability and satisfactory, called TASS. In TASS, we give a satisfaction degree quantization function, a task assigning algorithm, an improved Generalized Second-Price (GSP) mechanism based on price and satisfaction degree to price the transaction. Finally, we evaluate the performances of TASS with the state-of-the-art task assignment works. The experimental results show that TASS is better than the state-of-the-art task assignment works in terms of truthfulness, individually rationality satisfaction degree, and balanced budget. Our future work is to deploy TASS mechanism on the blockchain, and realize the intelligent matching between requesters and workers considering the privacy protection of both sides.