An ERP supply chain task allocation method, system, terminal and medium

CN122924941APending Publication Date: 2026-10-16INSPUR GENERSOFT CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202611045210.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-07-14
Publication Date
2026-10-16

AI Technical Summary

Technical Problem

任务量大的组织单位所在的线程会成为整体完成的瓶颈,其他线程虽已空闲但须等待该线程全部执行完毕,导致并行资源浪费,影响整体执行效率

Benefits of technology

设置第一阈值和第二阈值,在遍历分配过程中实时监控当前任务组的累计任务量占总任务量的比例,当该比例达到第一阈值时自动触发任务组切换,使已满足切换条件的任务组停止接收新任务,并将后续组织单位分配至新的任务组;同时,通过第二阈值触发空组回退检查,当比例达到第二阈值时检查切换前的任务组是否分配有任务对象,若为空则执行回退操作,确保当前组织单位不会跳过空组。双阈值使每个任务组在被分配至预设比例后再切换至下一组,避免任务堆积在同一组,同时通过回退检查修正比例切换过程中可能产生的空组,保证每个任务组均被分配有任务对象、每个并行线程均有任务可执行,避免了因空组导致的线程空跑和资源闲置,提高了并行线程的利用率和系统整体吞吐量;

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122924941A_ABST
    Figure CN122924941A_ABST
Patent Text Reader

Abstract

The application discloses an ERP supply chain task allocation method and system, a terminal and a medium, and belongs to the technical field of task scheduling. The method comprises the following steps: traversing each to-be-allocated organization unit in ascending order of task quantity, allocating the current organization unit to the current task group and accumulating the task quantity; when the accumulation ratio reaches a first threshold value, switching to the next task group; when the accumulation ratio reaches a second threshold value at the same time, allocating the current organization unit to the task group after switching, and checking whether the task group before switching is empty; if the task group before switching is empty, backtracking to the task group before switching; if the task group before switching is not empty, remaining in the task group after switching; wherein the second threshold value is greater than the first threshold value. The application guarantees that each group is not empty and each thread has a task to be executed, and effectively improves parallel resource utilization and system overall throughput.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of task scheduling technology, specifically to an ERP supply chain task allocation method, system, terminal, and medium. Background Technology

[0002] In ERP supply chain management systems, task scheduling and allocation are crucial for ensuring efficient enterprise operations. Large group enterprises typically have dozens or even hundreds of subordinate organizational units, such as subsidiaries, factories, and warehouses. The system needs to periodically retrieve data from these organizational units or generate downstream documents in batches. To improve efficiency, the system usually adopts a multi-threaded parallel processing approach, that is, starting a fixed number of scheduled tasks / threads and assigning the tasks to be processed by each organizational unit to these threads for parallel execution.

[0003] Currently, ERP management primarily employs the following methods when handling multi-organization scheduled task allocation: First, single-task sequential polling, which assigns tasks to parallel threads in turn, without considering the actual differences in task volume among organizational units. Threads belonging to organizations with high task volumes become bottlenecks, while other threads, though idle, must wait for these threads to complete, leading to wasted parallel resources and impacting overall execution efficiency. Second, fixed grouping by organization, which pre-assigns organizational units to fixed task groups, failing to adapt to dynamic scenarios where data volume changes with business needs. When task volume surges in some organizations, their task groups become new bottlenecks, while other task groups may remain idle or under low load for extended periods. Third, manual weight configuration, requiring managers to continuously adjust configurations based on experience, is not only costly but also struggles to cope with dynamic data changes, failing to achieve adaptive allocation. Regardless of whether it's polling, fixed grouping, or manual configuration, none can automatically detect real-time changes in task volume for each organizational unit and adjust allocation strategies accordingly, resulting in some threads becoming overloaded and bottlenecks while others remain idle, leading to low utilization of parallel resources. Summary of the Invention

[0004] To address the aforementioned issues, this invention provides an ERP supply chain task allocation method, system, terminal, and medium that ensures each group is not empty and each thread has tasks to execute, effectively improving parallel resource utilization and overall system throughput.

