Intelligent replenishment and path planning system for community retail

By using a modular design for the intelligent replenishment and route planning system, the system dynamically adjusts the time window for replenishment tasks, solving the problem of mismatch between rigid constraints on replenishment tasks and delivery costs in community retail, and achieving coordinated optimization of replenishment and delivery.

CN122491782APending Publication Date: 2026-07-31JIAXING WUJUN TECHNOLOGY CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202610626639.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-05-08
Publication Date
2026-07-31

AI Technical Summary

Technical Problem

In community retail replenishment systems, the replenishment task time window is applied directly as a rigid constraint to the route planning stage. There is a lack of adaptive relaxation adjustment of the time window based on delivery cost feedback, which makes it difficult to coordinate the urgency of replenishment with the economic efficiency of delivery.

Method used

Design an intelligent replenishment and route planning system, including a replenishment task generation module, a delivery route planning module, a delivery marginal revenue calculation module, a time window adjustment module, and an iterative judgment module. By obtaining the values ​​of dual variables and the product's delayability coefficient, the system dynamically adjusts the latest delivery time of the replenishment task to optimize delivery costs.

Benefits of technology

It improves the matching between replenishment task time windows and delivery route plans, optimizes delivery costs through closed-loop adjustments, and balances the urgency and economy of product replenishment.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122491782A_ABST
    Figure CN122491782A_ABST
Patent Text Reader

Abstract

This invention relates to the field of community retail supply chain management technology, and discloses an intelligent replenishment and route planning system for community retail, including a replenishment task generation module, a delivery route planning module, a delivery marginal revenue calculation module, a time window adjustment module, and an iterative judgment module. The replenishment task generation module receives real-time inventory and sales data and generates a replenishment task list; the delivery route planning module solves for delivery route schemes using the latest delivery time as a time window constraint and outputs the total delivery cost; the delivery marginal revenue calculation module extracts the unit-time relaxation revenue value corresponding to the time window constraint of each task; the time window adjustment module calculates the delay time of each task based on the total relaxation time of this round, the proportion of revenue value, and the product's delayability coefficient, and updates the time window; the iterative judgment module controls the iteration based on the cost change magnitude and the delay time vector change magnitude, and outputs the time window and route scheme. This invention achieves coordinated adjustment of the replenishment time window and delivery route.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of community retail supply chain management technology, and more specifically, to an intelligent replenishment and route planning system for community retail. Background Technology

[0002] In community retail replenishment and delivery scenarios, the replenishment system typically generates replenishment tasks based on store inventory levels and sales rates, sets delivery deadlines for each task, and then a route planning system solves for vehicle delivery routes using these deadlines as constraints. This approach has the following shortcomings: the replenishment system does not consider the actual impact of current road network conditions and available capacity distribution on delivery costs within a given time window when setting the time window; even if the route planning system discovers that slightly delaying the deadline of a task could improve overall delivery costs, it cannot adjust the already determined time window parameters from upstream. Furthermore, the lack of a cost-feedback-based information exchange mechanism between the replenishment and delivery stages makes it difficult to flexibly adjust time window constraints during the route planning phase, hindering the reconciliation of replenishment urgency and delivery economics. Therefore, an intelligent replenishment and route planning system for community retail is proposed to address the above problems. Summary of the Invention

[0003] To overcome the aforementioned deficiencies of the prior art, embodiments of the present invention provide an intelligent replenishment and route planning system for community retail. This system addresses the problems in the prior art where the replenishment task time window is directly applied as a rigid constraint to the route planning stage, lacking an adaptive relaxation adjustment mechanism based on delivery cost feedback, and the mismatch between the time window constraint and the actual cost of delivery resources caused by one-way information transmission between the replenishment and delivery stages.

[0004] To achieve the above objectives, the present invention provides an intelligent replenishment and route planning system for community retail, including a replenishment task generation module, a delivery route planning module, a delivery marginal revenue calculation module, a time window adjustment module, and an iterative judgment module.

[0005] Replenishment task generation module: The replenishment task generation module receives real-time inventory data and sales data per unit time from each community retail store and generates a replenishment task list that includes the initial latest delivery time.

[0006] For the For each replenishment task, the module retrieves the current inventory level of the corresponding store. Average sales per unit time Calculate the time when the inventory is depleted. ; Will Subtract the preset safety buffer time forward Get the initial latest delivery time ; This initial latest delivery time provides a time window benchmark for subsequent delivery route planning, and a safety buffer period. This is used to reserve a replenishment margin in order to cope with fluctuations in sales rate or delivery delays.

[0007] The replenishment task list also includes the earliest delivery time for each task. This earliest delivery time is determined by the start time of the store's receiving window or the shortest delivery time and remains unchanged in subsequent iterations and updates. Only the latest delivery time is updated later.

[0008] Delivery route planning module: The delivery route planning module uses the latest delivery time of each replenishment task as a time window constraint to solve for vehicle delivery route schemes and output the total delivery cost. The output total delivery cost reflects the level of delivery resource consumption under the current time window configuration, providing a benchmark for subsequent relaxation benefit evaluation.

