Path planning method and device, electronic equipment and storage medium
By acquiring order information and using genetic algorithms for path optimization, target delivery information is generated, solving the problem of poor delivery timeliness of cold chain goods, achieving priority delivery of cold chain goods, and reducing return rates and costs.
Patent Information
- Application Number
- CN202410572510.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-05-09
- Publication Date
- 2025-11-11
AI Technical Summary
In existing technologies, the thawing status of cold chain goods cannot be obtained in real time during the delivery process, resulting in poor delivery timeliness, increased return rate, and delivery costs.
By acquiring order information, determining basic data and delivery constraints, and using genetic algorithms for multi-objective path optimization, target delivery information is generated to ensure priority delivery of cold chain goods.
It improved the user experience, reduced return rates and delivery costs, and met the timeliness requirements of cold chain products.
Smart Images

Figure CN120931192A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of data processing technology, and in particular to a path planning method, apparatus, electronic device and storage medium. Background Technology
[0002] When a package arrives at the station, delivery personnel select packages within their assigned area and deliver them based on their personal habits and experience. Because the thawing status of cold chain goods cannot be monitored in real time, goods may thaw before timely delivery, leading to customer returns and increased delivery costs. Summary of the Invention
[0003] This application aims to at least partially address one of the technical problems in the related art.
[0004] Therefore, the first objective of this application is to propose a route planning method to prioritize the delivery of cold chain goods while meeting delivery time requirements, thereby improving user experience, reducing return rates, and saving delivery costs.
[0005] The second objective of this application is to propose a path planning device.
[0006] The third objective of this application is to propose an electronic device.
[0007] The fourth objective of this application is to provide a computer-readable storage medium.
[0008] The fifth objective of this application is to provide a computer program product.
[0009] To achieve the above objectives, a first aspect of this application proposes a path planning method, comprising: obtaining order information of multiple orders to be delivered, and obtaining basic data information of the orders from the order information, wherein the basic data information includes product information and location information; obtaining order delivery targets, and determining delivery constraints based on the order information; and performing multi-objective path optimization based on a genetic algorithm on the multiple orders according to the order delivery targets, the basic data information, and the delivery constraints, to determine target delivery information corresponding to the multiple orders, wherein the target delivery information includes the delivery path and delivery order of the multiple orders.
[0010] To achieve the above objectives, a second aspect of this application proposes a path planning device, comprising: a first acquisition module, configured to acquire order information of multiple orders to be delivered, and acquire basic data information of the orders from the order information, wherein the basic data information includes product information and location information; a second acquisition module, configured to acquire order delivery targets, and determine delivery constraints based on the order information; and an optimization module, configured to perform multi-objective path optimization based on a genetic algorithm on the multiple orders according to the order delivery targets, the basic data information, and the delivery constraints, and determine target delivery information corresponding to the multiple orders, wherein the target delivery information includes the delivery path and delivery order of the multiple orders.
[0011] To achieve the above objectives, a third aspect of this application provides an electronic device, including: a processor; and a memory communicatively connected to the processor; the memory stores computer-executable instructions; the processor executes the computer-executable instructions stored in the memory to enable the processor to perform the path planning method described in the first aspect of the application.
[0012] To achieve the above objectives, a fourth aspect of this application provides a computer-readable storage medium having a computer program stored thereon, the computer instructions being used to cause the computer to execute the path planning method described in the above aspect of the embodiment.
[0013] To achieve the above objectives, a fifth aspect of this application provides a computer program product, including a computer program that, when executed by a processor, implements the path planning method described in the above aspect of the embodiment.
[0014] The route planning method, apparatus, electronic device, and storage medium provided in this application acquire order information of orders to be delivered and determine basic data information from the order information. They also acquire order delivery targets and determine delivery constraints from the order information. Furthermore, the basic data information, order delivery targets, and delivery constraints are input into an optimization model, which optimizes the routes for multiple orders. The final output is target delivery information containing delivery routes and delivery order. Delivery personnel then deliver orders according to this target delivery information. This not only meets delivery time requirements but also prioritizes the delivery of cold chain goods, thereby improving user experience, reducing return rates, and saving delivery costs.
[0015] Additional aspects and advantages of this application will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of this application. Attached Figure Description
[0016] The above and / or additional aspects and advantages of this application will become apparent and readily understood from the following description of the embodiments taken in conjunction with the accompanying drawings, wherein:
[0017] Figure 1 A flowchart illustrating a path planning method provided in an embodiment of this application;
[0018] Figure 2 A flowchart illustrating another path planning method provided in an embodiment of this application;
[0019] Figure 3 A flowchart illustrating another path planning method provided in an embodiment of this application;
[0020] Figure 4 A flowchart illustrating the process of determining the non-dominated level and congestion degree in a path planning method provided in this application embodiment;
[0021] Figure 5 This is a schematic diagram of the congestion of the delivery route provided in the embodiments of this application;
[0022] Figure 6 A flowchart illustrating the process of determining offspring population data i in a path planning method provided in an embodiment of this application;
[0023] Figure 7 This is a schematic diagram illustrating the process of optimizing delivery routes provided in an embodiment of this application;
[0024] Figure 8 This is a schematic diagram of the structure of a path planning device provided in an embodiment of this application. Detailed Implementation
[0025] The embodiments of this application are described in detail below. Examples of these embodiments are shown in the accompanying drawings, wherein the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below with reference to the accompanying drawings are exemplary and intended to explain this application, and should not be construed as limiting this application.
[0026] The path planning method and apparatus of this application are described below with reference to the accompanying drawings.
[0027] Figure 1 This is a flowchart illustrating a path planning method according to an exemplary embodiment, such as... Figure 1 As shown, the path planning method of this application includes, but is not limited to, the following steps:
[0028] S101, obtain order information for multiple orders to be delivered, and retrieve basic data information of the orders from the order information, including product information and location information.
[0029] It should be noted that the execution subject of the path planning method provided in this application embodiment is an electronic device, which can be a terminal device. Optionally, the terminal device can be a mobile electronic device or a non-mobile electronic device. For example, mobile electronic devices can be mobile phones, tablets, laptops, PDAs, in-vehicle electronic devices, wearable devices, ultra-mobile personal computers (UMPCs), netbooks, or personal digital assistants (PDAs), etc., while non-mobile electronic devices can be personal computers (PCs), televisions, etc. This application embodiment does not impose specific limitations.
[0030] Understandably, when a package arrives at the delivery station, the tracking number is scanned using a handheld PDA to update the package's status, and then the package is loaded onto a vehicle and dispatched according to the designated area. In other words, scanning the tracking number allows you to determine the status and order information for that package.
[0031] In some implementations, multiple orders awaiting delivery are identified by acquiring packages in the pending delivery status, and the order information of these orders is obtained. This order information includes, but is not limited to, order delivery time, product information, and delivery address.
[0032] Furthermore, based on the order information, order information related to product information and location information is obtained as basic data. Product information can indicate whether the order is for regular goods or cold chain goods. For example, if order information includes order number, product information, and delivery address, then the basic data information consists of product information and delivery address.
[0033] S102, obtain the order delivery target and determine the delivery constraints based on the order information.
[0034] In some implementations, order delivery targets can be determined based on user delivery needs and then optimized to ensure that the delivery targets meet the delivery requirements. For example, if it is necessary to ensure delivery is completed within a specific time and to guarantee the thawing rate of cold chain goods, then the delivery completion time and average thawing rate can be used as the order delivery targets to be optimized.
[0035] In some implementations, order delivery targets can be optimized based on order constraint information. Delivery constraints can be determined based on the delivery time specified in the order information and the minimum thawing rate of the cold chain goods. These constraints include an upper limit for delivery time and a lower limit for the goods' thawing rate.
[0036] S103. Based on the order delivery target, basic data information and delivery constraints, perform multi-objective path optimization for multiple orders using a genetic algorithm to determine the target delivery information for multiple orders, including the delivery path and delivery order of multiple orders.
[0037] In some implementations, the order delivery target, basic data information, and delivery constraints are input into a multi-objective path optimization model based on a Non-dominated Sorting Genetic Algorithm II (NSGA-II). This model optimizes the path based on the order's basic information, delivery constraints, and delivery target, outputting the order's delivery path and order as the target delivery information. For example, given orders A, B, C, D, and E, the target delivery information could include multiple delivery paths for delivery personnel to choose from: Path 1: Order B --> Order A --> Order C --> Order E --> Order D; Path 2: Order D --> Order A --> Order B --> Order C --> Order E.
[0038] Optionally, the optimization model can also output the target value corresponding to the optimized order delivery target along with the target delivery information, allowing delivery personnel to choose any delivery route for delivery. For example, the delivery completion time for route 1 is 6 hours and 34 minutes, with an average thawing rate of 66%; the delivery completion time for route 2 is 7 hours and 2 minutes, with an average thawing rate of 70%.
[0039] The route planning method provided in this application involves obtaining order information for orders to be delivered and determining basic data information from this information. It also involves obtaining the order delivery target and determining delivery constraints from the order information. Furthermore, the basic data information, order delivery target, and delivery constraints are input into an optimization model. The optimization model optimizes the routes for multiple orders and ultimately outputs target delivery information containing delivery routes and delivery order. Delivery personnel then deliver the orders according to this target delivery information. This method not only meets the timeliness requirements of delivery but also prioritizes the delivery of cold chain goods, thereby improving user experience, reducing return rates, and saving delivery costs.
[0040] Figure 2 This is a flowchart illustrating a path planning method according to an exemplary embodiment, such as... Figure 2 As shown, the path planning method of this application includes, but is not limited to, the following steps:
[0041] S201, obtain order information for multiple orders to be delivered, and obtain basic data information of the orders from the order information, including product information and location information.
[0042] In the embodiments of this application, step S201 can be implemented in any of the ways described in the embodiments of this application. This is not limited here and will not be described in detail.
[0043] S202, Obtain the order delivery target and determine the delivery constraints based on the order information.
[0044] In the embodiments of this application, step S202 can be implemented in any of the ways described in the various embodiments of this application. This is not limited here and will not be described in detail.
[0045] S203. Generate parent population data based on order delivery targets, basic data information, and delivery constraints. The parent population data includes N delivery paths, where N is a natural number greater than or equal to 1.
[0046] In some implementations, the order delivery target, basic data information, and delivery constraints are input into the optimization model. The optimization model can initialize the path, iteratively optimize the initialized path, and finally output the optimized delivery path.
[0047] Optionally, data simulation can be performed based on order delivery targets, basic data information, and delivery constraints to generate parent population data containing N delivery paths, where N is a natural number greater than or equal to 1.
[0048] S204, starting from the parent population data, iterates through the population data i of the i-th iteration, filters and expands the population data i of the i-th iteration, and obtains the offspring population data i of the i-th iteration.
[0049] In some implementations, the iteration starts with the parent population data. By filtering the parent population data, the quality of the paths in the population data is improved. Then, the paths in the filtered population data are expanded to obtain the iterative offspring population data.
[0050] Optionally, parent population data can be filtered based on the non-dominance relationship and crowding of paths in the population data, and then crossover and mutation operations can be performed on the filtered population data to expand the population data and obtain offspring population data.
[0051] Optionally, for the i-th iteration, the population data i at the i-th iteration is obtained, and the population data i is filtered for non-dominance relationship and crowding degree, and the population data is expanded to obtain the offspring population data i for the i-th iteration.
[0052] S205. Based on the population data i and the offspring population data i, obtain the target population data i for the i-th iteration, and continue the i+1 iteration with the target population data i as the starting population for the i+1-th iteration until the iteration termination condition is met, and obtain the target delivery information.
[0053] Optionally, the population data i and the offspring population data i can be merged and filtered to obtain the target population data i for the i-th iteration. Then, the target population data i is used as the starting population for the (i+1)-th iteration. In other words, the first iteration is performed using the parent population data, and subsequent iterations are performed using the target population data generated during the iteration.
[0054] Optionally, an iteration count threshold can be set. When the iteration count reaches the threshold, the iteration termination condition is determined to be met, and the target delivery information is output.
[0055] The path planning method provided in this application embodiment obtains order information of orders to be delivered and determines basic data information from the order information. It also obtains the order delivery target and determines delivery constraints from the order information. Furthermore, the basic data information, order delivery target, and delivery constraints are input into an optimization model. The optimization model generates parent population data and iterates starting from the parent population data. When the iteration termination condition is met, it outputs target delivery information containing the delivery path and delivery order. Delivery personnel then deliver the orders according to the target delivery information. This not only meets the timeliness requirements of delivery but also prioritizes the delivery of cold chain goods, thereby improving user experience, reducing return rates, and saving delivery costs.
[0056] Figure 3 This is a flowchart illustrating a path planning method according to an exemplary embodiment, such as... Figure 3 As shown, the path planning method of this application includes, but is not limited to, the following steps:
[0057] S301, obtain order information for multiple orders to be delivered, and retrieve basic data information of the orders from the order information, including product information and location information.
[0058] In the embodiments of this application, step S301 can be implemented in any of the ways described in the embodiments of this application. This is not limited here and will not be described in detail.
[0059] S302, obtain the order delivery target and determine the delivery constraints based on the order information.
[0060] In the embodiments of this application, step S302 can be implemented in any of the ways described in the embodiments of this application. This is not limited here and will not be described in detail.
[0061] S303. Generate parent population data based on order delivery targets, basic data information, and delivery constraints. The parent population data includes N delivery paths, where N is a natural number greater than or equal to 1.
[0062] In the embodiments of this application, step S303 can be implemented in any of the embodiments of this application, and no limitation is made here, nor will it be described in detail.
[0063] S304, starts the iteration from the parent population data.
[0064] In the embodiments of this application, step S304 can be implemented in any of the embodiments of this application, and no limitation is made here, nor will it be described in detail.
[0065] S305, for the i-th iteration, perform non-dominated sorting and crowding calculation on the delivery paths in population data i.
[0066] In some implementations, the non-dominance relationship of delivery routes can be determined by obtaining the order delivery target values for each route and comparing them. The routes are then sorted according to this non-dominance relationship to obtain a non-dominance ranking result, and the ranking result is further divided into non-dominance levels. The order delivery target values include delivery time and the thawing rate of frozen goods.
[0067] Furthermore, for each non-dominated level, the congestion level between delivery routes within that level can be calculated. Optionally, the congestion level of a delivery route can be determined based on the distance between adjacent delivery routes.
[0068] Understandingly, non-dominance refers to the dominance of one solution over another. A solution is non-dominant to another solution across all objective functions. Crowding is a metric used to measure the distribution density of solutions across objective functions. It can help algorithms maintain population diversity in multi-objective optimization problems, enabling better exploration of the solution space and finding a better set of approximate optimal solutions.
[0069] For example, let the order delivery target values for path A be delivery time A and the thawing rate A of frozen goods, and the order delivery target values for path B be delivery time B and the thawing rate B of frozen goods, where shorter delivery time and lower thawing rate are preferred. If delivery time A is shorter than delivery time B, and the thawing rate A of frozen goods is greater than the thawing rate B of frozen goods, then path A is a non-dominated solution.
[0070] S306. Based on the non-dominated ranking and congestion of the delivery paths in population data i, the population data i is filtered to obtain the first population data i.
[0071] In some implementations, delivery paths in population data i can be filtered based on the level of non-dominated ranking and the degree of congestion of any delivery path. In other words, population data i can be filtered by comparing the non-dominated ranking and congestion of each pair of delivery paths.
[0072] Optionally, if the non-dominance level of the first delivery path is lower than that of the second delivery path, and the congestion level of the first delivery path is higher than that of the second delivery path, the first delivery path is selected as the delivery path from the population data i, and then the first population data i is obtained based on the selection result.
[0073] S307, the first population data i is expanded to obtain the offspring population data i.
[0074] In some implementations, a mutation operation can be performed on the first population data i to expand the size of the delivery paths in the population data, thereby achieving the expansion operation and obtaining the offspring population data i. Optionally, the mutation operation on the first population data i can be performed based on a mutation operator.
[0075] In some implementations, to increase the diversity of population data and avoid local optima, a crossover operation can be performed on the first population data i before the mutation operation to improve the efficiency of path optimization. Optionally, the crossover operation can be performed on the first population data i based on the crossover operator.
[0076] S308, merge and filter the population data i and the offspring population data i to obtain the target population data i.
[0077] In some implementations, population data i and offspring population data i are merged to obtain a merged second population data i, which is then filtered. Optionally, the second population data i can be filtered based on non-dominated ranking and crowding.
[0078] Optionally, the delivery paths in the second population data i are sorted by non-dominated order and the congestion is calculated. Based on the non-dominated order and congestion of the delivery paths in the second population data i, the second population data i is filtered to obtain the target population data i.
[0079] In other words, the filtering method for population data i and second population data i is the same. For either population data i or second population data i, two delivery paths can be selected from either population data to compare non-dominance level and congestion.
[0080] Furthermore, in response to the fact that the non-dominance level of the first delivery route is lower than that of the second delivery route, and the congestion level of the first delivery route is higher than that of the second delivery route, the first delivery route is selected as the delivery route from any population data.
[0081] S309, using the target population data i as the starting population for the (i+1)th iteration, continue the (i+1)th iteration until the iteration termination condition is met, and obtain the target delivery information.
[0082] In the embodiments of this application, step S309 can be implemented in any of the ways described in the various embodiments of this application. This is not limited here and will not be elaborated further.
[0083] The path planning method provided in this application embodiment obtains order information of orders to be delivered and determines basic data information from the order information. It also obtains the order delivery target and determines delivery constraints from the order information. Furthermore, the basic data information, order delivery target, and delivery constraints are input into an optimization model. The optimization model generates parent population data and iterates from the parent population data, filtering and expanding the population data in each iteration to optimize it. When the iteration termination condition is met, target delivery information containing the delivery path and delivery order is output. Delivery personnel deliver orders according to the target delivery information, which not only meets the timeliness requirements of delivery but also prioritizes the delivery of cold chain goods, thereby improving user experience, reducing return rates, and saving delivery costs.
[0084] Based on the above embodiments, the embodiments of this application can be used to explain and illustrate the process of determining the non-dominance level and the degree of congestion, such as... Figure 4 As shown, the process for determining the level of non-dominance and crowding includes, but is not limited to, the following steps:
[0085] S401, for any population data in population data i and second population data i, perform non-dominated sorting on the delivery paths in any population data to obtain the sorting result.
[0086] In some implementations, delivery routes can be sorted non-dominatedly based on the non-dominated relationships between them to obtain the sorting results. Alternatively, the non-dominated relationships between delivery routes can be determined by comparing the magnitudes of the delivery target values corresponding to the delivery routes.
[0087] In other words, based on the delivery routes, the order delivery target value for each route can be determined. This target value includes delivery time and the thawing rate of frozen goods. By comparing these target values, the non-dominated relationships between delivery routes can be determined. Furthermore, based on these non-dominated relationships, the delivery routes in any population dataset can be non-dominatedly ranked to obtain the ranking results.
[0088] S402, based on the sorting results, divide the non-dominated levels and determine that each non-dominated level includes one or more delivery routes.
[0089] In some implementations, the sorting results can be divided into non-dominance levels based on the non-dominance relationships between delivery routes, where each non-dominance level includes one or more delivery routes. Optionally, delivery routes without non-dominance relationships can be classified as the first non-dominance level, and the next non-dominance level can be determined based on the number and non-dominance relationships of the remaining delivery routes.
[0090] S403, for each non-dominated level, obtain the congestion level of the delivery route in any population data.
[0091] In some implementations, the congestion level of a delivery route can be determined based on the distance between any two adjacent delivery routes. Alternatively, for any population data, one or more delivery routes included in each non-dominated level can be retrieved.
[0092] Furthermore, for any delivery route in each non-dominated level, the third and fourth delivery routes adjacent to any delivery route in that non-dominated level are determined, and then the congestion level of any delivery route is determined based on the third and fourth delivery routes.
[0093] Optionally, a rectangle containing any delivery route can be constructed based on the third and fourth delivery routes of any delivery route, with the third and fourth delivery routes as vertices. The length of this rectangle is the congestion level of any delivery route.
[0094] Exemplary illustration, such as Figure 5 The diagram illustrates the congestion of the delivery route. The three non-dominated levels are abstracted as points in a coordinate system, such as... Figure 5 The diagram shows three non-dominated levels. For any non-dominated level, for any delivery path i, the third delivery path adjacent to delivery path i is delivery path i-1, and the fourth delivery path is delivery path i+1. A rectangle is then constructed, and the length of this rectangle is the congestion level.
[0095] In the path planning method provided in this application, for any population data in population data i and second population data i, a non-dominated sort is performed on the data, and the congestion degree of any delivery path in each population data is calculated. This helps to obtain the optimal solution for the delivery path and maintain the diversity of the population data. By calculating the congestion degree of the delivery path, the density distribution of the delivery path in the population data can be understood. Filtering based on the non-dominated sorting results and congestion degree helps to obtain the optimal delivery path, and then outputs the target delivery information. Delivery personnel deliver orders according to the target delivery information, which can not only meet the timeliness requirements of delivery, but also prioritize the delivery of cold chain goods, thereby improving the user experience, reducing the return rate, and saving delivery costs.
[0096] Based on the above embodiments, the embodiments of this application can explain the process of determining offspring population data i, such as... Figure 6 As shown, the process of determining offspring population data i includes, but is not limited to, the following steps:
[0097] S601, perform a cross operation on the delivery paths in the first group data i to obtain the third group data i.
[0098] In some implementations, crossover operations can improve the local search capability for finding the optimal solution. These operations can be performed on delivery paths based on binary crossover operators. Optionally, the probability of crossover operations on delivery paths can be configured, allowing them to be performed with a certain probability.
[0099] In some implementations, for delivery paths ij and ik in the first type of group data i, a crossover operation is performed on delivery paths ij and ik based on the binary crossover operator to obtain the third type of group data i, where 0≤i≤N, 0≤j≤N, and 0≤k≤N.
[0100] Alternatively, the binary crossover operator can be calculated based on the distribution factor and random numbers, as shown in the following formula:
[0101]
[0102] Where β represents the binary crossover operator, η represents the distribution factor, and rand represents a random number. The distribution factor is a user-defined parameter and its value can be defined by the user.
[0103] Furthermore, the crossover operation is performed based on the binary crossover operator, and the formula for the crossover operation is as follows:
[0104]
[0105] Among them, c 1 ijDenotes the delivery paths ij and x after intersection. 1 ij Represents the delivery routes ij and c before the intersection. 2 ik Indicate the delivery path ik, x after the intersection 2 ik Let ik represent the delivery path before the crossover, and β represent the binary crossover operator.
[0106] S602, perform a mutation operation on the delivery path in the third population data i after crossover to obtain the offspring population data i.
[0107] In some implementations, in order to increase the diversity of population data, expand the scale of population data, implement the expansion operation of population data, and realize the search space to avoid local optima, the delivery path in the third type of population data i after crossover can be mutated to obtain the offspring population data i.
[0108] Optionally, a multinomial mutation operator can be used to mutate at least one delivery path in the third population data i to obtain the offspring population data i. The multinomial mutation operator can be calculated based on the distribution factor and random numbers, as shown in the following formula:
[0109]
[0110] Where Δj represents the polynomial mutation operator, η represents the distribution factor, and u j This represents a random number. The distribution factor is a user-defined parameter, and its value can be defined by the user.
[0111] Furthermore, mutation operations are performed based on the polynomial mutation operator, and the formula for the mutation operation is as follows:
[0112] x i (t)=c i (t)+Δj (4)
[0113] Where, x i (t) represents the modified delivery route, c i (t) represents the delivery path before mutation, and Δj represents the polynomial mutation operator.
[0114] In the path planning method provided in this application embodiment, for the delivery path in the third population data i, by performing crossover and mutation operations on the delivery path, the local search capability for finding the optimal solution can be improved, the search range can be expanded, and the diversity of the population data can be increased to obtain the optimal delivery path and finally output the target delivery information.
[0115] like Figure 7The diagram illustrates the process of optimizing delivery routes. It involves acquiring order information from multiple delivery orders, determining basic data and delivery constraints from this information, and identifying the delivery objectives to be optimized based on user delivery needs. Further, the delivery objectives, basic data, and delivery constraints are input into a multi-objective path optimization model based on NSGA-II. This model simulates the input information to generate a parent population containing N delivery routes, where N is a natural number greater than or equal to 1. Iterative optimization begins with the parent population data, performing non-dominated ranking and congestion calculation on the delivery routes. Based on the non-dominated level and congestion level of the delivery routes, the population data is then filtered to obtain the first filtered population data.
[0116] Furthermore, a crossover operation is performed on the first population data to obtain a third population data, improving the local search capability for the optimal solution. A mutation operation is then performed on the crossover third population data to obtain offspring population data. The offspring population data is then merged with the parent population data to obtain a second population data. The merged second population data is then sorted by allocation and crowding to filter out delivery paths from the target population data. Finally, it is determined whether the iteration termination condition is met. If the termination condition is met, the target delivery information corresponding to the target population data is output. If the termination condition is not met, the target population data is used as the starting population data for the next iteration.
[0117] The target delivery information includes the delivery route and delivery sequence, and may also include the order delivery target value corresponding to the delivery route. For example, the delivery route and delivery sequence for target delivery information 1 are: Area 1: Order A --> Order C --> ... --> Area 2; Area 2: Order D --> Order V --> ... --> Area 3; Area 3: Order E --> Order O --> ... --> Return to the courier station. The order delivery target values are: delivery completion time: 6 hours and 34 minutes, average thawing rate: 60%.
[0118] The delivery route and order for target delivery information 2 are as follows: Area 1: Order C --> Order B --> ... --> Area 2; Area 2: Order V --> Order I --> ... --> Area 3; Area 3: Order D --> Order Y --> ... --> Return to the courier station. The target delivery values are: delivery completion time: 7 hours and 10 minutes, average thawing rate: 75%.
[0119] The delivery route and order for target delivery information 3 are as follows: Area 1: Order D --> Order Y --> ... --> Area 2; Area 2: Order V --> Order I --> ... --> Area 3; Area 3: Order C --> Order B --> ... --> Return to the courier station. The target delivery values are: delivery completion time: 5 hours and 24 minutes, average thawing rate: 55%.
[0120] To implement the above embodiments, this application also proposes a path planning device.
[0121] Figure 8 This is a schematic diagram of a path planning device provided in an embodiment of this application.
[0122] like Figure 8 As shown, the path planning device 800 includes:
[0123] The first acquisition module 801 is used to acquire order information of multiple orders to be delivered, and to acquire basic data information of the orders from the order information, wherein the basic data information includes product information and location information.
[0124] The second acquisition module 802 is used to acquire the order delivery target and determine the delivery constraints based on the order information.
[0125] The optimization module 803 is used to perform multi-objective path optimization based on genetic algorithm on the multiple orders according to the order delivery target, the basic data information and the delivery constraints, and determine the target delivery information corresponding to the multiple orders, wherein the target delivery information includes the delivery path and delivery order of the multiple orders.
[0126] In one possible implementation of this application embodiment, the optimization module 803 is further configured to: generate parent population data based on the order delivery target, the basic data information, and the delivery constraints, wherein the parent population data includes N delivery paths, where N is a natural number greater than or equal to 1; iterate from the parent population data, filter and expand the population data i of the i-th iteration to obtain the offspring population data i of the i-th iteration; obtain the target population data i of the i-th iteration based on the population data i and the offspring population data i, and continue the i+1 iteration with the target population data i as the starting population of the i+1-th iteration until the iteration termination condition is met to obtain the target delivery information.
[0127] In one possible implementation of this application embodiment, the optimization module 803 is further configured to: perform non-dominated sorting and congestion calculation on the delivery paths in the population data i; filter the population data i based on the non-dominated sorting and congestion of the delivery paths in the population data i to obtain a first population data i; and expand the first population data i to obtain the offspring population data i.
[0128] In one possible implementation of this application embodiment, the optimization module 803 is further configured to: merge and filter the population data i and the offspring population data i to obtain the target population data i.
[0129] In one possible implementation of this application embodiment, the optimization module 803 is further configured to: merge the population data i and the offspring population data i to obtain a merged second population data i; perform non-dominated sorting and congestion calculation on the delivery paths in the second population data i; and filter the second population data i based on the non-dominated sorting and congestion of the delivery paths in the second population data i to obtain the target population data i.
[0130] In one possible implementation of this application embodiment, the optimization module 803 is further configured to: perform non-dominated sorting on the delivery paths in either the population data i or the second population data i, and obtain a sorting result; divide the non-dominated levels based on the sorting result, and determine that each non-dominated level includes one or more delivery paths; and obtain the congestion degree of the delivery paths in the either population data for each non-dominated level.
[0131] In one possible implementation of this application embodiment, the optimization module 803 is further configured to: determine the order delivery target value for each of the delivery routes based on the delivery routes, wherein the order delivery target value includes delivery time and thawing rate of frozen goods; compare the magnitudes of the order delivery target values to determine the non-dominated relationship between the delivery routes; and perform non-dominated sorting on the delivery routes in the any population data based on the non-dominated relationship to obtain a sorting result.
[0132] In one possible implementation of this application embodiment, the optimization module 803 is further configured to: select two delivery paths from either the population data i and the second population data i for comparison of the non-dominance level and the congestion level; in response to the first delivery path having a lower non-dominance level than the second delivery path and the first delivery path having a higher congestion level than the second delivery path, select the first delivery path as the delivery path selected from the either population data.
[0133] In one possible implementation of this application embodiment, the optimization module 803 is further configured to: for any population data, obtain one or more delivery routes included in each of the non-dominated levels; for any delivery route in each of the non-dominated levels, determine a third delivery route and a fourth delivery route that are adjacent to the delivery route before and after the delivery route in the non-dominated level; and determine the congestion level of the delivery route based on the third delivery route and the fourth delivery route.
[0134] In one possible implementation of this application embodiment, the optimization module 803 is further configured to: perform a crossover operation on the delivery paths in the first population data i to obtain a third population data i; and perform a mutation operation on the delivery paths in the crossover third population data i to obtain the offspring population data i.
[0135] In one possible implementation of this application embodiment, the optimization module 803 is further configured to: perform a cross operation on the delivery paths ij and ik in the first population data i based on a binary cross operation to obtain a third population data i, wherein 0≤i≤N, 0≤j≤N, and 0≤k≤N.
[0136] In one possible implementation of this application embodiment, the optimization module 803 is further configured to: perform a mutation operation on at least one delivery path in the third population data i based on a polynomial mutation operator to obtain the offspring population data i.
[0137] The route planning device provided in this application obtains order information of orders to be delivered and determines basic data information from the order information. It also obtains the order delivery target and determines delivery constraints from the order information. Furthermore, the basic data information, order delivery target, and delivery constraints are input into an optimization model, which optimizes the routes for multiple orders. The model ultimately outputs target delivery information containing delivery routes and delivery order. Delivery personnel then deliver the orders according to this target delivery information. This not only meets the timeliness requirements of delivery but also prioritizes the delivery of cold chain goods, thereby improving user experience, reducing return rates, and saving delivery costs.
[0138] It should be noted that the foregoing explanation of the path planning method embodiment also applies to the path planning device of this embodiment, and will not be repeated here.
[0139] To implement the above embodiments, this application also proposes an electronic device, including: a processor and a memory communicatively connected to the processor; the memory stores computer execution instructions; the processor executes the computer execution instructions stored in the memory to implement the method provided in the foregoing embodiments.
[0140] To implement the above embodiments, this application also proposes a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, are used to implement the methods provided in the foregoing embodiments.
[0141] To implement the above embodiments, this application also proposes a computer program product, including a computer program that, when executed by a processor, implements the methods provided in the foregoing embodiments.
[0142] The collection, storage, use, processing, transmission, provision, and application of user personal information involved in this application all comply with the provisions of relevant laws and regulations and do not violate public order and good morals.
[0143] It should be noted that personal information collected from users should be used for legitimate and reasonable purposes and should not be shared or sold outside of these legitimate uses. Furthermore, such collection / sharing should only be conducted after receiving the user's informed consent, including but not limited to notifying the user to read the user agreement / user notice and sign an agreement / authorization that includes authorization of relevant user information before the user uses the function. In addition, any necessary steps must be taken to protect and safeguard access to such personal information data and ensure that others with access to personal information data comply with their privacy policies and procedures.
[0144] This application is intended to provide an implementation scheme for users to selectively prevent the use or access to their personal information data. Specifically, this application is intended to provide hardware and / or software to prevent or block access to such personal information data. Once personal information data is no longer needed, risks can be minimized by restricting data collection and deleting data. Furthermore, where applicable, such personal information is de-identified to protect user privacy.
[0145] In the foregoing descriptions of the embodiments, the terms "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., refer to specific features, structures, materials, or characteristics described in connection with that embodiment or example, which are included in at least one embodiment or example of this application. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples. Moreover, without contradiction, those skilled in the art can combine and integrate the different embodiments or examples described in this specification, as well as the features of different embodiments or examples.
[0146] Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one of that feature. In the description of this application, "multiple" means at least two, such as two, three, etc., unless otherwise explicitly specified.
[0147] Any process or method description in the flowchart or otherwise herein can be understood as representing a module, segment, or portion of code comprising one or more executable instructions for implementing custom logic functions or processes, and the scope of the preferred embodiments of this application includes additional implementations in which functions may be performed not in the order shown or discussed, including substantially simultaneously or in reverse order depending on the functions involved, as should be understood by those skilled in the art to which embodiments of this application pertain.
[0148] The logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as a sequenced list of executable instructions for implementing logical functions, and can be embodied in any computer-readable medium for use by, or in conjunction with, an instruction execution system, apparatus, or device (such as a computer-based system, a processor-included system, or other system that can fetch and execute instructions from, an instruction execution system, apparatus, or device). For the purposes of this specification, "computer-readable medium" can be any means that can contain, store, communicate, propagate, or transmit programs for use by, or in conjunction with, an instruction execution system, apparatus, or device. More specific examples (a non-exhaustive list) of computer-readable media include: an electrical connection having one or more wires (electronic device), a portable computer disk drive (magnetic device), random access memory (RAM), read-only memory (ROM), erasable and editable read-only memory (EPROM or flash memory), fiber optic devices, and portable optical disc read-only memory (CDROM). Alternatively, the computer-readable medium may be paper or other suitable media on which the program can be printed, since the program can be obtained electronically, for example, by optically scanning the paper or other medium, followed by editing, interpreting, or otherwise processing as necessary, and then stored in a computer memory.
[0149] It should be understood that various parts of this application can be implemented using hardware, software, firmware, or a combination thereof. In the above embodiments, multiple steps or methods can be implemented using software or firmware stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware as in another embodiment, it can be implemented using any one or a combination of the following techniques known in the art: discrete logic circuits having logic gates for implementing logical functions on data signals, application-specific integrated circuits (ASICs) having suitable combinational logic gates, programmable gate arrays (PGAs), field-programmable gate arrays (FPGAs), etc.
[0150] Those skilled in the art will understand that all or part of the steps of the methods in the above embodiments can be implemented by a program instructing related hardware. The program can be stored in a computer-readable storage medium, and when executed, the program includes one or a combination of the steps of the method embodiments.
[0151] Furthermore, the functional units in the various embodiments of this application can be integrated into a processing module, or each unit can exist physically separately, or two or more units can be integrated into a module. The integrated module can be implemented in hardware or as a software functional module. If the integrated module is implemented as a software functional module and sold or used as an independent product, it can also be stored in a computer-readable storage medium.
[0152] The storage medium mentioned above can be a read-only memory, a disk, or an optical disk, etc. Although embodiments of this application have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting this application. Those skilled in the art can make changes, modifications, substitutions, and variations to the above embodiments within the scope of this application.
Claims
1. A path planning method, characterized in that, The method includes: Obtain order information for multiple orders to be delivered, and extract basic data information of the orders from the order information, wherein the basic data information includes product information and location information; Obtain the order delivery target and determine the delivery constraints based on the order information; Based on the order delivery target, the basic data information, and the delivery constraints, a multi-objective path optimization based on a genetic algorithm is performed on the multiple orders to determine the target delivery information corresponding to the multiple orders, wherein the target delivery information includes the delivery path and delivery order of the multiple orders.
2. The method according to claim 1, characterized in that, The step of performing multi-objective path optimization based on a genetic algorithm on the multiple orders, according to the order delivery target, the basic data information, and the delivery constraints, to determine the target delivery information corresponding to the multiple orders, includes: Based on the order delivery target, the basic data information, and the delivery constraints, parent population data is generated, wherein the parent population data includes N delivery paths, where N is a natural number greater than or equal to 1; Starting from the parent population data, the population data i of the i-th iteration is filtered and expanded to obtain the offspring population data i of the i-th iteration. Based on the population data i and the offspring population data i, the target population data i for the i-th iteration is obtained, and the i+1 iteration continues with the target population data i as the starting population for the (i+1)-th iteration until the iteration termination condition is met, thus obtaining the target delivery information.
3. The method according to claim 2, characterized in that, The process of filtering and expanding the population data i from the i-th iteration to obtain the offspring population data i from the i-th iteration includes: The delivery paths in the population data i are sorted by non-dominated order and congestion is calculated. Based on the non-dominated ranking and congestion of the delivery paths in the population data i, the population data i is filtered to obtain the first population data i; The first population data i is expanded to obtain the offspring population data i.
4. The method according to claim 2, characterized in that, The step of obtaining the target population data i for the i-th iteration based on the population data i and the offspring population data i includes: The population data i and the offspring population data i are merged and filtered to obtain the target population data i.
5. The method according to claim 4, characterized in that, The step of merging and filtering the population data i and the offspring population data i to obtain the target population data i includes: The population data i and the offspring population data i are merged to obtain the merged second population data i; Perform non-dominated sorting and congestion calculation on the delivery routes in the second group data i; Based on the non-dominated ranking and congestion of delivery paths in the second population data i, the second population data i is filtered to obtain the target population data i.
6. The method according to claim 3 or 5, characterized in that, The method further includes: For any one of the population data i and the second population data i, perform a non-dominated sort on the delivery paths in the population data i to obtain the sorting result; Based on the sorting results, non-dominated levels are divided, and each non-dominated level includes one or more delivery routes. For each of the non-dominated levels, obtain the congestion level of the delivery routes in the data of any population group.
7. The method according to claim 6, characterized in that, The step of performing a non-dominated sorting of delivery routes in any of the aforementioned population data to obtain a sorting result includes: Based on the delivery routes, a specific order delivery target value is determined for each delivery route, wherein the order delivery target value includes delivery time and the thawing rate of frozen goods; By comparing the magnitudes of the order delivery target values, the non-dominant relationships between the delivery routes are determined; Based on the non-dominated relationship, the delivery paths in any of the population data are sorted in a non-dominated manner to obtain the sorting result.
8. The method according to claim 3 or 5, characterized in that, The method further includes: For any one of the population data i and the second population data i, two delivery paths in the population data i are selected for comparison of the non-dominance level and the congestion level; In response to the fact that the non-dominance level of the first delivery route is less than that of the second delivery route, and the congestion level of the first delivery route is greater than that of the second delivery route, the first delivery route is selected as the delivery route from the data of either population group.
9. The method according to claim 6, characterized in that, The step of obtaining the congestion level of the delivery routes in any of the population data includes: For any of the aforementioned population data, obtain one or more delivery routes included in each of the aforementioned non-dominant levels; For any delivery route in each of the non-dominated levels, determine the third and fourth delivery routes that are adjacent to the preceding and following delivery routes in that non-dominated level. Based on the third and fourth delivery routes, the congestion level of any of the delivery routes is determined.
10. The method according to claim 3, characterized in that, The step of expanding the first population data i to obtain the offspring population data i includes: Perform a cross operation on the delivery paths in the first population data i to obtain the third population data i; The delivery path in the third population data i after crossover is mutated to obtain the offspring population data i.
11. The method according to claim 6, characterized in that, The step of performing a cross-operation on the delivery paths in the first population data i to obtain the third population data i includes: For delivery paths ij and ik in the first group data i, a crossover operation is performed on the delivery paths ij and ik based on the binary crossover operator to obtain the third group data i, where 0≤i≤N, 0≤j≤N, and 0≤k≤N.
12. The method according to claim 6, characterized in that, The step of performing a mutation operation on the delivery path in the third population data i after crossover to obtain the offspring population data i includes: Based on the polynomial mutation operator, at least one delivery path in the third population data i is mutated to obtain the offspring population data i.
13. A path planning device, characterized in that, The device includes: The first acquisition module is used to acquire order information of multiple orders to be delivered, and to acquire basic data information of the orders from the order information, wherein the basic data information includes product information and location information; The second acquisition module is used to acquire the order delivery target and determine the delivery constraints based on the order information; The optimization module is used to perform multi-objective path optimization based on genetic algorithm on the multiple orders according to the order delivery target, the basic data information and the delivery constraints, and determine the target delivery information corresponding to the multiple orders, wherein the target delivery information includes the delivery path and delivery order of the multiple orders.
14. An electronic device, characterized in that, include: A processor, and a memory communicatively connected to the processor; The memory stores computer-executed instructions; The processor executes computer execution instructions stored in the memory to implement the method as described in any one of claims 1-12.
15. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer-executable instructions, which, when executed by a processor, are used to implement the method as described in any one of claims 1-12.
16. A computer program product, characterized in that, Includes a computer program that, when executed by a processor, implements the method of any one of claims 1-12.