[0005] In a first aspect, the technical solution of the present invention provides an ERP supply chain task allocation method, comprising the following steps: Sort the organizational units to be assigned according to the ascending order of task volume, and traverse each organizational unit to be assigned based on the sorted sequence. During the traversal, the current organizational unit is assigned to the current task group, and the task load of the current task group is accumulated. Calculate the percentage of the cumulative task volume in the current task group relative to the total task volume; When the ratio reaches the first threshold, the current task group will be switched to the next task group; When the ratio reaches the second threshold simultaneously, the current organizational unit is assigned to the switched task group, and it is checked whether the task group before the switch is empty; the second threshold is greater than the first threshold. If the task group before the switch is empty, the current organizational unit will be rolled back to the task group before the switch, and the current task group will be restored to the task group before the switch. If the task group before the switch is not empty, then the current organizational unit will remain in the task group after the switch.

[0006] Secondly, the technical solution of the present invention provides an ERP supply chain task allocation system, comprising: The sorting module is used to sort the organizational units to be assigned in ascending order of task volume; The traversal allocation module is used to traverse each organizational unit to be allocated based on the sorted sequence. During the traversal, the current organizational unit is allocated to the current task group, and the task volume of the current task group is accumulated. The ratio calculation module is used to calculate the ratio of the cumulative task volume of the current task group to the total task volume; A switching control module is used to switch the current task group to the next task group when the ratio reaches a first threshold. The rollback control module is used to assign the current organizational unit to the switched task group when the ratio reaches the second threshold simultaneously, and to check whether the task group before the switch is empty; the second threshold is greater than the first threshold; if the task group before the switch is empty, the current organizational unit is rolled back to the task group before the switch, and the current task group is restored to the task group before the switch; if the task group before the switch is not empty, the current organizational unit is kept in the task group after the switch.

[0007] Thirdly, the technical solution of the present invention provides a terminal, comprising: Memory, used to store ERP supply chain task allocation programs; A processor is configured to implement the steps of the ERP supply chain task allocation method as described above when executing the ERP supply chain task allocation program.

[0008] Fourthly, the present invention provides a computer-readable storage medium storing an ERP supply chain task allocation program, wherein the ERP supply chain task allocation program, when executed by a processor, implements the steps of the ERP supply chain task allocation method described in any of the above claims.

[0009] As can be seen from the above technical solutions, this application has the following advantages: Setting a first and second threshold allows for real-time monitoring of the proportion of the current task group's cumulative task volume to the total task volume during the traversal allocation process. When this proportion reaches the first threshold, a task group switch is automatically triggered, stopping the task group that meets the switching conditions from receiving new tasks and assigning subsequent organizational units to the new task group. Simultaneously, an empty group rollback check is triggered through the second threshold. When the proportion reaches the second threshold, it checks whether the task group before the switch has any assigned tasks. If it is empty, a rollback operation is performed to ensure that the current organizational unit does not skip empty groups. The dual thresholds ensure that each task group is assigned to a preset proportion before switching to the next group, preventing tasks from piling up in the same group. At the same time, the rollback check corrects for empty groups that may occur during the proportion switching process, ensuring that each task group is assigned tasks and each parallel thread has tasks to execute. This avoids thread idleness and resource idleness caused by empty groups, improving the utilization of parallel threads and the overall system throughput. By traversing each organizational unit in ascending order of task volume, priority is given to allocating tasks to units with smaller task volumes. The cumulative proportion of the current task group gradually increases in the early stages of allocation. Based on this, a group switching is triggered when the proportion of the current task group's cumulative task volume to the total task volume reaches a first threshold, ensuring a pre-defined equilibrium in the proportion of task volume across groups. This process dynamically determines grouping based on the actual task volume of each organizational unit, without relying on preset weights or fixed grouping strategies. This avoids the problem of low parallel efficiency caused by some task groups becoming bottlenecks due to excessive load while other task groups remain idle for extended periods, thus improving overall resource utilization. During a single traversal, the allocation of organizational units, ratio calculation, threshold comparison, group switching, and empty group checking and rollback correction are completed simultaneously. All operations are cumulative comparisons and conditional judgments, requiring no secondary scanning, no iterative adjustments, and no complex optimization algorithms. This minimizes the computational overhead of the allocation process, reduces system resource consumption, and enables the rapid completion of allocation tasks. It is suitable for scheduled tasks in ERP systems that require high-frequency execution. Attached Figure Description

[0010] To more clearly illustrate the technical solution of this application, the accompanying drawings used in the description will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0011] Figure 1 This is a schematic diagram of an ERP supply chain task allocation method provided in an embodiment of the present invention.

[0012] Figure 2 This is a schematic block diagram of an ERP supply chain task allocation system provided in an embodiment of the present invention.

