A method, system, device and storage medium for scheduling machine physical distribution with time window

By optimizing robot logistics transportation scheduling through an improved ant colony algorithm, the problems of poor convergence ability and low optimization efficiency in existing technologies are solved, and more efficient path planning is achieved.

CN115796419BActive Publication Date: 2026-11-06GUANGDONG UNIV OF TECH
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211550677.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-12-05
Publication Date
2026-11-06
Estimated Expiration
2042-12-05

AI Technical Summary

Technical Problem

Existing technologies suffer from poor convergence and low optimization efficiency in robotic logistics transportation scheduling with time windows.

Method used

An improved ant colony algorithm is adopted to optimize path planning by constructing a mathematical model for robot logistics transportation scheduling with time windows, and combining ant path construction, local and global pheromone update rules, adaptive pheromone evaporation coefficient and pheromone rollback mechanism.

Benefits of technology

It improves the global and local search capabilities of path planning, achieving faster convergence speed and better path optimization results.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115796419B_ABST
    Figure CN115796419B_ABST
Patent Text Reader

Abstract

The application discloses a kind of machine figure flow transport scheduling method, system, equipment and storage medium with time window, it is related to robot transport path planning technical field.The method includes: establishing the mathematical model of machine figure flow transport scheduling problem with time window, using improved ant colony algorithm to construct path;The ant colony algorithm includes parameter initialization, let the kth ant start from distribution center node 0, construct a complete path by the kth ant, optimize global distribution path, optimize local distribution path, update global pheromone concentration and limit global pheromone concentration upper and lower limit, calculate adaptive evaporation factor and execute pheromone rollback mechanism, finally output optimal solution, i.e., optimal transport path.Compared with prior art, the present application has good global search capability and local search capability, has faster convergence speed, and can better solve practical problems.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of robot transportation path planning technology, and more specifically, to a robot logistics transportation scheduling method, system equipment, and storage medium with a time window. Background Technology

[0002] Logistics and transportation costs are a significant component of a company's production costs. Reducing these costs can lower operating expenses and improve the company's economic efficiency. Existing commercial applications already show companies using robots for logistics and transportation, optimizing logistics scheduling, and effectively improving transportation efficiency and reducing costs.

[0003] In a transportation network, multiple robots deliver goods to multiple customers, each with specific demand and delivery time windows. Each customer is served by exactly one robot. A distribution center uses multiple identical robots to deliver goods to several customers, each with capacity constraints. Robots depart from the distribution center, deliver goods to customers, and return to the distribution center. This scenario presents a path planning problem: how to allocate delivery tasks to each robot and determine a transportation path for each robot to minimize the total transportation distance.

[0004] Existing technologies have disclosed various methods for solving this path planning problem, such as introducing the concept of time windows and establishing corresponding models, but these methods suffer from problems such as poor convergence ability and low optimization efficiency. Summary of the Invention

[0005] To overcome the shortcomings of poor convergence ability and low optimization efficiency in the prior art, this invention provides a robot logistics transportation scheduling method, system, equipment, and storage medium with a time window.

[0006] To solve the above-mentioned technical problems, the technical solution of the present invention is as follows:

[0007] Firstly, a robot logistics transportation scheduling method with a time window includes the following steps:

[0008] S1. Establish a mathematical model for the robot logistics transportation scheduling problem with time windows; the mathematical model expression is:

[0009]

[0010] st

[0011]

[0012]

[0013]

[0014]

[0015]

[0016]

[0017] start j ≤arive j ≤end j (8)

[0018]

[0019]

[0020] Where D represents transportation cost; C1 represents the cost per robot; VN represents the number of robots used; K is the set of robots owned by the distribution center; N is the set of m customer locations requiring delivery services, N = {1, 2, ..., m}; V = {0} ∪ N, where 0 represents the distribution center; V k Let i represent the set of customers visited by robot k; i and j represent customer IDs. This is a decision variable indicating whether robot k serves customer j after serving customer i; if robot k serves customer j directly after serving customer i. otherwise, This indicates whether customer i is served by robot k; when customer i is served by robot k, otherwise, Q represents the robot's loading capacity constraint; q i Let represent the demand of customer i, and q0 = 0; C ij Indicates the distance between customer i and customer j; ariv j Indicates the time it takes for the robot to arrive at customer j; start j This indicates the earliest service start time allowed by customer j; end j This represents the latest time customer j is allowed to start service; the time window constraint requires the delivery robot to be within the time range [start] j end j The delivery robot must reach customer j within a specified timeframe; capacity constraints require the delivery robot to meet customer j's cargo demand.

[0021] S2. Initialize parameters, set the iteration count t = 1, load the specific data of the distribution center, customers and delivery robots, and set the starting point of all ants to the distribution center node 0;

[0022] S3. The k-th ant starts from distribution center node 0; where k = 1, 2, ..., n; n represents the total number of ants;

[0023] S4. Construct a complete path using the k-th ant, specifically:

[0024] S4-1, Calculate the transfer control factor;

[0025] S4-2. Calculate the next node visited by ant k: For the k-th ant, calculate the next node j to be visited according to equation (11), where k = 1, 2, ..., n:

[0026]

[0027] Where point j is a node that satisfies the capacity and time window constraints and has not been visited by ant k; τ ij Indicates the pheromone concentration along the path from node i to node j; η ij =1 / C ij Let `wait` be the heuristic function, representing the expected degree of an ant's movement from node `i` to node `j`. j =max{(start j -arive j ), h} represents the waiting time of node j or robot; when start j >arive j At that time, wait j Indicates the time the robot needs to wait; when start j <arive j When, it indicates the time that node j needs to wait; when start j =arive j When h is a small positive number, h is used; otherwise h = 0. j =end j -start j This represents the width of the time window for node j; Let represent the set of nodes that ant k can visit after starting from node i, which satisfies both the load capacity and time window constraints; α, β, γ, and δ represent the pheromone importance factor, visibility importance factor, time window width importance factor, and waiting time importance factor, respectively. The probability of selection represents the probability that ant k moves from node i to node j;

[0028] S4-3. Determine if the k-th ant has traversed all nodes: if it has, proceed to step S4-4; otherwise, return to step S4-2.

