Route planning method and device, electronic equipment and storage medium

During the transportation between logistics centers, the loading and unloading routes are re-planned based on the information of unloaded orders, and the delay problem caused by jumping into the queue of new orders is solved, ensuring the timeliness and efficiency of transportation.

CN119130306APending Publication Date: 2024-12-13SF TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202310699480.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-06-13
Publication Date
2024-12-13

AI Technical Summary

Technical Problem

During the transportation between logistics centers, newly generated orders rely on goods accumulation, resulting in orders created first being sent to queue, resulting in delays in some orders.

Method used

By determining the pickup and unloading tasks based on the unloaded order information of the previous cycle at the beginning of each planning cycle, and re-planning the planned pickup and unloading lines, ensuring that the re-planned lines meet the time and load constraints, To ensure orders are executed on time.

Benefits of technology

It effectively solves the problem of order delay, ensures that newly generated orders are processed in a timely manner, and does not affect the locked part of the planned lines, improving transportation efficiency and punctuality.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119130306A_ABST
    Figure CN119130306A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of logistics, and discloses a route planning method and device, electronic equipment and a storage medium, and the method comprises the steps: determining at least one goods taking task and at least one unloading task according to the order information of at least one unloaded order in a previous planning period if the starting time of a current planning period is reached; obtaining at least one planned loading and unloading line determined in the last planning period, wherein the planned loading and unloading line comprises an unlocked line part; according to the task information of the at least one goods taking task, the task information of the at least one unloading task and the task information of the tasks in the unlocked line parts in the planned goods taking and unloading lines, the unlocked line parts in the planned goods taking and unloading lines are re-planned, and at least one re-planned goods taking and unloading line is obtained, and the re-planned loading and unloading line meets the preset time constraint condition and the load constraint condition. According to the invention, the problem of order delay caused by order queue jumping in the prior art is effectively solved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of logistics technology, and more specifically, to a route planning method, device, electronic device and storage medium. Background Art

[0002] In the related art, there is a need to pick up and deliver goods between multiple logistics centers. In practice, new orders are generated in real time during the process of transporting goods according to the initially planned routes. For newly generated orders, loading is generally planned based on the accumulation of goods on the platform. In this way, it is easy for the first created order to be cut in line by the later order. Since each order has a transportation time limit, this can easily cause some orders to be delayed. Summary of the invention

[0003] In view of the above problems, the embodiments of the present application propose a route planning method, device, electronic device and storage medium to solve the problem of order delays caused by queue interruption of later orders in the related art.

[0004] According to one aspect of an embodiment of the present application, a route planning method is provided, including: if the start time of the current planning cycle is reached, determining at least one pickup task and at least one unloading task according to order information of at least one unloaded order in the previous planning cycle; obtaining at least one planned pickup and unloading route determined in the previous planning cycle, the planned pickup and unloading route including an unlocked route portion; replanning the unlocked route portion in each planned pickup and unloading route according to task information of at least one pickup task, task information of at least one unloading task and task information of tasks in the unlocked route portion in each planned pickup and unloading route to obtain at least one replanned pickup and unloading route, wherein the replanned pickup and unloading route meets preset time constraints and load constraints.

[0005] According to one aspect of an embodiment of the present application, a route planning device is provided, including: a task determination module, for determining at least one pickup task and at least one unloading task according to order information of at least one unloaded order in the previous planning cycle if the start time of the current planning cycle is reached; an acquisition module, for acquiring at least one planned pickup and unloading route determined in the previous planning cycle, the planned pickup and unloading route including an unlocked route portion; a re-planning module, for re-planning the unlocked route portion in each planned pickup and unloading route according to task information of at least one pickup task, task information of at least one unloading task and task information of tasks in the unlocked route portion in each planned pickup and unloading route, to obtain at least one re-planned pickup and unloading route, wherein the re-planned pickup and unloading route meets preset time constraints and load constraints.

[0006] According to one aspect of an embodiment of the present application, an electronic device is provided, including: a processor; a memory, wherein the memory stores computer-readable instructions, and when the computer-readable instructions are executed by the processor, the route planning method described above is implemented.

[0007] According to one aspect of an embodiment of the present application, a computer-readable storage medium is provided, on which computer-readable instructions are stored. When the computer-readable instructions are executed by a processor, the route planning method as described above is implemented.

[0008] According to one aspect of an embodiment of the present application, a computer program product is provided, which includes computer instructions, and when the computer instructions are executed by a processor, the above route planning method is implemented.

[0009] In the present application, according to the preset planning cycle, the picking up tasks and unloading tasks corresponding to the newly generated orders are periodically planned into the planned picking up and unloading routes to consume the newly generated unloaded orders in real time. In this way, in the process of re-planning the planned picking up and unloading routes, the task information of the picking up tasks and the unloading tasks and the task information of the tasks in the unlocked route part of the planned picking up and unloading routes are combined to perform re-planning, so that the planned re-planned picking up and unloading routes meet the preset time constraints and load constraints. In this way, it can be ensured that the tasks executed according to the re-planned picking up and unloading routes can ensure that the tasks corresponding to the unloaded orders (picking up tasks and unloading tasks) are executed in time within the corresponding time limit. Therefore, it can effectively solve the problem in the related technology that the prior orders are queued up by the subsequent orders due to the accumulation of goods on the platform due to the planning of loading. Moreover, in the application, considering that there may be locked route parts in the actually planned routes, therefore, for the newly generated unloaded order tasks, the unlocked route parts in the planned pick-up and unloading routes are re-planned, so as to ensure that the locked route parts in the planned pick-up and unloading routes are not affected. BRIEF DESCRIPTION OF THE DRAWINGS

[0010] The drawings herein are incorporated into the specification and constitute a part of the specification, illustrate embodiments consistent with the present application, and together with the specification are used to explain the principles of the present application. Obviously, the drawings described below are only some embodiments of the present application, and for ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.

[0011] Figure 1 A schematic diagram illustrating pickup and delivery between multiple locations is shown.

[0012] Figure 2 It is a flow chart of a route planning method according to an embodiment of the present application.

[0013] Figure 3 It is a flowchart of iterative optimization using a taboo search algorithm according to an embodiment of the present application.

[0014] Figure 4 The schematic diagram of calling the first neighborhood movement operator to move the tasks in the pickup and unloading route is exemplified.

[0015] Figure 5 The schematic diagram of calling the second neighborhood movement operator to move the tasks in the pickup and unloading route is exemplified.

[0016] Figure 6 The schematic diagram of calling the third neighborhood movement operator to move the tasks in the pickup and unloading route is exemplified.

[0017] Figure 7 The schematic diagram of calling the fourth neighborhood movement operator to move the tasks in the pickup and unloading route is exemplified.

[0018] Figure 8 The schematic diagram of calling the fifth neighborhood movement operator to move the tasks in the pickup and unloading route is exemplified.

[0019] Fig. 9 The schematic diagram of calling the sixth neighborhood movement operator to move the tasks in the pickup and unloading route is exemplified.

[0020] Fig.10 The schematic diagram of calling the seventh neighborhood movement operator to move the tasks in the pickup and unloading route is exemplified.

[0021] Fig.11 yes Figure 3 This corresponds to step 330 in an embodiment of the present invention in a flowchart of an embodiment.

[0022] Fig.12 It is a block diagram of a route planning device according to an embodiment of the present application.

[0023] Fig.13 A schematic diagram of the structure of an electronic device suitable for implementing the embodiments of the present application is shown. DETAILED DESCRIPTION

[0024] Example embodiments will now be described more fully with reference to the accompanying drawings. However, example embodiments can be implemented in a variety of forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided so that this application will be more comprehensive and complete and fully convey the concept of the example embodiments to those skilled in the art.

[0025] It should be noted that the "multiple" mentioned in this article refers to two or more. "And / or" describes the association relationship of the associated objects, indicating that there can be three relationships. For example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone. The character " / " generally indicates that the associated objects before and after are in an "or" relationship.

[0026] In the related art, there is a need to pick up and deliver goods between multiple logistics centers. In practice, new orders are generated in real time during the process of transporting goods along the initially planned routes, for example, Figure 1 The vehicle needs to pick up the goods at the pickup point and then transport the goods to the delivery point for unloading. During this process, new orders may be generated. Figure 1 In the figure, the black-filled points are the delivery points indicated by the newly generated orders. In the related art, the loading of newly generated orders is generally planned according to the accumulation of goods on the platform. In this way, it is easy for the first created order to be queued by the later order. Since each order has a transportation time limit, this easily leads to the delay of some orders. In order to solve this problem, the solution of this application is proposed.

[0027] Figure 2 is a flow chart of a route planning method according to an embodiment of the present application. The method can be executed by an electronic device with processing capabilities, such as a server, and is not specifically limited here. Figure 2 As shown, the method at least includes steps 210 to 230, which are described in detail as follows:

[0028] Step 210, if the start time of the current planning cycle is reached, determine at least one pickup task and at least one unloading task based on the order information of at least one unloaded order in the previous planning cycle;

[0029] In this application, route planning is performed according to a preset planning cycle to consume newly generated orders in a timely manner. The length of the planning cycle can be set according to actual needs, such as 5 minutes, 10 minutes, 30 minutes, etc., which is not specifically limited here.

[0030] The order in this application refers to an order to transport goods from one location to another. Therefore, the order in this application actually involves a pickup point and an unloading point. The pickup point is the starting point of the goods transportation, and the unloading point is the end point of the goods transportation. Unloaded orders refer to orders that have not been picked up. Since the route planning of newly generated orders is periodically performed according to the plan in this application to consume the newly generated orders, the unloaded orders obtained at the start time of the current planning cycle also refer to the orders newly generated in the previous planning cycle and the orders that were not planned in the previous planning cycle.

[0031] The order information of unloaded orders includes at least the pickup point and the unloading point, as well as the measurement information of the goods to be transported (such as the weight of the goods, the volume of the goods, etc.). Furthermore, the order information also includes the order creation time, the delivery deadline, and the order number, etc. In some embodiments, since there may be a situation in which some goods need to be transported first in the transportation scenario, the order information may also include the timeliness information of the order and the priority information of the order. The timeliness information of the order is used to indicate whether the order is an urgent order, and the priority information of the order is used to indicate the priority of the order. In some embodiments, the timeliness information and priority information of the order are used to determine the late penalty cost in the event of a late order. If the late order is an order with a higher timeliness requirement and a higher priority order, the late penalty cost will be higher.