[0013] Figure 3 This is a schematic diagram of the structure of a terminal provided in an embodiment of the present invention. Detailed Implementation

[0014] To make the purpose, features, and advantages of this application more apparent and understandable, specific embodiments and accompanying drawings will be used to clearly and completely describe the technical solution protected by this application. Obviously, the embodiments described below are only some embodiments of this application, and not all embodiments. Based on the embodiments in this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0015] Unless otherwise defined, all technical and scientific terms used in this application have the same meaning as commonly understood by one of ordinary skill in the art to which this invention pertains. The terminology used in this application and in the specification of this invention is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention.

[0016] Figure 1 This is a schematic flowchart of an ERP supply chain task allocation method provided by an embodiment of the present invention. Figure 1 The executing entity can be an ERP supply chain task allocation system. The ERP supply chain task allocation method provided in this embodiment of the invention is executed by a computer device, and correspondingly, the ERP supply chain task allocation system runs on the computer device. Depending on different needs, the order of the steps in this flowchart can be changed, and some steps can be omitted.

[0017] like Figure 1 As shown, the method includes the following steps.

[0018] S1: Sort the organizational units to be assigned and iterate through each organizational unit to be assigned based on the sorted sequence.

[0019] The organizational units to be assigned are sorted in ascending order of task volume to obtain a sorted sequence, and then each organizational unit to be assigned is traversed based on the sorted sequence.

[0020] In this step, the "task volume" refers to the number of data synchronization tasks currently pending processing in each organizational unit. This number can be obtained from the task allocation table of the ERP system. The purpose of sorting by task volume in ascending order is to prioritize organizational units with smaller task volumes for allocation, thereby ensuring a gradual increase in the cumulative proportion of the current task group in the initial allocation phase and preventing sudden changes in the proportion due to large tasks entering too early.

[0021] S2, during the traversal, assigns the current organizational unit to the current task group and accumulates the task load of the current task group.

[0022] During the traversal, the currently traversed organizational unit is assigned to the current task group, and the task volume of that organizational unit is added to the cumulative task volume of the current task group.

[0023] The current task group refers to the task group corresponding to the task group number that is currently being assigned. Initially, the current task group number is the starting number (e.g., 1).

[0024] S3 calculates the proportion of the cumulative task volume of the current task group to the total task volume.

[0025] The total task load is the sum of the task loads of all organizational units to be assigned, and is pre-calculated and stored before the traversal begins. The ratio calculation formula is: Ratio = Cumulative task load of the current group ÷ Total task load.

[0026] S4. When the ratio reaches the first threshold, switch the current task group to the next task group.

[0027] If the ratio does not reach the first threshold, return to step S2 and continue to assign subsequent organizational units to the current task group.

[0028] If the ratio reaches the first threshold, the current task group will be switched to the next task group. The first threshold is used to control the maximum capacity ratio of the current task group. When the cumulative ratio reaches this threshold, it means that the current task group has met the switching conditions, and subsequent organizational units will be assigned to the new task group.

[0029] S5, when the ratio reaches the second threshold simultaneously, the current organizational unit is assigned to the switched task group, and it is checked whether the task group before the switch is empty; the second threshold is greater than the first threshold.

[0030] Once the ratio reaches the first threshold and triggers a group switch, the ratio is further compared with the second threshold, which is greater than the first threshold.

[0031] If the proportion does not reach the second threshold, the cumulative task volume of the task group is cleared to zero and the process returns to step S2 to continue iterating through subsequent organizational units.

[0032] If the proportion simultaneously reaches the second threshold, the current organizational unit is assigned to the new task group, and the task group before the switch is checked to see if it is empty. The second threshold is used to determine if the current organizational unit is an extremely large task, the addition of which causes the cumulative proportion to jump directly from below the first threshold to above the second threshold. In this case, an empty group may be generated, so an empty group check needs to be performed.

[0033] To check if the task group before the switch is empty, specifically: query the number of organizational units assigned under the task group number before the switch. If the number is zero, then the task group is considered empty.

[0034] S6. If the task group before the switch is empty, the current organizational unit will be rolled back to the task group before the switch, and the current task group will be restored to the task group before the switch.

[0035] The rollback operation specifically includes: changing the task group number of the current organizational unit to the task group number before the switch; decrementing the current task group number to the task group number before the switch; and clearing the cumulative task volume of the current task group to zero.