[0009] Delivery marginal revenue calculation module: The delivery marginal revenue calculation module extracts the unit time relaxation revenue value corresponding to the latest delivery time constraint of each replenishment task from the current delivery route plan. The unit time relaxation revenue value is the amount of delivery cost reduction caused by delaying the latest delivery time of the task by a preset unit time.

[0010] The specific extraction process is as follows: Obtain the dual variable values ​​corresponding to the time window constraints in the linear relaxation model of delivery route planning, denoted as . ; Increase the latest delivery time for the target replenishment task. While keeping the time windows for the remaining tasks unchanged, make partial adjustments to the affected delivery routes to obtain the reduction in total delivery cost after the adjustment relative to the total delivery cost before the adjustment. ,make ; Based on the target replenishment task, the estimated time difference between the store arrival time and the latest delivery time in the current delivery route plan is used. Determine the weighting coefficients ,in The preset attenuation coefficient; Will and according to We perform weighted synthesis to obtain the final relaxation gain per unit time. ; In the above process, the value of the dual variable A linear relaxation model derived from the path planning problem represents the marginal value of the time window constraint at the current optimal solution; the cost reduction obtained from local perturbations. It captured the impact of discrete adjustments on actual delivery costs; weighting coefficients The impact of the weighted average decays exponentially with the proximity of the expected arrival time to the latest delivery time, thus giving higher weight to the disturbance assessment of tasks closer to the deadline; the weighted average is then calculated as follows: By combining the marginal information of the continuous model with the actual effects of discrete perturbations, it more accurately reflects the true impact of time window relaxation on delivery costs for each task.

[0011] Time window adjustment module: The time window adjustment module calculates the delay time for each replenishment task in this round based on the total relaxation time of this round, the proportion of the unit time relaxation benefit value of each task in the total unit time relaxation benefit value of all tasks, and the product delay coefficient corresponding to each task, and updates the latest delivery time of the task.

[0012] Furthermore, the process for determining the total duration of this relaxation round is as follows: Set the base relaxation time ; In the In this round of iterations, the total delivery cost of this round relative to initial total delivery cost The percentage decrease satisfy: ; exist Greater than the first threshold At that time, the total duration of this round of relaxation Pick and The smaller value in; exist Less than the second threshold At that time, the total duration of this round of relaxation Pick ; exist Not less than and not greater than hour, .

[0013] This dynamic adjustment mechanism adaptively adjusts the total slack time available for allocation in each round based on the rate of decrease in delivery costs. When costs decrease significantly, the slack is appropriately increased to accelerate convergence; when cost decreases slow down, the slack is decreased to avoid over-adjustment. This serves as the upper limit for the relaxation amount in a single round.

[0014] Furthermore, before allocating relaxation time based on the proportion of relaxation benefit value per unit of time for each task, an upper limit compression process is performed on the relaxation benefit value per unit of time for each task: Calculate the mean of the relaxation gain per unit time for all tasks. with standard deviation ; For any unit time relaxation gain ,like Then it is compressed into: ; otherwise 。; The compression process uses the mean plus twice the standard deviation as a threshold and applies a logarithmic function to compress the excess value. While preserving the relative size of the value of each task, it suppresses the excessive occupation of relaxation time by a few extremely high value, so that the total relaxation time is more evenly distributed to multiple tasks with cost improvement potential.

[0015] Furthermore, the task-related product deferral coefficient. The calculation method is as follows: Obtain the normalized value of the remaining shelf life in days for the products associated with this replenishment task. Normalized value of sales fluctuation range Normalized value of stockout loss level ; Calculate the product's deferral coefficient ; in , , Preset weighting coefficients and satisfying .

[0016] Product Delayability Coefficient This analysis considers three dimensions of a product: the urgency of its shelf life, the stability of demand, and the severity of stockout losses. The fewer days remaining on the shelf life, the greater the sales fluctuations, and the higher the level of stockout losses, the better. The larger the value, the less the time window for the task can be delayed. By using a weighted summation method to merge multi-dimensional attributes into a single coefficient, the time window adjustment module can automatically take into account the differences in replenishment urgency among various products when allocating relaxation time.

[0017] Furthermore, the calculation process for the delay time of each replenishment task in this round is as follows: Computational tasks Basic delay ; in This is the total duration of this relaxation cycle. For the task The relaxation gain per unit time after upper limit compression. This is the sum of the relaxation gains per unit time for all tasks after upper limit compression. Computational tasks The duration of this round's delay ; Basic delay The total relaxation time for this round is allocated according to the proportion of the revenue value of each task after compression, so that tasks that have a greater impact on delivery costs receive more relaxation resources; this is then multiplied by... Introducing the damping effect of the commodity deferability coefficient, The larger the task, the greater the discount of its actual delay time relative to the basic delay amount, thus realizing a relaxed allocation strategy of "prioritizing delivery costs and constraining product attributes".