[0032] Completing an order involves two processes: picking up and unloading. Therefore, in some embodiments, an order can be split into a picking up task and an unloading task according to the order information of the order. The picking up point corresponding to the picking up task is the picking up point indicated by the order, and the unloading point corresponding to the unloading task is the unloading point indicated by the order.

[0033] Furthermore, task information of the pickup task and the unloading task determined for each unloaded order can also be determined based on the order information, such as the execution location (if it is a pickup task, the execution location is the pickup point, if it is an unloading task, the execution location is the unloading point), time window, cargo quantity, timeliness information and priority information. Among them, the time window of the pickup task and the delivery task corresponding to the same unloaded order is the same, which is the time period from the order creation time to the delivery deadline; the cargo quantity corresponding to the pickup task and the delivery task refers to the cargo quantity specified in the unloaded order corresponding to the pickup task and the unloading task.

[0034] In some embodiments, the at least one unloaded order is multiple; step 210 includes step A1 and step A2:

[0035] Step A1, if there are multiple unloaded orders with the same pickup point and the same delivery point among the multiple unloaded orders in the previous planning cycle, and the multiple unloaded orders with the same pickup point and the same delivery point meet the merging conditions, the multiple unloaded orders with the same pickup point and the same delivery point are merged into a new order in the current planning cycle; and a pickup task and an unloading task are determined for each new order obtained by the merger.

[0036] If the pickup point and unloading point of two unloaded orders are the same, the two unloaded orders are deemed to have the same flow direction. In a specific embodiment, the merging condition includes at least one of the following: the orders have the same timeliness type, the same priority (or the priority difference does not exceed the difference threshold), and the total volume of goods after merging does not exceed the weight threshold, and the weight threshold is a value that does not exceed the maximum load of the vehicle.

[0037] Step A2, determining a pickup task and an unloading task for each unmerged unloaded order.

[0038] In the above steps, multiple unloaded orders with the same flow direction and meeting the merging conditions are merged into a new order, and a pickup task and an unloading task are determined for each new order. Compared with determining a pickup task and an unloading task for each unloaded order before the merger, this reduces the total number of pickup tasks and unloading tasks to be planned, reduces the solution space for subsequent route planning based on tasks (pickup tasks and unloading tasks), reduces the complexity of iterative solution, and can improve the efficiency of iterative calculations.

[0039] Step 220: Acquire at least one planned cargo pickup and unloading route determined in the last planning cycle, wherein the planned cargo pickup and unloading route includes an unlocked route portion.

[0040] The planned pick-up and unloading routes refer to the pick-up and unloading routes determined by route planning in the previous planning cycle. Pick-up and unloading routes refer to the routes formed by arranging multiple tasks (pick-up tasks and unloading tasks) in sequence. Since each task is associated with its corresponding execution location, the pick-up and unloading routes correspond to the network points that the vehicle passes through in sequence. A network point that the vehicle passes through is the execution location corresponding to a task.

[0041] Since the pickup and unloading routes are replanned periodically, the planned pickup and unloading routes determined in the previous planning cycle obtained in each planning cycle are different. The unlocked route portion in the planned pickup and unloading routes means that the execution order between the tasks in the planned routes can be adjusted. In some embodiments, the planned pickup and unloading routes also include a locked route portion, which refers to a route portion whose execution order is locked and cannot be modified. Of course, in some embodiments, if the planned pickup and unloading routes do not include tasks with a specified execution order, the planned pickup and unloading routes as a whole can be regarded as an unlocked route portion.

[0042] Step 230, based on the task information of the at least one pick-up task, the task information of the at least one unloading task and the task information of the tasks in the unlocked route part of each of the planned pick-up and unloading routes, re-plan the unlocked route part of each of the planned pick-up and unloading routes to obtain at least one re-planned pick-up and unloading route in the current planning period, wherein the re-planned pick-up and unloading route meets the preset time constraints and load constraints.

[0043] In step 230, the unlocked route portion in the planned pick-up and unloading route can be iteratively planned according to the set time constraints and load constraints, based on the task information of at least one pick-up task, the task information of at least one unloading task, and the task information of the tasks in the unlocked route portion in the planned pick-up and unloading route, so that the pick-up tasks and unloading tasks determined for the unloaded orders are planned for only the unlocked route portion of at least one planned pick-up and unloading route, to ensure that the preset time constraints and load constraints are met when picking up and delivering goods according to the re-planned pick-up and unloading route obtained by iterative planning.

[0044] The time constraint condition refers to the time when the vehicle arrives at the execution location corresponding to the task according to the pick-up and unloading route within the time window of the task. The time constraint condition can be expressed as:

[0045]

[0046] Among them, [a i , b i ] represents the time window of task i, that is, a i represents the order creation time of the order from which task i comes, b i Indicates the delivery deadline of the order from which task i comes. arri,i,v represents the time when the vehicle v assigned to the pickup and unloading route arrives at the execution location corresponding to task i; PD represents the set of pickup tasks and unloading tasks, that is, PD = D loaded ∪P new ∪D new ; Among them, P new represents the set of pickup tasks P, which can be regarded as the number set P of the pickup tasks of the unloaded orders new , that is, P = P new , where the pickup task number set Pn for unloaded orders ew It is expressed as:

[0047] P new ={n loaded +1,n loaded +2,n loaded +3, ..., n loaded +n new};

[0048] n new Indicates the number of unloaded orders; n loaded Indicates the quantity of loaded orders.

[0049] D loaded ∪D new represents the unloading task set D, that is, D = D loaded ∪D new . D loaded The set of numbers representing the unloading tasks for the loaded orders, D new The number set of unloading tasks that do not have loading orders. The number set of unloading tasks that do not have loading orders D new It can be expressed as:

[0050] D new ={n loaded +n new +1,n loaded +n new +2, ..., n loaded +2×n new};

[0051] The total number of tasks in the set PD of pickup tasks and unloading tasks is n, n = n loaded +2×n new .

[0052] The load constraint condition means that the load on the vehicle during transportation according to the pick-up and unloading route does not exceed the maximum allowable load of the vehicle. The load constraint condition can be expressed by the following formula 2 and formula 3:

[0053]

[0054]

[0055] Among them, 1 0v represents the load of the vehicle v assigned to the pickup and unloading route at the time of departure; l iv represents the load of the vehicle v assigned to the pickup and unloading route when it arrives at the execution location corresponding to task i; V represents the vehicle code set, V = {1, 2, 3, ..., m}; Q v Indicates the maximum allowable load of vehicle v.

[0056] In some embodiments, in step 230, the objective function and constraint conditions may be pre-set, and the objective function and constraint conditions may be input into the solver, and the solver may perform iterative planning based on the set objective function and constraint conditions, according to the task information of at least one pickup task, the task information of at least one unloading task, and the task information of the tasks in the unlocked route portion of each of the planned pickup and unloading routes, to ensure that the function value of the re-planned pickup and unloading route outputted by the iteration is optimal corresponding to the objective function, and the re-planned pickup and unloading route satisfies the set constraint conditions. The solver may be an optaplanner solver.

[0057] In a specific embodiment, in addition to the time constraints and load constraints mentioned above, the constraints may also include at least one of the following first to tenth constraints, which can be set according to actual needs. Of course, in other embodiments, more constraints may be set.

[0058] The first constraint condition: A vehicle assigned to a pickup and unloading route must return to the garage from its current location or go to perform a task. The first constraint condition can be expressed as:

[0059]

[0060] Among them, x 00v represents the probability that the vehicle v assigned to the pickup and unloading route returns to the garage from the current location; x 0jv It represents the probability that the vehicle v assigned to the pickup and unloading route goes from the current location to the execution location corresponding to task j.

[0061] Second constraint: Any car must return to the garage from its current location or after completing its mission. This second constraint can be expressed as:

[0062]

[0063] Among them, x i0v It represents the probability that vehicle v assigned to the pickup and unloading route returns to the garage after completing task i.

[0064] The third constraint: any task can only be served by one vehicle once; in other words, a task can only be planned into one pick-up and unloading route. The third constraint can be expressed by the following formula 6:

[0065]

[0066] Among them, x ijv It represents the probability that the vehicle v assigned to the pickup and unloading route arrives at the execution location corresponding to task j after completing task i. Task i and task j are different tasks.

[0067] The fourth constraint condition: if there is an inflow to the execution location corresponding to the same task, there is an outflow, that is, if the vehicle v assigned to the pickup and unloading route reaches the execution location corresponding to task j, the vehicle v will leave the execution location after completing task j. The fourth constraint condition can be expressed by the following formula 7:

[0068]

[0069] x 0jv represents the probability that the vehicle v assigned to the pickup and unloading route goes from the current location to the execution location corresponding to task j; ijv represents the probability that the vehicle v assigned to the pickup and unloading route arrives at the execution location corresponding to task j after completing task i; x j0v represents the probability that the vehicle v assigned to the pickup and unloading route returns to the garage after completing task j; x jev It represents the probability that vehicle v assigned to the pickup and unloading route arrives at the execution location corresponding to task e after completing task j.

[0070] The fifth constraint condition: In any section of the pickup and unloading route, the sum of the departure time of the predecessor task and the travel time of the vehicle on that section of the route is less than or equal to the arrival time of the successor task, so as to ensure the correctness of the time sequence and avoid the formation of self-loops. The fifth constraint condition can be expressed by the following formula 8:

[0071]

[0072] t depa, i , v represents the time when the vehicle v assigned to the pickup and unloading route leaves the execution location corresponding to task i; t ij represents the driving time of the vehicle from the execution location corresponding to task i to the execution location corresponding to task j; t arri, j , v represents the time when vehicle v arrives at the execution location corresponding to task j.

[0073] The sixth constraint condition: the unloading task corresponding to the loaded order must be assigned to the vehicle that loads the goods of the order; the pickup task of the unloaded order is located before the unloading task of the unloaded order (that is, for the same unloaded order, the goods must be picked up before unloading). Among them, the loaded order refers to the transportation order whose corresponding goods have been loaded onto the vehicle; the unloaded order refers to the transportation order whose corresponding goods have not been loaded onto the vehicle. The sixth constraint condition can be expressed by the following formula 9 and formula 10:

[0074]

[0075]

[0076] Among them, In the case of i Indicates that the loaded order from which task i originates is executed by vehicle v. iv represents the probability that task i is performed by vehicle v. n new Indicates the number of unloaded orders.

[0077] The seventh constraint: Before a vehicle unloads the goods at a pickup point (assuming it is pickup point K), it cannot load an order with the pickup point being pickup point K. That is, after the vehicle arrives at a pickup point, a paper loading list is printed out, and the vehicle's loading and unloading list at the pickup point is locked, and no order with the pickup point being the current pickup point can be added to the vehicle. This constraint can be expressed as:

[0078]

[0079] Among them, w v represents the probability that vehicle v can join a new order at the current location; x 0jv represents the probability that the vehicle v assigned to the pickup and unloading route goes from the current location to the execution location corresponding to task j; α 0j It represents the probability that the execution location corresponding to task j is the current location of the vehicle.

[0080] The eighth constraint condition: before entering the park, you cannot bring orders with a pickup point in the park, and when leaving the park, you cannot unload orders with a unloading point in the park. This eighth constraint condition can prevent you from leaving the current park without unloading orders that should be urgent for other parks. This eighth constraint condition can be expressed by the following formula 12 and formula 13:

[0081]

[0082]

[0083] Among them, x ijv represents the probability that the vehicle v assigned to the pickup and unloading route arrives at the execution location corresponding to task j after completing task i; β ij It represents the probability that the park corresponding to the execution location of task i and the park corresponding to the execution location of task j are the same, where a park includes at least one logistics center, that is, a park can include multiple logistics centers, and each logistics center can be used as a pickup point or as a unloading point. η jv represents the probability that the pickup point is the cargo park to which the execution location of task j belongs when vehicle v arrives at the execution location of task j; λ iv It represents the probability that the loading and unloading point of vehicle v is the cargo in the park where the execution location corresponding to task i belongs when the vehicle v leaves the execution location corresponding to task i.

[0084] Ninth constraint: Before the goods at a pickup point are unloaded, you cannot go to the pickup point to pick up goods. The ninth constraint can be expressed as:

[0085]

[0086] x ijv represents the probability that the vehicle v assigned to the pickup and unloading route arrives at the execution location corresponding to task j after completing task i; β ij represents the probability that the park to which the execution location corresponding to task i belongs is the same as the park to which the execution location corresponding to task j belongs; It represents the probability that the pickup point is the cargo corresponding to the execution location of task i when vehicle v arrives at the execution location corresponding to task i.

[0087] The tenth constraint condition: unload the goods in the core park before picking up the goods. The core park refers to the park where the raw material warehouse belongs, and the core park is also called the order accumulation park. The tenth constraint condition can be expressed as:

[0088]

[0089] x ijv represents the probability that the vehicle v assigned to the pickup and unloading route arrives at the execution location corresponding to task j after completing task i; π i represents the probability that the park where task i is executed is a core park; π j represents the probability that the park to which task j is executed is a core park; q i represents the quantity of goods corresponding to task i; q j represents the amount of goods corresponding to task j; l iv represents the load of vehicle v when completing task i.

[0090] The objective function may be at least one of the cost function and the total mileage function corresponding to the pick-up and unloading routes. When the objective function is the cost function, the goal is to minimize the total cost corresponding to the pick-up and unloading routes, and the total cost corresponding to the pick-up and unloading routes includes the vehicle cost and the late penalty cost. Minimizing the total cost corresponding to the pick-up and unloading routes can be expressed as:

[0091]

[0092] Among them, Z 1 represents the total cost, r v represents the number of trips of vehicle v assigned to the pickup and unloading route; c vehicIe Indicates the unit price of a single trip of the vehicle; t late, i represents the late time of task i; c punishmentIn this application, the pickup and unloading route is divided into multiple trips, and the task from the first task in a section of the pickup and unloading route to the task when the load drops to 0 is regarded as one trip.

[0093] When the objective function is the total mileage function, the goal is to minimize the total mileage corresponding to the pickup and unloading route. The total mileage corresponding to a pickup and unloading route refers to the total mileage of the vehicle assigned to the pickup and unloading route from the current position to the completion of all tasks in the pickup and unloading route and finally returning to the garage. Minimizing the total mileage corresponding to the pickup and unloading route can be expressed as:

[0094]

[0095] Among them, d ij represents the distance from the execution location corresponding to task i to the execution location corresponding to task j; d i0 represents the distance from the execution location corresponding to task i back to the garage; d 00 Indicates the distance between the current position of the vehicle and the garage; d 0j Represents the distance between the vehicle's current location and the execution location corresponding to task j.

[0096] When the objective function includes the cost function and the total mileage function corresponding to the pick-up and unloading routes, the cost function and the total mileage function are combined to comprehensively evaluate the split of the pick-up and unloading routes determined in each iteration, that is, the pick-up and unloading routes are scored in two dimensions, namely, the total cost calculated by the cost function and the total mileage calculated by the total mileage function, and then the total score in the two dimensions is calculated, and finally the pick-up and unloading routes with higher scores are output as the re-planned pick-up and unloading routes for the current planning cycle.

[0097] In the present application, according to the preset planning cycle, the picking up tasks and unloading tasks corresponding to the newly generated orders are periodically planned into the planned picking up and unloading routes to consume the newly generated unloaded orders in real time. In this way, in the process of re-planning the planned picking up and unloading routes, the task information of the picking up tasks and the unloading tasks and the task information of the tasks in the unlocked route part of the planned picking up and unloading routes are combined to perform re-planning, so that the planned re-planned picking up and unloading routes meet the preset time constraints and load constraints. In this way, it can be ensured that the tasks executed according to the re-planned picking up and unloading routes can ensure that the tasks corresponding to the unloaded orders (picking up tasks and unloading tasks) are executed in time within the corresponding time limit. Therefore, it can effectively solve the problem in the related technology that the prior orders are queued up by the subsequent orders due to the accumulation of goods on the platform due to the planning of loading. Moreover, in the application, considering that there may be locked route parts in the actually planned routes, therefore, for the newly generated unloaded order tasks, the unlocked route parts in the planned pick-up and unloading routes are re-planned, so as to ensure that the locked route parts in the planned pick-up and unloading routes are not affected.

[0098] The solution of this application coordinates the overall orders, and timely updates the pick-up and unloading routes and pick-up and unloading tasks to ensure that in the process of transporting goods according to the re-planned pick-up and unloading routes obtained by re-planning, the vehicle driving distance and time can be optimized to improve the efficiency of cargo transportation.

[0099] In some embodiments, the task information includes the execution location corresponding to the task, the time window corresponding to the task, and the cargo weight corresponding to the task; in this embodiment, step 230 includes the following steps B1 and B2:

[0100] Step B1, according to the execution location, time window and cargo weight corresponding to the at least one pickup task, and the execution location, time window and cargo weight corresponding to the at least one unloading task, initialize the pickup tasks and unloading tasks corresponding to the same unloaded order into the same planned pickup and unloading route to obtain at least one route to be optimized; the route to be optimized satisfies the time constraints and load constraints.

[0101] Here, the picking-up task and unloading task corresponding to the same unloaded order are initialized into the same planned picking-up and unloading route. Since one planned picking-up and unloading route is only assigned to one vehicle, it can be ensured that the picking-up task and unloading task for the same unloaded order are performed by one vehicle. Of course, in the case of multiple unloaded orders, the tasks (picking-up tasks and unloading tasks) corresponding to different unloaded orders can be planned into the same planned picking-up and unloading route, or planned into different planned picking-up and unloading routes.

[0102] In step B1, the pick-up tasks and unloading tasks corresponding to each unloaded order are planned into the planned pick-up and unloading routes according to the execution location, time window and cargo weight corresponding to the pick-up task and the execution location, time window and cargo weight corresponding to the at least one unloading task, so as to ensure that each optimized route obtained by initialization still at least meets the time constraint and the load constraint. In other embodiments, when at least one of the first to tenth constraints as above is set, it is also necessary to ensure that each optimized route meets the additionally set constraints.

[0103] In a specific embodiment, multiple set constraints (such as time constraints and load constraints) can be pre-input into the solver. After that, the solver is initialized based on the set constraints, the execution location, time window and cargo weight corresponding to the pick-up task, the execution location, time window and cargo weight corresponding to the at least one unloading task, and the route information corresponding to the planned pick-up and unloading routes to obtain at least one route to be optimized.

[0104] In some embodiments, the planned cargo pickup and unloading route also includes a locked route portion; in this embodiment, step B1 includes the following steps C1 and C2, which are described in detail as follows:

[0105] Step C1, if there is a target task in the at least one pickup task and the at least one unloading task whose corresponding execution location is the same as the execution location of the task in the locked route part, plan the target task into the locked route part in the planned pickup and unloading route.

[0106] For example, if the locked route part of the planned pickup and unloading route indicates that the execution locations that the vehicle must pass through include outlets Z1 to Z3, and there is a pickup task K1 with the pickup location being outlet Z3 in at least one of the currently planned pickup tasks, then the pickup task K1 is correspondingly planned into the corresponding execution location of outlet Z3 in the locked route part. It is worth mentioning that since the vehicle executes the corresponding tasks in the order of the tasks in the pickup and unloading route, the sixth constraint condition mentioned above needs to be met in the route to be optimized, that is, the pickup task of the unloaded order is located before the unloading task of the unloaded order; and it needs to be ensured that the pickup task and unloading task of the same unloaded order are located in the same pickup and unloading route.

[0107] Step C2, based on the execution locations, time windows and cargo weights corresponding to the other tasks in the at least one pickup task and the at least one unloading task except the target task, as well as the preset time constraints and load constraints, initialize and plan the other tasks into the unlocked route part of the planned pickup and unloading route.

[0108] Since the execution locations of the at least one pick-up task and the other tasks except the target task in the at least one unloading task are different from the designated locations of the tasks in the locked route part of the planned pick-up and unloading route, and the order in which the vehicles in the locked route part arrive at the execution locations is not changeable, therefore, based on the preset constraints, according to the task information (execution location, time window and cargo weight) corresponding to the other tasks except the target task in the at least one pick-up task and the at least one unloading task, the other tasks except the target task are initialized into the unlocked route part of the planned pick-up and unloading route.