[0036] By rolling back, we ensure that the task group before the switch is filled into the current organizational unit, thus preventing the task group from becoming an empty group.

[0037] S7. If the task group before the switch is not empty, then keep the current organizational unit in the task group after the switch.

[0038] If the task group before the switch is not empty, the current organizational unit remains in the task group after the switch, and no rollback operation is performed. At this time, the current organizational unit is already in the task group after the switch, and the task group before the switch already has other organizational units, so there is no risk of an empty group, and therefore no rollback is needed. Through the above steps S1 to S7, the dynamic grouping of all organizational units is completed in a single traversal, and it is ensured that each task group is not empty.

[0039] Furthermore, the following provides a specific process step for ERP supply chain task allocation as a refinement and extension of the specific implementation of the above embodiments.

[0040] Phase 1: Initialization and Preparation.

[0041] Environment variable settings: The system sets the current task group number k to 1, indicating that work assignment starts from the first task group.

[0042] The system sets the cumulative task count counter cnt for the current task group to 0.

[0043] The system calculates and locks a first threshold (Thres1) and a second threshold (Thres2), where Thres2 is greater than Thres1.

[0044] The second stage: traversal allocation and dynamic judgment.

[0045] The system begins reading each organizational unit in the list sequentially and executes the following logic.

[0046] 1. Reading and allocation.

[0047] Read the organizational unit (Org) pointed to by the current pointer i and its workload Load i .

[0048] Org iAssign it to the current task group k, and load... i The increment is added to the cumulative counter of the current task group, i.e., cnt = cnt + Load. i .

[0049] Calculate the current group's cumulative percentage: Ratio = cnt / total task volume.

[0050] 2. First-level judgment: Has the ratio reached the first threshold? Case A: If Ratio is less than Thres1.

[0051] Action: Determine that the load of the current group k has not yet reached the switching condition.

[0052] Execute: Keep the current organizational unit in the current task group k.

[0053] Flow: The process ends at the end of this round and moves to the next organizational unit.

[0054] Case B: If Ratio is greater than or equal to Thres1.

[0055] Action: Determine that the switching conditions for the current group k have been met, and trigger group switching.

[0056] Execution: Increment the current task group number k by 1 (i.e., k=k+1), mark that the current task group has met the switching conditions, prepare to assign subsequent organizational units to the new task group, and then proceed to step 3 for the second level of judgment.

[0057] 3. Second-level judgment: Has the proportion reached the second threshold? Branch B1: If Ratio is less than Thres2.

[0058] Action: The judgment ratio is between Thres1 and Thres2, which is a normal boundary overflow.

[0059] Execute: Clear the cumulative counter cnt of the current task group to zero.

[0060] Flow: The process ends at the end of this round and moves to the next organizational unit.

[0061] Branch B2: If Ratio is greater than or equal to Thres2.

[0062] Action: Determined that the current organizational unit has too much workload, which may lead to an empty group, and enters the rollback check mechanism.

[0063] Execution: Assign the current organizational unit to the new task group (i.e., the current k group); update cnt to the task load of the current organizational unit. i Record the task group number before the switch (i.e., k-1) as a checkpoint; proceed to the third stage (rollback correction).

[0064] Phase 3: Rollback and correction logic.

[0065] This phase specifically addresses the risk of empty groups caused by ultra-large missions.

[0066] 1. Check the status of the task group before the switch: The system checks whether the task group (i.e., group k-1) before the switch is empty (i.e., whether it has been assigned an organizational unit).

[0067] 2. Implement the correction.

[0068] Branch 1: If the task group before the switch was empty.

[0069] Action: This indicates that a "empty group" risk has occurred and a rollback is required.

[0070] Execute rollback: Move the current organization unit (Org) to the previous one. i Roll back to the task group before the switchover (i.e., group k-1); restore the current task group number k to the number before the switchover (i.e., k=k-1); clear the cumulative counter cnt to zero.

[0071] Branch 2: If the task group before the switch was not empty.

[0072] Action: This indicates that the task group before the switch already had other organizational units, and there is no risk of an empty group.

[0073] Execute retain: The current organizational unit remains in the task group after the switch (i.e., the current k group); no rollback is performed, and cnt remains Load. i .

[0074] Phase 4: Loop control and group numbering limit handling.

[0075] Loop control: The system determines whether there are any unassigned organizational units. If so, it returns to the second stage to continue the loop; otherwise, the assignment ends and the final task grouping scheme is output.