[0018] Iterative judgment module: The iterative judgment module determines whether the change in total delivery cost and the change in the vector of delay time for each task meet the preset stopping conditions. If they do not meet the conditions, the delivery route planning module, the delivery marginal revenue calculation module, and the time window adjustment module are triggered to execute again. When the preset stopping conditions are met, the final replenishment task time window and the corresponding delivery route plan are output.

[0019] The preset stop conditions include a first condition and a second condition: The first condition is , To set a predetermined cost stopping threshold, the convergence of the iteration is judged from the perspective of delivery cost. When the cost change rate of two adjacent rounds is lower than the threshold, it indicates that the cost improvement brought by further relaxation is no longer significant. The second condition is that the cosine similarity between the delay duration vectors of each task in the current round and the delay duration vectors of each task in the previous round is higher than a preset similarity stopping threshold. Convergence is judged from the time window structure dimension, and premature termination is avoided by measuring whether the distribution pattern of the delay of each task tends to be stable.

[0020] The iterative judgment module determines that the preset stopping condition is met when both of the above conditions are satisfied simultaneously.

[0021] Furthermore, a preset similarity stopping threshold is established. Based on the total quantity of this round of replenishment tasks Sure: ; in For preset adjustment coefficient and , This sets a preset reference number of tasks. When there are many replenishment tasks, the distribution pattern of task delay times requires more iterations to stabilize. Appropriately reducing the similarity requirement using this formula can prevent premature termination of iterations. When there are few tasks, a stricter similarity threshold is used to ensure convergence accuracy. Adjustment coefficient. The sensitivity of the control threshold to changes in the number of tasks.

[0022] The technical effects and advantages of this invention are as follows: The delivery marginal revenue calculation module obtains the dual variable values ​​corresponding to the latest delivery time constraints of each replenishment task from the linear relaxation model of delivery route planning. It then combines these values ​​with the cost changes obtained from local re-optimization after applying a small relaxation amount to the latest delivery time of the target task, and performs a weighted synthesis to obtain the unit time relaxation revenue value of the task. This revenue value quantifies the marginal impact of relaxing the time window of the task on the total delivery cost, providing a basis for subsequent time window adjustments.

[0023] Second, the time window adjustment module allocates the base relaxation amount based on the total relaxation time of this round and the proportion of relaxation benefit value per unit time for each task. It also introduces a product deferral coefficient to correct the allocation result. This coefficient is determined by weighting the remaining shelf life days, sales fluctuations, and stockout loss levels. This approach ensures that time window relaxation prioritizes tasks with a greater impact on delivery costs while considering the urgency of product replenishment.

[0024] Third, the iteration judgment module uses the rate of change of total delivery cost between two adjacent iterations as the first stopping condition, and the cosine similarity of the angle between the delay time vectors of each task in two adjacent iterations as the second stopping condition. The iteration terminates and the final solution is output when both conditions are met simultaneously. This dual condition ensures that the iteration process stops when the cost tends to stabilize and the time window structure no longer changes significantly, avoiding invalid iterations.

[0025] Fourth, through the collaborative work of the above modules, a closed-loop adjustment process based on marginal cost feedback is constructed between replenishment task generation and delivery route planning. The latest delivery time of the replenishment task can be relaxed in a controlled manner according to the actual cost signal at the delivery end, so that the final output replenishment time window and delivery route plan have better matching. Attached Figure Description

[0026] Figure 1 This is a system module framework diagram of the present invention. Detailed Implementation

[0027] 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.

[0028] Example 1 As attached Figure 1 The invention presents an intelligent replenishment and route planning system for community retail, comprising a replenishment task generation module, a delivery route planning module, a delivery marginal revenue calculation module, a time window adjustment module, and an iterative judgment module. The technical solution of this invention will be described in detail below, combining the specific implementation methods of each module and the collaborative working process between the modules.

[0029] 1. Replenishment Task Generation Module The replenishment task generation module receives real-time inventory data and sales data per unit time from each community retail store and generates a replenishment task list that includes the initial latest delivery time.

[0030] As one implementation method, real-time inventory data is obtained by the module directly reading real-time inventory snapshots from the warehouse management systems of each community retail store through a data interface. These snapshot data are organized in key-value pairs, including a store identifier field, a product identifier field, and the corresponding current inventory quantity. The module sends query requests to the warehouse management systems of each store according to a preset polling cycle. The warehouse management system returns the current inventory snapshot data, and the module extracts the relevant information after parsing the returned data. value.

[0031] As another implementation method, real-time inventory data is obtained by the module receiving inventory reports proactively submitted by each community retail store at preset time intervals. The report fields include store identifier, product identifier, and current inventory level. The module extracts the timestamp after verifying and parsing the message. Value and update local inventory records.

[0032] Average sales per unit time There are two implementation methods for determining the method.