[0109] In some embodiments, for at least one pickup task and other tasks in the at least one unloading task except the target task, the tasks corresponding to the unloaded orders may be initialized into the planned pickup and unloading routes in combination with the order similarity between the unloaded orders. Specifically, if the order similarity between an unloaded order F1 and another unloaded order F2 exceeds a similarity threshold, after determining the position of the task corresponding to the unloaded order F1 in the planned pickup and unloading routes, the task corresponding to the unloaded order F2 may be placed near the position of the task corresponding to the unloaded order F1 in the planned pickup and unloading routes. For example, if the tasks corresponding to the unloaded order F1 include the pickup task P1 and the unloading task D1, and the tasks corresponding to the unloaded order F2 include the pickup task P2 and the unloading task D2, the unloaded order F1 tasks are planned into the planned pickup and unloading routes, and the unloaded route is: D3→P4→P1→P5→D4→D1→D5; based on the positions of the pickup task P1 and the unloading task D1 in the unloaded route, the pickup task P2 corresponding to the unloaded order F2 is placed near the position of the pickup task P1 in the unloaded route, and the unloading task D2 is placed near the position of the unloading task D1 in the unloaded route. For example, the unloaded route can be: D3→P4→P1→P2→P5→D4→D1→D2→D5. In this way, initialization is performed in combination with the order similarity between the unloaded orders, which can improve the efficiency of initialization and reduce the amount of calculation in the initialization stage.

[0110] Among them, the order similarity between two unloaded orders can be calculated based on the pickup location and unloading location corresponding to the unloaded orders, that is, if the pickup point and unloading point of the two unloaded orders are the same, it can be considered that the order similarity between the two unloaded orders is 100%. In a specific embodiment, for two unloaded orders (assuming that they are the first unloaded order and the second unloaded order), the pickup point location similarity is calculated based on the first pickup point corresponding to the first unloaded order and the second pickup point corresponding to the second unloaded order; the unloading point location similarity is calculated based on the first unloading point corresponding to the first unloaded order and the second unloading point corresponding to the second unloaded order; and then the order similarity is calculated based on the pickup point location similarity and the unloading point location similarity.

[0111] In some embodiments, the pickup point location similarity can be calculated according to the following formula: pickup point location similarity = 1-(first distance difference / reference distance); wherein, the first distance difference is the distance between the first pickup point and the second pickup point; the reference distance can be the first distance between the first pickup point and the first unloading point, or the second distance between the second pickup point and the second unloading point, or the average distance between the first distance and the second distance; from this, it can be seen that the closer the distance between the first pickup point and the second pickup point, the higher the pickup point location similarity.

[0112] Similarly, the similarity of the unloading point location can be calculated according to the following formula: Pickup point location similarity = 1-(second distance difference / reference distance); where the second distance difference is the distance between the first unloading point and the second unloading point. From this formula, it can be seen that the closer the distance between the first unloading point and the second unloading point, the higher the similarity of the unloading point location.

[0113] In some embodiments, the average of the pickup point location similarity and the unloading point location similarity may be used as the order similarity.

[0114] Step B2, using a taboo search algorithm to optimize the unlocked route portion in each of the routes to be optimized, and determine at least one re-planned pickup and unloading route.

[0115] In step B2, the solver iteratively calculates the unlocked route portion in the route to be optimized based on the taboo search algorithm and the set constraints and objective function, and determines at least one re-planned pickup and unloading route.

[0116] In some embodiments, Figure 3 As shown, step B2 includes:

[0117] Step 310, taking the target optimization strategy determined in the previous round of iteration as the current solution of this round of iteration; the target search strategy indicates the neighborhood movement operator called and the moved task in the previous round of iteration.

[0118] In a specific embodiment, a plurality of neighborhood movement operators may be preset, each of which is used to move tasks in an unlocked portion of a pickup and unloading route (ie, the route to be optimized in step B2).

[0119] Step 320, determining a neighborhood of the current solution; the neighborhood includes a plurality of candidate optimization strategies.

[0120] The domain of the current solution can be a set of multiple optimization strategies whose difference between the value of the corresponding objective function and the value of the objective function after the unlocked line portion in the line to be optimized is moved according to the target optimization strategy does not exceed a first threshold. In this application, the optimization strategies in the neighborhood of the current solution are referred to as candidate optimization strategies.

[0121] Step 330: for each candidate optimization strategy that is in the neighborhood and not in the taboo table, determine a route score after optimizing the non-locked route portion in the route to be optimized according to the candidate optimization strategy.

[0122] The taboo table records the optimization strategies determined in each round of iteration, as well as the tasks moved according to the corresponding optimization strategies. Furthermore, the taboo table can also record the positions of the tasks in the line after the tasks are moved according to the corresponding optimization strategies in each round of iteration. Based on the maintained taboo table, only the candidate optimization strategies that are in the neighborhood but not in the taboo table can be focused on, which can avoid falling into the local optimum and improve the optimization effect.

[0123] In some embodiments, the route score corresponding to the pick-up and unloading route after the unlocked route part in the route to be optimized is optimized according to the candidate optimization strategy can be combined with the set objective function. For example, at least one of the total cost corresponding to the pick-up and unloading route is calculated based on the cost function above and the total mileage corresponding to the unloading route is calculated based on the total mileage function, and then the route score is determined based on the calculated total cost and / or total mileage.

[0124] Step 340: Determine a target candidate optimization strategy with the highest route score among a plurality of candidate optimization strategies that are located in the neighborhood and are not in the taboo table.

[0125] Step 350, determine whether the optimization end condition is met; if not, execute step 360; if met, execute step 370.

[0126] The optimization end condition may be that the number of iterations reaches a round threshold, or that the difference between the highest line scores in multiple consecutive iterations does not exceed a second threshold, etc., which is not specifically limited here.

[0127] Step 360: Use the target candidate optimization strategy as the current solution for the next iteration, and add the target candidate optimization strategy to the taboo table. Then, return to step 320.

[0128] Step 370: Move the corresponding tasks in the unlocked part of the route to be optimized according to the neighborhood movement operator indicated by the target candidate optimization strategy to obtain the re-planned pickup and unloading route.

[0129] Based on the above steps 310 to 370, the solver uses the taboo search algorithm to perform multiple rounds of iterative optimization on the unlocked route portion in the route to be optimized, and outputs the pickup and unloading route with a higher route score as the re-planned pickup and unloading route. It is worth mentioning that in the case where the planned pickup and unloading route includes a locked route portion, the locked route portion in the route to be optimized before the move is the same as the locked route portion in the re-planned pickup and unloading route corresponding to the route to be optimized after the move, that is, in step 370, only the tasks in the unlocked route portion in the route to be optimized are moved, and the execution order of the tasks in the locked route portion remains unchanged.

[0130] In some embodiments, the neighborhood movement operator includes at least one of the first neighborhood movement operator to the seventh neighborhood movement operator. Among them, the first neighborhood movement operator is used to select a single task to move. In the present application, tasks can be divided into the following three types: pick-up tasks, unloading tasks for unloaded orders, and unloading tasks for loaded orders; the value range of the decision variables of each different type of task is different, that is, for the pick-up task, it needs to be arranged before the unloading task of the order from which the pick-up task comes; for the unloading task of the unloaded order, it needs to be arranged after the pick-up task of the unloaded order; for the unloading task of the loaded order, it must be performed by the vehicle loaded with the goods of the order, and the execution order can be arbitrary.

[0131] Figure 4 The schematic diagram of calling the first neighborhood movement operator to move the tasks in the pickup and unloading route is shown as an example. Figure 4 In the figure, a circle represents a task in the pickup and unloading route, the number in the circle represents the order number, the white filled circle and the letter p represent the pickup task, the gray filled circle and the letter d represent the unloading task, and v represents the vehicle assigned to the pickup and unloading route. Figure 4 As shown in I, for the unloaded order No. 2, its corresponding pickup task is p2 and the unloading task is d2. The first neighborhood movement operator can be called to move the pickup task p2 to any position before the unloading task d2. Figure 4 I in the figure exemplarily shows that the picking-up task p2 is moved to the next position before the unloading task d2 and before the picking-up task p3.

[0132] like Figure 4 As shown in II, the unloaded order No. 3 has a corresponding pickup task p3 and an unloading task d3. By calling the first neighbor movement operator, the unloading task d3 can be moved to any position after the pickup task p3 ( Figure 4 II in FIG. 1 exemplarily shows that the unloading task d3 is moved to a position after the picking-up task p3 and before the picking-up task p4).

[0133] like Figure 4 As shown in III, the goods corresponding to the loaded order No. 1 are already on the vehicle. The unloading task d1 corresponding to the loaded order No. 1 can be moved to any position in the unloading route through the first neighborhood movement operator ( Figure 4 III in the figure exemplarily shows moving the unloading task d1 to the first position in the unloading line).

[0134] The second neighborhood moving operator is used to move the pickup task and unloading task corresponding to the same order to the pickup and unloading route corresponding to another vehicle. Figure 5 The schematic diagram of calling the second neighborhood movement operator to move the tasks in the pickup and unloading route is shown as an example. Figure 5 As shown, before the movement, the picking task p4 and the unloading task d4 of order No. 4 that have not been loaded are located in the picking and unloading route K1. By calling the second neighborhood movement operator, the picking task p4 and the unloading task d4 can be moved synchronously to the picking and unloading route K2, and it is ensured that after the movement, the picking task p4 is located before the unloading task d4 in the picking and unloading route K2.

[0135] The third neighborhood movement operator is used to exchange tasks corresponding to two different unloaded orders, wherein the tasks corresponding to the unloaded orders include a pickup task and an unloading task. Figure 6 The schematic diagram of calling the third neighbor movement operator to move the tasks in the pickup and unloading route is shown as an example. Figure 6 As shown, before the move, the picking task p4 and the unloading task d4 of order No. 4 that have not been loaded are located in the picking and unloading route K1, and the picking task p5 and the unloading task d5 of order No. 5 that have not been loaded are located in the picking and unloading route K2. By calling the third neighborhood movement operator, the picking task p4 and the unloading task d4, as well as the picking task p5 and the unloading task d5 can be exchanged in two different picking and unloading routes, that is, after the move, the picking task p4 and the unloading task d4 are located in the picking and unloading route K2, and the picking task p5 and the unloading task d5 are located in the picking and unloading route K1.