[0029] S4-4, Calculating the local pheromone increment, executing the pheromone diffusion strategy, and updating the local pheromone, further includes:

[0030] S4-4-1 Calculate the local pheromone increment When the k-th ant completes the current iteration, pheromone is released along the path traversed by ant k. For nodes i = 1, 2, ..., m; j = 1, 2, ..., m, i ≠ j, the pheromone increment along the path traversed by the ant is updated according to equation (12):

[0031]

[0032] Among them, L k This is the total length of the path taken by the k-th ant in this iteration; Q1 is a preset positive constant.

[0033] S4-4-2, Implement pheromone diffusion strategy;

[0034] S4-4-3. Update the local pheromone concentration. For nodes i = 1, 2, ..., m; j = 1, 2, ..., m, i ≠ j, update the local pheromone concentration between nodes i and j according to equation (13).

[0035]

[0036] Where, ρ L Represents the local pheromone evaporation factor, 0 < ρ L <1;

[0037] S4-5. Determine whether all ants in the current generation have completed the search process: if yes, proceed to step S5; otherwise, return to step S3.

[0038] S5. Optimize global delivery routes. Specific steps include:

[0039] S5-1. Compare the optimal delivery path found by the current ants with the current global optimal delivery path, and select the one with the smaller objective function value as the current global optimal delivery path.

[0040] S5-2. Use the 2-opt method to optimize the current global optimal delivery path. Repeat the following operation n1 times for the current global optimal delivery path: randomly select two non-connected nodes in the path, flip the path between the two nodes to obtain a new path. If the path obtained after flipping is better than the current global optimal delivery path, then update the current global optimal delivery path.

[0041] S5-3. Use a swapping strategy to optimize the global optimal delivery path. Repeat the following operation n2 times for the current global optimal delivery path: randomly select two nodes in the path and swap their positions. If the swapped path is better than the current global optimal delivery path, then update the current global optimal delivery path.

[0042] S6. Optimize local delivery routes, including the following steps:

[0043] S6-1 Decoding: Decode the current global optimal delivery path to obtain multiple local delivery paths starting from distribution center 0. Specifically, add the first node of the current global optimal delivery path to the first local delivery path, check whether this path meets the load capacity constraint and time window constraint, and if the constraint is found to be met after checking, add the second node of the current global optimal delivery path to the first local delivery path.

[0044] Repeat the above operation until the constraint conditions are not met, then the local delivery route 1 is considered to have been decoded.

[0045] Similarly, continue decoding the remaining nodes of the current global optimal delivery path to obtain the remaining local delivery paths;

[0046] S6-2. Optimize each local delivery path using the 2-opt method. Repeat the following operation n3 times for each local delivery path: randomly select two non-connected nodes in the path, flip the path between the two nodes to obtain a new path. If the path obtained after the flip is better than the local delivery path, then update the local delivery path.

[0047] S6-3. Optimize each local delivery path using a swapping strategy. Repeat the following operation n4 times for each local delivery path: randomly select two nodes in the path and swap their positions. If the swapped path is better than the local delivery path, then update the local delivery path.

[0048] S6-4, Encoding: Reconnect multiple local delivery routes into a complete delivery route in the order of decoding in step S6-1, and update the current global optimal delivery route;

[0049] S7. Update global pheromone concentration and limit the upper and lower limits of global pheromone concentration, specifically including:

[0050] S7-1, Update global pheromone concentration, further including:

[0051] S7-1-1, Calculate D, the transportation cost of all ants in this iteration. mean D mean The expression is as shown in equation (14):

[0052]

[0053] Among them, D k This represents the transportation cost of the k-th ant in this iteration;

[0054] S7-1-2, Calculation in, This represents the pheromone increment along the path traversed by the optimal ant, which is the ant with the lowest transportation cost in this generation.

[0055] S7-1-3, Calculation in, This represents the pheromone increment along the path of an ant whose transportation cost is greater than that of the best ant in this generation, but less than the average transportation cost.

[0056] S7-1-4, Calculation in, This represents the pheromone increment along the path of ants whose transportation costs are greater than the average transportation cost of this generation.

[0057] S7-1-5, Calculate τ ij (t+1), for nodes i = 1, 2, ..., m; j = 1, 2, ..., m; i ≠ j, update the pheromone concentration τ between nodes i and j according to equation (15). ij (t+1):

[0058]

[0059] Where, ρ G (t) is the global adaptive volatility factor of the t-th generation;

[0060] S7-2. Limit the upper and lower limits of global pheromone concentration, and limit the magnitude of global pheromone concentration according to formula (16):

[0061]

[0062] Where, τ min τ represents the minimum global pheromone concentration. max This represents the maximum global pheromone concentration.

[0063] S8. Calculate the adaptive volatility factor;

[0064] S9. Execute the pheromone rollback mechanism. When the algorithm gets stuck in a local optimum, the pheromone rollback mechanism is triggered to roll back the pheromone to the previous value. The pheromone rollback mechanism is shown in Equation (17):

[0065]

[0066] Where R_max is the number of times the maximum continuous cost remains constant;

[0067] S10. Determine if the number of iterations has reached the maximum: If the number of iterations has reached the maximum, output the current solution and end the run; otherwise, update the number of iterations t = t + 1 and return to step S3.

[0068] Secondly, a robot logistics transportation scheduling system with a time window, applying the robot logistics transportation scheduling method with a time window proposed in the first aspect, includes:

[0069] The data acquisition module is used to acquire data information from the distribution center, customers, and delivery robots;

[0070] The model building module is used to construct a mathematical model for the robot logistics transportation scheduling problem with a time window, with the objective function of minimizing transportation costs.

[0071] The calculation module is used to solve the mathematical model using the ant colony algorithm, with the distribution center as the starting node; the ant colony algorithm includes constructing ant paths, calculating the next node visited by the ants, optimizing the global delivery path, optimizing the local delivery path, updating the global pheromone concentration and limiting the upper and lower limits of the global pheromone concentration, calculating the global adaptive volatile factor, and executing the pheromone rollback mechanism.