[0033] As one implementation method, the module takes the arithmetic average of the sales volume of the product in the community retail store over the past 7 consecutive days in the same period as the data. The module retrieves the actual sales quantity of this product in the store for each time period corresponding to the current time period over the past 7 days, sums the 7 sales quantities, and divides by 7 to obtain the result. If the historical data is less than 7 days, the average value will be calculated based on the number of days of available data.

[0034] As another implementation method, the module uses the exponentially weighted moving average method to calculate... The calculation formula is: ; in The actual sales volume for the most recent unit of time. The average sales volume calculated in the previous period. The preset smoothing coefficient, Greater than 0 and less than 1. For the first calculation, This module retrieves the actual sales volume of this product for the store within the first unit of time. It updates with the latest sales data at the end of each unit of time. And store.

[0035] For the Each replenishment task calculates the moment when inventory runs out. The calculation formula is: ; Safety buffer duration There are two implementation methods for setting this up.

[0036] As one implementation method, A preset fixed value is selected. This fixed value is set by the system administrator based on the average replenishment response time and delivery fluctuation time in the area where the community retail store is located, and is stored in the system configuration parameter table.

[0037] As another implementation method The replenishment cycle is determined by multiplying the average historical replenishment cycle of the community's retail stores by the out-of-stock loss level of the product. The module reads the time interval from generation to delivery of all replenishment tasks for the store in the past 30 days and calculates their arithmetic mean as the historical replenishment cycle average. The module reads the coefficient corresponding to the preset out-of-stock loss level for the product; the higher the out-of-stock loss level, the larger the coefficient, with a value ranging from 1.0 to 2.0. The module multiplies the historical replenishment cycle average by this coefficient to obtain the product. .

[0038] The module calculates the initial latest delivery time. The calculation formula is: ; There are two ways to set the earliest delivery time.

[0039] As one implementation method, the earliest possible delivery time is calculated by adding the shortest delivery time from the community retail store to the shipping warehouse to the current system time. The module reads the shortest travel time from the shipping warehouse to the store from the road network data as the shortest delivery time, adds this time to the current system time, and obtains the earliest possible delivery time.

[0040] As another implementation method, the earliest delivery time is taken as the start time of the preset receiving time window of the community retail store. The module reads the daily receiving start time pre-configured in the store's basic information; if the current system time is earlier than the start time, the start time is taken as the earliest delivery time; if the current system time is later than the start time, the receiving start time of the next day is taken as the earliest delivery time.

[0041] The module sets the earliest deliverable time and the initial latest deliverable time for each task. An initial time window is created, generating a replenishment task list. Each record in the task list includes a task identifier, store identifier, product identifier, replenishment quantity, earliest available delivery time, and initial latest delivery time. .

[0042] 2. Delivery Route Planning Module The delivery route planning module uses the latest delivery time of each replenishment task as a time window constraint to solve the vehicle delivery route plan and output the total delivery cost.

[0043] As one implementation method, the module uses a mixed integer programming model to solve for vehicle delivery route schemes.

[0044] The model uses a directed complete graph to describe the road network structure of community retail stores. The set of nodes in the graph includes a shipping warehouse node and community retail store nodes corresponding to all replenishment tasks. The weight of the directed arc is the travel cost between two nodes, and the travel cost is calculated based on the road network distance and the preset unit distance cost.

[0045] The model's decision variables fall into two categories: the first category consists of 0-1 variables, representing whether a delivery vehicle passes through a directed arc; the second category consists of continuous variables, representing the time when the delivery vehicle arrives at each node.

[0046] The constraints of the model include: each community retail store node is accessed by one and only one delivery vehicle once; the delivery vehicle departs from the warehouse node and returns to the warehouse node after completing the delivery; the total amount of goods carried by the delivery vehicle does not exceed the vehicle's rated load capacity; the delivery vehicle arrives at each store node at a time that is no earlier than the earliest deliverable time of the store's task and no later than the latest delivery time of the store's task; and the continuity constraint of the delivery vehicle access path.

[0047] The objective function of the model is to minimize the sum of the driving costs and fixed usage costs of all delivery vehicles.

[0048] The module uses a branch-and-bound pricing algorithm to solve the model. Within the branch-and-bound framework, the algorithm employs a column generation method at each node to solve the linear relaxation problem. During column generation, the main problem is a linear relaxation of the set partitioning model, and the subproblem is a shortest path problem with resource constraints. The resource constraints in this subproblem include the remaining capacity constraints of delivery vehicles and the time windows of each task. The subproblem is solved using a label-based dynamic programming algorithm. This algorithm maintains a Pareto-optimal label set for each node, where each label contains cumulative cost, cumulative time, and remaining capacity status information. New path columns with negative cost reduction are generated and added to the main problem by progressively expanding the labels. The main problem reaches its optimum when it is impossible to generate a column with negative cost reduction.

[0049] The module branches based on the linear relaxation solution, selecting the arc flow variable with the closest fraction to 0.5 as the branching strategy. The algorithm terminates when it reaches the preset optimal gap or the preset maximum solution time. The module extracts the current delivery route plan and total delivery cost from the solution results. In the initial round At that time, the total delivery cost is recorded as .