[0076] Group number limit handling: In any of the above rounds, if the current task group number k has reached the maximum number value M, the switching is terminated, and all unassigned organizational units, both current and subsequent, are assigned to group M, and the loop exits. The maximum number value M is equal to the total number of task groups and is preset based on the number of parallel threads. When k reaches M, it indicates that all task groups are activated, and the process moves to the tail processing stage.

[0077] As another implementation, when the current task group number reaches the maximum number value, all unassigned organizational units are retrieved and sequentially assigned to the corresponding task groups in a round-robin manner. Specifically, the system retrieves a list of all unassigned organizational units. These organizational units include: the currently traversed organizational unit, i.e., the organizational unit that triggered the reaching of the maximum number value, and all subsequent organizational units in the sorted sequence that have not yet been traversed. The system sequentially assigns the aforementioned unassigned organizational units to the corresponding task groups in a round-robin manner. The specific round-robin assignment method is as follows: the first unassigned organizational unit is assigned to group 1, the second unassigned organizational unit is assigned to group 2, ..., the Mth unassigned organizational unit is assigned to group M, the (M+1)th unassigned organizational unit is assigned to group 1, the (M+2)th unassigned organizational unit is assigned to group 2, and so on. After the round-robin assignment is completed, all organizational units have been assigned to their corresponding task groups, the system terminates the traversal, and the assignment process ends. The polling allocation follows a sequential, cyclical distribution method, ensuring that each task group receives approximately the same number of tail organization units. Combined with the proportionally allocated load in steps S1 to S7, the even distribution of tail tasks further guarantees the overall load balance across groups.

[0078] In some optional implementations, a defensive check is performed before allocation. The task allocation table is retrieved to count the number of records with a task quantity greater than zero and a non-empty task group number (i.e., allocated but not yet completed), and this count is stored in a defensive count variable. The variable's value is checked for zero; if it is, it indicates that there are tasks that have not yet been completed, and the allocation process is terminated to avoid data conflicts. Then, the current task quantity for each organizational unit is refreshed. The number of pending tasks for each organization is grouped by organizational unit ID from the business document table, and the results are merged and updated with the task allocation table: for organizations already existing in the task allocation table, their task quantity and name are updated; for organizations not existing in the task allocation table, new records are inserted. Finally, the total task quantity is calculated. The task allocation table is retrieved to show the sum of the task quantities for all organizational units, and this value is stored in a total task quantity variable.

[0079] In some optional implementations, the first threshold and the second threshold are fixed values ​​determined based on the total number of task groups. Specifically, the first threshold and the second threshold are determined based on the total number of task groups M before the current allocation is initiated. Here, the total number of task groups M is the maximum value of the task group number. The first threshold T1 is used to control the maximum carrying capacity of the current task group; when the cumulative task load reaches this value, a group switch is triggered. The first threshold is determined based on the total number of task groups M and can be set to 1 / M. The second threshold T2 is used to trigger an empty group rollback check, and its value is greater than the first threshold T1. A preset buffer interval should be maintained between the second threshold and the first threshold; this buffer interval provides a buffer space between the first threshold and the second threshold. The second threshold is determined based on the first threshold and a preset buffer coefficient, and its calculation formula is T2 = T1 × (1 + δ), where T1 is the first threshold and δ is the preset buffer coefficient.

[0080] As alternative implementation methods, a first threshold and a second threshold are determined based on the total task volume and the number of task groups, specifically including the following steps S0.1 to S0.5. Since the task volume distribution characteristics of different organizational units may vary across different ERP systems, with some systems exhibiting relatively even task volumes across organizations and others having a small number of large organizations handling the majority of the tasks, using a uniform fixed threshold may not adapt to different task volume distribution characteristics, potentially leading to unsatisfactory allocation results. For example, in scenarios with severely skewed task volume distribution, a fixed threshold may trigger group switching too early or too late, affecting load balancing effectiveness and the reliability of the empty group correction mechanism. Therefore, thresholds are determined based on task volume distribution characteristics and executed before the traversal allocation begins, to determine the specific values ​​of the first and second thresholds used in this allocation.

[0081] S0.1, Set a basic threshold based on the total number of task groups and the total number of organizational units, and configure the initial value of the first threshold as this basic threshold.