[0072] The output module is used to determine whether the current iteration count has reached the preset number. If so, it outputs the current solution; otherwise, it returns to the calculation module to execute a new round of iteration instructions.

[0073] Thirdly, a computer device includes a memory and a processor, the memory storing a computer program, the processor executing the computer program to implement the method as described in the first aspect.

[0074] Fourthly, a computer storage medium storing instructions that, when executed on a computer, cause the computer to perform the method as described in the first aspect.

[0075] Compared with existing technologies, the beneficial effects of this invention are as follows: Addressing the problems of poor convergence and low optimization efficiency in existing methods for solving robot logistics transportation scheduling problems with time windows, this invention proposes an improved ant colony algorithm, including an improved global pheromone update rule, an improved local pheromone diffusion strategy, and an adaptive pheromone evaporation coefficient. The method described in this invention possesses better global and local search capabilities, faster convergence speed, and can effectively solve practical problems. Attached Figure Description

[0076] Figure 1This is a flowchart of the robot logistics transportation scheduling method with time windows described in Example 1;

[0077] Figure 2 This is a schematic diagram of the optimal delivery route for Example 2;

[0078] Figure 3 This is an architecture diagram of the robot logistics transportation scheduling system with time windows described in Example 3. Detailed Implementation

[0079] The accompanying drawings are for illustrative purposes only and should not be construed as limiting the scope of this patent.

[0080] To better illustrate this embodiment, some parts in the accompanying drawings may be omitted, enlarged, or reduced, and do not represent the actual product dimensions.

[0081] It will be understood by those skilled in the art that certain well-known structures and their descriptions may be omitted in the accompanying drawings.

[0082] The technical solution of the present invention will be further described below with reference to the accompanying drawings and embodiments.

[0083] Example 1

[0084] This embodiment proposes a robot logistics transportation scheduling method with a time window, see reference. Figure 1 ,include:

[0085] S1. Establish a mathematical model for the robot logistics transportation scheduling problem with time windows; the mathematical model expression is:

[0086]

[0087] st

[0088]

[0089]

[0090]

[0091]

[0092]

[0093]

[0094] start j ≤arive j ≤end j (8)

[0095]

[0096]

[0097] Where D represents transportation cost; C1 represents the cost per robot; VN represents the number of robots used; K is the set of robots owned by the distribution center; N is the set of m customer locations requiring delivery services, N = {1, 2, ..., m}; V = {0} ∪ N, where 0 represents the distribution center; V k Let i represent the set of customers visited by robot k; i and j represent customer IDs. This is a decision variable indicating whether robot k serves customer j after serving customer i; if robot k serves customer j directly after serving customer i. otherwise, This indicates whether customer i is served by robot k; when customer i is served by robot k, otherwise, Q represents the robot's loading capacity constraint; q i Let represent the demand of customer i, and q0 = 0; C ij Indicates the distance between customer i and customer j; ariv j Indicates the time it takes for the robot to arrive at customer j; start j This indicates the earliest service start time allowed by customer j; end j This represents the latest time customer j is allowed to start service; the time window constraint requires the delivery robot to be within the time range [start] j end j The delivery robot must reach customer j within a specified timeframe; capacity constraints require the delivery robot to meet customer j's cargo demand.

[0098] S2. Initialize parameters, set the iteration count t = 1, load the specific data of the distribution center, customers and delivery robots, and set the starting point of all ants to the distribution center node 0;

[0099] S3. The k-th ant starts from distribution center node 0; where k = 1, 2, ..., n; n represents the total number of ants;

[0100] S4. Construct a complete path using the k-th ant, specifically:

[0101] S4-1, Calculate the transfer control factor;

[0102] S4-2. Calculate the next node visited by ant k: For the k-th ant, calculate the next node j to be visited according to equation (11), where k = 1, 2, ..., n:

[0103]

[0104] Where point j is a node that satisfies the capacity and time window constraints and has not been visited by ant k; τ ij Indicates the pheromone concentration along the path from node i to node j; η ij =1 / C ij Let `wait` be the heuristic function, representing the expected degree of an ant's movement from node `i` to node `j`. j =max{(start j -arive j ), h} represents the waiting time of node j or robot; when start j >arive j At that time, wait j Indicates the time the robot needs to wait; when start j <arive j When, it indicates the time that node j needs to wait; when start j =arive j When h is a small positive number, h is used; otherwise h = 0. j =end j -start j This represents the width of the time window for node j; Let represent the set of nodes that ant k can visit after starting from node i, which satisfies both the load capacity and time window constraints; α, β, γ, and δ represent the pheromone importance factor, visibility importance factor, time window width importance factor, and waiting time importance factor, respectively. The probability of selection represents the probability that ant k moves from node i to node j;

[0105] S4-3. Determine if the k-th ant has traversed all nodes: if it has, proceed to step S4-4; otherwise, return to step S4-2.

[0106] S4-4, Calculating the local pheromone increment, executing the pheromone diffusion strategy, and updating the local pheromone, further includes:

[0107] S4-4-1 Calculate the local pheromone increment When the k-th ant completes the current iteration, pheromone is released along the path traversed by ant k. For nodes i = 1, 2, ..., m; j = 1, 2, ..., m, i ≠ j, the pheromone increment along the path traversed by the ant is updated according to equation (12):

[0108]

[0109] Among them, L k This is the total length of the path taken by the k-th ant in this iteration; Q1 is a preset positive constant.

[0110] S4-4-2, Implement pheromone diffusion strategy;

[0111] S4-4-3. Update the local pheromone concentration. For nodes i = 1, 2, ..., m; j = 1, 2, ..., m, i ≠ j, update the local pheromone concentration between nodes i and j according to equation (13).

[0112]

[0113] Where, ρ L Represents the local pheromone evaporation factor, 0 < ρ L <1;

[0114] S4-5. Determine whether all ants in the current generation have completed the search process: if yes, proceed to step S5; otherwise, return to step S3.

[0115] S5. Optimize global delivery routes. Specific steps include:

[0116] S5-1. Compare the optimal delivery path found by the current ants with the current global optimal delivery path, and select the one with the smaller objective function value as the current global optimal delivery path.