[0050] As another implementation method, the module uses an adaptive large neighborhood search algorithm to solve the vehicle delivery route scheme.

[0051] In the initialization phase of the algorithm, a greedy insertion method is used to construct an initial feasible path scheme: the greedy insertion method traverses all unassigned tasks, calculates the marginal cost increment of inserting each unassigned task into each position in the current delivery path, selects the position with the smallest marginal cost increment for insertion, and continues until all tasks are assigned.

[0052] In each iteration phase of the algorithm, destructive and repair operations are performed. The destructive operation involves uniformly randomizing the selection of several community retail store nodes from the current delivery route plan for removal, and then adding these removed nodes to the insertion set. The number of nodes removed is controlled by a destructive severity parameter, which is dynamically adjusted in each iteration based on the search performance: if the new plan obtained after the destructive repair is accepted, the destructive severity parameter remains unchanged; if all new plans are rejected after a preset number of iterations, the destructive severity parameter decreases by a preset fixed step size.

[0053] The repair operation inserts the community retail store nodes in the set to be inserted back into the delivery route plan one by one. For each node to be inserted, it iterates through all the insertable positions in all current delivery routes, calculates the total increase in delivery cost after insertion, and selects the position with the smallest increase in cost for insertion. During the insertion process, the satisfaction of capacity constraints and time window constraints is checked in real time.

[0054] The algorithm adopts the simulated annealing acceptance criterion: if the target value of the new solution is better than the current solution, it is accepted unconditionally; if the target value of the new solution is worse than the current solution, it is accepted probabilistically, and the acceptance probability is calculated using the following formula: ,in The difference between the target value of the new scheme and the target value of the current scheme. This refers to the current temperature parameter. Temperature parameter After each iteration, the algorithm is multiplied by a preset cooling coefficient (greater than 0 and less than 1) to reduce the decay rate. The algorithm terminates after reaching a preset maximum number of iterations. The module outputs the optimal delivery route and its corresponding total delivery cost recorded during the search process. In the initial round At that time, the total delivery cost is recorded as .

[0055] 3. Delivery Marginal Revenue Calculation Module The delivery marginal revenue calculation module extracts the unit-time relaxation revenue value corresponding to the latest delivery time constraint of each replenishment task from the current delivery route plan. The implementation method of this module corresponds to the solution algorithm used by the delivery route planning module.

[0056] When the delivery route planning module is implemented using a mixed integer programming model, the delivery marginal revenue calculation module performs the following process.

[0057] The module receives the linear relaxation master problem model and its optimal simplex tableau output from the delivery route planning module, and obtains the dual variable values ​​corresponding to the time window constraints in the linear relaxation model of delivery route planning, denoted as... The module reads the dual variable values ​​corresponding to the latest delivery time constraints of each replenishment task from the optimal simplex tableau as... If the latest delivery time constraint does not appear directly in the main problem, the module extracts the marginal cost value related to the time window from the resource constraint dual variable of the subproblem as... The marginal cost value is the shadow price of the arrival time constraint in the dynamic programming of the subproblem.

[0058] The module increases the latest delivery time for the target replenishment task by a certain duration. While keeping the time windows for the remaining tasks unchanged, make partial adjustments to the affected delivery routes to obtain the reduction in total delivery cost after the adjustment relative to the total delivery cost before the adjustment. ,make Duration The preset micro-hour length.

[0059] The specific operation of the local adjustment is as follows: the module identifies the delivery vehicle routes in the current delivery route plan that contain the target replenishment task, and shifts the delivery time of the task on that route backward. The module checks whether the arrival times of subsequent community retail stores along the path after the translation still meet their respective time window constraints. If a time window conflict occurs, the module performs a partial reordering of the subsequent store sequence: the community retail stores affected by the conflict are temporarily stored in their original access order, and then inserted one by one into other positions along the delivery vehicle path that meet the time window in order of increasing cost increment after insertion; if there is no position that meets the time window in the delivery vehicle path, the store is moved to all available delivery vehicle paths except the current delivery vehicle, and the target delivery vehicle and insertion position are selected in order of increasing insertion cost increment during the migration.

[0060] After the partial adjustments are completed, the module calculates the total delivery cost after the adjustments and compares it with the total delivery cost before the adjustments to obtain the reduction amount. If the total delivery cost does not decrease after the adjustment, then Take 0.

[0061] The module estimates the time difference between the estimated arrival time at the community retail store and the latest delivery time based on the target replenishment task within the current delivery route plan. Determine the weighting coefficients . The value is the difference between the latest delivery time of the target replenishment task and the estimated arrival time of the task at the store in the current delivery route plan. Weighting coefficient. ,in For the preset attenuation coefficient, It is a constant greater than 0.

[0062] The module will and according to We perform weighted synthesis to obtain the final relaxation gain per unit time. The synthesis formula is: ; The module performs the above process for each replenishment task in the task list, and then... Earnings from each task The value is denoted as .