[0136] The fourth neighbor movement operator is used to move the line chain with an initial load of 0 in the pickup and unloading line to other pickup and unloading lines. Calling the fourth neighbor movement operator to move can ensure that the pickup and unloading tasks of the same order will not be split, and try to assign a complete task to other vehicles. Figure 7 The schematic diagram of calling the fourth neighborhood movement operator to move the tasks in the pickup and unloading route is shown as an example. Figure 7 As shown in I, the initial loading capacity of the vehicle corresponding to the pick-up and unloading route K1 before moving is not 0 (order No. 1 has been loaded). Therefore, the pick-up and unloading route K1 cannot be moved. The initial loading capacity of the pick-up and unloading route K2 is 0. The fourth neighborhood movement operator can be called to move the route chain in the pick-up and unloading route K2, that is, the fourth neighborhood movement operator can be called to move the route chain from the pick-up task p6 to the unloading task d6 in the pick-up and unloading route K2 to the pick-up and unloading link K1.

[0137] like Figure 7 As shown in II, before the movement, in the pick-up and delivery route K3, the unloading task d1 corresponding to the loaded order No. 1 is located at the first position in the pick-up and delivery route K3. In this way, the initial loading amount of the vehicle before the start of the pick-up task p2 is 0. In this way, the fourth neighborhood movement operator can be called to move the pick-up and delivery route K3 from the pick-up task p2 to the unloading task d4 to the pick-up and unloading link K2.

[0138] The fifth neighborhood move operator is used to move multiple tasks with the same corresponding location as a sub-chain in the pickup and unloading route. Considering that it is easy to break the constraint that the same vehicle performs pickup and delivery, the movement performed by calling the fifth neighborhood move operator is limited to the same vehicle (that is, it is located on the same pickup and delivery route before and after the movement). Figure 8 The schematic diagram of calling the fifth neighborhood movement operator to move the tasks in the pickup and unloading route is shown as an example. Figure 8 As shown in I, assuming that the execution location corresponding to the pickup task p3 is the same as the execution location corresponding to the pickup task p4, the pickup tasks p3 and p4 are taken as a sub-chain, and the pickup tasks p3 and p4 are moved as a whole between the unloading task d1 and the pickup task p2. In practice, calling the fifth neighbor movement operator to move may violate the constraint of picking up first and delivering later for the same order. If this happens, it is determined that the movement performed by calling the fifth neighbor movement operator is invalid. For example Figure 8As shown in Figure II, assuming that the execution location corresponding to the pickup task p4 is the same as the execution location corresponding to the unloading task d3, if the pickup task p4 and the unloading task d3 are moved as a sub-chain to the position between the pickup task p2 and the pickup task p3, the unloading task d3 is located before the pickup task p3 in the pickup and unloading route after the move, which obviously violates the constraint of picking up first and then delivering for the same order. Therefore, the movement in this case is deemed invalid.

[0139] The sixth neighborhood movement operator is used to construct a new trip for tasks corresponding to multiple orders that have the same pickup point and are continuous in the pickup or unloading or route. Fig. 9 The schematic diagram of calling the sixth neighborhood movement operator to move the tasks in the pickup and unloading route is shown as an example. Before the movement, in the pickup and unloading route K3, the pickup points of order No. 3 and order No. 4 are the same. The pickup task p3 and unloading task d3 corresponding to order No. 3 are selected, and the pickup task p4 and unloading task d4 corresponding to order No. 4 are selected to construct a new trip. The sixth neighborhood movement operator is called to move the four tasks in the new trip as a whole to obtain the picked-up and unloading route K3 after the move.

[0140] The seventh neighborhood moving operator is used to extract the picking tasks and unloading tasks corresponding to two orders with the same flow direction, build a picking chain and an unloading chain, and allocate the picking chain and the unloading chain to the same picking and unloading route. Fig.10 The schematic diagram of calling the seventh neighborhood movement operator to move the tasks in the pickup and unloading route is shown as an example. Fig.10 As shown, assuming that the flow direction of order No. 4 and order No. 5 is the same (that is, the same pickup point and the same unloading point), before moving, the pickup task p4 and unloading task d4 corresponding to order No. 4 are located in the pickup and unloading route K3, and the pickup task p5 and unloading task d5 corresponding to order No. 5 are located in the pickup and unloading route K2. In this case, the seventh neighborhood movement operator can be called to extract the pickup task p4 and unloading task d4 from the pickup and unloading route K3 and the pickup task p5 and unloading task d5 from the pickup and unloading route K2, and construct a pickup chain: pickup task p5→pickup task p4, and construct an unloading chain: unloading task d5→unloading task d4, and then assign the constructed pickup chain and unloading chain to the pickup and unloading route K2. The picked-up and unloading route K3 after moving and the picked-up and unloading route K2 after moving are as shown in FIG. Fig.10 shown.

[0141] In some embodiments, Fig.11 As shown, step 330 includes:

[0142] Step 1110, for each candidate optimization strategy located in the neighborhood and not in the taboo table, optimize the unlocked route portion in the route to be optimized according to the candidate optimization strategy to obtain a corresponding candidate pickup and unloading route.

[0143] Step 1120, calculating the total cost of the candidate pickup and unloading routes.

[0144] The total cost of the candidate pickup and unloading routes can be calculated according to the above formula 16. Specifically, step 1120 includes the following steps D1 to D4:

[0145] Step D1, determining the vehicle cost of the candidate pickup and unloading route according to the number of trips included in the candidate pickup and unloading route and the transportation unit price of a single trip.

[0146] Specifically, the product of the number of trips included in the candidate pickup and unloading route and the transportation unit price of a single trip can be used as the vehicle cost of the candidate pickup and unloading route.

[0147] Step D2, based on the start time of the current planning cycle, the current location information of the vehicle assigned to the candidate pick-up and unloading route, and the time window corresponding to the task in the candidate pick-up and unloading route, determine the first task that will be late for picking up and delivering the goods according to the candidate pick-up and unloading route, as well as the delay duration corresponding to each first task.

[0148] In step D2, the driving time of the vehicle between the two execution locations corresponding to the two adjacent tasks in the candidate pick-up and unloading route can be calculated based on the distance between the two execution locations corresponding to the two adjacent tasks in the candidate pick-up and unloading route. Then, based on the start time of the current planning cycle, the current position information of the vehicle assigned to the candidate pick-up and unloading route, and the time window corresponding to the task in the candidate pick-up and unloading route, it is determined whether the time for the vehicle to reach the execution location corresponding to the task from the current position is within the time window corresponding to the task. If it exceeds the upper limit time of the time window corresponding to the task, it is determined that the vehicle will be late for performing the task.

[0149] In some embodiments, since both picking up and unloading goods require a period of time, the pickup time required to perform the pickup task and the unloading time required to perform the unloading task can be pre-set. Then, the set pickup time and unloading time are combined to determine whether the time after the vehicle completes a task is within the time window corresponding to the task. If the time after completing a task exceeds the upper limit of the time window corresponding to the task, it is determined that the vehicle will be late for performing the task, that is, the task is determined to be the first task.

[0150] In some embodiments, since the execution location corresponding to the task is a network point, each network point has a corresponding business hours, therefore, the first task that will be late for delivery can be further determined in combination with the business hours corresponding to the execution location. If the time when the vehicle arrives at the execution location corresponding to a task is during the non-business hours of the execution location, the vehicle needs to wait until it reaches the business hours of the execution location before executing the corresponding task.

[0151] Step D3, determining the lateness penalty cost according to the lateness penalty coefficient corresponding to the order from which each of the first tasks originates and the lateness duration corresponding to each of the first tasks.

[0152] Specifically, the product of the late penalty coefficient corresponding to the first task and the late duration corresponding to the first task can be used as the late penalty cost. The late penalty coefficient corresponding to the first task is related to the priority and timeliness parameters of the order from which the first task comes.

[0153] Step D4, determining the total cost of the candidate pick-up and unloading routes according to the vehicle cost and the late penalty cost. Specifically, the vehicle cost and the late penalty cost may be added together, and the result of the addition is used as the total cost of the candidate pick-up and unloading routes.

[0154] Step 1130, based on the distance between two adjacent execution locations in the candidate pickup and unloading route, calculate the total mileage of the vehicle assigned to the candidate pickup and unloading route from the current position to returning to the garage after executing all tasks in the candidate pickup and unloading route.

[0155] Specifically, the total mileage corresponding to the candidate delivery route can be calculated according to Formula 17 above.

[0156] Step 1140: Calculate the route score corresponding to the candidate pickup and unloading route according to the total cost and the total driving mileage.

[0157] In some embodiments, the total cost and the total mileage may be weighted, and the weighted result may be used as the route score corresponding to the candidate delivery route. In this embodiment, the route score is negatively correlated with the total cost, and the route score is correlated with the total mileage, that is, the lower the total cost and the smaller the total mileage, the higher the route score.

[0158] In some embodiments, the priority of the total cost may be set higher than the priority of the total mileage, that is, the effect of the total cost on the route score is higher than the effect of the total mileage on the route score.

[0159] In some embodiments, after step 230, the method further includes: if the re-planned pick-up and unloading route meets the publishing conditions, publishing the re-planned pick-up and unloading route so that the vehicles assigned to the re-planned pick-up and unloading route perform corresponding tasks according to the re-planned pick-up and unloading route.

[0160] It can be understood that re-planning the pick-up and unloading routes is equivalent to changing the planned pick-up and unloading routes obtained in the previous planning cycle. Since the pick-up and unloading routes are updated, the re-planned pick-up and unloading routes need to be synchronized to the terminals corresponding to the drivers of the vehicles corresponding to the re-planned pick-up and unloading routes, so that the drivers can control the vehicles according to the re-planned pick-up and unloading routes to perform the tasks in the re-planned pick-up and unloading routes in sequence.

[0161] The publishing conditions can be set according to actual needs. In some embodiments, the publishing conditions can be: 1. The loading rate of the vehicle assigned to the re-planned pick-up and unloading route reaches the loading rate threshold; 2. There are late orders on the re-planned pick-up and unloading route; 3. The loading rate of the vehicle is insufficient, but if the re-planned pick-up and unloading route is not released within the first time period (the first time period can be set according to actual needs, for example, the first time period is 15 minutes, 20 minutes, etc.), the order is expected to be late. If any one of the above three conditions is met, the publishing condition is deemed to be met.