[0117] S5-2. Use the 2-opt method to optimize the current global optimal delivery path. Repeat the following operation n1 times for the current global optimal delivery path: randomly select two non-connected nodes in the path, flip the path between the two nodes to obtain a new path. If the path obtained after flipping is better than the current global optimal delivery path, then update the current global optimal delivery path.

[0118] S5-3. Use a swapping strategy to optimize the global optimal delivery path. Repeat the following operation n2 times for the current global optimal delivery path: randomly select two nodes in the path and swap their positions. If the swapped path is better than the current global optimal delivery path, then update the current global optimal delivery path.

[0119] S6. Optimize local delivery routes, including the following steps:

[0120] S6-1 Decoding: Decode the current global optimal delivery path to obtain multiple local delivery paths starting from distribution center 0. Specifically, add the first node of the current global optimal delivery path to the first local delivery path, check whether this path meets the load capacity constraint and time window constraint, and if the constraint is found to be met after checking, add the second node of the current global optimal delivery path to the first local delivery path.

[0121] Repeat the above operation until the constraint conditions are not met, then the local delivery route 1 is considered to have been decoded.

[0122] Similarly, continue decoding the remaining nodes of the current global optimal delivery path to obtain the remaining local delivery paths;

[0123] S6-2. Optimize each local delivery path using the 2-opt method. Repeat the following operation n3 times for each local delivery path: randomly select two non-connected nodes in the path, flip the path between the two nodes to obtain a new path. If the path obtained after the flip is better than the local delivery path, then update the local delivery path.

[0124] S6-3. Optimize each local delivery path using a swapping strategy. Repeat the following operation n4 times for each local delivery path: randomly select two nodes in the path and swap their positions. If the swapped path is better than the local delivery path, then update the local delivery path.

[0125] S6-4, Encoding: Reconnect multiple local delivery routes into a complete delivery route in the order of decoding in step S6-1, and update the current global optimal delivery route;

[0126] S7. Update global pheromone concentration and limit the upper and lower limits of global pheromone concentration, specifically including:

[0127] S7-1, Update global pheromone concentration, further including:

[0128] S7-1-1, Calculate D, the transportation cost of all ants in this iteration. mean D mean The expression is as shown in equation (14):

[0129]

[0130] Among them, D k This represents the transportation cost of the k-th ant in this iteration;

[0131] S7-1-2, Calculation in, This represents the pheromone increment along the path traversed by the optimal ant, which is the ant with the lowest transportation cost in this generation.

[0132] S7-1-3, Calculation in, This represents the pheromone increment along the path of an ant whose transportation cost is greater than that of the best ant in this generation, but less than the average transportation cost.

[0133] S7-1-4, Calculation in, This represents the pheromone increment along the path of ants whose transportation costs are greater than the average transportation cost of this generation.

[0134] S7-1-5, Calculate τ ij (t+1), for nodes i = 1, 2, ..., m; j = 1, 2, ..., m; i ≠ j, update the pheromone concentration τ between nodes i and j according to equation (15). ij (t+1):

[0135]

[0136] Where, ρ G (t) is the global adaptive volatility factor of the t-th generation;

[0137] S7-2. Limit the upper and lower limits of global pheromone concentration, and limit the magnitude of global pheromone concentration according to formula (16):

[0138]

[0139] Where, τ min τ represents the minimum global pheromone concentration. max This represents the maximum global pheromone concentration.

[0140] S8. Calculate the adaptive volatility factor;

[0141] S9. Execute the pheromone rollback mechanism. When the algorithm gets stuck in a local optimum, the pheromone rollback mechanism is triggered to roll back the pheromone to its previous value. The pheromone rollback mechanism is shown in equation (17):

[0142]

[0143] Where R_max is the number of times the maximum continuous cost remains constant;

[0144] S10. Determine if the number of iterations has reached the maximum: If the number of iterations has reached the maximum, output the current solution and end the run; otherwise, update the number of iterations t = t + 1 and return to step S3.

[0145] Compared with existing technologies, the method described in this embodiment has better global search and local search capabilities, faster convergence speed, and can better and more timely solve path planning problems.

[0146] As a non-limiting example, the robot includes, but is not limited to, vehicles and aircraft.

[0147] In a preferred embodiment, the expression for the transfer control factor r0 in step S4-1 is:

[0148]

[0149] In a preferred embodiment, the execution of the pheromone diffusion strategy in step S4-4-2 further includes:

[0150] When the k-th ant completes the current iteration, pheromone is diffused to the adjacent paths of the path traversed by ant k, for nodes i∈M1, j∈M i {i}, update the pheromone increment of the adjacent paths of the path traversed by the ant according to equation (19):

[0151]

[0152] Where M1 represents the set of nodes along the path ant k traverses; r1 represents the range of pheromone diffusion by all ants at any node, r1 > 0; M i Let m represent the set of all nodes within a radius r1 centered at node i; i Describe set M i Number of internal elements; Let r1 be the average distance between node i and all other nodes, with node i as the center and r1 as the radius.

[0153] In a preferred embodiment, the calculation in step S7-1-2 Further includes:

[0154] The ant with the lowest transportation cost in this generation is called the optimal ant. The pheromone increment along the path traversed by the optimal ant is then updated according to equation (20):

[0155]

[0156] Where λ1 is a constant greater than 0; T is the maximum number of iterations; yes A uniformly distributed random number; D bestroute D represents the transportation cost of the currently globally optimal path; nowbestroute This represents the transportation cost of the optimal route obtained in this iteration.

[0157] In a preferred embodiment, the calculation in step S7-1-3 Further includes:

[0158] For ants whose transportation cost is greater than that of the best ant in this generation, but less than the average transportation cost, the pheromone increment along the path traversed by the ant is updated according to equation (21).

[0159]

[0160] Wherein, λ2 is a preset constant greater than 0.

[0161] In a preferred embodiment, the calculation in step S7-1-4 Further includes:

[0162] For ants whose transportation costs are greater than the average transportation cost of this generation, the pheromone increment along the path traversed by the ant is updated according to equation (22).

[0163]

[0164] Wherein, λ3 is a preset constant greater than 0.