[0063] When the delivery route planning module uses an adaptive large neighborhood search algorithm, the module will The value is 0. This increments the module's time limit for the latest delivery time of the target replenishment task. , The module calls the repair operation in the adaptive large neighborhood search algorithm, with the time window of the target replenishment task already relaxed, based on the preset micro-hour length. Under these conditions, the affected delivery routes are locally re-optimized.

[0064] The inputs for the repair operation include the current delivery route plan, the set of nodes to be inserted, the updated time window constraints for each task, the delivery vehicle capacity limit, and the number of available delivery vehicles. The set of nodes to be inserted includes the removed target task and the affected surrounding community retail store nodes. Specifically, the module removes the target replenishment task from the current delivery route plan and adds it to the set of nodes to be inserted, while simultaneously updating its latest delivery time to the original value plus a certain amount. The module performs a repair operation, reconstructing the delivery route plan for the local area; the module calculates the re-optimized total delivery cost and compares it with the original total delivery cost to obtain the reduction amount. ,make If the total delivery cost does not decrease after re-optimization, then Take 0.

[0065] The module calculates the time difference between the estimated arrival time of the target replenishment task at the community retail store and the latest delivery time in the current delivery route plan. , The value is the latest delivery time of the target replenishment task minus the estimated arrival time at the store. The module is based on... Determine the weighting coefficients ,in The preset attenuation coefficient is greater than 0.

[0066] The module will and according to Perform weighted synthesis, because , The module performs the above process for each replenishment task in the task list, and then... Earnings from each task The value is denoted as .

[0067] 4. Time window adjustment module The time window adjustment module calculates the delay time for each replenishment task in this round and updates its latest delivery time based on the total relaxation time of this round, the proportion of the unit time relaxation benefit value of each task in the total unit time relaxation benefit value of all tasks, and the product delayability coefficient corresponding to each task.

[0068] Module sets initial total relaxation time , Use the default value.

[0069] Module settings for basic relaxation time As one implementation method, A preset fixed value is used, which is set by the system administrator based on the timeliness requirements of community retail delivery in this region and stored in the system configuration parameter table. As another implementation method, Based on the total quantity of this round of replenishment tasks Sure, Pick and The smaller value in, that is: ; in To preset the maximum relaxation time, The preset reference number of tasks.

[0070] In the During each iteration, the module calculates the total delivery cost for that round. relative to initial total delivery cost The percentage decrease The calculation formula is: ; First threshold and the second threshold There are two implementation methods for setting this up.

[0071] As one implementation method, Take a preset fixed value. Take a preset fixed value, and satisfy the following conditions: .

[0072] As another implementation method Based on the cost convergence rounds in historical iterations The quartiles of the distribution are determined. Based on the cost convergence rounds in historical iterations The lower quartiles of the distribution are determined. At the end of each complete scheduling cycle, the module collects data from all iterations of that round. Update the upper and lower quartiles as values ​​for the next scheduling. and .

[0073] Total duration of this relaxation cycle The determination follows these rules: exist Greater than hour, Pick and The smaller value in; exist Less than hour, Pick ; exist Not less than and not greater than hour, .

[0074] The module performs upper limit compression on the unit time relaxation gain value for each task. The module calculates the unit time relaxation gain value for all tasks. mean with standard deviation For any ,like Then compress it into: ; otherwise .

[0075] The module calculates the product deferral coefficient for each task. The module reads the standard shelf life days of the product from the product master data system, obtains the sales sequence of the product in various community retail stores over the past 7 days from the sales data system, and reads the preset out-of-stock loss level of the product from the product configuration table. The module obtains the three normalized attribute values ​​of the product associated with the replenishment task.

[0076] Normalized value of remaining shelf life days The method for determining the shelf life is as follows: The module reads the remaining days of the current shelf life of the product, reads the standard shelf life of the product, divides the remaining days of the current shelf life by the standard shelf life, and the resulting ratio is the shelf life. If the remaining days of the current shelf life have exceeded the standard shelf life, then Take 1.

[0077] Normalized value of sales fluctuation The determination method is as follows: The module obtains the sales sequence of the product in various community retail stores over the past 7 days, calculates the standard deviation and mean of the sequence; divides the standard deviation by the mean to obtain the coefficient of variation; the module normalizes the coefficient of variation using preset maximum and minimum values, that is, divides the difference between the coefficient of variation and the preset minimum coefficient of variation by the difference between the preset maximum and the preset minimum coefficient of variation, and truncates the resulting value between 0 and 1 as the standard deviation. .

[0078] Normalized value of stockout loss level The determination method is as follows: the module reads the preset out-of-stock loss level of the product, which is pre-divided into three levels: high, medium, and low; the high out-of-stock loss level corresponds to... A value of 1 corresponds to a medium level of stockout loss. A value of 0.5 corresponds to a low stockout loss level. The value is 0.

[0079] Weighting coefficient , , There are two implementation methods for setting this up.

[0080] As one implementation method, , , Take one-third of each.