[0162] In some embodiments, after step 230, the method further includes: if the re-planned pickup and unloading route meets the publishing conditions, the re-planned pickup and unloading route is not published. Further, for the unpublished re-planned pickup and unloading route, the tasks of some orders in the unpublished re-planned pickup and unloading route can be respectively assigned to the published re-planned pickup and unloading route on the principle of not changing the order of outlets of the published re-planned pickup and unloading route, not violating the constraint conditions and not being late for the newly assigned orders.

[0163] The solution of the present application is further described below in conjunction with a specific embodiment. In this embodiment, the route planning method includes the following steps S1 to S3:

[0164] Step S1, pre-processing; including step S11, parsing input data and step S12, constructing an initial solution. Specifically, in step S11, the input data includes: network point information (i.e., information on the execution location corresponding to the task), time distance information, vehicle information, order information, route information of the planned pick-up and unloading routes determined in the previous planning cycle, and algorithm configuration parameters.

[0165] Among them, the outlet information includes the outlet code, opening and closing time (if the outlet is closed when the vehicle arrives at the outlet, it is necessary to wait until the outlet opens before loading and unloading), loading and unloading time, the park to which it belongs, whether it is an order accumulation park (that is, whether it is a raw material warehouse), and the order accumulation loading rate (the planned route loading rate must exceed this value before it can be finally released).

[0166] The time distance information includes the network code of the pickup point, the network code of the unloading point, the distance between the two execution locations, and the driving time of the vehicle between the two execution locations.

[0167] Vehicle information includes license plate number, maximum load capacity, garage code, estimated arrival location, estimated arrival time, code of the goods carried, and whether additional orders can be added. The vehicle information refers to the vehicle information assigned to each planned pick-up and unloading route.

[0168] The destination of the vehicle cannot be modified during the actual driving process, so the estimated arrival location and estimated arrival time, as well as the code of the goods carried are set in the vehicle information. With the changes in actual conditions such as the generation of orders, delays or early arrival of vehicles, and the entry and exit of vehicles, the route after the estimated arrival location may change. Therefore, in each planning cycle, the latest vehicle information needs to be obtained.

[0169] Whether an order can be added is equivalent to whether the vehicle is docked. When the vehicle arrives at a logistics center, a paper loading list is printed out, and the vehicle's loading and unloading list at that location is locked, and no order can be added to the vehicle with the pickup point at that location. In other words, if the vehicle can add an order, it means that the vehicle is heading to the logistics center, and the order with the pickup point at the location the vehicle is currently heading to can be assigned to the vehicle. If the vehicle cannot add an order, it means that the vehicle has arrived at the logistics center, the docking card has been punched, and the vehicle's task is locked, and no order can be added to the logistics center.

[0170] The order information includes the order number, order quantity, pickup point, unloading point, order creation time, delivery deadline, and whether it is an urgent order. The order information includes the order information of unloaded orders and loaded orders.

[0171] Different orders have different weights according to the timeliness of the order and whether it is an urgent order. The lateness penalty for orders with high weights is more severe. The timeliness of the order and whether it is an urgent order are used to determine the lateness penalty coefficient when the task corresponding to the order is late.

[0172] The route information of the planned pickup and unloading routes determined in the previous planning cycle includes: the license plate number of the assigned vehicle, the stopover points, the loading list, the unloading list, and whether the locked route part is included.

[0173] In actual scenarios, some routes in the pickup and unloading routes may be manually adjusted. The manually adjusted routes are the locked routes. The order of the execution locations corresponding to the tasks in the locked routes is locked and cannot be changed. The order in which the vehicles arrive at each outlet in the locked routes cannot be changed, but orders can be inserted in which the pickup or unloading points are the execution locations corresponding to the tasks in the locked routes.

[0174] The algorithm configuration parameters include the maximum number of unloading points in non-accumulation areas allowed in one trip, the lateness penalty coefficient, the maximum number of pick-up points in non-accumulation areas allowed in one trip, the maximum number of combined orders, and the number of minutes in advance of departure (for pick-up and unloading routes with insufficient loading rates, if it is determined that the unloading route will not be released within the first time period, there will be late tasks in the pick-up and unloading route; the first time period is the number of minutes in advance of departure).

[0175] The maximum order quantity refers to the maximum number of orders that can be combined when multiple orders with the same flow are combined into one new order.

[0176] Step S12 includes steps S121 to S126. Specifically, step S121 constructs a route based on the calculation results of the previous planning cycle; step S121 refers to obtaining the planned pick-up and unloading route determined in the previous planning cycle as the initial pick-up and unloading route for the current planning cycle. In the first planning cycle, there are no historical calculation results, and step S121 is adjusted. The planned pick-up and unloading route includes a locked route part and an unlocked route part. The order of the execution locations where the vehicle stops in the locked route part is locked, and the stop order of the execution locations in the unlocked route part can be changed. In the main search process, the unlocked route part is optimized.

[0177] By using the planned pickup and unloading routes determined in the previous planning cycle as the initial pickup and unloading routes in the current planning cycle, the time required for initialization can be shortened, and many unnecessary calculations can be reduced. In addition, by optimizing according to the planning cycle, the calculation results of the previous planning cycle can be well utilized in the subsequent planning cycle, and the computing resources are effectively utilized. In this embodiment, except for the initialization of the first planning cycle, which takes a long time, the initialization time of other subsequent planning cycles is greatly shortened, which greatly improves the initialization speed.

[0178] Step S122, plans the tasks corresponding to some of the unloaded orders into the locked route part of the planned pickup and unloading routes. That is, plans the target tasks whose execution locations in the tasks corresponding to the unloaded orders are the same as the execution locations corresponding to the tasks in the locked route part of the planned pickup and unloading routes into the locked route part. In this way, some of the new unloaded orders can be consumed without affecting the order of the stopover points in the locked route part.

[0179] Step S123, generating a solution in the standard format of the optaplanner solver. That is, in step S122, the planned pickup and unloading routes obtained in step S122 are converted into the standard format of the optaplanner solver, and then input into the optaplanner solver for iterative optimization.

[0180] Step S124, order merging. That is, multiple unloaded orders with the same flow direction are merged, and then a pickup task and an unloading task are determined for each merged new order. In a specific embodiment, in addition to considering the flow direction of the unloaded orders, the order merging is further combined with the timeliness, priority and merged cargo volume of the unloaded orders, that is, multiple unloaded orders are merged when the flow direction is the same and the merging conditions are met. After the unloaded orders are merged, the dimension of data solution can be reduced. For example, two unloaded orders are merged into a new order. Before the merger, 2 pickup tasks and 2 unloading tasks need to be planned. After the merger, only 1 pickup task and 1 unloading task need to be planned. In this way, the dimension of solution is reduced and the solution speed can be accelerated.

[0181] Step S125, order similarity analysis. During the solver initialization and the solver's neighborhood search during the iterative optimization process, initialization and neighborhood search can be performed based on orders with high similarity, thereby increasing the probability of assigning unloaded orders with high similarity to the same vehicle (i.e., planning them into the same pickup and unloading route), and also improving the search efficiency of the solution.

[0182] Step S126, initialize the solution of the standard format. In step S126, the paired tasks (i.e., pickup tasks and unloading tasks) in the other unloaded orders except the unloaded orders consumed in step S122 are planned into the unlocked route part of the planned pickup and unloading route. In step S126, the tasks corresponding to multiple unloaded orders with high order similarity can be planned into positions near the unlocked route part, which can reduce the amount of calculation.

[0183] Step S2, the main search process, that is, determining the re-planning of the pick-up and unloading routes according to the constraints and optimization objectives. The constraints include the time constraints and load constraints mentioned above, as well as the first constraint to the tenth constraint. The contents of each constraint are described above and will not be repeated here.

[0184] The optimization objectives include the total cost minimization objective and the total mileage minimization objective mentioned above, and the total cost minimization objective may have a higher priority than the total mileage minimization objective.

[0185] In step S2, the optaplanner solver can use the taboo search algorithm to call the pre-configured neighborhood movement operator to iteratively optimize the initialized planned pickup and unloading route, and the initialized planned pickup and unloading route is the route to be optimized mentioned above. The configured neighborhood movement operator includes the first neighborhood movement operator to the seventh neighborhood movement operator mentioned above. In the process of iterative optimization using the taboo search algorithm, the current optimal solution (i.e., the current solution mentioned above) is stored in the taboo table in each round of iteration, and it is decided whether to accept a worse solution according to a certain probability. As the number of iterations increases, the probability of accepting a bad solution is reduced until it finally converges to a better solution. By maintaining a taboo table of a certain length, the new solution obtained each time can be compared with the solution in the taboo table, and the solution in the taboo table is not accepted. After searching and moving, the taboo table is updated, the latest solution is pressed in, and the solution before N rounds is popped out. In a specific embodiment, the taboo table can be for different dimensions, for example, the smallest dimension can be the moving task (ie, in the task dimension), and it can also record the target location to which the moved task is moved, or the corresponding pickup and unloading route of which vehicle the task is moved to.

[0186] Step S3, post-processing; includes steps S31 to S33, wherein step S31, determines whether the re-planned pick-up and unloading route meets the release conditions; if so, the re-planned pick-up and unloading route is released; otherwise, it is not released. If any of the following three conditions is met, it can be regarded as meeting the release conditions: 1. The vehicle loading rate reaches the input loading rate threshold; 2. There are late orders on the vehicle; 3. The vehicle loading rate is insufficient, but if the re-planned pick-up and unloading route is not released within the first time period, it is expected that the order will be late.

[0187] Step S32, reallocate tasks in the unpublished re-planned pickup and unloading routes. That is, on the principle of not changing the order of outlets in the published re-planned pickup and unloading routes, not violating constraints, and not delaying newly allocated orders, tasks of some orders in the unpublished re-planned pickup and unloading routes are allocated to the published re-planned pickup and unloading routes.

[0188] Step S33, output the re-planned pick-up and unloading routes of the current planning cycle. It can be understood that the re-planned pick-up and unloading routes of the current planning cycle correspond to the planned pick-up and unloading routes of the next planning cycle, so that the next planning cycle can continue to be optimized in accordance with a similar process in combination with the newly generated unloaded orders, so as to consume the newly generated unloaded orders in real time and avoid the unloaded orders from being backlogged and delayed.