[0082] The correction coefficient is determined based on the ratio of the total number of organizational units to the total number of task groups. When the ratio is greater than the first ratio threshold, the correction integer is less than 1. When the ratio is less than the second ratio threshold, the correction coefficient is greater than 1. The basic threshold is calculated as (1 / total number of task groups) × correction coefficient.

[0083] Specifically, the correction factor α is determined based on the ratio of the total number of organizational units N to the total number of task groups M. Let R=N / M. When R is greater than the first ratio threshold R1, it indicates that the number of organizational units is relatively larger than the number of task groups. At this time, each task group needs to carry more organizational units, so the threshold needs to be appropriately reduced to make the grouping more fine-grained, that is, the correction factor α should be less than 1. When R is less than the second ratio threshold R2 (R2<R1), it indicates that the number of organizational units is relatively smaller than the number of task groups. At this time, the threshold can be appropriately increased to avoid excessively fine grouping, that is, the correction factor α should be greater than 1. When R is between R2 and R1, the correction factor α is 1.

[0084] The value of the correction factor α can be expressed as: when R>R1, α=R1 / R; when R<R2, α=R2 / R; when R2≤R≤R1, α=1.

[0085] The initial value T1 of the first threshold base =(1 / M)×α. Where M is the total number of task groups, α is the correction factor, and 1 / M represents the proportion of the average task load carried by each task group.

[0086] S0.2: Acquire the task load of each organizational unit, and calculate the skewness coefficient of the task load distribution.

[0087] The skewness coefficient is a statistical quantity describing the direction and degree of skewness of the data distribution, and its calculation formula is:

[0088] Where N is the total number of organizational units, is the task load of the i-th organizational unit, is the average value of the task loads of all organizational units.

[0089] When γ>0, it indicates that the task load distribution is right-skewed (positive skewness), that is, there are a small number of organizational units with task loads far greater than the average (i.e., "super-large organizations"); when γ<0, it indicates that the task load distribution is left-skewed (negative skewness), that is, there are a small number of organizational units with task loads far less than the average; when γ=0, it indicates that the task load distribution is symmetric.

[0090] S0.3: When the skewness coefficient is greater than a preset skewness threshold, it is determined that the task load distribution has a right skew, and on the basis of the initial value of the first threshold, the first threshold is reduced by an amplitude that is positively correlated with the degree by which the skewness coefficient deviates from the preset skewness threshold.

[0091] When the skewness coefficient γ is greater than the preset skewness threshold γ0 (γ0>0), it is determined that the task load distribution has a right skew, that is, there are a small number of "super-large organizations" in the system whose task loads are far greater than those of other organizations.

[0092] In this scenario, if the threshold is too high, oversized organizations may cause a significant jump in the proportion when added to a group, triggering a rollback operation. If multiple oversized organizations trigger rollback simultaneously, it may affect allocation efficiency. Therefore, it is necessary to appropriately lower the first threshold so that each group has been allocated more smaller organizations before the arrival of oversized organizations, thereby reducing the impact of individual organizations on the overall proportion.

[0093] Specifically, the initial value T1 of the first threshold base Based on this, the first threshold is reduced by a positive correlation based on the degree to which the skewness coefficient γ deviates from the preset skewness threshold γ0. The calculation method can be as follows: T1=T1 base ×(1-β×(γ-γ0)) Wherein, β is a preset adjustment coefficient (0<β<1), used to control the correction amplitude and prevent the threshold from being reduced excessively; (γ-γ0) represents the degree to which the skewness coefficient exceeds the preset threshold. The larger the value, the more severe the right skewness, and the greater the reduction amplitude is required, thereby achieving adaptive adjustment for different degrees of skewness.

[0094] S0.4 When the skewness coefficient is less than the negative value of the preset skewness threshold, it is determined that the task distribution is left-skewed. Based on the initial value of the first threshold, the first threshold is increased by a magnitude positively correlated with the degree to which the skewness coefficient deviates from the preset skewness threshold.

[0095] When the skewness coefficient γ is less than the negative value of the preset skewness threshold (i.e., γ < -γ0), it is determined that the task distribution is left-skewed, meaning that there are a small number of organizational units in the system with a task volume much smaller than that of other organizations.

[0096] In this scenario, these organizational units with minimal task loads contribute very little to the cumulative proportion in the initial allocation phase. If the threshold is too low, it may lead to excessively frequent group switching, with each group receiving only a small number of minimal tasks, resulting in a waste of task group resources. Therefore, it is necessary to appropriately increase the first threshold so that each group can accommodate more organizational units before switching.