[0165] In a preferred embodiment, the calculation of the adaptive volatility factor in step S8 further includes: the (t+1)th generation global adaptive volatility factor ρ G (t+1) is calculated according to formula (23):

[0166]

[0167] Where λ is the pheromone evaporation rate coefficient, 0 < λ < 1; ρ max For ρ G The maximum value of ρ; min For ρ G The minimum value.

[0168] Example 2

[0169] To demonstrate the superiority of the robot logistics transportation scheduling method with time window proposed in Example 1, this example verifies the robot logistics transportation scheduling method with time window proposed in Example 1.

[0170] For the robot logistics transportation scheduling problem with a maximum of 25 transport vehicles, a maximum load of 200 kg per vehicle, and 50 customer points with time windows, the method described in Example 1 is used to solve it.

[0171] In this embodiment, the information such as the distribution center, customer coordinates, demand, left time window, right time window, and service time is shown in Table 1.

[0172] Table 1 Customer Information Summary

[0173]

[0174]

[0175]

[0176]

[0177] A robot logistics transportation scheduling method with a time window includes the following steps:

[0178] S1. Establish a mathematical model for the robot logistics transportation scheduling problem with time windows:

[0179]

[0180] st

[0181]

[0182]

[0183]

[0184]

[0185]

[0186]

[0187] start j ≤arive j ≤end j (8)

[0188]

[0189]

[0190] Where D represents transportation cost; C1 = 1200 represents the cost per vehicle; VN (unit: vehicles) represents the number of vehicles used; K = 25 (unit: vehicles) represents the number of vehicles owned by the distribution center; N is the set of m = 50 customer points that need delivery services, N = {1, 2, ..., m}; V = {0} ∪ N, where 0 represents the distribution center;

[0191] V k Let i represent the set of customers visited by vehicle k; i, j represent customer IDs. This is a decision variable indicating whether vehicle k serves customer j after serving customer i; if vehicle k serves customer j directly after serving customer i. otherwise, This indicates whether customer i is served by vehicle k; when customer i is served by vehicle k... otherwise, Q = 200 (unit: kg) represents the vehicle's loading capacity constraint;

[0192] q i (Unit: kg) represents the demand of customer i, and q0 = 0; C ijIndicates the distance between customer i and customer j; ariv j (Unit: minutes) indicates the time it takes for the vehicle to arrive at customer j; start j (Unit: minutes) indicates the earliest service start time allowed by customer j; end j (Unit: minutes) represents the latest time customer j is allowed to start service; the time window constraint requires the delivery vehicle to be within the time range [start] j end j Customer j arrives within [time period].

[0193] The capacity constraint requires that the delivery vehicles must meet the cargo demand of customer j.

[0194] S2. Initialize parameters. Let the iteration number t = 1, load the specific data of the distribution center, customers and delivery vehicles, and set the starting point of all ants to the distribution center node 0.

[0195] S3. The kth (k = 1, 2, ..., n) ant starts from the distribution center node 0.

[0196] Where n = 20 is the total number of ants.

[0197] S4. The k-th ant constructs a complete path. Specifically, this includes:

[0198] S4-1. Calculate the transfer control factor. Calculate the control transfer factor r0 using the following formula:

[0199]

[0200] S4-2. Calculate the next node visited by ant k. For the k-th (k = 1, 2, ..., n) ant, calculate the next node j visited according to equation (11):

[0201]

[0202] Among them, point j must be a node that satisfies the capacity and time window constraints and has not been visited by ant k; τ ij Indicates the pheromone concentration along the path from node i to node j; η ij =1 / C ij Let `wait` be the heuristic function, representing the expected degree of an ant's movement from node `i` to node `j`. j =max{(start j -arive j ), h} represents the waiting time of node j or vehicle; when start j >arive j At that time, wait j Indicates the waiting time for the vehicle; when startj <arive j When, it indicates the time that node j needs to wait; when start j =arive j When h is a small positive number, h is used; otherwise h = 0. j =end j -start j The time window width of node j is represented by α = 1, β = 3, γ = 2, and δ = 3, which represent the pheromone importance factor, visibility importance factor, time window width importance factor, and waiting time importance factor, respectively. Let be the probability of selection, representing the probability that ant k moves from node i to node j.

[0203] S4-3. Determine whether the k-th ant has traversed all nodes. If it has, proceed to step S4-4; otherwise, proceed to step S4-2.

[0204] S4-4, Calculate the local pheromone increment, execute the pheromone diffusion strategy, and update the local pheromone. Further includes:

[0205] S4-4-1 Calculate the local pheromone increment When the k-th ant completes the current iteration, pheromone is released along the path traversed by ant k. For nodes i = 1, 2, ..., m; j = 1, 2, ..., m, i ≠ j, the pheromone increment along the path traversed by the ant is updated according to equation (12):

[0206]

[0207] Among them, L k Let Q1 be the total length of the path traveled by the k-th ant in this iteration. Q1 = 50.

[0208] S4-4-2. Execute the pheromone diffusion strategy. When the k-th ant completes the current iteration, diffuse pheromone onto the adjacent paths of the path traversed by ant k, for nodes i∈M1, j∈M1. i {i}, update the pheromone increment of the adjacent paths of the path traversed by the ant according to equation (13):

[0209]

[0210] Where M1 represents the set of nodes along the path ant k traverses; r1 = 15 represents the range within which all ants spread pheromones at any node; M i Let m represent the set of all nodes within a radius r1 centered at node i; i Describe set M i Number of internal elements; Let r1 be the average distance between node i and all other nodes, with node i as the center and r1 as the radius.

[0211] S4-4-3. Update local pheromones. For nodes i = 1, 2, ..., m; j = 1, 2, ..., m, i ≠ j, update the local pheromone concentration between nodes i and j using the following formula.

[0212]

[0213] Where, ρ L =0.3 is the local pheromone evaporation factor.

[0214] S4-5. Determine whether all ants in the current generation have completed the search process. If yes, proceed to step S5; otherwise, proceed to step S3.

[0215] S5. Optimize global delivery routes. Specific steps include:

[0216] S5-1. Compare the optimal delivery path found by the current ants with the current global optimal delivery path, and take the one with the smaller objective function value as the current global optimal delivery path.

[0217] S5-2. Optimize the current globally optimal delivery path using the 2-opt method. Repeat the following operation n1 = 30 times for the current globally optimal delivery path: randomly select two non-connected nodes in the path, flip the path between the two nodes to obtain a new path, and if the path obtained after flipping is better than the current globally optimal delivery path, then update the current globally optimal delivery path.

[0218] S5-3. Optimize the global optimal delivery path using a swap strategy. Repeat the following operation n² = 35 times for the current global optimal delivery path: randomly select two nodes in the path, swap their positions, and if the swapped path is better than the current global optimal delivery path, then update the current global optimal delivery path.

[0219] S6. Optimize local delivery routes. Specific steps include:

[0220] S6-1, Decoding. The current globally optimal delivery path is decoded to obtain multiple local delivery paths originating from distribution center 0. Specifically, the first node of the current globally optimal delivery path is added to the first local delivery path. This path is then checked to see if it satisfies the load capacity and time window constraints. If the constraints are satisfied, the second node of the current globally optimal delivery path is added to the first local delivery path. This process is repeated until the constraints are not satisfied, at which point local delivery path 1 is decoded. Similarly, the remaining nodes of the current globally optimal delivery path are decoded sequentially to obtain the remaining local delivery paths.

[0221] S6-2. Optimize each local delivery route using the 2-opt method. Repeat the following operation n3 = 40 times for each local delivery route: randomly select two unconnected nodes in the route, reverse the path between the two nodes to obtain a new path, and if the reversed path is better than the local delivery route, then update the local delivery route.

[0222] S6-3. Optimize each local delivery route using a swap strategy. Repeat the following operation n4 = 30 times for each local delivery route: randomly select two nodes in the route, swap the positions of the two nodes, and if the swapped route is better than the local delivery route, then update the local delivery route.

[0223] S6-4. Encoding. Reconnect multiple local delivery routes into a complete delivery route in the order of decoding in step S6-1, and update the current global optimal delivery route.

[0224] S7. Update global pheromone concentration and limit the upper and lower limits of global pheromone concentration. Specifically, this includes:

[0225] S7-1, Update global pheromone concentration. Further includes:

[0226] S7-1-1, Calculate D, the transportation cost of all ants in this iteration. mean D mean Calculate according to formula (14):

[0227]

[0228] Among them, D k This represents the transportation cost of the k-th ant in this iteration.

[0229] S7-1-2, Calculation The ant with the lowest transportation cost in this generation is called the optimal ant. The pheromone increment along the path traversed by the optimal ant is updated according to the following formula:

[0230]

[0231] Where λ1 = 1.5; T = 50 is the maximum number of iterations; yes A uniformly distributed random number; D bestroute D represents the transportation cost of the currently globally optimal path. nowbestroute This represents the transportation cost of the optimal route obtained in this iteration.

[0232] S7-1-3, Calculation For ants whose transportation cost is greater than that of the best ant in this generation, but less than the average transportation cost, the pheromone increment along the path traversed by the ant is updated using the following formula: The k-th ant visits node j from node i.

[0233] Where λ2 = 0.8.

[0234] S7-1-4, Calculation For ants whose transportation costs are greater than the average transportation cost of this generation, the pheromone increment along the path traversed by the ant is updated using the following formula:

[0235] The k-th ant visits node j from node i.

[0236] Where λ3 = 0.5.

[0237] S7-1-5, Calculate τ ij (t+1). For nodes i = 1, 2, ..., m; j = 1, 2, ..., m, i ≠ j, update the pheromone concentration τ between nodes i and j according to equation (15). ij (t+1):

[0238]

[0239] Where, ρ G (t) is the global adaptive volatility factor for the t-th generation.

[0240] S7-2. Limit the upper and lower limits of global pheromone concentration. Limit the magnitude of global pheromone concentration according to equation (16):

[0241]

[0242] Where, τ min =0.1 represents the minimum global pheromone concentration; τ max =10 represents the maximum global pheromone concentration.

[0243] S8. Calculate the global adaptive volatility factor. Calculate the adaptive volatility coefficient for generation t+1 using the following formula:

[0244]

[0245] Where λ = 0.5 is the pheromone evaporation rate coefficient; ρ max =0.7; ρ min =0.3.

[0246] S9. Execute the pheromone rollback mechanism. When the algorithm gets stuck in a local optimum, the pheromone rollback mechanism is triggered to roll back the pheromone to its previous value. The pheromone rollback mechanism is shown in equation (17):

[0247]

[0248] Where R_max = 20 is the number of times the maximum continuous cost remains constant.

[0249] S10. Determine if the number of iterations has reached the maximum. If the number of iterations has reached the maximum, output the current solution and end the run; otherwise, set the number of iterations t = t + 1 and go to step S3.

[0250] Finally, the optimal delivery route output in this embodiment is shown in Table 2. Figure 2 As shown, the total length of the optimal path is 432.2 km.

[0251] Table 2 Optimal Delivery Route

[0252] Delivery vehicle number Delivery route 1 0→43→42→41→40→44→45→46→48→50→47→49→0 2 0→32→33→31→35→37→38→39→36→34→0 3 0→27→25→29→30→28→26→23→22→21→1→0 4 0→5→3→7→8→10→11→9→6→4→2→0 5 0→13→17→18→19→15→16→14→12→0 6 0→24→20→0

[0253] Example 3

[0254] This embodiment proposes a robot logistics transportation scheduling system with a time window, see reference. Figure 3 The robot logistics transportation scheduling method with time windows described in Example 1 includes:

[0255] The data acquisition module is used to acquire data information from the distribution center, customers, and delivery robots;

[0256] The model building module is used to construct a mathematical model for the robot logistics transportation scheduling problem with a time window, with the objective function of minimizing transportation costs.

[0257] The calculation module is used to solve the mathematical model using the ant colony algorithm, with the distribution center as the starting node; the ant colony algorithm includes constructing ant paths, calculating the next node visited by the ants, optimizing the global delivery path, optimizing the local delivery path, updating the global pheromone concentration and limiting the upper and lower limits of the global pheromone concentration, calculating the global adaptive volatile factor, and executing the pheromone rollback mechanism.