[0189] Based on the solution of this embodiment, the newly generated unloaded orders can be dynamically and real-time planned into the unloading route, improving the efficiency of order assignment and delivery. Moreover, the pick-up and unloading tasks of multiple pickup points in the area are coordinated, and the solver performs iterative optimization with the goal of minimizing the total mileage and minimizing the total cost, which can reduce the total driving distance, reduce the number of empty vehicles, and improve the transportation efficiency of goods. Moreover, calling the neighborhood search operator during the iterative optimization process can improve the calculation efficiency, reduce the calculation time, and meet the needs of real-time route planning.

[0190] The following describes an apparatus embodiment of the present application, which can be used to execute the method in the above-mentioned embodiment of the present application. For details not disclosed in the apparatus embodiment of the present application, please refer to the above-mentioned method embodiment of the present application.

[0191] Fig.12 is a block diagram of a route planning device according to an embodiment of the present application. The route planning device can be configured on a server to implement the route planning method provided by the present application. Fig.12 As shown, the route planning device includes: a task determination module 1210, which is used to determine at least one pickup task and at least one unloading task according to the order information of at least one unloaded order in the previous planning cycle if the start time of the current planning cycle is reached; an acquisition module 1220, which is used to acquire at least one planned pickup and unloading route determined in the previous planning cycle, wherein the planned pickup and unloading route includes an unlocked route portion; a re-planning module 1230, which is used to re-plan the unlocked route portion in each of the planned pickup and unloading routes according to the task information of the at least one pickup task, the task information of the at least one unloading task and the task information of the tasks in the unlocked route portion in each of the planned pickup and unloading routes, so as to obtain at least one re-planned pickup and unloading route in the current planning cycle, wherein the re-planned pickup and unloading route meets the preset time constraint and load constraint.

[0192] In some embodiments, the task information includes the execution location corresponding to the task, the time window corresponding to the task, and the cargo weight corresponding to the task; the re-planning module 1230 includes: an initialization unit, which is used to initialize the pickup tasks and unloading tasks corresponding to the same unloaded order into the same planned pickup and unloading route according to the execution location, time window and cargo weight corresponding to the at least one pickup task, and the execution location, time window and cargo weight corresponding to the at least one unloading task, to obtain at least one route to be optimized; the route to be optimized satisfies the time constraints and load constraints; an optimization unit, which is used to use a taboo search algorithm to optimize the unlocked route parts in each of the routes to be optimized, and determine at least one re-planned pickup and unloading route.

[0193] In some embodiments, the optimization unit includes: a current solution determination unit, which is used to use the target optimization strategy determined in the previous round of iteration as the current solution of this round of iteration; the target search strategy indicates the neighborhood movement operator called and the task moved in the previous round of iteration; a neighborhood determination unit, which is used to determine the neighborhood of the current solution; the neighborhood includes multiple candidate optimization strategies; a line score determination unit, which is used to determine, for each candidate optimization strategy located in the neighborhood and not in the taboo table, a line score after optimizing the unlocked line part in the line to be optimized according to the candidate optimization strategy; a target candidate optimization strategy determination unit; A unit is used to determine a target candidate optimization strategy with the highest route score among multiple candidate optimization strategies that are located in the neighborhood and are not in the taboo table; an updating unit is used to, if the optimization end condition is not met, use the target candidate optimization strategy as the current solution for the next round of iteration, add the target candidate optimization strategy to the taboo table, and return to execute the step of determining the neighborhood of the current solution; a moving unit is used to, if the optimization end condition is met, move the corresponding tasks in the unlocked route part of the route to be optimized according to the neighborhood moving operator indicated by the target candidate optimization strategy to obtain the re-planned pickup and unloading route.

[0194] In some embodiments, the neighborhood movement operator includes at least one of the following:

[0195] The first neighborhood move operator is used to select a single task to move;

[0196] The second neighborhood moving operator is used to move the pickup task and unloading task corresponding to the same order to the pickup and unloading route corresponding to another vehicle;

[0197] The third neighborhood movement operator is used to exchange tasks corresponding to two different unloaded orders, where the tasks corresponding to the unloaded orders include pickup tasks and unloading tasks;

[0198] The fourth neighborhood movement operator is used to move the line chain with an initial load of 0 in the pickup and unloading line to other pickup and unloading lines;

[0199] The fifth neighborhood movement operator is used to move multiple tasks with the same corresponding location as a sub-chain in the pickup and unloading route;

[0200] The sixth neighborhood movement operator is used to construct a new trip for tasks corresponding to multiple orders that have the same pickup point and are continuous in the pickup or unloading or route;

[0201] The seventh neighborhood moving operator is used to extract the picking tasks and unloading tasks corresponding to two orders with the same flow direction, build a picking chain and an unloading chain, and allocate the picking chain and the unloading chain to the same picking and unloading route.

[0202] In some embodiments, the route score determination unit includes: a candidate pick-up and unloading route determination unit, which is used to optimize the unlocked route part in the route to be optimized according to each candidate optimization strategy located in the neighborhood and not in the taboo table, to obtain the corresponding candidate pick-up and unloading route; a total cost calculation unit, which is used to calculate the total cost of the candidate pick-up and unloading route; a total mileage determination unit, which is used to calculate the total mileage of the vehicle assigned to the candidate pick-up and unloading route from the current position to the return to the garage after executing all tasks in the candidate pick-up and unloading route according to the distance between two adjacent execution locations in the candidate pick-up and unloading route; and a score determination unit, which is used to calculate the route score corresponding to the candidate pick-up and unloading route according to the total cost and the total mileage.

[0203] In some embodiments, the total cost calculation unit includes: a vehicle cost determination unit, which is used to determine the vehicle cost of the candidate pick-up and unloading route according to the number of trips included in the candidate pick-up and unloading route and the unit price of each trip; a late task determination unit, which is used to determine the first tasks that will be late for picking up and delivering goods according to the candidate pick-up and unloading route, and the late duration corresponding to each first task according to the start time of the current planning cycle, the current location information of the vehicle assigned to the candidate pick-up and unloading route, and the time window corresponding to the task in the candidate pick-up and unloading route; a late penalty cost determination unit, which is used to determine the late penalty cost according to the late penalty coefficient corresponding to the order from which each first task originated and the late duration corresponding to each first task; a total cost determination unit, which is used to determine the total cost of the candidate pick-up and unloading route based on the vehicle cost and the late penalty cost.

[0204] In some embodiments, there are multiple at least one unloaded order; the task determination module 1210 includes: a first task determination unit, which is used to merge the multiple unloaded orders with the same pickup point and the same delivery point into a new order in the current planning cycle if there are multiple unloaded orders with the same pickup point and the same delivery point among the multiple unloaded orders in the previous planning cycle, and the multiple unloaded orders with the same pickup point and the same delivery point meet the merging conditions; determine a pickup task and an unloading task for each new order obtained by the merger; a second task determination unit, which is used to determine a pickup task and an unloading task for each unmerged unloaded order.

[0205] In some embodiments, the planned picking and unloading route also includes a locked route part; an initialization unit includes: a first planning unit, used to plan the target task into the locked route part of the planned picking and unloading route if there is a target task whose corresponding execution location is the same as the execution location of the task of the locked route part in the at least one picking and unloading task; a second planning unit, used to initialize and plan the other tasks into the unlocked route part of the planned picking and unloading route according to the execution locations, time windows and cargo weights corresponding to other tasks in the at least one picking and unloading task except the target task, as well as preset time constraints and load constraints.

[0206] In some embodiments, the route planning device also includes: a publishing module, which is used to publish the re-planned pick-up and unloading route if the re-planned pick-up and unloading route meets the publishing conditions, so that the vehicles assigned to the re-planned pick-up and unloading route perform corresponding tasks according to the re-planned pick-up and unloading route.

[0207] Fig.13 1 is a schematic diagram of the structure of an electronic device according to an embodiment of the present application. The electronic device may be a server for executing the route planning method provided by the present application. Fig.13 As shown, the electronic device may include: a processor 1301, such as a CPU, a network interface 1304, a user interface 1303, a memory 1305, and a communication bus 1302. Among them, the communication bus 1302 is used to realize the connection and communication between these components. The user interface 1303 may include a display screen (Display), an input unit such as a keyboard (Keyboard), and optionally, the user interface 1303 may also include a standard wired interface and a wireless interface. The network interface 1304 may optionally include a standard wired interface and a wireless interface (such as a WI-FI interface). The memory 1305 may be a high-speed RAM memory, or a stable memory (non-volatile memory), such as a disk memory. The memory 1305 may optionally be a storage device independent of the aforementioned processor 1301.

[0208] Those skilled in the art will understand that Fig.13 The structure of the electronic device shown in the figure does not constitute a limitation of the electronic device, and may include more or less components than shown in the figure, or combine certain components, or arrange the components differently.

[0209] like Fig.13 As shown, the memory 1305 as a computer-readable storage medium may include an operating system, a network communication module, a user interface module, and a program for implementing the route planning method.

[0210] exist Fig.13 In the electronic device shown, the network interface 1304 is mainly used to communicate with other devices, such as terminals, etc. The user interface 1303 is mainly used to connect to the client (user end) and communicate data with the client; and the processor 1301 can be used to call the program for implementing the route planning method stored in the memory 1305, and execute the steps of the route planning method in any of the above method embodiments.

[0211] According to one aspect of an embodiment of the present application, a computer-readable storage medium is provided, on which computer-readable instructions are stored. When the computer-readable instructions are executed by a processor, the route planning method in any of the above method embodiments is implemented.

[0212] It should be noted that the computer-readable medium shown in the embodiment of the present application can be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two. The computer-readable storage medium can be, for example, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples of computer-readable storage media can include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM), a flash memory, an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present application, a computer-readable storage medium can be any tangible medium containing or storing a program, which can be used by an instruction execution system, a device or a device or used in combination with it. In the present application, a computer-readable signal medium can include a data signal propagated in a baseband or as a part of a carrier wave, wherein a computer-readable program code is carried. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. Computer-readable signal media may also be any computer-readable medium other than computer-readable storage media, which may send, propagate, or transmit programs for use by or in conjunction with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wired, etc., or any suitable combination of the above.