[0097] Specifically, the initial value T1 of the first threshold base Based on this, the first threshold is increased by a positive correlation based on the degree to which the skewness coefficient γ deviates from the negative value of the preset skewness threshold. The calculation method can be as follows: T1=T1 base ×(1+β×(-γ-γ0)) Where β is a preset adjustment coefficient, and -γ-γ0 represents the degree to which the skewness coefficient is lower than the preset negative threshold. The larger the value, the more severe the left skewness, and the greater the increase required.

[0098] S0.5, calculate the second threshold, expressed as: second threshold = first threshold × (1 + buffer coefficient); where the buffer coefficient is positively correlated with the standard deviation of the task volume.

[0099] The buffer coefficient δ is used to provide a buffer space between the first and second thresholds. The buffer coefficient δ is positively correlated with the standard deviation σ of the task load distribution, that is: .in, The base buffer coefficient is given by λ, the preset proportional coefficient is given by σ, and the standard deviation of the workload of each organizational unit is given by σ. This represents the average workload. The coefficient of variation measures the relative dispersion of task volume across organizational units. A larger standard deviation of task volume indicates greater differences in task volume among organizational units, resulting in a larger buffer coefficient and more buffer space for proportional jumps. Conversely, a smaller standard deviation of task volume results in a smaller buffer coefficient, allowing for a relatively narrower interval between thresholds.

[0100] The above text provides a detailed description of an embodiment of an ERP supply chain task allocation method. Based on the ERP supply chain task allocation method described in the above embodiment, this invention also provides an ERP supply chain task allocation system corresponding to the method.

[0101] Figure 2 This is a schematic block diagram of an ERP supply chain task allocation system provided in an embodiment of the present invention. In this embodiment, the ERP supply chain task allocation system can be divided into multiple functional modules according to the functions it performs. A module, as referred to in this invention, is a series of computer program segments that can be executed by at least one processor and perform a fixed function, and is stored in memory.

[0102] The sorting module is used to sort the organizational units to be assigned in ascending order of task volume.

[0103] The traversal allocation module is used to traverse each organizational unit to be allocated based on the sorted sequence. During the traversal, the current organizational unit is allocated to the current task group, and the task load of the current task group is accumulated.

[0104] The ratio calculation module is used to calculate the ratio of the cumulative task volume of the current task group to the total task volume.

[0105] The switching control module is used to switch the current task group to the next task group when the ratio reaches the first threshold.

[0106] The rollback control module is used to assign the current organizational unit to the switched task group when the ratio reaches the second threshold simultaneously, and to check whether the task group before the switch is empty; the second threshold is greater than the first threshold; if the task group before the switch is empty, the current organizational unit is rolled back to the task group before the switch, and the current task group is restored to the task group before the switch; if the task group before the switch is not empty, the current organizational unit is kept in the task group after the switch.

[0107] The ERP supply chain task allocation system of this embodiment is used to implement the aforementioned ERP supply chain task allocation method. Therefore, the specific implementation of this system can be found in the embodiment section of the ERP supply chain task allocation method above. Thus, the specific implementation can be referred to the description of the corresponding embodiments, which will not be elaborated here.

[0108] Furthermore, since the ERP supply chain task allocation system in this embodiment is used to implement the aforementioned ERP supply chain task allocation method, its function corresponds to the function of the above method, and will not be repeated here.

[0109] Figure 3 This is a schematic diagram of a terminal 300 provided in an embodiment of the present invention, including: a processor 310, a memory 320, and a communication unit 330. The processor 310 is used to implement the process steps of the above-described ERP supply chain task allocation method embodiment when implementing the ERP supply chain task allocation program stored in the memory 320.

[0110] This invention also provides a computer storage medium, which may be a magnetic disk, optical disk, read-only memory (ROM), or random access memory (RAM), etc. The computer storage medium stores an ERP supply chain task allocation program, which, when executed by a processor, implements the process steps of the above-described ERP supply chain task allocation method embodiment.

[0111] The above description of the disclosed embodiments enables those skilled in the art to make or use the invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the invention. Therefore, the invention is not to be limited to the embodiments shown herein, but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims

1. An ERP supply chain task allocation method, characterized in that, Includes the following steps: Sort the organizational units to be assigned according to the ascending order of task volume, and traverse each organizational unit to be assigned based on the sorted sequence. During the traversal, the current organizational unit is assigned to the current task group, and the task load of the current task group is accumulated. Calculate the percentage of the cumulative task volume in the current task group relative to the total task volume; When the ratio reaches the first threshold, the current task group will be switched to the next task group; When the ratio reaches the second threshold simultaneously, the current organizational unit is assigned to the switched task group, and it is checked whether the task group before the switch is empty; the second threshold is greater than the first threshold. If the task group before the switch is empty, the current organizational unit will be rolled back to the task group before the switch, and the current task group will be restored to the task group before the switch. If the task group before the switch is not empty, then the current organizational unit will remain in the task group after the switch.

2. The ERP supply chain task allocation method according to claim 1, characterized in that, Roll back the current organizational units to the task groups they were assigned to before the switchover, and restore the current task groups to their previous task groups. Specifically, this includes: Change the task group number of the current organizational unit to the task group number before the switch; Decrement the current task group number to the task group number before the switch; Clear the cumulative task load of the current task group to zero.

3. The ERP supply chain task allocation method according to claim 1, characterized in that, The method also includes: when the current task group number reaches the maximum number value, obtaining all unassigned organizational units and sequentially assigning the unassigned organizational units to the corresponding task groups in a round-robin manner.

4. The ERP supply chain task allocation method according to claim 1, characterized in that, The first and second thresholds are fixed values ​​determined based on the total number of task groups.

5. The ERP supply chain task allocation method according to claim 1, characterized in that, The method also includes the following steps: Set a base threshold based on the total number of task groups and the total number of organizational units, and configure the initial value of the first threshold to be this base threshold; Obtain the workload of each organizational unit and calculate the skewness coefficient of the workload distribution; When the skewness coefficient is greater than the preset skewness threshold, it is determined that the task distribution is right-skewed. Based on the initial value of the first threshold, the first threshold is reduced by a magnitude that is positively correlated with the degree to which the skewness coefficient deviates from the preset skewness threshold. When the skewness coefficient is less than the negative value of the preset skewness threshold, it is determined that the task distribution is left-skewed. Based on the initial value of the first threshold, the first threshold is increased by a magnitude positively correlated with the degree to which the skewness coefficient deviates from the preset skewness threshold. The second threshold is calculated as follows: Second threshold = First threshold × (1 + Buffer coefficient); where the buffer coefficient is positively correlated with the standard deviation of the task volume.

6. The ERP supply chain task allocation method according to claim 5, characterized in that, A basic threshold is set based on the total number of task groups and the total number of organizational units, specifically including: The correction coefficient is determined based on the ratio of the total number of organizational units to the total number of task groups. When the ratio is greater than the first ratio threshold, the correction integer is less than 1. When the ratio is less than the second ratio threshold, the correction coefficient is greater than 1. Calculate the base threshold = (1 / total number of task groups) × correction factor.

7. The ERP supply chain task allocation method according to claim 1, characterized in that, Before iterating through each organizational unit to be assigned tasks in ascending order of task volume, the process also includes: checking if there are any tasks that have not yet been completed; if so, terminating the current assignment operation.

8. An ERP supply chain task allocation system, characterized in that, include: The sorting module is used to sort the organizational units to be assigned in ascending order of task volume; The traversal allocation module is used to traverse each organizational unit to be allocated based on the sorted sequence. During the traversal, the current organizational unit is allocated to the current task group, and the task volume of the current task group is accumulated. The ratio calculation module is used to calculate the ratio of the cumulative task volume of the current task group to the total task volume; A switching control module is used to switch the current task group to the next task group when the ratio reaches a first threshold. The rollback control module is used to assign the current organizational unit to the switched task group when the ratio reaches the second threshold simultaneously, and to check whether the task group before the switch is empty; the second threshold is greater than the first threshold; if the task group before the switch is empty, the current organizational unit is rolled back to the task group before the switch, and the current task group is restored to the task group before the switch; if the task group before the switch is not empty, the current organizational unit is kept in the task group after the switch.

9. A terminal, characterized in that, include: Memory, used to store ERP supply chain task allocation programs; A processor is configured to implement the steps of the ERP supply chain task allocation method as described in any one of claims 1 to 7 when executing the ERP supply chain task allocation program.

10. A computer-readable storage medium, characterized in that, The readable storage medium stores an ERP supply chain task allocation program, which, when executed by a processor, implements the steps of the ERP supply chain task allocation method as described in any one of claims 1 to 7.