[0258] The output module is used to determine whether the current iteration count has reached the preset number. If so, it outputs the current solution; otherwise, it returns to the calculation module to execute a new round of iteration instructions.

[0259] Example 4

[0260] This embodiment proposes a computer device, including a memory and a processor. The memory stores a computer program, and the processor executes the computer program to implement the robot logistics transportation scheduling method with time window described in Embodiment 1.

[0261] Example 5

[0262] This embodiment proposes a computer storage medium storing instructions. When these instructions are executed on a computer, the computer performs a robot logistics transportation scheduling method with a time window as described in Embodiment 1.

[0263] The same or similar labels correspond to the same or similar parts;

[0264] The terms used to describe positional relationships in the accompanying drawings are for illustrative purposes only and should not be construed as limiting this patent.

[0265] Obviously, the above embodiments of the present invention are merely examples for clearly illustrating the present invention, and are not intended to limit the implementation of the present invention. Those skilled in the art can make other variations or modifications based on the above description, including but not limited to applying the method to vehicles, flying robots, etc. It is neither necessary nor possible to exhaustively describe all embodiments here. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention should be included within the scope of protection of the claims of the present invention.

Claims

1. A robot logistics transportation scheduling method with a time window, characterized in that, Includes the following steps: S1. Establish a mathematical model for the robot logistics transportation scheduling problem with time windows; the mathematical model expression is: (1) st (2) (3) (4) (5) (6) (7) (8) (9) (10) in, Indicates transportation costs; This indicates the cost per robot. Indicates the number of robots used; A collection of robots owned by the distribution center; For those who need delivery services A collection of customer points ; 0 indicates a distribution center; Represents robots A collection of visiting customers; , Indicates the customer number; It is a decision variable, representing the robot. Serving customers Will you serve customers in the future? When the robot After serving the customer Then directly serve customers hour, ;otherwise, ; Indicates customer Was it by a robot? Service; when customers By robots During service, ;otherwise, ; This indicates the robot's loading capacity constraints; Indicates customer The demand, and ; Indicates from the customer With customers The distance between them; Indicates that the robot has arrived at the customer's location. Time; Indicates customer The earliest permitted start time for service; Indicates customer The latest allowed start time for service; time window constraints require delivery robots to be within the specified time frame. Customers reach within Capacity constraints require delivery robots to meet customer demand. The demand for goods; S2. Initialize parameters, setting the iteration count. Load the specific data of the distribution center, customers and delivery robots, and set the starting point of all ants to the distribution center node 0; S3, No. k Only one ant starts from node 0 of the distribution center; among them, ; n This indicates the total number of ants; S4, by the first Only one ant constructs a complete path, specifically: S4-1 Calculate the transfer control factor r 0; S4-2, Calculating Ants The next node to visit: for the first For each ant, calculate the next node to be visited according to equation (11). ,in, : in, r This represents the random number generated in real time for each node selection decision during the algorithm's execution. The point satisfies the capacity and time window constraints and is not ant-controlled. Visited nodes; Represents a node To the node The concentration of pheromones along the path; Represents a node To the node The concentration of pheromones along the path; Let be a heuristic function, representing the ant's path from node 1. Transfer to node The level of expectation; This indicates that the ant starts from the node. Transfer to node The level of expectation; Represents a node The corresponding waiting time will be set when hour, This indicates the time the robot needs to wait, when hour, Represents a node The waiting time, when hour, It should be a small positive number, otherwise ; Represents a node The corresponding waiting time is calculated in the same way as... same; Represents a node Time window width; Represents a node Time window width; Ants From node The set of nodes that can be accessed after departure, which satisfies both load capacity and time window constraints; , , , These represent the importance factors of pheromones, visibility, time window width, and waiting time, respectively. To select the probability, let's say the ant... From node Move to node The probability of; S4-3, Determine the first Check if the ant has traversed all nodes: if so, proceed to step S4-4; otherwise, return to step S4-2. S4-4, Calculating the local pheromone increment, executing the pheromone diffusion strategy, and updating the local pheromone, further includes: S4-4-1 Calculate the local pheromone increment When the first When an ant completes the current iteration, for the ant The path traversed releases pheromones, affecting the nodes. ; Then update the pheromone increment along the path traversed by the ant according to equation (12): (12) in, For the first iteration The total length of the path traveled by the ants; It is a preset positive constant; S4-4-2, Implement pheromone diffusion strategy; S4-4-3, Update local pheromones for nodes. ; Update the computing nodes according to formula (13) , Local pheromone concentrations between : (13) in, Indicates the local pheromone volatile factor. ; This represents the pheromone increment of adjacent paths along the path traversed by the ant; S4-5. Determine whether all ants in the current generation have completed the search process: if yes, proceed to step S5; otherwise, return to step S3. S5. Optimize global delivery routes. Specific steps include: S5-1. Compare the optimal delivery path found by the current ants with the current global optimal delivery path, and select the one with the smaller objective function value as the current global optimal delivery path. S5-2. Optimize the current globally optimal delivery path using the 2-opt method, repeating the process for the current globally optimal delivery path. The following operation is performed: randomly select two unconnected nodes in the path, flip the path between the two nodes to obtain a new path, and if the path obtained after flipping is better than the current global optimal delivery path, then update the current global optimal delivery path. S5-3. Optimize the globally optimal delivery path using a swapping strategy, repeating the current globally optimal delivery path... The following operation is performed: randomly select two nodes in the path, swap the positions of the two nodes, and if the swapped path is better than the current global optimal delivery path, then update the current global optimal delivery path. S6. Optimize local delivery routes, including the following steps: S6-1 Decoding: Decode the current global optimal delivery path to obtain multiple local delivery paths starting from distribution center 0. Specifically, add the first node of the current global optimal delivery path to the first local delivery path, check whether this path meets the load capacity constraint and time window constraint, and if the constraint is found to be met after checking, add the second node of the current global optimal delivery path to the first local delivery path. Repeat the above operation until the constraint conditions are not met, then the local delivery route 1 is considered to have been decoded. Similarly, continue decoding the remaining nodes of the current global optimal delivery path to obtain the remaining local delivery paths; S6-2. Optimize each local delivery route using the 2-opt method, repeating the process for each local delivery route. The following operation is performed: randomly select two unconnected nodes in the path, flip the path between the two nodes to obtain a new path, and if the path obtained after the flip is better than the local delivery path, then update the local delivery path. S6-3. Optimize each local delivery route using a swapping strategy, repeating the process for each local delivery route. The following operation is performed: randomly select two nodes in the path, swap the positions of the two nodes, and if the swapped path is better than the local delivery path, then update the local delivery path. S6-4, Encoding: Reconnect multiple local delivery routes into a complete delivery route in the order of decoding in step S6-1, and update the current global optimal delivery route; S7. Update global pheromone concentration and limit the upper and lower limits of global pheromone concentration, specifically including: S7-1, Update global pheromone concentration, further including: S7-1-1 Calculate the transportation cost of all ants in this iteration. , The expression is as shown in equation (14): (14) in, Indicates the number of iterations in this iteration. The transportation cost of just one ant; S7-1-2, Calculation ;in, This represents the pheromone increment along the path traversed by the optimal ant, which is the ant with the lowest transportation cost in this generation. S7-1-3, Calculation ;in, This represents the pheromone increment along the path of an ant whose transportation cost is greater than that of the best ant in this generation, but less than the average transportation cost. S7-1-4, Calculation ;in, This represents the pheromone increment along the path of ants whose transportation costs are greater than the average transportation cost of this generation. S7-1-5, Calculation For nodes ; ; Update the computing nodes according to formula (15) , Pheromones concentration between : (15) in, For the first Globally adaptive volatile factor; S7-2. Limit the upper and lower limits of global pheromone concentration, and limit the magnitude of global pheromone concentration according to formula (16): (16) in, This represents the minimum global pheromone concentration. This represents the maximum global pheromone concentration. S8. Calculate the adaptive volatility factor; S9. Execute the pheromone rollback mechanism. When the algorithm gets stuck in a local optimum, the pheromone rollback mechanism is triggered to roll back the pheromone to the previous value. The pheromone rollback mechanism is shown in Equation (17): (17) in, For the number of consecutive cycles where the maximum continuous cost remains constant; S10. Determine if the iteration count has reached the maximum: If the iteration count has reached the maximum, output the current solution and terminate the run; otherwise, update the iteration count. Return to step S3.