[0081] As another implementation method, weight combinations are preset according to product categories: for fresh produce, Greater than and Greater than For standardized product categories, Greater than and Greater than For high-value categories, Greater than and Greater than And satisfy .

[0082] The module calculates the product's deferral coefficient according to the formula. : ; The module calculates the delay time for each replenishment task in this round. Basic delay The calculation formula is: ; in This is the total duration of this relaxation cycle. For the task The relaxation gain per unit time after upper limit compression. This is the sum of the relaxation gains per unit time for all tasks after upper limit compression.

[0083] Task The duration of this round's delay The module will handle the task. The latest delivery time is updated to the original latest delivery time plus... The earliest deliverable time for this task remains unchanged during the iterative update process.

[0084] 5. Iterative Judgment Module The iterative judgment module determines whether the change in total delivery cost and the change in the vector of delay time for each task meet the preset stopping conditions.

[0085] The module checks the first condition. The inequality for the first condition is: ; in This represents the total delivery cost for this round. This is the total delivery cost for the previous round. Set a preset cost stop threshold.

[0086] Cost stop threshold There are two implementation methods for setting this up. One implementation method is... A preset fixed value is used, which is set by the system administrator and stored in the system configuration parameter table. As another implementation method, With each iteration round Increasing and decreasing, the calculation formula is: ; in The preset initial cost stop threshold is used.

[0087] The module determines the second condition. The module calculates the cosine similarity between the current round's delayed duration vector and the previous round's delayed duration vector. Let the current round's delayed duration vector be... , its first Each component is The previous round's delay duration vector is A', and its i-th... Each component is .

[0088] When the previous delay duration vector A' is zero, the second condition is directly determined to be satisfied.

[0089] When A' is not a zero vector, the dot product of the two vectors The vector is the sum of the products of its corresponding components. The Euclidean modulus |A| of vector A' is the square root of the sum of squares of its components, and the Euclidean modulus |A'| of vector A' is the square root of the sum of squares of its components. The formula for calculating the cosine similarity of the included angle is: ; The module determines whether the similarity exceeds a preset similarity stopping threshold. .

[0090] Similar stopping threshold There are two implementation methods for setting this up. One implementation method is... Take a preset fixed value. It is a constant greater than 0.90 and less than 1. As another implementation, Based on the total quantity of this round of replenishment tasks Confirmed, the calculation formula is: ;in The preset adjustment coefficient, Greater than 0 and less than 1 The preset reference number of tasks.

[0091] The module determines that the preset stop condition is met when both of the following conditions are met simultaneously: Condition one: ; Condition 2: The cosine similarity of the included angle is higher than that of the other two conditions. .

[0092] The module stops iterating and outputs the final replenishment task time window and corresponding delivery route plan. If the conditions are not met, the module triggers the delivery route planning module, delivery marginal revenue calculation module, and time window adjustment module to execute again, starting the next iteration. Round iteration.

[0093] 6. System Collaborative Working Process During a complete community retail replenishment scheduling cycle, the above modules work together in the following order.

[0094] First, the replenishment task generation module receives real-time inventory data and sales data per unit time from each community retail store, and generates a replenishment task list that includes the initial latest delivery time.

[0095] The delivery route planning module uses the latest delivery time of each task in the replenishment task list as a time window constraint to solve for vehicle delivery route schemes and output the total delivery cost. .

[0096] Then, the delivery marginal revenue calculation module extracts the unit-time relaxation revenue value for each replenishment task from the current delivery route plan. .

[0097] The time window adjustment module adjusts based on the total relaxation time of this round. Each task The percentage and the coefficient of the degree of postponement of goods corresponding to each task Calculate the delay time for each replenishment task in this round. And update the latest delivery time for each task.

[0098] After the update is complete, the iterative judgment module determines whether the change in total delivery cost and the change in the vector of delay time for each task meet the preset stopping conditions. If both conditions are met, the module stops the process. The cosine similarity of the angle between the second condition and the second condition is higher than If the condition is met, the iteration stops, and the final replenishment task time window and corresponding delivery route plan are output.

[0099] If the stopping condition is not met, the iterative judgment module triggers the delivery route planning module to execute again. The delivery route planning module receives the updated latest delivery time output by the time window adjustment module as the time window constraint for the new round of solution, re-solves the delivery route scheme, and sequentially calls the delivery marginal revenue calculation module and the time window adjustment module to start a new round of iteration.

[0100] The final replenishment task time window list and corresponding delivery route plan output by the system are stored in a designated directory in the form of structured data files for the community retail warehouse management system and delivery dispatch terminal to read.

[0101] The specific embodiments described above provide a detailed explanation of the technical solution of the present invention. Those skilled in the art should understand that the above embodiments are only for explaining the present invention and are not intended to limit the scope of protection of the present invention. Any modifications, equivalent substitutions, or improvements made within the technical concept of the present invention should be included within the scope of protection of the present invention.

Claims

