Flexible flexible task precise dispatching method based on hierarchical response and lock single confirmation
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- EARLY EMPLOYMENT AT (GUANGDONG) TECH CO LTD
- Filing Date
- 2026-07-09
- Publication Date
- 2026-08-07
AI Technical Summary
[0005]针对上述存在的技术不足,本发明的目的是提出基于分级响应与锁单确认的灵活用工任务精准派发方法,旨在解决现有技术中任务与人员匹配粗放、派单精准度低、人员负载不均且缺乏有效接单校验的技术问题
1.本发明通过对任务进行多级分层聚类、对务工人员开展能力等级量化评定,构建分级任务体系与分级工人池,依托双向互通匹配逻辑完成任务与人员的精准配对,大幅提升任务派发的匹配精度与整体运转效率。
Smart Images

Figure CN122529409A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of resource scheduling and management technology, and in particular to a method for precise assignment of flexible employment tasks based on hierarchical response and lock-in confirmation. Background Technology
[0002] Currently, most flexible employment platforms on the market have a relatively simple task assignment model, which does not stratify the tasks themselves or the workers, and the matching method is singular and has poor adaptability.
[0003] For example, when the platform has both high-difficulty, urgent tasks and ordinary, basic tasks, the existing assignment model cannot differentiate between task difficulty, urgency, and skill requirements. This often results in highly capable personnel being occupied with basic tasks, while less capable personnel are assigned specialized tasks. Furthermore, it fails to consider personnel's past performance and current workload, leading to some personnel receiving new tasks even when their own workload is full, while a large number of idle personnel have no tasks available for extended periods, resulting in task delays and substandard work quality.
[0004] Therefore, the existing dispatch process lacks two-way matching and screening, order confirmation, and comprehensive assessment. The accuracy of matching tasks and personnel is low, the overall dispatch efficiency is not high, and problems such as multiple people competing for the same task, duplicate order dispatch, and uneven distribution of personnel workload are prone to occur, making it difficult to support the normal operation of large-scale flexible employment scenarios. Summary of the Invention
[0005] To address the aforementioned technical shortcomings, the purpose of this invention is to propose a flexible and precise task assignment method based on hierarchical response and order confirmation, aiming to solve the technical problems in the existing technology, such as crude task-person matching, low order assignment accuracy, uneven personnel workload, and lack of effective order acceptance verification.
[0006] To solve the above-mentioned technical problems, the present invention adopts the following technical solution: The present invention provides a method for precise dispatching of flexible employment tasks based on hierarchical response and order confirmation. The method for precise assignment of flexible employment tasks based on hierarchical response and order confirmation includes: S1. Obtain the task attribute information of the task to be dispatched, and perform multi-level hierarchical clustering on the task to be dispatched to obtain hierarchical task data. S2. Obtain worker profile data of candidate workers, and quantitatively evaluate the ability level of the candidate workers to obtain a graded worker pool; S3. Perform bidirectional matching between the hierarchical task data and the hierarchical worker pool to generate a lock order confirmation queue. S4. Dispatch lock order confirmation requests to the candidate workers in the lock order confirmation queue, receive the pre-occupancy confirmation signal returned by the candidate workers based on the lock order confirmation request, lock the candidate workers who returned the pre-occupancy confirmation signal as temporary dispatch objects, and generate a lock order success record. S5. Perform response time verification and task suitability evaluation on the successful lock record, and sort the verification and evaluation results to generate dispatch result data. S6. Update the task status and availability identifier of the corresponding worker in the hierarchical worker pool using the dispatch result data.
[0007] Preferably, the tasks to be dispatched are subjected to multi-level hierarchical clustering to obtain hierarchical task data, including: The task attribute information is structured and parsed to obtain the task complexity, urgency, and required skill level; Using the task complexity as the first clustering dimension, the tasks to be dispatched are divided into primary task levels to generate a complexity task set; In the set of complexity tasks, the tasks within the set of complexity tasks are further clustered using the urgency level as the second clustering dimension to obtain the set of urgency tasks. In the set of urgent tasks, the required skill level is used as the third clustering dimension to bind a skill level label to each task in the set of urgent tasks, thus obtaining a set of labeled skill tasks; The tagged skill task set is output as the hierarchical task data.
[0008] Preferably, the candidate workers are quantitatively assessed for their competency levels to obtain a tiered worker pool, including: The worker profile data is analyzed to obtain historical performance quality scores, skill tag matching degree, and real-time load rate; Based on the historical performance quality scores, the candidate workers are pre-assigned to the initial capability level, generating a performance rating assignment record. Based on the performance rating allocation record, the candidate workers within the initial capability level are reclassified using the skill tag matching degree to obtain the capability adjustment label level; In the capability adjustment labeling level, based on the real-time load rate, the candidate workers are comprehensively rated to generate the target capability level of the candidate workers; The candidate workers are categorized into corresponding capability levels according to the target capability level, and the results are output as the hierarchical worker pool.
[0009] Preferably, a queue of pending order confirmations is generated by bidirectionally matching the tiered task data with the tiered worker pool, including: A matching matrix is constructed using each graded task in the graded task data as a row index and each candidate worker in the graded worker pool as a column index. Based on the absolute value of the difference between the capability level requirements of the tiered task data and the current capability level of the tiered worker pool, and in conjunction with the real-time load rate, a matching weight value is generated. The matching weight values are filled into the matrix elements corresponding to the matching matrix to obtain the weighted matching matrix; In the weighted matching matrix, the matrix element with the highest matching weight value in each row is determined as the preferred match on the task side, and the matrix element with the highest matching weight value in each column is determined as the preferred match on the worker side. The matrix element that is simultaneously pointed to by the preferred match on the task side and the preferred match on the worker side is identified as a bidirectional locking element, and the hierarchical task corresponding to the bidirectional locking element is formed into a stable matching pair with the candidate worker. The hierarchical tasks and candidate workers in the stable matching pairs are temporarily removed from the hierarchical task data and the hierarchical worker pool, respectively. Repeat the identification and removal of stable matching pairs for the remaining hierarchical tasks and remaining candidate workers after removal, until no new stable matching pairs can be formed; All established stable matching pairs are arranged sequentially to generate the lock confirmation queue.
[0010] Preferably, a matching weight value is generated based on the absolute value of the difference between the capability level requirement of the tiered task data and the current capability level of the tiered worker pool, combined with the real-time load rate, including: Calculate the absolute value of the difference between the capability level requirement of the tiered task data and the current capability level of the tiered worker pool; Obtain the urgency weight coefficient corresponding to the urgency level of the graded task data, and the performance weight coefficient corresponding to the historical performance quality score of the candidate worker; The reciprocal of the absolute value of the difference is used as the positive matching factor, and the reciprocal of the real-time load rate is used as the idle rate factor. The positive matching factor, the idleness factor, the emergency weight coefficient, and the performance weight coefficient are aggregated into multi-dimensional features and output as the matching weight value.
[0011] Preferably, the positive matching factor, the idleness factor, the urgency weight coefficient, and the fulfillment weight coefficient are aggregated into multi-dimensional features, and the output is the matching weight value, including: The positive matching factor, the idleness factor, the emergency weight coefficient, and the performance weight coefficient are arranged in descending order to obtain an ordered factor sequence; Extract the maximum and second largest values from the ordered factor sequence, and use the ratio of the maximum value to the second largest value as the competition incentive coefficient; The reciprocal of the minimum value in the ordered factor sequence is used as the penalty adjustment factor; The maximum value is amplified by the competitive incentive coefficient to obtain an incentive enhancement value, and the minimum value is compressed by the penalty adjustment factor to obtain a penalty compression value; The matching weight value is output by taking a weighted average of the incentive enhancement value, the penalty compression value, and the remaining factors in the ordered factor sequence.
[0012] Preferably, the process includes: dispatching lock order confirmation requests to candidate workers in the lock order confirmation queue; receiving pre-occupancy confirmation signals from the candidate workers based on the lock order confirmation requests; locking the candidate workers who returned the pre-occupancy confirmation signals as temporary dispatch objects; and generating a lock order success record. Based on the lock confirmation request, a dynamic confirmation credential is generated and embedded into the lock confirmation request for distribution. Receive the pre-occupancy confirmation signal returned by the candidate worker, and extract the return confirmation credential carried in the pre-occupancy confirmation signal; The return confirmation certificate is compared with the dynamic confirmation certificate. If they match, the pre-occupancy confirmation signal is marked as a valid signal; otherwise, it is marked as an invalid signal. The candidate worker who returns the first valid signal is designated as the temporary assignment recipient; The temporary assignment object, the hierarchical task, and the candidate worker association are combined to form the successful order lock record.
[0013] Preferably, the successful lock-up records are subjected to response time verification and task suitability evaluation, and the verification and evaluation results are comprehensively sorted to generate dispatch result data, including: The time interval between the confirmation time and the dispatch time in the successful lock record is used as the response time data; Calculate the median of the response time data and use the median as a benchmark for comparing response timeliness; The response time data is compared with the comparison benchmark, and records whose response time data is not greater than the comparison benchmark are marked as time-acceptable records; Obtain the required skill level of the graded task corresponding to the acceptable timeliness record and the current ability level of the corresponding candidate worker; The required skill level and the current ability level are analyzed differentially to obtain the matching deviation value; The time-acceptable records are sorted in the first round using the matching deviation value to obtain a first sorted sequence; In the first sorting sequence, records with the same matching deviation value are sorted locally in a second round according to the order of the response time data from smallest to largest to obtain the distribution result data.
[0014] Preferably, updating the task status and availability identifier of the corresponding worker in the tiered worker pool using the dispatch result data includes: Extract the identifiers of dispatched workers from the dispatch result data, and update the task status of the corresponding worker in the tiered worker pool from idle to occupied. Based on the number of tasks already undertaken by the dispatched workers, the real-time load rate is recalculated, and the updated load rate is written into the tiered worker pool. When the update load rate reaches the load limit corresponding to the current capability level of the dispatched worker, the availability flag of the dispatched worker is switched to unavailable.
[0015] The beneficial effects of this invention are as follows: 1. This invention constructs a hierarchical task system and a hierarchical worker pool by performing multi-level hierarchical clustering of tasks and quantitative assessment of workers' ability levels. It relies on two-way interconnected matching logic to complete the accurate matching of tasks and personnel, which greatly improves the matching accuracy of task assignment and the overall operational efficiency.
[0016] 2. This invention introduces a comprehensive evaluation mechanism for order confirmation, response time verification, and task suitability, combined with dynamic voucher verification to ensure a standardized and orderly order acceptance process. At the same time, it updates personnel status and load information in real time, making labor scheduling more reasonable and ensuring the stability and continuity of task execution. Attached Figure Description
[0017] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0018] Figure 1 This is a flowchart illustrating a method for precise dispatching of flexible employment tasks based on hierarchical response and order confirmation, provided in an embodiment of the present invention. Figure 2 This is a schematic diagram of the matching matrix construction for a flexible employment task precision dispatch method based on hierarchical response and lock-in confirmation, provided in an embodiment of the present invention.
[0019] The realization of the objective, functional features and advantages of the present invention will be further explained in conjunction with the embodiments and with reference to the accompanying drawings. Detailed Implementation
[0020] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0021] Example 1: As Figure 1 The diagram shown is a flowchart of the first embodiment of the flexible employment task precise assignment method based on hierarchical response and order confirmation of the present invention, which proposes the first embodiment of the flexible employment task precise assignment method based on hierarchical response and order confirmation of the present invention.
[0022] In the first embodiment, the method for precise assignment of flexible employment tasks based on hierarchical response and order confirmation includes: S1. Obtain the task attribute information of the task to be dispatched, and perform multi-level hierarchical clustering on the task to be dispatched to obtain hierarchical task data. In this embodiment of the invention, the tasks to be dispatched are subjected to multi-level hierarchical clustering to obtain hierarchical task data, including: The task attribute information is structured and parsed to obtain the task complexity, urgency, and required skill level; Using the task complexity as the first clustering dimension, the tasks to be dispatched are divided into primary task levels to generate a complexity task set; In the set of complexity tasks, the tasks within the set of complexity tasks are further clustered using the urgency level as the second clustering dimension to obtain the set of urgency tasks. In the set of urgent tasks, the required skill level is used as the third clustering dimension to bind a skill level label to each task in the set of urgent tasks, thus obtaining a set of labeled skill tasks; The tagged skill task set is output as the hierarchical task data.
[0023] Specifically, the task attribute information corresponding to the collected tasks to be dispatched is analyzed in a structured manner. From the complete attribute content, the task complexity, urgency and required skill level are extracted one by one. For example, the original content such as text descriptions and requirements of a total of 200 flexible employment tasks in the platform are broken down one by one, and the complexity of tasks is divided into three categories: simple operation, routine operation and professional technical task. The urgency is divided into four levels: urgent, urgent, normal and routine. At the same time, the required skill levels of the three levels are sorted out: primary, intermediate and advanced. The original task-related data is standardized and processed to form standardized and usable basic data content.
[0024] Using the task complexity obtained from the analysis as the classification standard, all tasks to be assigned are hierarchically distinguished. According to the established classification rules, the corresponding primary task levels are defined, and the 200 tasks to be assigned are classified into different primary task levels according to their complexity. Among them, there are 86 simple operation tasks, 72 routine operation tasks, and 42 professional and technical tasks. All tasks that have completed the hierarchical classification are uniformly collected and integrated to form a complete set of complexity tasks, thus completing the initial grouping of all tasks to be assigned based on the difficulty dimension.
[0025] For the integrated set of complexity tasks, the task urgency is used as the new classification standard. All tasks in this set are reclassified and grouped. The secondary subdivision is completed according to the classification rules corresponding to the four urgency levels: urgent, urgent, normal, and regular. For example, in the simple operation task category, 15 urgent tasks, 22 urgent tasks, 28 normal tasks, and 21 regular tasks are divided. The subdivision is completed simultaneously in the other complexity groups. After the subdivision is completed, the urgency task set is obtained, which further refines the task classification dimension.
[0026] For each task in the urgency task set, based on the required skill level information obtained from the previous analysis, a unique skill level tag is matched and bound to each task. Simple operation tasks are required to be bound to a basic skill tag, routine operation tasks are bound to an intermediate skill tag, and professional technical tasks are bound to an advanced skill tag. After all 200 tasks in the set have completed the tag binding operation, a tag skill task set is finally formed, and the skill attribute identifiers corresponding to each task are completed.
[0027] The processed tagged skill task set is directly output as hierarchical task data. This data integrates multi-dimensional classification results of complexity, urgency, and skill tags, and fully records the level, urgency level, and skill requirements of each task. It can be directly used in the relevant work process of subsequent task and personnel matching.
[0028] It should be noted that the specific method for performing structured parsing of the task attribute information is as follows: Task complexity is scored using a weighted average across three dimensions: number of operation steps, number of required tools or expertise, and number of decision points. Specifically, 1 point is awarded for ≤3 operation steps, 2 points for 4–6 steps, and 3 points for ≥7 steps; 1 point is awarded for 1 required tool or expertise, 2 points for 2, and 3 points for ≥3; and 1 point is awarded for 0 decision points, 2 points for 1–2, and 3 points for ≥3. The scores from the three dimensions are summed to obtain a total score S. S of 3–4 points is defined as “low complexity,” 5–6 points as “medium complexity,” and 7–9 points as “high complexity.” Task complexity serves as the first clustering dimension, used to categorize tasks into three primary task levels: low-complexity tasks, medium-complexity tasks, and high-complexity tasks.
[0029] Urgency is quantified based on the difference ΔT between the task deadline and the release time: if ΔT ≤ 2 hours, it is defined as "Urgent"; if 2 hours < ΔT ≤ 8 hours, it is defined as "Urgent"; if 8 hours < ΔT ≤ 24 hours, it is defined as "Normal"; if ΔT > 24 hours, it is defined as "Regular". Urgency serves as a second clustering dimension, used for secondary clustering within the complexity task set.
[0030] The required skill levels are based on a three-tier system: beginner, intermediate, and advanced. Each level corresponds to a pre-defined skill tag library. For example, the beginner skill tag library includes "data entry," "image annotation," and "basic customer service," while the advanced skill tag library includes "Python development," "advanced data analysis," and "simultaneous interpretation." A tag matching algorithm identifies keywords in the task description and automatically associates them with the corresponding skill level.
[0031] The beneficial effects are that by analyzing task attributes from multiple dimensions and clustering them layer by layer, standardized task classification is achieved, laying a solid foundation for subsequent personnel matching. The hierarchical classification method clearly distinguishes task characteristics, facilitating accurate matching with workers of corresponding skills, improving the order matching rate from the source, and making the overall dispatch process more coherent and orderly, ensuring the smooth implementation and operation of the entire dispatch plan.
[0032] S2. Obtain worker profile data of candidate workers, and quantitatively evaluate the ability level of the candidate workers to obtain a graded worker pool; In this embodiment of the invention, the candidate workers are quantitatively assessed for their ability levels to obtain a tiered worker pool, including: The worker profile data is analyzed to obtain historical performance quality scores, skill tag matching degree, and real-time load rate; Based on the historical performance quality scores, the candidate workers are pre-assigned to the initial capability level, generating a performance rating assignment record. Based on the performance rating allocation record, the candidate workers within the initial capability level are reclassified using the skill tag matching degree to obtain the capability adjustment label level; In the capability adjustment labeling level, based on the real-time load rate, the candidate workers are comprehensively rated to generate the target capability level of the candidate workers; The candidate workers are categorized into corresponding capability levels according to the target capability level, and the results are output as the hierarchical worker pool.
[0033] Specifically, information analysis was conducted on the worker profile data corresponding to the collected candidate workers. The complete profile content was sorted out and broken down line by line to extract three core information categories: historical performance quality score, skill tag matching degree, and real-time load rate. A total of 320 candidate workers in the platform were selected as the processing objects. The corresponding data were separated from their employment files, past order records, and on-the-job status information. The historical performance quality score was divided into four levels: excellent, good, qualified, and needing improvement. The skill tag matching degree was distinguished into complete match, partial match, and basically no match. The real-time load rate was divided into three categories: high load, medium load, and low load based on the number of tasks undertaken on the job. The basic worker data was sorted out and organized to form standardized and usable original information content.
[0034] It is important to note that in this embodiment, the worker profile data includes the following core fields: worker ID, name (anonymized), age, city, skill tag set (e.g., ["Python Development", "Data Analysis", "SQL"]), assessed skill level (beginner / intermediate / advanced), historical performance quality score Q (calculated by weighted average of on-time delivery rate, service score, and task repurchase rate: Q = 0.5 × on-time delivery rate + 0.3 × service score + 0.2 × task repurchase rate, with a value range of 0 to 100), skill tag matching degree (the ratio of the intersection and union of worker skill tags and task-required skill tags), real-time load rate L (number of currently ongoing tasks ÷ maximum concurrent tasks, where the maximum concurrent tasks for beginner / intermediate / advanced are 3 / 5 / 8 respectively), number of currently ongoing tasks, task status (idle / occupied), and availability indicator (available / unavailable).
[0035] For example, the profile data of a candidate worker is shown below: The task is designated "W20260001", with skill tags of ["Python Development", "Data Analysis", "SQL"], skill level of "Intermediate", historical task performance quality score of 87.5, current number of tasks in progress of 2, maximum number of concurrent tasks of 5, real-time load rate of 0.4, task status of "occupied", and availability indicator of "available".
[0036] Using the historical performance quality scores obtained from the analysis as the basis for allocation, the 320 candidate workers were assigned to their corresponding initial capability levels according to the ranking of scores from highest to lowest. A total of 75 workers had excellent performance scores, 126 workers had good performance scores, 90 workers had qualified performance scores, and 29 workers had scores that needed improvement. The level assignment information and original performance score information of each worker were uniformly sorted and summarized to form a complete performance rating allocation record, thus completing the preliminary level division of candidate workers based on their performance.
[0037] Based on the established performance rating and allocation records, and using skill tag matching as the adjustment basis, a level correction operation is carried out on all candidate workers within each initial capability level. Workers who fully match the job skill requirements are adjusted upwards, workers who do not largely match the job skill requirements are adjusted downwards, and workers who partially match the skill requirements retain their original level. After all workers have completed the level adjustment and labeling work, the capability adjustment and labeling level is finally obtained, realizing a secondary optimization of the initial level division results.
[0038] For each candidate worker within the capability adjustment labeling level, a comprehensive level determination is carried out based on the real-time load rate obtained from the analysis. Workers in a low load state are given priority to retain the current level determination result, workers in a medium load state maintain the existing comprehensive determination standard, and workers in a high load state have their level redefined based on their actual work capacity. After completing the comprehensive evaluation for each individual, the target capability level corresponding to each candidate worker is determined.
[0039] Based on the final determined target capability level, all 320 candidate workers were uniformly classified into the matching capability level. All personnel information, level information, and status information at all levels were integrated and collected. The integrated overall personnel data was directly output as a hierarchical worker pool. This worker pool integrates multi-dimensional information such as performance, skill matching, and on-the-job workload, which can be directly used for subsequent task and personnel matching operations.
[0040] It is important to note that the specific method for analyzing the worker profile data is as follows: The historical performance quality score Q is calculated based on the worker's overall performance over the past 30 completed tasks. The formula is Q = 0.5 × R + 0.3 × S + 0.2 × T, where R is the on-time delivery rate (number of on-time completed tasks divided by the total number of tasks, then multiplied by 100), S is the service score (average score given by customers, with a maximum score of 100), and T is the task repurchase rate (number of tasks reassigned by the same customer divided by the total number of tasks, then multiplied by 100). The value of Q ranges from 0 to 100. Based on the Q value, workers are pre-assigned to initial capability levels in descending order: Q ≥ 90 is the "Excellent" level, 75 ≤ Q < 90 is the "Good" level, 60 ≤ Q < 75 is the "Satisfactory" level, and Q < 60 is the "Needs Improvement" level.
[0041] Skill tag matching degree is calculated based on the ratio of the intersection to the union of the worker's skill tag set and the task's required skill tag set. The formula is: Matching degree = (Worker's skill tag set ∩ Task's required skill tag set) ÷ (Worker's skill tag set ∪ Task's required skill tag set). For example, if the task requires tags {A, B, C}, and the worker possesses {A, B, D}, then the matching degree is 2 / 4 = 0.5. A matching degree ≥ 0.8 is defined as "complete match", 0.4 ≤ matching degree < 0.8 is defined as "partial match", and a matching degree < 0.4 is defined as "virtually no match".
[0042] The real-time load factor L is calculated as follows: L = Number of currently accepted and in progress tasks divided by the maximum number of concurrent tasks corresponding to the worker's current skill level. The maximum number of concurrent tasks is a preset value; for example, 3 tasks for the beginner skill level, 5 tasks for the intermediate level, and 8 tasks for the advanced level. The value of L ranges from 0 to 1. L < 0.3 is defined as "low load," 0.3 ≤ L < 0.7 is defined as "medium load," and L ≥ 0.7 is defined as "high load."
[0043] The beneficial effects include: assessing worker levels across multiple dimensions such as contract performance, skill matching, and on-the-job workload, thus establishing a standardized, tiered worker pool. Clearly defining personnel's comprehensive ability levels allows for precise matching with tiered tasks, effectively avoiding personnel mismatch issues. Simultaneously, it accurately reflects workers' on-the-job status, providing reliable personnel data support for subsequent two-way matching and task assignment, ensuring reasonable and efficient overall workforce scheduling.
[0044] S3. Perform bidirectional matching between the hierarchical task data and the hierarchical worker pool to generate a lock order confirmation queue. In this embodiment of the invention, a queue of pending confirmation orders is generated by bidirectionally matching the tiered task data with the tiered worker pool, including: A matching matrix is constructed using each graded task in the graded task data as a row index and each candidate worker in the graded worker pool as a column index. Based on the absolute value of the difference between the capability level requirements of the tiered task data and the current capability level of the tiered worker pool, and in conjunction with the real-time load rate, a matching weight value is generated. The matching weight values are filled into the matrix elements corresponding to the matching matrix to obtain the weighted matching matrix; In the weighted matching matrix, the matrix element with the highest matching weight value in each row is determined as the preferred match on the task side, and the matrix element with the highest matching weight value in each column is determined as the preferred match on the worker side. The matrix element that is simultaneously pointed to by the preferred match on the task side and the preferred match on the worker side is identified as a bidirectional locking element, and the hierarchical task corresponding to the bidirectional locking element is formed into a stable matching pair with the candidate worker. The hierarchical tasks and candidate workers in the stable matching pairs are temporarily removed from the hierarchical task data and the hierarchical worker pool, respectively. Repeat the identification and removal of stable matching pairs for the remaining hierarchical tasks and remaining candidate workers after removal, until no new stable matching pairs can be formed; All established stable matching pairs are arranged sequentially to generate the lock confirmation queue.
[0045] Based on the absolute value of the difference between the capability level requirements of the tiered task data and the current capability level of the tiered worker pool, and in conjunction with the real-time load rate, a matching weight value is generated, including: Calculate the absolute value of the difference between the capability level requirement of the tiered task data and the current capability level of the tiered worker pool; Obtain the urgency weight coefficient corresponding to the urgency level of the graded task data, and the performance weight coefficient corresponding to the historical performance quality score of the candidate worker; The reciprocal of the absolute value of the difference is used as the positive matching factor, and the reciprocal of the real-time load rate is used as the idle rate factor. The positive matching factor, the idleness factor, the emergency weight coefficient, and the performance weight coefficient are aggregated into multi-dimensional features and output as the matching weight value.
[0046] The positive matching factor, the idleness factor, the urgency weight coefficient, and the fulfillment weight coefficient are aggregated into a multi-dimensional feature, and the output is the matching weight value, including: The positive matching factor, the idleness factor, the emergency weight coefficient, and the performance weight coefficient are arranged in descending order to obtain an ordered factor sequence; Extract the maximum and second largest values from the ordered factor sequence, and use the ratio of the maximum value to the second largest value as the competition incentive coefficient; The reciprocal of the minimum value in the ordered factor sequence is used as the penalty adjustment factor; The maximum value is amplified by the competitive incentive coefficient to obtain an incentive enhancement value, and the minimum value is compressed by the penalty adjustment factor to obtain a penalty compression value; The matching weight value is output by taking a weighted average of the incentive enhancement value, the penalty compression value, and the remaining factors in the ordered factor sequence.
[0047] Specifically, each hierarchical task contained in the hierarchical task data is used as the row index content, and each candidate worker contained in the hierarchical worker pool is used as the column index content. A complete matching matrix is constructed according to the row and column arrangement rules. Each row and column intersection position in the matrix corresponds to a combination relationship between a hierarchical task and a candidate worker, fully carrying the correspondence between all tasks and workers.
[0048] By comparing the task capability level requirements recorded in the tiered task data with the current capability level of each candidate worker in the tiered worker pool, the difference between the two levels is compared and the absolute range of the difference is determined. At the same time, the real-time load rate of each candidate worker is taken into account. According to the established evaluation rules, the matching weight value corresponding to each task and worker is calculated and generated one by one. This weight value can intuitively reflect the degree of suitability between the task and the worker.
[0049] The calculated matching weight values are then filled into the corresponding row and column intersection positions, i.e., matrix elements, within the matching matrix. After all matrix elements have been filled with weight values, a complete weighted matching matrix is obtained, with each position in the matrix labeled with the corresponding task and worker's matching weight information.
[0050] Examine each row of the weighted matching matrix, filter out the matrix element with the highest value from all matrix elements in a single row, and define the combination relationship corresponding to that element as the preferred match on the task side. Then examine each column of the weighted matching matrix, filter out the matrix element with the highest value from all matrix elements in a single column, and define the combination relationship corresponding to that element as the preferred match on the worker side. Repeat this process to complete the preferred match filtering for all rows and all columns.
[0051] Screen all matrix elements in the weighted matching matrix one by one, and determine the matrix elements that are simultaneously pointed to by the preferred matching on the task side and the preferred matching on the worker side as bidirectional locked elements. Extract the hierarchical tasks and candidate workers corresponding to the elements, and combine the two to form a stable matching pair, thus clarifying the priority pairing relationship between the two.
[0052] The hierarchical tasks that have formed stable matching pairs are temporarily removed from the hierarchical task data. At the same time, the candidate workers corresponding to the matching pairs are temporarily removed from the hierarchical worker pool to prevent the matched tasks and personnel from participating in the subsequent matching process again, thus completing the isolation processing of the first round of matching objects.
[0053] For the remaining hierarchical tasks and candidate workers after the removal of the completed object, the entire process of first-choice matching screening, identification of two-way locked elements, formation of stable matching pairs, and temporary removal of paired objects is repeated until the remaining tasks and workers can no longer form new stable matching pairs, at which point the cyclic matching operation is terminated.
[0054] All stable matching pairs generated in the entire matching process are arranged in order of completion. After the arrangement and integration are completed, a lock order confirmation queue is formed. This queue centrally stores all task and worker combinations that have completed two-way matching, and is used to carry out subsequent lock order confirmation operations.
[0055] Specifically, by comparing the ability level requirements recorded in the graded task data with the current ability level of candidate workers in the graded worker pool, the size of the gap between the two levels is analyzed, and the absolute value of the difference between the two levels is determined, thereby reflecting the degree of fit between the task requirements and the workers' abilities.
[0056] Retrieve the urgency level corresponding to the current task level, match the preset urgency weight coefficient for that level, and simultaneously retrieve the historical performance quality score of the corresponding candidate worker, match the preset performance weight coefficient for that score level, and obtain the complete two types of coefficient content for comprehensive evaluation.
[0057] It is important to note that the rules for determining the urgency weight coefficient and the fulfillment weight coefficient are as follows: Urgency weight coefficient: Preset according to the urgency level of the task, specifically: Extremely urgent corresponds to a weight coefficient of 1.5, urgent corresponds to a weight coefficient of 1.2, normal corresponds to a weight coefficient of 1.0, and regular corresponds to a weight coefficient of 0.8. The higher the urgency level, the larger the weight coefficient, so that urgent tasks receive a higher matching weight value during the matching process.
[0058] Performance weighting coefficient: This coefficient is preset based on the candidate worker's historical performance quality score Q. Specifically: Q ≥ 90 (Excellent) corresponds to a weighting coefficient of 1.2; 75 ≤ Q < 90 (Good) corresponds to a weighting coefficient of 1.0; 60 ≤ Q < 75 (Pass) corresponds to a weighting coefficient of 0.8; and Q < 60 (Needs improvement) corresponds to a weighting coefficient of 0.5. The higher the performance quality, the larger the weighting coefficient, allowing excellent workers to receive a higher matching weight value during the matching process.
[0059] The specific values of the aforementioned weighting coefficients are determined based on the optimal fitting results of the platform's historical distribution data and are used consistently in practical applications.
[0060] The absolute value of the grade difference obtained above is reciprocated to obtain a positive matching factor that reflects the ability matching situation. Then, the real-time load rate corresponding to the candidate worker is reciprocated to obtain an idleness factor that reflects the on-duty vacancy status of the personnel, thus clarifying two core reference factors.
[0061] It should be noted that when the absolute value of the difference is zero, the positive matching factor takes a preset upper limit (e.g., set to 10) to avoid invalid calculations due to a zero denominator; similarly, when the real-time load rate is zero, the idle rate factor also takes the same preset upper limit. Alternatively, a smoothing method can be used, adding 1 to the denominator and taking the reciprocal, i.e., positive matching factor = 1 / (absolute value of difference + 1), idle rate factor = 1 / (real-time load rate + 1). In this embodiment, a smoothing method of adding 1 is used to ensure numerical stability.
[0062] The four types of features obtained—positive matching factor, idleness factor, urgency weight coefficient, and fulfillment weight coefficient—are integrated together to carry out multi-dimensional feature aggregation processing. The four types of features are combined to reflect the overall suitability between the task and the worker. After aggregation, the final matching weight value is output.
[0063] Specifically, the four data items—positive matching factor, idleness factor, urgency weight coefficient, and performance weight coefficient—are rearranged in descending order of value. After this rearrangement, a regular and ordered factor sequence is formed, and the order of each data item is standardized for subsequent processing.
[0064] The largest value is selected from the already formed ordered factor sequence as the maximum value, and the second largest value is selected as the second largest value. The maximum value is divided by the second largest value to obtain the corresponding ratio, which is the competition incentive coefficient, thus reflecting the level of difference between different factors.
[0065] It should be noted that this embodiment uses the ratio of the maximum to the second-largest value (i.e., A1 / A2) as the competitive incentive coefficient. The design logic is as follows: This ratio reflects the leading margin of the optimal factor relative to the second-largest factor. The larger the ratio, the more significant the relative advantage of the matching pair in a certain dimension, and the more it should be recommended. When the ratio is close to 1, the differences between the factors are small, and no additional incentive is needed. Specifically, when A has a significant advantage in a certain dimension, the incentive coefficient A1 / A2 amplifies the weight contribution of this advantage (E = (A1 / A2) × A1), making it stand out in the competition. When the levels of each factor are similar, the incentive coefficient approaches 1, and the weight is mainly determined by the absolute level of the factor. Taking two sets of ordered factor sequences A = {0.9, 0.3, 0.2, 0.1} and B = {0.6, 0.55, 0.5, 0.4} as examples, A has an absolute leading advantage (0.9) in the skill matching dimension, while the factors in B are relatively balanced. After adopting the competitive incentive coefficient in this embodiment, A's incentive coefficient is 3.0, and its final weight is approximately 0.99, significantly higher than B's final weight of approximately 0.54. This prioritizes the allocation of highly matched skill pairs, aligning with the actual need for prioritizing core elements in employment scenarios. When the second largest value is zero, the competitive incentive coefficient takes a preset upper limit of 10; if both the maximum and second largest values are zero, it takes 1. This design does not rely on additional subjective parameters and is entirely driven by the data's own distribution, ensuring that the matching ranking highlights core advantages while taking into account a comprehensive balance of multi-dimensional factors.
[0066] The minimum value is located in the ordered factor sequence. The reciprocal of the minimum value is then taken, and the result is the penalty adjustment factor, which is used to constrain and adjust the factor values that are too low.
[0067] The obtained competitive incentive coefficient is multiplied by the maximum value in the ordered factor sequence, and the maximum value is numerically amplified to obtain the incentive enhancement value. At the same time, the penalty adjustment factor is multiplied by the minimum value in the ordered factor sequence, and the minimum value is numerically compressed to obtain the penalty compression value.
[0068] The incentive enhancement value, penalty compression value, and other factors in the ordered factor sequence excluding the maximum and minimum values are aggregated together and weighted averaged according to a unified weighted calculation rule. After the calculation is completed, the result is directly output as the matching weight value.
[0069] A preferred example of multidimensional feature aggregation is as follows: Let the positive matching factor be F1, the idleness factor be F2, the urgency weight coefficient be F3, and the fulfillment weight coefficient be F4; arrange {F1, F2, F3, F4} in descending order to form an ordered factor sequence {A1, A2, A3, A4}, where A1≥A2≥A3≥A4; calculate the competition incentive coefficient C=A1 / A2, the penalty adjustment factor P=1 / A4; calculate the incentive enhancement value E=C×A1, and the penalty compression value Q=P×A4; the matching weight value W is obtained by weighted averaging of the incentive enhancement value E, the second factor A2, the third factor A3, and the penalty compression value Q.
[0070] In this embodiment, the preset weight vector is [0.4, 0.3, 0.2, 0.1], i.e., W = 0.4 × E + 0.3 × A2 + 0.2 × A3 + 0.1 × Q. The design principle of the above weight coefficients is that the incentive enhancement value E reflects the amplification effect of the optimal factor and is given the highest weight of 0.4, the second factor A2 retains a relatively high weight of 0.3, the third factor A3 has a weight of 0.2, and the penalty compression value Q mainly plays an adjustment role and is given the lowest weight of 0.1. The sum of all weights is 1 to ensure that the matching weight value maintains a reasonable dimension.
[0071] Specifically, assuming a task and worker are calculated to have F1 = 0.2, F2 = 0.5, F3 = 0.8, and F4 = 0.9, the ordered sequence is {0.9, 0.8, 0.5, 0.2}. Calculate C = 0.9 / 0.8 = 1.125, P = 1 / 0.2 = 5, E = 1.125 × 0.9 = 1.0125, and Q = 5 × 0.2 = 1. Substituting these values into the formula, we get W = 0.4 × 1.0125 + 0.3 × 0.8 + 0.2 × 0.5 + 0.1 × 1 = 0.405 + 0.24 + 0.1 + 0.1 = 0.845. This weight value is the final matching weight value for the task-worker pair.
[0072] It's important to note that the "stable matching pairs" generated by S3 and the "earliest response" competition mechanism introduced by S4 correspond to different decision-making levels, and there is no logical contradiction between them. The "stable matching pairs" selected by S3 through bidirectional matching are essentially an algorithmic priority ranking, defining "who is eligible to be consulted"—only when a candidate worker passes the bidirectional matching verification can they enter the order confirmation queue. However, the algorithm cannot perceive the worker's current real-time willingness (e.g., whether they are online, busy with other tasks, or willing to accept the order). If the queue is strictly followed sequentially, if the best candidate does not respond, the task will be postponed, leading to a delay in dispatch and failing to meet the timeliness requirements of urgent tasks. Therefore, S4 uses "earliest return of a valid confirmation signal" as a secondary screening dimension within the small scope defined by S3, ensuring both the capability threshold (those entering the queue have met the requirements) and dispatch efficiency. The two-stage relationship can be summarized as: S3 is responsible for "who can participate," and S4 is responsible for "who accepts the order first." The former ensures matching quality, and the latter ensures order locking efficiency; they complement each other rather than conflict.
[0073] The beneficial effects are as follows: stable pairings are screened through matrix-weighted bidirectional comparison, and the degree of suitability is quantified by multi-dimensional weights, balancing the optimal choice for both tasks and workers. Repeated filtering of already paired objects eliminates imbalances caused by unilateral preference, forming a queue awaiting confirmation. By integrating tiered data from before and after, the matching results are balanced and reliable, laying a stable foundation for subsequent order locking verification and formal dispatch, and significantly improving overall scheduling coordination.
[0074] By integrating multiple reference indicators to calculate weighted values, the suitability level is jointly measured using factors such as grade difference, on-the-job workload, task urgency, and past performance. The reciprocal conversion factor amplifies the advantages of highly suited individuals with ample available time, and the weights derived from multi-feature aggregation closely reflect real-world employment scenarios. These weighted values objectively quantify the quality of pairings, providing a unified evaluation standard for two-way matrix matching and improving the reliability of the matching results.
[0075] This approach aggregates multiple factors using sorting, incentive amplification, and constraint compression to amplify the advantages of high-quality fit conditions and mitigate the negative impact of weaker conditions. A weighted average is then used to integrate and adjust the various values, calculating a more discriminative matching weight. The clear differences in these weight values accurately differentiate between well-matched and poorly matched individuals, providing a precise evaluation basis for matrix matching and ensuring that the overall matching and screening results better align with actual employment needs.
[0076] S4. Dispatch lock order confirmation requests to the candidate workers in the lock order confirmation queue, receive the pre-occupancy confirmation signal returned by the candidate workers based on the lock order confirmation request, lock the candidate workers who returned the pre-occupancy confirmation signal as temporary dispatch objects, and generate a lock order success record. In this embodiment of the invention, lock order confirmation requests are dispatched to candidate workers in the lock order confirmation queue, a pre-occupancy confirmation signal is received from the candidate workers based on the lock order confirmation request, the candidate worker who returned the pre-occupancy confirmation signal is locked as a temporary dispatch object, and a lock order success record is generated, including: Based on the lock confirmation request, a dynamic confirmation credential is generated and embedded into the lock confirmation request for distribution. Receive the pre-occupancy confirmation signal returned by the candidate worker, and extract the return confirmation credential carried in the pre-occupancy confirmation signal; The return confirmation certificate is compared with the dynamic confirmation certificate. If they match, the pre-occupancy confirmation signal is marked as a valid signal; otherwise, it is marked as an invalid signal. The candidate worker who returns the first valid signal is designated as the temporary assignment recipient; The temporary assignment object, the hierarchical task, and the candidate worker association are combined to form the successful order lock record.
[0077] Specifically, based on the lock order confirmation request to be issued, a unique dynamic confirmation credential is generated. This credential has the characteristics of single use and exclusive matching. Then, the generated dynamic confirmation credential is embedded into the lock order confirmation request, and the integrated request content is sent to each candidate worker in the lock order confirmation queue.
[0078] It is important to note that the dynamic confirmation credential is generated using hash-based message authentication code technology. The specific steps are as follows: When dispatching a lock confirmation request, a credential body is first generated. The payload consists of a task ID, a worker ID, a current timestamp (accurate to milliseconds), and a random number. It is transmitted via a key that is stored only on the server and rotates periodically. Calculate the HMAC-SHA256 value for the above payload to obtain the credential digest Token = HMAC-SHA256 ( The Payload and Token are combined into a single string (e.g., Payload + "." + Token) to serve as the final dynamic confirmation credential.
[0079] The reason why this embodiment uses HMAC (Hash-based Message Authentication Code) technology to generate dynamic confirmation credentials is mainly based on the following technical considerations: HMAC is a message authentication code mechanism that combines a cryptographic hash function and a symmetric key. Unlike a simple hash function, HMAC introduces a key shared in advance by both communicating parties, so that only the party holding the correct key can generate and verify a valid authentication code, thus simultaneously realizing two security functions: message integrity verification and source identity authentication. Specifically, HMAC has the following core security features: (1) Message integrity protection - the receiver can recalculate the HMAC value and compare it with the received credentials to confirm that the message content has not been tampered with during transmission; (2) Source authenticity authentication - since the calculation of HMAC depends on the key held only by the server, attackers cannot forge legitimate confirmation credentials; (3) Collision resistance - the security of HMAC is based on the cryptographic properties of the underlying hash function (SHA-256 in this embodiment), and has security guarantees such as collision resistance and anti-image attack.
[0080] This embodiment introduces multiple dynamic factors into the payload of the dynamic confirmation credential, including task ID, worker ID, current timestamp (accurate to milliseconds), and a random number. The timestamp ensures the credential has a clear validity period; credentials exceeding the valid time window are automatically rejected. The random number guarantees that even in multiple requests from the same task and the same worker, the content of each generated credential will be different. This combination of "key + dynamic factors" design makes each confirmation credential one-time, unpredictable, and bound to a specific task and worker, effectively preventing the risk of credential interception and reuse.
[0081] Based on the above technical principles, the dynamic confirmation credential mechanism adopted in this embodiment mainly addresses the following specific security threats: (I) Replay Attack Defense. A replay attack refers to an attack method in which an attacker intercepts legitimate authentication credentials through network eavesdropping or other means, and then resends these data to the recipient to deceive them. In the flexible employment scenario of this invention, without a dynamic credential mechanism, an attacker may intercept a worker's confirmation signal for a task and repeatedly replay it, resulting in the same task being incorrectly locked multiple times or the same worker being assigned tasks repeatedly. This embodiment incorporates timestamps and random numbers into the credential generation factor, ensuring that each credential is valid only within a specific time window and can only be used once. Even if an attacker intercepts the credential, it cannot be used again.
[0082] (ii) Defense against forged confirmation requests. Since HMAC calculation relies on a secret key stored only on the server side, attackers cannot generate a legitimate HMAC digest for any payload without possessing this key. Upon receiving a pre-acquisition confirmation signal, the server recalculates the HMAC value of the payload using the same key and compares it with the received token. This mechanism ensures that all verified confirmation signals originate from legitimate system distribution processes, rather than malicious requests forged by attackers.
[0083] (iii) Message Tampering Defense. Dynamic confirmation credentials transmit the payload and token as a whole. Any tampering with the payload content (such as task ID, worker ID) will cause the HMAC value recalculated on the server side to be inconsistent with the received token, thus being identified as an invalid signal. This effectively prevents attackers from intercepting the confirmation signal and tampering with the task or worker identification information within it.
[0084] (iv) Defense against man-in-the-middle attacks. By combining HMAC's key authentication mechanism with the dynamic characteristics of timestamps and random numbers, even if an attacker launches a man-in-the-middle attack on the communication link and intercepts the confirmation signal, the attacker will be unable to decrypt and forge legitimate credentials or pass verification by replaying the intercepted credentials because they cannot obtain the server-side key and the credentials have one-time and time-limited characteristics.
[0085] The dynamic confirmation credential should be a required field in the lock order confirmation request message (e.g.) This information is sent along with the original dynamic confirmation credential to the candidate worker's client. After the worker clicks "confirm," their client must append the received original dynamic confirmation credential to the pre-occupancy confirmation signal and return it. Upon receiving the signal, the payload and token are parsed, and then the same key stored locally is used. The HMAC-SHA256 value was recalculated on the parsed payload to obtain... .like If the token matches the received token exactly, the verification passes and the pre-occupancy confirmation signal is marked as valid; if it does not match or parsing fails, it is marked as invalid. This method effectively prevents forged confirmation requests and replay attacks, ensuring the reliability and security of the order locking process.
[0086] It continuously receives pre-occupancy confirmation signals from each candidate worker in the queue, parses and processes the content of each received signal, extracts the return confirmation voucher attached to the signal, and obtains the complete verification basis returned by the worker.
[0087] The extracted return confirmation voucher is compared with the dynamic confirmation voucher previously issued with the request. When the contents of the two vouchers are exactly the same, the current pre-occupancy confirmation signal is designated as a valid signal. When the contents of the two vouchers are different, the corresponding pre-occupancy confirmation signal is designated as an invalid signal, thus completing the validity identification of all returned signals.
[0088] All feedback records marked as valid signals are sorted out chronologically to select the candidate worker who sent the valid signal earliest. This worker is then identified and locked as the temporary assignment recipient for this task, and the temporary assignment personnel for the task are determined.
[0089] Integrate the identity information of the temporary dispatch recipients, the corresponding hierarchical task information, and the binding relationship between the two, summarize and organize all kinds of information to form a complete lock order success record, and retain all the corresponding information of this lock order operation.
[0090] The beneficial effects are as follows: the dynamic voucher verification mechanism eliminates false confirmation signals, relies on voucher consistency to screen valid responses, and selects only the first qualified worker as the temporary dispatcher. Complete personnel and task binding information is retained to form a successful order locking record, locking the temporary pairing relationship. The verification process, which receives the matching queue results, avoids malicious order grabbing, ensuring the authenticity and reliability of the order locking process, and providing complete and verifiable original records for subsequent timeliness and suitability assessments.
[0091] S5. Perform response time verification and task suitability evaluation on the successful lock record, and sort the verification and evaluation results to generate dispatch result data. In this embodiment of the invention, the successful lock record is subjected to response time verification and task suitability evaluation, and the verification and evaluation results are comprehensively sorted to generate dispatch result data, including: The time interval between the confirmation time and the dispatch time in the successful lock record is used as the response time data; Calculate the median of the response time data and use the median as a benchmark for comparing response timeliness; The response time data is compared with the comparison benchmark, and records whose response time data is not greater than the comparison benchmark are marked as time-acceptable records; Obtain the required skill level of the graded task corresponding to the acceptable timeliness record and the current ability level of the corresponding candidate worker; The required skill level and the current ability level are analyzed differentially to obtain the matching deviation value; The time-acceptable records are sorted in the first round using the matching deviation value to obtain a first sorted sequence; In the first sorting sequence, records with the same matching deviation value are sorted locally in a second round according to the order of the response time data from smallest to largest to obtain the distribution result data.
[0092] Specifically, the request dispatch time and the worker confirmation time are extracted from each successful lock order record. The interval between the two time nodes is calculated and defined as the response time data to characterize how fast the candidate worker responds after receiving the request.
[0093] All response time data are statistically analyzed, and the median is determined. This median is set as a unified benchmark for judging whether the response time meets the standard, and serves as a reference standard for subsequent record screening.
[0094] Each response time data point is compared with a preset benchmark. If the response time data is less than or equal to the duration corresponding to the benchmark, the successful lockout record is marked as an acceptable timeliness record, thus completing the timeliness filtering of all records.
[0095] Retrieve the graded task information corresponding to each time-acceptable record, extract the required skill level explicitly required by the task, and retrieve the current ability level of the corresponding candidate worker registered in the graded worker pool to collect two core graded information for suitability judgment.
[0096] A difference analysis was conducted between the required skill level of the graded task and the current ability level of the candidate workers to identify the gap between the two levels and obtain a matching deviation value that reflects the degree of fit between the two.
[0097] It is important to note that the matching deviation value is defined as follows: The required skill level for the graded task is numerically represented as Elementary = 1, Intermediate = 2, Advanced = 3. Similarly, the current ability level of the candidate worker is numerically represented as Elementary = 1, Intermediate = 2, Advanced = 3. The matching deviation value D = |Required skill level value for the task - Current ability level value for the worker|. The possible values for D are 0, 1, or 2, where D = 0 indicates a perfect skill match, D = 1 indicates a difference of one level, and D = 2 indicates a difference of two levels.
[0098] Using the matching deviation value corresponding to each time-acceptable record as the sorting basis, all records are arranged as a whole according to the size of the deviation value, and a regular first sorting sequence is formed after the first round of sorting.
[0099] It is important to note that the specific rules for the comprehensive sorting are as follows: The first round of sorting arranges all time-acceptable records in ascending order based on the matching deviation value D, i.e., records with D=0 are ranked first, followed by those with D=1, and finally those with D=2, thus ensuring that skill matching is the primary consideration for assignment. The second round of sorting is performed within each subsequence generated in the first round, for example, within all records with D=0, and then further sorts them in ascending order based on response time data, with shorter response times ranking higher. The ordered queue obtained after these two rounds of sorting is the final assignment result data, and tasks will be officially assigned to workers sequentially according to the order of this queue.
[0100] For multiple records with identical matching deviation values within the first sorting sequence, a second local sorting is performed based on the corresponding response time data, following the rule of ascending duration. After both rounds of sorting are completed, a complete distribution result data is finally formed.
[0101] The beneficial effects are as follows: using the median overall response time as the criterion for timeliness, matching records with slow responses are filtered out. The initial sorting is then based on the degree of capability fit measured by the level deviation. If the deviations are consistent, a second round of fine-tuning is performed by comparing response speed. This dual-screening and sorting process refines the hierarchy of matching quality, producing standardized and orderly dispatch results data. The process of receiving locked records performs a second quality check, eliminating inefficient matching combinations, ensuring that the final dispatch order balances capability matching and response efficiency, thus improving the overall stability of task execution.
[0102] S6. Update the task status and availability identifier of the corresponding worker in the hierarchical worker pool using the dispatch result data.
[0103] In this embodiment of the invention, updating the task status and availability identifier of the corresponding worker in the tiered worker pool using the dispatch result data includes: Extract the identifiers of dispatched workers from the dispatch result data, and update the task status of the corresponding worker in the tiered worker pool from idle to occupied. Based on the number of tasks already undertaken by the dispatched workers, the real-time load rate is recalculated, and the updated load rate is written into the tiered worker pool. When the update load rate reaches the load limit corresponding to the current capability level of the dispatched worker, the availability flag of the dispatched worker is switched to unavailable.
[0104] Specifically, the unique identifiers of dispatched workers who have completed their tasks are extracted one by one from the dispatch result data. Based on the identifiers, the corresponding personnel entries in the tiered worker pool are located, and the task status originally marked as idle under that entry is uniformly changed to occupied status, and the current work status of the personnel is updated synchronously.
[0105] The total number of tasks actually undertaken by dispatched workers at this stage is counted, and the latest real-time load rate is recalculated based on this number. The newly calculated real-time load rate is then entered into the information column of the corresponding personnel in the tiered worker pool to complete the synchronous update of load data.
[0106] The updated real-time load rate is compared with the preset load limit for the worker's current ability level. When the real-time load rate reaches the corresponding load limit standard, the worker's availability flag in the tiered worker pool is changed from available to unavailable, restricting the worker from receiving new task assignments.
[0107] The beneficial effects are as follows: worker status and workload are updated synchronously based on dispatch results, and the tiered worker pool information is dynamically maintained by receiving dispatch data from the front end. The workload value is refreshed in real time with the number of tasks undertaken, and the eligibility to accept orders is immediately restricted when the corresponding workload limit is reached. Dynamic management of personnel availability status prevents workers from being overloaded with tasks, maintains the real-time accuracy of worker pool data, provides real personnel workload information for the next round of task matching, and ensures a balanced and stable overall dispatch in the long term.
[0108] Example 2, System Deployment Example: Based on the above method examples, this example further illustrates the specific deployment architecture and operating mechanism of the present invention in a real system.
[0109] I. Server Architecture Deployment: This system adopts a layered microservice architecture deployed in a cloud computing environment. The API gateway layer deploys two Nginx servers, configured with Keepalived for high availability, uniformly receiving and routing requests from employers, workers, and management. The microservice business layer deploys Spring Boot microservice instances for task management, worker management, matching engine, order confirmation, dispatch results, and status updates. Service registration and discovery are implemented using Nacos, and load balancing is achieved using Ribbon. Each service is deployed with at least three instances to ensure high availability. The distributed task scheduling layer adopts a Manager / Worker master-slave architecture. The Manager is responsible for task orchestration and scheduling, sending matching tasks to a Redis queue; Workers snatch tasks from the queue and execute matching calculations, supporting horizontal scaling. The data persistence layer deploys a MySQL 8.0 cluster (one master and two slaves). The master database handles writes and transactions, while the slave databases share the query load. The caching layer deploys a Redis 7.0 cluster (three masters and three slaves) to cache real-time worker load rates, hot task data, and intermediate results of the matching matrix. The file storage layer deploys MinIO object storage to store task attachments and worker qualification certificates.
[0110] II. Database Design: The core data tables of the system include: The Task table stores attribute information of tasks to be assigned, including fields such as Task ID, complexity, urgency, required skill level, and task status. It is horizontally partitioned by month to handle data growth. The Worker table stores candidate worker profile data, including fields such as Worker ID, performance score, skill tag set, ability level, workload, and availability indicator. The Hierarchical Task table stores multi-level hierarchical clustering results, including Task ID and corresponding complexity level, urgency level, and skill level tag. The Hierarchical Worker table stores the quantitative assessment results of ability levels, including Worker ID and initial... The system includes: initial capability level, adjusted capability level, and target capability level; the matching record table stores stable matching pair records generated by bidirectional matching, including matching ID, task ID, worker ID, matching weight value, and matching status; the lock order record table stores lock order confirmation records, including lock order ID, task ID, worker ID, dynamic confirmation voucher, request and confirmation time, and voucher verification result; the dispatch result table stores the final dispatch result, including dispatch ID, task ID, worker ID, matching deviation value, response time, and dispatch order; and the operation log table records all key operation logs in the system for system auditing and fault tracing.
[0111] III. Matching Matrix Size and Computational Resource Configuration: The system supports processing no more than 10,000 tasks and 50,000 workers simultaneously in a single batch, with a matrix size of 500 million elements at full load. To ensure computational efficiency, the system employs three optimization strategies: First, matrix block computation, dividing the matrix into blocks (100 tasks per block) and calculating them one by one to avoid memory overflow; second, parallel computation, executing the block tasks in parallel through 10 Worker nodes, controlling the computation time of a single matrix block (5 million elements) to within 500 milliseconds; and third, incremental computation, reusing the results of the previous round of computation and only performing incremental computation on the changed parts, significantly reducing overhead.
[0112] IV. Real-time Load Rate Timed Refresh Mechanism: The real-time load rate of workers is updated using a dual mechanism of event-driven and timed polling. For event-driven updates, when a worker successfully locks a task or a task is officially dispatched, the system immediately triggers a recalculation of the worker's load rate and writes the updated load rate to the Redis cache and MySQL database in real time. For timed polling, the system uses the Quartz distributed scheduled task framework to execute a full load rate refresh task every 30 seconds, scanning all workers in an occupied state, counting the number of tasks currently being executed, recalculating the real-time load rate, and updating it synchronously. The load rate calculation formula is the number of currently executing tasks divided by the maximum concurrent tasks corresponding to the worker's current skill level, where the maximum concurrency for beginner, intermediate, and advanced levels is 3, 5, and 8, respectively. When the updated load rate reaches the load limit, the system automatically switches the availability flag to unavailable; when the load rate drops below 80% of the limit, it automatically returns to available.
[0113] V. System Operation Example of Complete Dispatch Process: Taking a specific operational scenario as an example: Assume there are 200 tasks to be dispatched and 320 candidate workers in the system. The task management service retrieves the task data to be dispatched from the MySQL task table, and the worker management service retrieves the candidate worker data from the MySQL worker table. In stage S1, the task management service performs multi-level hierarchical clustering on the 200 tasks, writes the results to the hierarchical task table, and caches them in Redis. In stage S2, the worker management service performs quantitative assessment of the ability levels of the 320 workers, writes the results to the hierarchical worker table, and caches them in Redis. In stage S3, the matching engine service reads the hierarchical task data and hierarchical worker pool data from Redis, constructs a matching matrix of 200×320 with a total of 64,000 valid elements, distributes the matrix block calculation tasks to Worker nodes for parallel execution through the distributed task scheduling layer, calculates the matching weight value of each task-worker pair, filters out stable matching pairs, generates a lock order pending confirmation queue, and writes the matching records to the matching record table. In phase S4, the lock confirmation service dispatches lock confirmation requests containing dynamic confirmation credentials to candidate workers in the lock confirmation queue. It receives pre-occupancy confirmation signals from workers and performs credential consistency verification. The worker who passes the verification and responds earliest is locked as a temporary dispatch object, and the successful lock record is written to the lock record table. Simultaneously, an event-driven update of the worker's load rate is triggered. In phase S5, the dispatch result service reads successful lock records from the lock record table, performs response timeliness verification and task suitability evaluation, and generates dispatch result data after comprehensive sorting, writing it to the dispatch result table. In phase S6, the status update service extracts dispatched worker identifiers from the dispatch result table, updates the corresponding worker's task status and availability identifier in the tiered worker pool, and synchronously updates the MySQL tiered worker table and Redis cache. Meanwhile, a Quartz scheduled task scans the real-time load rate of all workers every 30 seconds, recalculates and updates the Redis cache and MySQL database, and automatically switches the availability identifier when the load rate reaches its limit.
[0114] Through the above system deployment and operation mechanism, this invention realizes fully automated processing from task classification, worker rating, two-way matching, order confirmation to final dispatch, which can support flexible employment scenarios with a daily task volume of more than 100,000.
[0115] Example 3 illustrates the practical application effect of the present invention by taking the order dispatch of a same-city instant delivery platform under severe weather conditions as an example.
[0116] On the afternoon of June 23, 2026, a sudden downpour hit the city where an on-demand delivery platform was located, causing 120 food delivery orders to accumulate in a short period of time. Simultaneously, some riders suspended accepting orders due to the weather. The platform needed to accurately dispatch all orders within 15 minutes. The system first obtained the attribute information of all orders to be dispatched, and performed structured analysis based on delivery distance, food type, special delivery requirements (such as insulation, spill prevention, and cold chain), order amount, estimated preparation time, delivery route complexity, and weather conditions. Orders were categorized into low, medium, and high complexity levels, and into urgent, emergency, normal, and regular levels based on the estimated remaining delivery time. Each order was also assigned a basic, intermediate, or advanced skill level tag, completing multi-level hierarchical clustering to generate tiered task data. Simultaneously, the system obtained worker profile data for the 215 currently online riders, and comprehensively evaluated them based on their performance ratings over the past 30 days, skill tag matching, and current real-time load rate, generating a tiered worker pool covering four levels: excellent, good, satisfactory, and needing improvement. Subsequently, the system constructs a matching matrix using 120 tiered tasks as row indices and 215 candidate riders as column indices. It comprehensively considers the absolute value of the difference between the required skill level of the task and the rider's current ability level, the reciprocal of the rider's real-time load rate, the urgency weight coefficient corresponding to the task's urgency, and the fulfillment weight coefficient corresponding to the rider's historical fulfillment quality score. Through multi-dimensional feature aggregation, matching weight values for each matrix element are generated. By filtering elements row by row and column by column, 86 stable matching pairs are iteratively generated and arranged into a queue for order confirmation. The system then sends order confirmation requests with embedded dynamic confirmation credentials to each of the 86 riders in the queue. After receiving the request, the rider's app clicks to confirm the order. The system receives the returned pre-occupancy confirmation signal and extracts the returned confirmation credential, performing an HMAC consistency comparison with the originally issued dynamic confirmation credential. Signals that match are marked as valid signals, and the rider who returns the earliest valid signal (shortest response time of 2.3 seconds) is locked as a temporary assignment target. Ultimately, all 86 tasks are successfully locked, and a successful order record is generated. Based on this, the system extracts the time interval between the confirmation time and the dispatch time in each successful order lock record as response time data. The median of all response time data is calculated to be 4.7 seconds. 68 records with response times no greater than this benchmark are selected and marked as acceptable timeliness records. Then, the required skill level of the task corresponding to the acceptable timeliness record and the rider's current ability level are analyzed differentially to obtain the matching deviation value. First, the records are sorted in ascending order of matching deviation value (the 41 records with a matching deviation value of 0 are placed at the top). Then, within the records with the same matching deviation value, a second local sort is performed in ascending order of response time to finally generate ordered dispatch result data.The system extracts the dispatched rider identifiers one by one based on the dispatch result data, updates the task status of the corresponding rider in the tiered worker pool from idle to occupied, recalculates its real-time load rate and writes it into the worker pool. When the updated load rate reaches the load limit corresponding to the rider's current ability level, the availability identifier is automatically switched to unavailable. The full load rate is refreshed every 30 seconds via a Quartz scheduled task to maintain the real-time accuracy of the worker pool data. Through this process, the platform successfully dispatched all 120 backlogged orders during heavy rain, achieving a 95.3% accuracy rate in the first round of dispatch matching. The average order locking response time was reduced from 10.8 seconds in the traditional method to 4.3 seconds. High-load riders were not reassigned orders due to the automatic switching of availability identifiers, while the utilization rate of low-load riders increased by approximately 35%. The dynamic credential verification mechanism effectively intercepted three forged confirmation requests. Overall dispatch efficiency and scheduling rationality were significantly improved, fully verifying the practical application value of this invention in complex and flexible employment scenarios.
[0117] It will be apparent to those skilled in the art that the present invention is not limited to the details of the exemplary embodiments described above, and that the present invention can be implemented in other specific forms without departing from the spirit or essential characteristics of the present invention.
[0118] This application embodiment can acquire and process relevant data based on artificial intelligence technology. Artificial intelligence is the theory, method, technology, and application system that uses digital computers or machines controlled by digital computers to simulate, extend, and expand human intelligence, perceive the environment, acquire knowledge, and use that knowledge to obtain optimal results.
[0119] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and are not intended to limit it. Although the present invention has been described in detail with reference to preferred embodiments, those skilled in the art should understand that modifications or equivalent substitutions can be made to the technical solutions of the present invention without departing from the spirit and scope of the technical solutions of the present invention.
Claims
1. A method for precise dispatch of flexible employment tasks based on hierarchical response and order confirmation, characterized in that, The method includes: S1. Obtain the task attribute information of the task to be dispatched, and perform multi-level hierarchical clustering on the task to be dispatched to obtain hierarchical task data. S2. Obtain worker profile data of candidate workers, and quantitatively evaluate the ability level of the candidate workers to obtain a graded worker pool; S3. Perform bidirectional matching between the hierarchical task data and the hierarchical worker pool to generate a lock order confirmation queue. S4. Dispatch lock order confirmation requests to the candidate workers in the lock order confirmation queue, receive the pre-occupancy confirmation signal returned by the candidate workers based on the lock order confirmation request, lock the candidate workers who returned the pre-occupancy confirmation signal as temporary dispatch objects, and generate a lock order success record. S5. Perform response time verification and task suitability evaluation on the successful lock record, and sort the verification and evaluation results to generate dispatch result data. S6. Update the task status and availability identifier of the corresponding worker in the hierarchical worker pool using the dispatch result data.
2. The method for precise dispatch of flexible employment tasks based on hierarchical response and order confirmation as described in claim 1, characterized in that, The tasks to be dispatched are subjected to multi-level hierarchical clustering to obtain hierarchical task data, including: The task attribute information is structured and parsed to obtain the task complexity, urgency, and required skill level; Using the task complexity as the first clustering dimension, the tasks to be dispatched are divided into primary task levels to generate a complexity task set; In the set of complexity tasks, the tasks within the set of complexity tasks are further clustered using the urgency level as the second clustering dimension to obtain the set of urgency tasks. In the set of urgent tasks, the required skill level is used as the third clustering dimension to bind a skill level label to each task in the set of urgent tasks, thus obtaining a set of labeled skill tasks; The tagged skill task set is output as the hierarchical task data.
3. The method for precise assignment of flexible employment tasks based on hierarchical response and order confirmation as described in claim 1, characterized in that, The candidate workers are quantitatively assessed for their competency levels to obtain a tiered worker pool, including: The worker profile data is analyzed to obtain historical performance quality scores, skill tag matching degree, and real-time load rate; Based on the historical performance quality scores, the candidate workers are pre-assigned to the initial capability level, generating a performance rating assignment record. Based on the performance rating allocation record, the candidate workers within the initial capability level are reclassified using the skill tag matching degree to obtain the capability adjustment label level; In the capability adjustment labeling level, based on the real-time load rate, the candidate workers are comprehensively rated to generate the target capability level of the candidate workers; The candidate workers are categorized into corresponding capability levels according to the target capability level, and the results are output as the hierarchical worker pool.
4. The method for precise assignment of flexible employment tasks based on hierarchical response and order confirmation as described in claim 1, characterized in that, Based on the hierarchical task data and the hierarchical worker pool, a bidirectional matching process is performed to generate a lock order confirmation queue, including: A matching matrix is constructed using each graded task in the graded task data as a row index and each candidate worker in the graded worker pool as a column index. Based on the absolute value of the difference between the capability level requirements of the tiered task data and the current capability level of the tiered worker pool, and in conjunction with the real-time load rate, a matching weight value is generated. The matching weight values are filled into the matrix elements corresponding to the matching matrix to obtain the weighted matching matrix; In the weighted matching matrix, the matrix element with the highest matching weight value in each row is determined as the preferred match on the task side, and the matrix element with the highest matching weight value in each column is determined as the preferred match on the worker side. The matrix element that is simultaneously pointed to by the preferred match on the task side and the preferred match on the worker side is identified as a bidirectional locking element, and the hierarchical task corresponding to the bidirectional locking element is formed into a stable matching pair with the candidate worker. The hierarchical tasks and candidate workers in the stable matching pairs are temporarily removed from the hierarchical task data and the hierarchical worker pool, respectively. Repeat the identification and removal of stable matching pairs for the remaining hierarchical tasks and remaining candidate workers after removal, until no new stable matching pairs can be formed; All established stable matching pairs are arranged sequentially to generate the lock confirmation queue.
5. The method for precise assignment of flexible employment tasks based on hierarchical response and order confirmation as described in claim 4, characterized in that, Based on the absolute value of the difference between the capability level requirements of the tiered task data and the current capability level of the tiered worker pool, and in conjunction with the real-time load rate, a matching weight value is generated, including: Calculate the absolute value of the difference between the capability level requirement of the tiered task data and the current capability level of the tiered worker pool; Obtain the urgency weight coefficient corresponding to the urgency level of the graded task data, and the performance weight coefficient corresponding to the historical performance quality score of the candidate worker; The reciprocal of the absolute value of the difference is used as the positive matching factor, and the reciprocal of the real-time load rate is used as the idle rate factor. The positive matching factor, the idleness factor, the emergency weight coefficient, and the performance weight coefficient are aggregated into multi-dimensional features and output as the matching weight value.
6. The method for precise assignment of flexible employment tasks based on hierarchical response and order confirmation as described in claim 5, characterized in that, The positive matching factor, the idleness factor, the urgency weight coefficient, and the fulfillment weight coefficient are aggregated into a multi-dimensional feature, and the output is the matching weight value, including: The positive matching factor, the idleness factor, the emergency weight coefficient, and the performance weight coefficient are arranged in descending order to obtain an ordered factor sequence; Extract the maximum and second largest values from the ordered factor sequence, and use the ratio of the maximum value to the second largest value as the competition incentive coefficient; The reciprocal of the minimum value in the ordered factor sequence is used as the penalty adjustment factor; The maximum value is amplified by the competitive incentive coefficient to obtain an incentive enhancement value, and the minimum value is compressed by the penalty adjustment factor to obtain a penalty compression value; The matching weight value is output by taking a weighted average of the incentive enhancement value, the penalty compression value, and the remaining factors in the ordered factor sequence.
7. The method for precise dispatch of flexible employment tasks based on hierarchical response and order confirmation as described in claim 1, characterized in that, Send lock order confirmation requests to candidate workers in the lock order confirmation queue, receive pre-occupancy confirmation signals returned by the candidate workers based on the lock order confirmation requests, lock the candidate workers who returned the pre-occupancy confirmation signals as temporary assignment objects, and generate a lock order success record, including: Based on the lock confirmation request, a dynamic confirmation credential is generated and embedded into the lock confirmation request for distribution. Receive the pre-occupancy confirmation signal returned by the candidate worker, and extract the return confirmation credential carried in the pre-occupancy confirmation signal; The return confirmation certificate is compared with the dynamic confirmation certificate. If they match, the pre-occupancy confirmation signal is marked as a valid signal; otherwise, it is marked as an invalid signal. The candidate worker who returns the first valid signal is designated as the temporary assignment recipient; The temporary assignment object, the hierarchical task, and the candidate worker association are combined to form the successful order lock record.
8. The method for precise assignment of flexible employment tasks based on hierarchical response and order confirmation as described in claim 1, characterized in that, The successful order lock records are subjected to response time verification and task suitability evaluation. The verification and evaluation results are then comprehensively sorted to generate dispatch result data, including: The time interval between the confirmation time and the dispatch time in the successful lock record is used as the response time data; Calculate the median of the response time data and use the median as a benchmark for comparing response timeliness; The response time data is compared with the comparison benchmark, and records whose response time data is not greater than the comparison benchmark are marked as time-acceptable records; Obtain the required skill level of the graded task corresponding to the acceptable timeliness record and the current ability level of the corresponding candidate worker; The required skill level and the current ability level are analyzed differentially to obtain the matching deviation value; The time-acceptable records are sorted in the first round using the matching deviation value to obtain a first sorted sequence; In the first sorting sequence, records with the same matching deviation value are sorted locally in a second round according to the order of the response time data from smallest to largest to obtain the distribution result data.
9. The method for precise assignment of flexible employment tasks based on hierarchical response and order confirmation as described in claim 8, characterized in that, Updating the task status and availability identifier of the corresponding worker in the tiered worker pool using the dispatch result data includes: Extract the identifiers of dispatched workers from the dispatch result data, and update the task status of the corresponding worker in the tiered worker pool from idle to occupied. Based on the number of tasks already undertaken by the dispatched workers, the real-time load rate is recalculated, and the updated load rate is written into the tiered worker pool. When the update load rate reaches the load limit corresponding to the current capability level of the dispatched worker, the availability flag of the dispatched worker is switched to unavailable.