2. The robot logistics transportation scheduling method with time window according to claim 1, characterized in that, In step S4-1, the control factor is transferred. The expression is: (18)。 3. The robot logistics transportation scheduling method with time window according to claim 1, characterized in that, The execution of the pheromone diffusion strategy in step S4-4-2 further includes: When the When an ant completes the current iteration, for the ant The pheromone diffuses to adjacent paths along the traversed path, affecting the nodes. , Update the pheromone increments of adjacent paths along the path traversed by the ant according to equation (19): (19) in, Ants The set of nodes along the path; This represents the range within which all ants spread pheromones at any node. ; Represented by node Centered on, with It is the set of all nodes within the radius. Represents a set Number of internal elements; Represented by node Centered on, with For the radius range, nodes The average distance between the node and all other nodes.

4. The robot logistics transportation scheduling method with time window according to claim 1, characterized in that, The calculation in step S7-1-2 Further including: The ant with the lowest transportation cost in this generation is called the optimal ant. The pheromone increment along the path traversed by the optimal ant is then updated according to equation (20): (20) in, A constant greater than 0; This represents the maximum number of iterations. yes A random number that is uniformly distributed on the upper surface; This represents the transportation cost of the currently globally optimal path; This represents the transportation cost of the optimal route obtained in this iteration.

5. The robot logistics transportation scheduling method with time window according to claim 1, characterized in that, The calculation in step S7-1-3 Further including: For ants whose transportation cost is greater than that of the best ant in this generation, but less than the average transportation cost, the pheromone increment along the path traversed by the ant is updated according to equation (21). : (21) in, A preset constant that is greater than 0. This represents the maximum number of iterations.

6. The robot logistics transportation scheduling method with time window according to claim 1, characterized in that, The calculation in step S7-1-4 Further including: For ants whose transportation costs are greater than the average transportation cost of this generation, the pheromone increment along the path traversed by the ant is updated according to equation (22). : (22) in, A preset constant that is greater than 0. This represents the maximum number of iterations.

7. The robot logistics transportation scheduling method with time window according to claim 1, characterized in that, The calculation of the adaptive volatility factor in step S8 further includes: Global adaptive volatile factor Calculate according to formula (23): (23) in, The pheromone evaporation rate coefficient. ; for The maximum value; for The minimum value, This represents the maximum number of iterations.

8. A robot logistics transportation scheduling system with a time window, employing the robot logistics transportation scheduling method with a time window as described in any one of 1-7, characterized in that, include: The data acquisition module is used to acquire data information from the distribution center, customers, and delivery robots; The model building module is used to construct a mathematical model for the robot logistics transportation scheduling problem with a time window, with the objective function of minimizing transportation costs. The calculation module is used to solve the mathematical model using the ant colony algorithm, with the distribution center as the starting node; the ant colony algorithm includes constructing ant paths, calculating the next node visited by the ants, optimizing the global delivery path, optimizing the local delivery path, updating the global pheromone concentration and limiting the upper and lower limits of the global pheromone concentration, calculating the global adaptive volatile factor, and executing the pheromone rollback mechanism. The output module is used to determine whether the current iteration count has reached the preset number. If so, it outputs the current solution; otherwise, it returns to the calculation module to execute a new round of iteration instructions.

9. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the method as described in any one of claims 1 to 7.

10. A computer storage medium, characterized in that, The computer storage medium stores instructions that, when executed on the computer, cause the computer to perform the method as described in any one of claims 1 to 7.

Citation Information

Patent Citations

  • Route calculating method and device for logistics transportation scheduling with soft time window

    CN106251012A

  • Unmanned ship global path multi-objective planning method based on improved ant colony algorithm

    CN111026126A