1. A smart replenishment and route planning system for community retail, comprising: The replenishment task generation module receives real-time inventory data and sales data per unit time from each community retail store and generates a replenishment task list that includes the initial latest delivery time. The delivery route planning module uses the latest delivery time of each replenishment task as a time window constraint to solve the vehicle delivery route plan and output the total delivery cost. The delivery marginal revenue calculation module extracts the unit time relaxation revenue value corresponding to the latest delivery time constraint of each replenishment task from the current delivery route plan. The unit time relaxation revenue value is the amount of delivery cost reduction caused by delaying the latest delivery time of the task by a preset unit time. The time window adjustment module calculates the delay time for each replenishment task in this round based on the total relaxation time of this round, the proportion of the unit time relaxation benefit value of each task in the total unit time relaxation benefit value of all tasks, and the product delay coefficient corresponding to each task, and updates the latest delivery time of the task. The iterative judgment module determines whether the change in total delivery cost and the change in the vector of delay time for each task meet the preset stopping conditions. If they do not meet the conditions, the delivery route planning module, the delivery marginal revenue calculation module, and the time window adjustment module are triggered to execute again. When the preset stopping conditions are met, the final replenishment task time window and the corresponding delivery route plan are output.

2. The intelligent replenishment and route planning system for community retail according to claim 1, wherein, The process by which the delivery marginal revenue calculation module extracts the unit-time relaxation revenue value includes: Obtain the dual variable values ​​corresponding to the time window constraints in the linear relaxation model of delivery route planning, denoted as . ; Increase the latest delivery time for the target replenishment task. While keeping the time windows for the remaining tasks unchanged, make partial adjustments to the affected delivery routes to obtain the reduction in total delivery cost after the adjustment relative to the total delivery cost before the adjustment. ,make ; Based on the target replenishment task, the estimated time difference between the store arrival time and the latest delivery time in the current delivery route plan is used. Determine the weighting coefficients , , The preset attenuation coefficient; Will and according to We perform weighted synthesis to obtain the final relaxation gain per unit time. , .

3. The intelligent replenishment and route planning system for community retail according to claim 1, wherein, The process for determining the total relaxation time in the current round in the time window adjustment module includes: Set the base relaxation time ; In the In this round of iterations, the total delivery cost of this round relative to initial total delivery cost The percentage decrease satisfy ; exist Greater than the first threshold At that time, the total duration of this round of relaxation Pick and The smaller value in; exist Less than the second threshold At that time, the total duration of this round of relaxation Pick ; exist Not less than and not greater than hour, .

4. The intelligent replenishment and route planning system for community retail according to claim 1, wherein, Before allocating relaxation time based on the proportion of relaxation benefit value per unit time for each task, the time window adjustment module performs upper limit compression processing on the relaxation benefit value per unit time for each task: Calculate the mean of the relaxation gain per unit time for all tasks. with standard deviation ; For any unit time relaxation gain ,like Then it is compressed into ;otherwise .

5. The intelligent replenishment and route planning system for community retail according to claim 1, wherein, The time window adjustment module includes a product delay coefficient corresponding to the task. The calculation method is as follows: Obtain the normalized value of the remaining shelf life in days for the products associated with this replenishment task. Normalized value of sales fluctuation range Normalized value of stockout loss level ; ,in , , Preset weighting coefficients and satisfying .

6. The intelligent replenishment and route planning system for community retail according to claim 3 or 4, wherein, The process by which the time window adjustment module calculates the delay time for each replenishment task in this round includes: Task Basic delay ,in This is the total duration of this relaxation cycle. For the task The relaxation gain per unit time after upper limit compression. This is the sum of the relaxation gains per unit time for all tasks after upper limit compression. Task The duration of this round's delay ,in For the task The corresponding product's degree of deferral coefficient.

7. The intelligent replenishment and route planning system for community retail according to claim 1, wherein, The preset stopping conditions of the iterative judgment module include: , Set a preset cost stop threshold; The cosine similarity between the delay duration vectors of each task in the current round and the delay duration vectors of each task in the previous round is higher than the preset similarity stopping threshold. ; The iterative judgment module determines that the preset stopping condition is met when both of the above conditions are satisfied simultaneously.

8. The intelligent replenishment and route planning system for community retail according to claim 7, wherein, The preset similarity stopping threshold Based on the total quantity of this round of replenishment tasks Confirmed, the calculation formula is as follows: , For preset adjustment coefficient and , The preset reference number of tasks.

9. The intelligent replenishment and route planning system for community retail according to claim 1, wherein, The calculation process for the initial latest delivery time in the replenishment task generation module includes: For the Each replenishment task corresponds to the current inventory level of the store. Average sales per unit time satisfy ; Initial latest delivery time , Set the preset safety buffer time.

10. The intelligent replenishment and route planning system for community retail according to claim 1, wherein, The replenishment task list generated by the replenishment task generation module also includes the earliest delivery time of each task. The time window adjustment module keeps the earliest delivery time of each task unchanged during the iterative update process, and only delays the update of the latest delivery time.