[0213] According to one aspect of an embodiment of the present application, a computer program product is provided, which includes computer instructions, and when the computer instructions are executed by a processor, the route planning method in any of the above method embodiments is implemented.

[0214] The flowchart and block diagram in the accompanying drawings illustrate the possible architecture, functions and operations of the system, method and computer program product according to various embodiments of the present application. Wherein, each box in the flowchart or block diagram can represent a module, a program segment, or a part of the code, and the above-mentioned module, program segment, or a part of the code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram or flowchart, and the combination of boxes in the block diagram or flowchart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0215] It should be noted that, although several modules or units of the equipment for action execution are mentioned in the above detailed description, this division is not mandatory. In fact, according to the embodiments of the present application, the features and functions of two or more modules or units described above can be embodied in one module or unit. On the contrary, the features and functions of one module or unit described above can be further divided into being embodied by multiple modules or units.

[0216] Through the description of the above implementation methods, it is easy for those skilled in the art to understand that the example implementation methods described here can be implemented by software or by combining software with necessary hardware. Therefore, the technical solution according to the implementation methods of the present application can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a USB flash drive, a mobile hard disk, etc.) or on a network, and includes several instructions to enable a computing device (which can be a personal computer, a server, a touch terminal, or a network device, etc.) to execute the method according to the implementation methods of the present application.

[0217] Those skilled in the art will readily appreciate other embodiments of the present application after considering the specification and practicing the embodiments disclosed herein. The present application is intended to cover any variations, uses or adaptations of the present application, which follow the general principles of the present application and include common knowledge or customary technical means in the art that are not disclosed in the present application.

[0218] It should be understood that the present application is not limited to the precise structures that have been described above and shown in the drawings, and that various modifications and changes may be made without departing from the scope thereof. The scope of the present application is limited only by the appended claims.

Claims

1. A route planning method, characterized in that: include: If the start time of the current planning cycle is reached, at least one pickup task and at least one unloading task are determined based on the order information of at least one unloaded order in the previous planning cycle; Acquire at least one planned cargo pickup and unloading route determined in the last planning cycle, wherein the planned cargo pickup and unloading route includes an unlocked route portion; According to the task information of at least one pick-up task, the task information of at least one unloading task and the task information of the tasks in the unlocked route part in each of the planned pick-up and unloading routes, the unlocked route part in each of the planned pick-up and unloading routes is re-planned to obtain at least one re-planned pick-up and unloading route in the current planning period, wherein the re-planned pick-up and unloading route meets the preset time constraints and load constraints.

2. The method according to claim 1, characterized in that The task information includes the execution location corresponding to the task, the time window corresponding to the task, and the cargo weight corresponding to the task; The step of replanning the unlocked route portion in each of the planned picking and unloading routes according to the task information of the at least one picking-up task, the task information of the at least one unloading task, and the task information of the tasks in the unlocked route portion in each of the planned picking and unloading routes to obtain at least one replanned picking and unloading route in the current planning period includes: Initialize the pick-up tasks and unloading tasks corresponding to the same unloaded order into the same planned pick-up and unloading route according to the execution location, time window and cargo weight corresponding to the at least one pick-up task and the execution location, time window and cargo weight corresponding to the at least one unload task, so as to obtain at least one route to be optimized; the route to be optimized satisfies the time constraint and the load constraint; The unblocked route parts in each of the routes to be optimized are optimized by using a taboo search algorithm to determine at least one re-planned loading and unloading route.

3. The method according to claim 2, characterized in that The step of optimizing the unlocked route portion in each of the routes to be optimized by using a taboo search algorithm to determine at least one replanned cargo pickup and unloading route comprises: The target optimization strategy determined in the previous iteration is used as the current solution of this iteration; the target search strategy indicates the neighborhood movement operator called and the moved task in the previous iteration; Determining a neighborhood of the current solution; the neighborhood includes a plurality of candidate optimization strategies; For each candidate optimization strategy that is in the neighborhood and not in the taboo table, determining a route score after optimizing the non-locked route portion in the route to be optimized according to the candidate optimization strategy; Determine a target candidate optimization strategy with the highest route score among a plurality of candidate optimization strategies that are located in the neighborhood and are not in the taboo table; If the optimization end condition is not met, the target candidate optimization strategy is used as the current solution for the next iteration, the target candidate optimization strategy is added to the taboo table, and the step of determining the neighborhood of the current solution is returned to be executed; If the optimization end condition is met, the tasks corresponding to the unlocked route portion in the route to be optimized are moved according to the neighborhood movement operator indicated by the target candidate optimization strategy to obtain the re-planned pickup and unloading route.

4. The method according to claim 3, characterized in that The neighborhood movement operator includes at least one of the following: The first neighborhood move operator is used to select a single task to move; The second neighborhood moving operator is used to move the pickup task and unloading task corresponding to the same order to the pickup and unloading route corresponding to another vehicle; The third neighborhood movement operator is used to exchange tasks corresponding to two different unloaded orders, where the tasks corresponding to the unloaded orders include pickup tasks and unloading tasks; The fourth neighborhood movement operator is used to move the line chain with an initial load of 0 in the pickup and unloading line to other pickup and unloading lines; The fifth neighborhood movement operator is used to move multiple tasks with the same corresponding location as a sub-chain in the pickup and unloading route; The sixth neighborhood movement operator is used to construct a new trip for tasks corresponding to multiple orders that have the same pickup point and are continuous in the pickup or unloading or route; The seventh neighborhood moving operator is used to extract the picking tasks and unloading tasks corresponding to two orders with the same flow direction, build a picking chain and an unloading chain, and allocate the picking chain and the unloading chain to the same picking and unloading route.

5. The method according to claim 3, characterized in that: The step of determining, for each candidate optimization strategy located in the neighborhood and not in the taboo table, a route score after optimizing the non-locked route portion in the route to be optimized according to the candidate optimization strategy, comprises: For each candidate optimization strategy that is in the neighborhood and not in the taboo table, optimize the non-locked route part in the route to be optimized according to the candidate optimization strategy to obtain the corresponding candidate pickup and unloading route; Calculating the total cost of the candidate pickup and unloading routes; Calculate the total mileage of the vehicle assigned to the candidate pick-up and unloading route from the current position to the time when the vehicle returns to the garage after executing all tasks in the candidate pick-up and unloading route according to the distance between two adjacent execution locations in the candidate pick-up and unloading route; The route score corresponding to the candidate pickup and unloading route is calculated according to the total cost and the total driving mileage.

6. The method according to claim 5, characterized in that The calculating the total cost of the candidate pickup and unloading routes includes: Determine the vehicle cost of the candidate pickup and unloading route according to the number of trips included in the candidate pickup and unloading route and the transportation unit price of each trip; Determine, according to the start time of the current planning cycle, the current position information of the vehicle assigned to the candidate pickup and unloading route, and the time window corresponding to the task in the candidate pickup and unloading route, the first task that will be late for picking up and delivering the goods according to the candidate pickup and unloading route, and the delay time corresponding to each first task; Determining a late penalty cost according to a late penalty coefficient corresponding to the order from which each of the first tasks originated and a late duration corresponding to each of the first tasks; The total cost of the candidate pickup and unloading routes is determined according to the vehicle cost and the late penalty cost.

7. The method according to any one of claims 1 to 4, characterized in that The at least one unloaded order is multiple; The step of determining at least one pickup task and at least one unloading task according to the order information of at least one unloaded order in the previous planning cycle includes: If there are multiple unloaded orders with the same pickup point and the same delivery point among the multiple unloaded orders in the previous planning cycle, and the multiple unloaded orders with the same pickup point and the same delivery point meet the merging condition, the multiple unloaded orders with the same pickup point and the same delivery point are merged into one new order in the current planning cycle; Determine a pickup task and a drop-off task for each new order obtained by merging; Determine a pickup task and a drop-off task for each unmerged unloaded order.

8. The method according to claim 2, characterized in that: The planned loading and unloading route also includes a locked route portion; Initializing the pickup tasks and unloading tasks corresponding to the same unloaded order into the same planned pickup and unloading route according to the execution location, time window and cargo weight corresponding to the at least one pickup task and the execution location, time window and cargo weight corresponding to the at least one unloading task, to obtain at least one route to be optimized, includes: If there is a target task in the at least one pickup task and the at least one unloading task, whose corresponding execution location is the same as the execution location of the task in the locked route portion, the target task is planned into the locked route portion in the planned pickup and unloading route; According to the execution locations, time windows and cargo weights corresponding to the at least one pickup task and the other tasks in the at least one unloading task except the target task, as well as the preset time constraints and load constraints, the other tasks are initialized and planned into the unlocked route part of the planned pickup and unloading route.

9. The method according to claim 1, characterized in that: After replanning the unlocked route portion of each of the planned picking and unloading routes according to the task information of the at least one picking-up task, the task information of the at least one unloading task, and the task information of the tasks in the unlocked route portion of each of the planned picking and unloading routes to obtain at least one replanned picking and unloading route in the current planning period, the method further includes: If the re-planned pickup and unloading route meets the release conditions, the re-planned pickup and unloading route is released, so that the vehicles assigned to the re-planned pickup and unloading route perform corresponding tasks according to the re-planned pickup and unloading route.

10. A route planning device, characterized in that: include: A task determination module, used to determine at least one pickup task and at least one unloading task based on the order information of at least one unloaded order in the previous planning cycle if the start time of the current planning cycle is reached; An acquisition module, used to acquire at least one planned cargo pickup and unloading route determined in the last planning cycle, wherein the planned cargo pickup and unloading route includes an unlocked route portion; A re-planning module is used to re-plan the unlocked route parts in each of the planned picking and unloading routes according to the task information of the at least one picking up task, the task information of the at least one unloading task and the task information of the tasks in the unlocked route parts in each of the planned picking and unloading routes, so as to obtain at least one re-planned picking and unloading route in the current planning period, wherein the re-planned picking and unloading route meets the preset time constraints and load constraints.

11. An electronic device, characterized in that: include: processor; A memory having computer-readable instructions stored thereon, wherein when the computer-readable instructions are executed by the processor, the method according to any one of claims 1 to 9 is implemented.

12. A computer-readable storage medium having computer-readable instructions stored thereon, characterized in that: When the computer-readable instructions are executed by a processor, the method according to any one of claims 1 to 9 is implemented.