Research Article
Fairness of Task Allocation in Crowdsourcing Workflows
| | Input: given workflow: | | | Output: {totalCost, overallFairness, completedTime} | | (1) | for , initialize , , , and | | (2) | While > 0 Do | | (3) | Get by calling findLongestPath () | | (4) | IfThen | | (5) | Let current_node = | | (6) | Let S = | | (7) | For i = 1 to Do | | (8) | Get the list of nominees for | | (9) | Group nominees by similarity | | (10) | Set for each group | | (11) | Get candidates by multicasting nominees by group | | (12) | Calculate the overallFairness | | (13) | Calculate the indicator or for all candidates | | (14) | Sort the list by or | | (15) | Select the top candidate for | | (16) | Remove from | | (17) | totalCost + = | | (18) | completedTime = | | (19) | End For | | (20) | Update parameters of remaining tasks after finishing S | | (21) | End If | | (22) | End While | | (23) | return {totalCost, overallFairness, completedTime} |
|