Online personalized differential privacy protection task allocation method based on service quality score
By introducing service quality scores and network flow graph construction in the online privacy protection task allocation method, the problem of low task completion quality in the existing technology is solved, and more efficient task allocation and higher user satisfaction are achieved.
Patent Information
- Application Number
- CN202510184069.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-02-19
- Publication Date
- 2025-05-13
AI Technical Summary
The existing online privacy protection task allocation framework fails to effectively consider the worker service quality score when allocating tasks, resulting in low quality of task completion and affecting the satisfaction of task requesters.
The online personalized differential privacy protection task allocation method based on service quality score is adopted, and the task allocation process is optimized by constructing a network flow chart and considering the worker's service quality score and mobile distance.
The quality of task completion is improved, ensuring that task allocation is always based on the latest worker performance, and the long-term optimization of worker selection is improved, which improves the satisfaction of task requesters.
Smart Images

Figure CN119997242A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of mobile crowd intelligence perception technology, and in particular to an online personalized differential privacy protection task allocation method based on service quality scoring. Background Art
[0002] With the rapid development of mobile Internet technology, mobile crowd intelligence perception system, as an emerging computing paradigm, has gradually become an important application in the field of Internet of Things. It uses sensors and network connections on ordinary mobile devices (such as smartphones, wearable devices, etc.) to collect environmental information, sense data or perform pending tasks in a crowdsourcing manner, and find suitable workers for requesters to complete location perception tasks. This system has been widely used in daily life, especially in online scenarios, where the platform needs to match suitable workers to task requesters in a timely manner to perform the requested tasks, such as the scenario of dynamic task allocation in Didi Taxi. Compared with traditional batch task allocation, online task allocation is more flexible and can better cope with dynamic changes in tasks and workers without obtaining too much static information.
[0003] In the existing online privacy-preserving task assignment framework, for example, the scheme proposed in the literature [Privacy-PreservingOnline Task Assignment in Spatial Crowdsourcing: A Graph-based Approach, 2022] takes into account the basic requirements of privacy protection and task assignment, and assigns tasks to workers with the goal of minimizing the total travel under the cardinality constraint of the assigned tasks. However, this scheme adopts the same privacy protection for the location information of workers and tasks, which easily leads to the problem of over-protection or under-protection. In addition, the impact of the worker's service quality score on the assignment result is not considered in the task assignment process, resulting in low quality of task completion, which in turn affects the satisfaction of the task requester.
[0004] Purpose of the Invention
[0005] In order to address the deficiencies of the above-mentioned prior art, the present invention provides an online personalized differential privacy protection task allocation method based on service quality scoring, so as to achieve optimal task allocation while considering the dynamic changes of the worker's service quality score when allocating tasks, thereby improving the quality of task completion.
[0006] To achieve the above object, the present invention adopts the following technical solutions:
[0007] The invention discloses an online personalized differential privacy protection task allocation method based on service quality scoring, which is characterized by being applied to a semi-honest platform, m workers and n tasks issued by n task requesters In the online mobile crowd intelligence perception environment, represents the i-th worker, represents the jth task, , , m represents the number of workers, n represents the number of tasks; the online personalized differential privacy protection task allocation method is performed in the following steps:
[0008] Step 1: Initialize the current time slice to , the total time is T; according to the m workers in the current time slice The real location within And n tasks in the current time slice The actual starting position within and the actual end position , generate the current time slice The confusion positions of m workers under the corresponding noise , the confusion start position of n tasks and obfuscation end position ;
[0009] Step 2: The platform collects the current time slice Data information uploaded by m workers and task information of n tasks ;
[0010] Step 2.1: The platform is in the current time slice Collect data information uploaded by m workers ,in, Represents the i-th worker In the current time slice The data information uploaded in , Represents the i-th worker In the current time slice The maximum moving distance within Represents the i-th worker In the current time slice Arrive at the platform and start working within 10 days;
[0011] Step 2.2: Current time slice of the platform Collect task information of n tasks uploaded by n task requesters ,in, Indicates the jth task requester in the current time slice The task information uploaded in , Indicates the jth task requester in the current time slice Upload tasks Arrival time at the platform, Indicates the jth task requester in the current time slice Upload tasks Time away from the platform;
[0012] Step 3: The platform is based on , and , and the previous time slice Service quality rating of internal workers , construct the current time slice Network flow diagram within , and set the edge set The capacity and cost of each edge in , where Indicates the current time slice The node set within; Indicates the current time slice The edge set inside;
[0013] Step 4: The platform is based on and , using the minimum cost path planning algorithm for the current time slice Assign tasks within the current time slice The task allocation results in are sent to m workers;
[0014] Step 5: The platform calculates the time slice according to the current time slice. The completion of tasks by internal workers is Update to get the current time slice Service quality ratings of workers within ;
[0015] Step 5.1, the i-th worker The task requester corresponding to the completed task has the same value as the i-th worker In the current time slice Rating the service quality within And upload it to the platform, so as to obtain the service quality of m workers in the current time slice Rating collection within ;and , where a represents the minimum score of the task requester, and b represents the maximum score of the task requester;
[0016] Step 5.2, Settings level, and ;
[0017] Step 5.3: For the i-th worker ,when or season The weight coefficient is 0.5, let The weight coefficient is ,in, represents the scoring threshold;
[0018] when and When , use formula (1) to calculate Weight ,but Weight for , thus obtaining Weight and Weight ;
[0019] (1)
[0020] In formula (1), express The rating level;
[0021] when Rating level and Rating level The difference between them is less than or equal to the threshold When Weight and Weight The larger value in The weight coefficient ,but The weight coefficient is ,in, Indicates the level difference threshold;
[0022] when Rating level and Rating level The difference between the two is greater than the threshold When Weight and Weight The larger value in The weight coefficient ,but The weight coefficient is ;
[0023] Step 5.4: Use formula (2) to calculate the current time slice The i-th worker Service quality rating , thus obtaining the current time slices of m workers Service quality rating within ;
[0024] (2)
[0025] In formula (2), means or;
[0026] Step 6: Assign to ,judge Is it true? If so, return to step 2 and execute sequentially; otherwise, it means that the task allocation within the total time T is completed.
[0027] The online personalized differential privacy protection task allocation method based on service quality scoring described in the present invention is also characterized in that the step 1 comprises:
[0028] Step 1.1: Set the platform’s predefined sensitive location set ,in, represents the oth sensitive position, O represents the total number of sensitive positions; set the oth sensitive position The initial weight is , thereby setting initial weights for O sensitive positions;
[0029] Step 1.2: As the center of the circle, is the step length, and the radius is calculated using formula (3) under u steps. The weight of the annular region , and determine the uth radius is The weight of the annular region Is it less than the weight threshold? , if less than , the annular region is no longer expanded; otherwise, the annular region is continued to be expanded at the next step size, thereby obtaining the radius set of U annular regions , where U represents the total number of annular regions;
[0030] (3)
[0031] Step 1.3: Use formula (4) to calculate the uth radius: The privacy budget of the annular region :
[0032] (4)
[0033] In formula (4), represents the initial privacy budget;
[0034] Step 1.4: According to the i-th worker In time slice The real location within and the jth task In time slice The actual starting position within , the actual end position The privacy budget of the annular area is generated by using the plane Laplace distribution to generate the corresponding noise and add it to its real position accordingly, so as to get the i-th worker In time slice Confusion location within , the jth task In time slice The confusion starts at and the jth task The confusion end position ; Then according to the time slice The real location of the workers in , the actual starting position of the task and the actual end position , get the time slice Workers within the confusion position Confusing location with tasks and .
[0035] Furthermore, the step 3 comprises:
[0036] Step 3.1: The platform collects the workers’ The service quality score collection in ,in, Represents the i-th worker In the previous time slice The service quality score obtained after completing the task within 10 days;
[0037] Step 3.2, set the source node s and sink node t, and , and Together they constitute the current time slice Node set within ;
[0038] Step 3.3: Add an edge to get the current time slice The edge set inside , and set the capacity and cost of each edge.
[0039] Further, the step 3.3 includes:
[0040] Step 3.3.1. Calculate the i-th worker using formula (5) In the current time slice Confusion location within With the jth task In the current time slice The confusion starts at Mahalanobis distance ; Thus, we get the number of m workers in the current time slice Confusion location within With n tasks in the current time slice The confusion starts at Mahalanobis distance And n tasks in the current time slice The confusion end position within and tasks in the current time slice The confusion starts at Mahalanobis distance ;
[0041] (5)
[0042] In formula (5), Indicates that in the current time slice Based on , and The covariance matrix of
[0043] Step 3.3.2. Add source node s to the i-th worker In the current time slice Confusion location within The edge and set the cost of the edge , the capacity of the edge ;
[0044] Step 3.3.3. Add source node s to the jth task In the current time slice The confusion end position within The edge and set the cost of the edge ;
[0045] Step 3.3.4. Add the i-th worker In the current time slice Confusion location within To the jth task In the current time slice The confusion starts at The edge and set the cost of the edge ,in, Indicates the current time slice Complete the jth task within The distance to be moved, the capacity of the edge ;
[0046] Step 3.3.5. Add the jth task In the current time slice The end position of confusion within To Tasks In the current time slice The confusion starts at The edge and set the cost of the edge , the capacity of the edge ;in, Indicates the current time slice Completed within Tasks The distance to be moved;
[0047] Step 3.3.6. Add the jth task In the current time slice The confusion starts at The edge to the sink node t and sets the cost of the edge , the capacity of the edge .
[0048] Further, the step 4 comprises:
[0049] Step 4.1: If or , then from Remove the i-th worker To the jth task The updated edge set is obtained And the corresponding network flow diagram ;
[0050] Step 4.2: Initialize in the current time slice The minimum cost flow set , the worker in the current time slice Internal moving distance collection ;
[0051] Step 4.3: Use the shortest path fast algorithm Find a minimum cost flow path from source node s to sink node t And join In The cost and capacity of the edges between all nodes in the network are updated to obtain the updated network flow graph After that, continue in In the search for a minimum cost flow path from the source node s to the sink node t, until the minimum cost flow path is not found, the final minimum cost flow set is obtained. ; where v and Represents different nodes in the network flow graph;
[0052] Step 4.4, the platform will The task assignment results are sent to m workers.
[0053] Further, the step 4.3 is performed as follows:
[0054] Step 4.3.1: The middle node v is the current time slice When the worker is confused about the location of the Find the i-th worker corresponding to the current vertex v and update Moving distance Then, execute step 4.3.2;
[0055] when The middle node v is the jth task In the current time slice When the confusion ends within Find the task assigned to Workers , and update the task The obfuscated end position to other tasks The edge of the confusion start position Cost Then, execute step 4.3.2;
[0056] Step 4.3.2: When the moving distance of m workers are smaller than their current time slice Maximum moving distance within When, update for ; Traverse the minimum cost flow path , and execute steps i to iii to update , get the updated network flow graph ;
[0057] Step i: Nodes in Edges to node v If it does not belong to A, update for , and update the node Edges to node v Cost for ,side Capacity ; Otherwise, go directly to step ii;
[0058] Step ii, update node v to node Between Capacity for , update the node Edges to node v Capacity for ;
[0059] Step iii: When the node For the jth task In the current time slice When the confusion starts within the jth task, update the source node s to the jth task The edge of the confusion end position Cost ,side Capacity ; Otherwise, go directly to step 4.3.3;
[0060] When there is a moving distance among m workers Greater than its current time slice Maximum moving distance When the worker Found Greater than its current time slice Maximum moving distance The i-th worker And update the source node s to the worker The edge of the confusion position Cost , and from the minimum cost flow set Find the one assigned to the worker Mission , update the source node s to the task The edge of the confusion end position Cost , thereby updating , get the updated network flow graph ;
[0061] Step 4.3.3: Based on the updated network flow graph After continuing to find a minimum cost flow path from source node s to sink node t, return to execute step 4.3.1 sequentially.
[0062] An electronic device of the present invention includes a memory and a processor, wherein the memory is used to store a program that supports the processor to execute the online personalized differential privacy protection task allocation method, and the processor is configured to execute the program stored in the memory.
[0063] The present invention provides a computer-readable storage medium, and the computer-readable storage medium stores a computer program, which is characterized in that when the computer program is run by a processor, the steps of the online personalized differential privacy protection task allocation method are executed.
[0064] Compared with the solutions in the prior art, the beneficial effects of the present invention are as follows:
[0065] 1. The present invention defines sensitive locations and uses the inverse distance weighted interpolation method to calculate the weights of the areas near the sensitive locations, thereby allocating different privacy budgets to workers and tasks at different locations, thereby ensuring the location privacy protection effect of workers and tasks.
[0066] 2. In the process of online task allocation, the present invention updates the service quality score of the worker after each time slice. By giving different score update weights, personalized score updates are achieved, ensuring that task allocation is always based on the latest worker performance, optimizing worker selection in the long term, and thus improving the quality of task completion.
[0067] 3. The present invention introduces the worker's service quality score in the task allocation process, considers the moving distance and the worker's service quality score when allocating tasks, optimizes the task allocation process, ensures the quality of task completion, and achieves the optimal allocation of tasks. BRIEF DESCRIPTION OF THE DRAWINGS
[0068] Figure 1 It is a framework diagram of the present invention;
[0069] Figure 2 It is a flow chart of the main implementation steps of the present invention. DETAILED DESCRIPTION
[0070] In this embodiment, an online personalized differential privacy protection task allocation method based on service quality scoring is provided. Figure 1 As shown, applied to a semi-honest platform with m workers and n tasks issued by n task requesters In the online mobile crowd intelligence perception environment, workers and task requesters upload data information and task information in real time. represents the i-th worker, represents the jth task, , ,like Figure 2 As shown in Figure 2, the online personalized differential privacy protection task allocation method is performed in the following steps:
[0071] Step 1: Initialize the current time slice to , the total time is T; according to the m workers in the current time slice The real location within And n tasks in the current time slice The actual starting position within and the actual end position , generate the current time slice The confusion positions of m workers under the corresponding noise , the confusion start position of n tasks and obfuscation end position .
[0072] Step 1.1: Set the platform’s predefined sensitive location set ,in, represents the oth sensitive position, O represents the total number of sensitive positions; set the oth sensitive position The initial weight is , thereby setting initial weights for O sensitive positions;
[0073] Step 1.2: As the center of the circle, is the step length, and the radius is calculated using formula (1) under u steps. The weight of the annular region , and determine the uth radius is The weight of the annular region Is it less than the weight threshold? , if less than , the annular region is no longer expanded; otherwise, the annular region is continued to be expanded at the next step size, thereby obtaining the radius set of U annular regions , where U represents the total number of annular regions;
[0074] (1)
[0075] Step 1.3: Use formula (2) to calculate the uth radius: The privacy budget of the annular region :
[0076] (2)
[0077] In formula (2), represents the initial privacy budget. In the specific implementation of the present invention, The value is 0.1.
[0078] Step 1.4: According to the i-th worker In time slice The real location within and the jth task In time slice The actual starting position within , the actual end position The privacy budget of the annular area is generated by using the plane Laplace distribution to generate the corresponding noise and add it to its real position accordingly, so as to get the i-th worker In time slice Confusion location within , the jth task In time slice The confusion starts at and the jth task The confusion end position ; Then according to the time slice The real location of the workers in , the actual starting position of the task and the actual end position , get the time slice Workers within the confusion position Confusing location with tasks and .
[0079] In this implementation, position noise is added in the following steps:
[0080] Step 1: Workers According to the O sensitive location sets S predefined by the platform, calculate Distance to S, find the sensitive position with the smallest distance , according to the radius of the annular area , sensitive position weight Get a privacy budget ;
[0081] Step 2: In Add the noise generated by formula (3) to get the confusion position ;
[0082] (3)
[0083] In formula (3), Indicates the real location Confusion with location The Euclidean distance between .
[0084] Step 2: The platform collects the current time slice Data information uploaded by m workers and task information of n tasks ;
[0085] Step 2.1: The platform is in the current time slice Collect data information uploaded by m workers ,in, Represents the i-th worker In the current time slice The data information uploaded in , including the obfuscated position, maximum moving distance and start time, Represents the i-th worker In the current time slice The maximum moving distance within Represents the i-th worker In the current time slice Arrive at the platform and start working within 10 days;
[0086] Step 2.2: Current time slice of the platform Collect task information of n tasks uploaded by n task requesters ,in, Indicates the jth task requester in the current time slice The task information uploaded in , including the confusion start position, confusion end position, start time and departure time, Indicates the jth task requester in the current time slice Upload tasks Arrival time at the platform, Indicates the jth task requester in the current time slice Upload tasks Time to leave the platform.
[0087] Step 3: Platform based , and , and the previous time slice Service quality rating of internal workers , construct the current time slice Network flow diagram within , and set the edge set The capacity and cost of each edge in , where Indicates the current time slice The node set within; Indicates the current time slice The edge set inside;
[0088] Step 3.1: The platform collects workers’ data in the previous time slice The service quality score collection in ,in, Represents the i-th worker In the previous time slice The service quality score obtained after completing the task within 10 days;
[0089] Step 3.2, set the source node s and sink node t, and , and Together they constitute the current time slice Node set within .
[0090] Step 3.3: Add an edge to get the current time slice The edge set inside , and set the capacity and cost of each edge.
[0091] Step 3.3.1. Calculate the i-th worker using formula (4) In the current time slice Confusion location within With the jth task In the current time slice The confusion starts at Mahalanobis distance ; Thus, we get the number of m workers in the current time slice Confusion location within With n tasks in the current time slice The confusion starts at Mahalanobis distance And n tasks in the current time slice The confusion end position within and tasks in the current time slice The confusion starts at Mahalanobis distance ;
[0092] (4)
[0093] In formula (4), Indicates that in the current time slice Based on , and The covariance matrix of .
[0094] Step 3.3.2. Add source node s to the i-th worker In the current time slice Confusion location within The edge and set the cost of the edge , the capacity of the edge ;
[0095] Step 3.3.3. Add source node s to the jth task In the current time slice The confusion end position within The edge and set the cost of the edge ;
[0096] Step 3.3.4. Add the i-th worker In the current time slice Confusion location within To the jth task In the current time slice The confusion starts at The edge and set the cost of the edge ,in, Indicates the current time slice Complete the jth task within The distance to be moved, the capacity of the edge .
[0097] Step 3.3.5. Add the jth task In the current time slice The confusion end position within To Tasks In the current time slice The confusion starts at The edge and set the cost of the edge , the capacity of the edge ;in, Indicates the current time slice Completed within Tasks The distance to be moved;
[0098] Step 3.3.6. Add the jth task In the current time slice The confusion starts at The edge to the sink node t and sets the cost of the edge , the capacity of the edge .
[0099] Step 4: Platform based and , using the minimum cost path planning algorithm for the current time slice Assign tasks within the current time slice The task allocation results in are sent to m workers;
[0100] Step 4.1: If or , then from Remove the i-th worker To the jth task The updated edge set is obtained And the corresponding network flow diagram ;
[0101] Step 4.2: Initialize in the current time slice The minimum cost flow set , the worker in the current time slice Internal moving distance collection ;
[0102] Step 4.3: Use the shortest path fast algorithm Find a minimum cost flow path from source node s to sink node t And join In The cost and capacity of the edges between all nodes in the network are updated to obtain the updated network flow graph After that, continue in In the search for a minimum cost flow path from the source node s to the sink node t, until the minimum cost flow path is not found, the final minimum cost flow set is obtained. ; where v and Represents different nodes in the network flow graph.
[0103] Step 4.3.1: The middle node v is the current time slice When the worker is confused about the location of the Find the i-th worker corresponding to the current vertex v and update Moving distance Then, execute step 4.3.2;
[0104] when The middle node v is the jth task In the current time slice When the confusion ends within Find the task assigned to Workers , and update the task The obfuscated end position to other tasks The edge of the confusion start position Cost Then, execute step 4.3.2;
[0105] Step 4.3.2: When the moving distance of m workers are smaller than their current time slice Maximum moving distance within When, update for ; Traverse the minimum cost flow path , and execute steps i to iii to update , get the updated network flow graph ;
[0106] Step i: Nodes in Edges to node v If it does not belong to A, update for , and update the node Edges to node v Cost for ,side Capacity ; Otherwise, go directly to step ii;
[0107] Step ii, update node v to node Between Capacity for , update the node Edges to node v Capacity for ;
[0108] Step iii: When the node For the jth task In the current time slice When the confusion starts within the jth task, update the source node s to the jth task The edge of the confusion end position Cost ,side Capacity ; Otherwise, proceed directly to step 4.3.3.
[0109] When there is a moving distance among m workers Greater than its current time slice Maximum moving distance When the worker Found Greater than its current time slice Maximum moving distance The i-th worker And update the source node s to the worker The edge of the confusion position Cost , and from the minimum cost flow set Find the one assigned to the worker Mission , update the source node s to the task The edge of the confusion end position Cost , thereby updating , get the updated network flow graph ;
[0110] Step 4.3.3: Based on the updated network flow graph After continuing to find a minimum cost flow path from source node s to sink node t, return to execute step 4.3.1 sequentially.
[0111] Step 4.4, the platform will The task assignment results are sent to m workers.
[0112] Step 5: The platform will calculate the time slice based on the current time slice. The completion of tasks by internal workers is Update to get the current time slice Service quality ratings of workers within ;
[0113] Step 5.1, the i-th worker The task requester corresponding to the completed task has the same value as the i-th worker In the current time slice Rating the service quality within And upload it to the platform, so as to obtain the service quality of m workers in the current time slice Rating collection within ;and ,in, Indicates the minimum score given by the task requester. It indicates the maximum score given by the task requester. The higher the score, the better the service quality.
[0114] For workers Finish The situation of a task, In the current time slice Rating of service quality within The calculation method is as follows:
[0115] Step 1: The platform collects the pairs of tasks uploaded by task requesters of k tasks. Rating of service quality ;
[0116] Step 2: When When the average value is calculated, ;when When the truncated mean method is used to calculate the average value, .
[0117] Step 5.2, Settings level, and , , each level represents a scoring interval. In the specific implementation of the present invention, the scoring intervals are [0, 10], [11, 20], [21, 30], ..., [91, 100];
[0118] Step 5.3: For the i-th worker ,when or season The weight coefficient is 0.5, let The weight coefficient is ,in, represents the scoring threshold;
[0119] when and When , use formula (5) to calculate Weight ,but Weight for ; thus obtaining Weight and Weight ;
[0120] (5)
[0121] In formula (5), express The rating level.
[0122] when Rating level and Rating level The difference between them is less than or equal to the threshold When Weight and Weight The larger value in The weight coefficient ,but The weight coefficient is ,in, Indicates the level difference threshold;
[0123] when Rating level and Rating level The difference between the two is greater than the threshold When Weight and Weight The larger value in The weight coefficient ,but The weight coefficient is .
[0124] Step 5.4: Use formula (6) to calculate the current time slice The i-th worker Service quality rating , thus obtaining the current time slices of m workers Service quality rating within ;
[0125] (6)
[0126] In formula (6), means or;
[0127] Step 6: Assign to ,judge Is it true? If so, return to step 2 and execute sequentially; otherwise, it means that the task allocation within the total time T is completed.
[0128] In this embodiment, an electronic device includes a memory and a processor, wherein the memory is used to store a program that supports the processor to execute the above method, and the processor is configured to execute the program stored in the memory.
[0129] In this embodiment, a computer-readable storage medium stores a computer program on the computer-readable storage medium, and the computer program executes the steps of the above method when executed by a processor.
[0130] In summary, the method for online privacy-preserving task assignment proposed in the present invention protects the location information of workers and tasks based on the differential privacy of personalized privacy budget. At the same time, when performing task assignment, the moving distance and the service quality score of the worker are considered, and a network flow graph is constructed by using the location relationship between tasks and workers. Workers with high service quality scores are selected to complete tasks, thereby ensuring the quality of task completion.
Claims
1. An online personalized differential privacy protection task allocation method based on service quality scoring, characterized by applying On a semi-honest platform, m workers and n tasks issued by n task requesters In the online mobile crowd intelligence perception environment, represents the i-th worker, represents the jth task, , , m represents the number of workers, n represents the number of tasks; the online personalized differential privacy protection task allocation method is performed in the following steps: Step 1: Initialize the current time slice to , the total time is T; according to the m workers in the current time slice The real location within And n tasks in the current time slice The actual starting position within and the actual end position , generate the current time slice The confusion positions of m workers under the corresponding noise , the confusion start position of n tasks and obfuscation end position ; Step 2: The platform collects the current time slice Data information uploaded by m workers and task information of n tasks ; Step 2.1: The platform is in the current time slice Collect data information uploaded by m workers ,in, Represents the i-th worker In the current time slice The data information uploaded in , Represents the i-th worker In the current time slice The maximum moving distance within Represents the i-th worker In the current time slice Arrive at the platform and start working within 10 days; Step 2.2: Current time slice of the platform Collect task information of n tasks uploaded by n task requesters ,in, Indicates the jth task requester in the current time slice The task information uploaded in , Indicates the jth task requester in the current time slice Upload tasks Arrival time at the platform, Indicates the jth task requester in the current time slice Upload tasks Time away from the platform; Step 3: The platform is based on , and , and the previous time slice Service quality rating of internal workers , construct the current time slice Network flow diagram within , and set the edge set The capacity and cost of each edge in , where Indicates the current time slice The node set within; Indicates the current time slice The edge set inside; Step 4: The platform is based on and , using the minimum cost path planning algorithm for the current time slice Assign tasks within the current time slice The task allocation results in are sent to m workers; Step 5: The platform calculates the time slice according to the current time slice. The completion of tasks by internal workers is Update to get the current time slice Service quality ratings of workers within ; Step 5.1, the i-th worker The task requester corresponding to the completed task has the same value as the i-th worker In the current time slice Rating the service quality within And upload it to the platform, so as to obtain the service quality of m workers in the current time slice Rating collection within ;and , where a represents the minimum score of the task requester, and b represents the maximum score of the task requester; Step 5.2, Settings level, and ; Step 5.3: For the i-th worker ,when or season The weight coefficient is 0.5, let The weight coefficient is ,in, represents the scoring threshold; when and When , use formula (1) to calculate Weight ,but Weight for , thus obtaining Weight and Weight ; (1) In formula (1), express The rating level; when Rating level and Rating level The difference between them is less than or equal to the threshold When Weight and Weight The larger value in The weight coefficient ,but The weight coefficient is ,in, Indicates the level difference threshold; when Rating level and Rating level The difference between the two is greater than the threshold When Weight and Weight The larger value in The weight coefficient ,but The weight coefficient is ; Step 5.4: Use formula (2) to calculate the current time slice The i-th worker Service quality rating , thus obtaining the current time slices of m workers Service quality rating within ; (2) In formula (2), means or; Step 6: Assign to ,judge Is it true? If so, return to step 2 and execute sequentially; otherwise, it means that the task allocation within the total time T is completed.
2. The online personalized differential privacy protection task allocation method based on service quality scoring according to claim 1 is characterized in that: The step 1 comprises: Step 1.1: Set the platform’s predefined sensitive location set ,in, represents the oth sensitive position, O represents the total number of sensitive positions; set the oth sensitive position The initial weight is , thereby setting initial weights for O sensitive positions; Step 1.2: As the center of the circle, is the step length, and the radius is calculated using formula (3) under u steps. The weight of the annular region , and determine the uth radius is The weight of the annular region Is it less than the weight threshold? , if less than , the annular region is no longer expanded; otherwise, the annular region is continued to be expanded at the next step size, thereby obtaining the radius set of U annular regions , where U represents the total number of annular regions; (3) Step 1.3: Use formula (4) to calculate the uth radius: The privacy budget of the annular region : (4) In formula (4), represents the initial privacy budget; Step 1.4: According to the i-th worker In time slice The real location within and the jth task In time slice The actual starting position within , the actual end position The privacy budget of the annular area is generated by using the plane Laplace distribution to generate the corresponding noise and add it to its real position accordingly, so as to get the i-th worker In time slice Confusion location within , the jth task In time slice The confusion starts at and the jth task The confusion end position ; Then according to the time slice The real location of the workers in , the actual starting position of the task and the actual end position , get the time slice Workers within the confusion position Confusing location with tasks and .
3. The online personalized differential privacy protection task allocation method based on service quality scoring according to claim 2 is characterized in that: The step 3 comprises: Step 3.1: The platform collects the workers’ The service quality score collection in ,in, Represents the i-th worker In the previous time slice The service quality score obtained after completing the task within 10 days; Step 3.2, set the source node s and sink node t, and , and Together they constitute the current time slice Node set within ; Step 3.3: Add an edge to get the current time slice The edge set inside , and set the capacity and cost of each edge.
4. The online personalized differential privacy protection task allocation method based on service quality scoring according to claim 3 is characterized in that: The step 3.3 comprises: Step 3.3.
1. Calculate the i-th worker using formula (5) In the current time slice Confusion location within With the jth task In the current time slice The confusion starts at Mahalanobis distance ; Thus, we get the number of m workers in the current time slice Confusion location within With n tasks in the current time slice The confusion starts at Mahalanobis distance And n tasks in the current time slice The end position of confusion within and tasks in the current time slice The confusion starts at Mahalanobis distance ; (5) In formula (5), Indicates that in the current time slice Based on , and The covariance matrix of Step 3.3.
2. Add source node s to the i-th worker In the current time slice Confusion location within The edge and set the cost of the edge , the capacity of the edge ; Step 3.3.
3. Add source node s to the jth task In the current time slice The end position of confusion within The edge and set the cost of the edge ; Step 3.3.
4. Add the i-th worker In the current time slice Confusion location within To the jth task In the current time slice The confusion starts at The edge and set the cost of the edge ,in, Indicates the current time slice Complete the jth task within The distance to be moved, the capacity of the edge ; Step 3.3.
5. Add the jth task In the current time slice The end position of confusion within To Tasks In the current time slice The confusion starts at The edge and set the cost of the edge , the capacity of the edge ;in, Indicates the current time slice Completed within Tasks The distance to be moved; Step 3.3.
6. Add the jth task In the current time slice The confusion starts at The edge to the sink node t and sets the cost of the edge , the capacity of the edge .
5. The online personalized differential privacy protection task allocation method based on service quality scoring according to claim 4 is characterized in that: The step 4 comprises: Step 4.1: If or , then from Remove the i-th worker To the jth task The updated edge set is obtained And the corresponding network flow diagram ; Step 4.2: Initialize in the current time slice The minimum cost flow set , the worker in the current time slice Internal moving distance collection ; Step 4.3: Use the shortest path fast algorithm Find a minimum cost flow path from source node s to sink node t And join In The cost and capacity of the edges between all nodes in the network are updated to obtain the updated network flow graph After that, continue in In the search for a minimum cost flow path from the source node s to the sink node t, until the minimum cost flow path is not found, the final minimum cost flow set is obtained. ; where v and Represents different nodes in the network flow graph; Step 4.4, the platform will The task assignment results are sent to m workers.
6. The online personalized differential privacy protection task allocation method based on service quality scoring according to claim 5 is characterized in that: The step 4.3 is performed as follows: Step 4.3.1: The middle node v is the current time slice When the worker is confused about the location of the Find the i-th worker corresponding to the current vertex v and update Moving distance Then, execute step 4.3.2; when The middle node v is the jth task In the current time slice When the confusion ends within Find the task assigned to Workers , and update the task The obfuscated end position to other tasks The edge of the confusion start position Cost Then, execute step 4.3.2; Step 4.3.2: When the moving distance of m workers are smaller than their current time slice Maximum moving distance within When, update for ; Traverse the minimum cost flow path , and execute steps i to iii to update , get the updated network flow graph ; Step i: Nodes in Edges to node v If it does not belong to A, update for , and update the node Edges to node v Cost for ,side Capacity ; Otherwise, go directly to step ii; Step ii, update node v to node Between Capacity for , update the node Edges to node v Capacity for ; Step iii: When the node For the jth task In the current time slice When the confusion starts within the jth task, update the source node s to the jth task The edge of the confusion end position Cost ,side Capacity ; Otherwise, go directly to step 4.3.3; When there is a moving distance among m workers Greater than its current time slice Maximum moving distance When the worker Found Greater than its current time slice Maximum moving distance The i-th worker And update the source node s to the worker The edge of the confusion position Cost , and from the minimum cost flow set Find the one assigned to the worker Mission , update the source node s to the task The edge of the confusion end position Cost , thereby updating , get the updated network flow graph ; Step 4.3.3: Based on the updated network flow graph After continuing to find a minimum cost flow path from source node s to sink node t, return to execute step 4.3.1 sequentially.
7. An electronic device, comprising a memory and a processor, characterized in that: The memory is used to store a program that supports the processor to execute the online personalized differential privacy protection task allocation method described in any one of claims 1-6, and the processor is configured to execute the program stored in the memory.
8. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the online personalized differential privacy protection task allocation method described in claims 1-6 are executed.