Path Planning Method, Apparatus, Electronic Device, and Storage Medium

By generating a key sequence set and iterating iterates the location sequence set, optimizing the end-of-cargo delivery path, solving the problem of low efficiency of manual path setting and realizing more efficient delivery path planning.

CN114565337BActive Publication Date: 2025-07-22BEIJING WODONG TIANJUN INFORMATION TECH CO LTD +1
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202210167135.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-02-23
Publication Date
2025-07-22
Estimated Expiration
2042-02-23

AI Technical Summary

Technical Problem

In the existing logistics technology, the delivery path of the last kilometer of the end relies on manual settings, resulting in low delivery efficiency.

Method used

By generating a key sequence set, the position sequence set is iterated to generate a delivery path for the delivery area based on the position sequence set, and the path planning is optimized using the algorithm to reduce dependence on experience.

Benefits of technology

It improves the efficiency of goods delivery, takes into account the delivery distance and timeout rate, and improves the experience of couriers and recipients.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114565337B_ABST
    Figure CN114565337B_ABST
Patent Text Reader

Abstract

The present application discloses a path planning method, apparatus, electronic device, and storage medium. Among them, the path planning method includes: generating a key sequence set including n key sequences; each key sequence includes m first elements; each first element corresponds to a key value representing a delivery area configuration; by iterating the key sequences in the key sequence set, obtaining a corresponding position sequence set; the position sequence set represents a set of position sequences; based on the position sequence set, generating delivery paths for m delivery areas; where both m and n are positive integers greater than 1.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer technology, and in particular, to a path planning method, apparatus, electronic device, and storage medium. Background Art

[0002] In the existing logistics technology, goods are first transported over a long distance to a unified distribution point, and then delivered by couriers in the last mile. When delivering goods in the last mile, couriers need to manually set the delivery path based on experience, resulting in low delivery efficiency. Summary of the Invention

[0003] In view of this, embodiments of this application provide a path planning method, apparatus, electronic device, and storage medium to at least solve the problem that the related technology relies on manual setting of delivery paths and has low delivery efficiency.

[0004] The technical solution of the embodiments of this application is implemented as follows:

[0005] Embodiments of this application provide a path planning method, the method includes:

[0006] Generate a set of key sequences including n key sequences; each key sequence includes m first elements; each first element corresponds to a key value representing a delivery area configuration;

[0007] By iterating the key sequences in the set of key sequences, obtain a corresponding set of position sequences; the set of position sequences represents a set of position sequences;

[0008] Based on the set of position sequences, generate delivery paths for m delivery areas; where

[0009] both m and n are positive integers greater than 1.

[0010] Wherein, in the above solution, the obtaining a corresponding set of position sequences by iterating the key sequences in the set of key sequences includes:

[0011] Generate a corresponding position sequence for each key sequence in the set of key sequences to obtain a set of position sequences;

[0012] When the number of iterations is less than the set threshold, update the key sequences in the key sequence set, update the number of iterations, and update the position sequence set based on the first position sequence when the solution set of the first position sequence and the solution set of the second position sequence satisfy the set relationship; wherein, the first position sequence represents the position sequence corresponding to the updated key sequence; the second position sequence is a position sequence selected from the position sequence set; the solution sets of the first position sequence and the second position sequence are obtained by solving each of the p set objective functions;

[0013] When the number of iterations is greater than or equal to the set threshold, output the position sequence set;

[0014] Wherein, p is a positive integer.

[0015] In the above solution, the p is a positive integer greater than 1; the solution set of the position sequence includes the solutions corresponding to each of the p set objective functions.

[0016] In the above solution, the set relationship means that the solution set of the first position sequence Pareto dominates the solution set of the second position sequence.

[0017] In the above solution, the p set objective functions include at least one of the following:

[0018] Map distance objective function;

[0019] Timeout rate objective function.

[0020] In the above solution, when the number of iterations is less than the set threshold, the method further includes:

[0021] Generate q third position sequences through local search;

[0022] Update the position sequence set with the generated q third position sequences; q is a positive integer.

[0023] In the above solution, after generating the delivery routes for m delivery areas based on the position sequence set, the method further includes:

[0024] Display the generated delivery routes on the set interface.

[0025] An embodiment of the present application also provides a path planning device, including:

[0026] A first processing unit, configured to generate a key sequence set including n key sequences; each key sequence includes m first elements; each first element corresponds to a key value representing a delivery area configuration;

[0027] A second processing unit, configured to obtain a corresponding set of position sequences by iterating through the key sequences in the set of key sequences; the set of position sequences represents a set of position sequences;

[0028] A third processing unit, configured to generate delivery routes for m delivery areas based on the set of position sequences; where

[0029] both m and n are positive integers greater than 1.

[0030] An embodiment of the present application also provides an electronic device, including: a processor and a memory for storing a computer program that can run on the processor,

[0031] wherein, when the processor is used to run the computer program, it executes the steps of the above path planning method.

[0032] An embodiment of the present application also provides a storage medium, on which a computer program is stored, and when the computer program is executed by a processor, it implements the steps of the above path planning method.

[0033] In an embodiment of the present application, a set of key sequences including n key sequences is generated, each key sequence includes m first elements, and each first element corresponds to a key value representing a delivery area configuration; by iterating through the key sequences in the set of key sequences, a corresponding set of position sequences is obtained, and based on the set of position sequences, delivery routes are generated for m delivery areas. Wherein, the set of position sequences represents a set of position sequences; both m and n are positive integers greater than 1. In the above solution, by iterating through the key sequences representing m delivery areas, a corresponding set of position sequences is obtained, and delivery routes are generated based on the set of position sequences, without artificially setting delivery routes according to experience, improving the efficiency of goods delivery. BRIEF DESCRIPTION OF THE DRAWINGS

[0034] Figure 1 is a schematic flowchart of the implementation of the path planning method provided by the embodiment of the present application;

[0035] Figure 2 is a schematic diagram of the delivery area provided by the embodiment of the present application;

[0036] Figure 3 is a schematic diagram of generating a position sequence provided by the embodiment of the present application;

[0037] Figure 4 is a schematic diagram of iterating a position sequence provided by the embodiment of the present application;

[0038] Figure 5 is a schematic diagram of the display of the delivery route provided by the embodiment of the present application;

[0039] Figure 6Schematic diagram of the implementation process of path planning provided by the application implementation example of the present application;

[0040] Figure 7 Schematic diagram of the structure of the path planning device provided by the embodiment of the present application;

[0041] Figure 8 Schematic diagram of the structure of the electronic device provided by the embodiment of the present application. Detailed implementation manners

[0042] In the existing logistics technology, goods are first transported over a long distance to a unified distribution point, and then the courier conducts the last-mile delivery of the goods. In this way, it can only ensure that the goods arrive at the unified distribution point on time during the long-distance transportation. However, during the last-mile delivery of the goods, the courier clusters the goods according to the delivery area based on experience and plans the delivery route based on experience according to the delivery time and distance, resulting in the problem of low delivery efficiency. Moreover, the delivery route planning method of the related technology relies on manual setting of the delivery route, which has high requirements for the courier.

[0043] Based on this, in various embodiments of the present application, a key sequence set including n key sequences is generated, each key sequence includes m first elements, and each first element corresponds to a key value representing a delivery area configuration; by iterating the key sequences in the key sequence set, a corresponding position sequence set is obtained, and based on the position sequence set, delivery routes are generated for m delivery areas. Wherein, the position sequence set represents a set of position sequences; both m and n are positive integers greater than 1. In the above solution, by iterating the key sequences representing m delivery areas, a corresponding position sequence set is obtained, and delivery routes are generated based on the position sequence set, without the need to manually set the delivery route according to experience, improving the goods delivery efficiency.

[0044] In order to make the purpose, technical solution and advantages of the present application clearer and more understandable, the present application will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.

[0045] Figure 1 Schematic diagram of the implementation process of the path planning method provided by the embodiment of the present application. The embodiment of the present application provides a path planning method, which is applied to an electronic device. Among them, the electronic device includes, but is not limited to, electronic devices such as servers and terminals.

[0046] It should be noted that the path planning method of the present application can be applied to any scenario of delivery route planning. For example, in the delivery route planning between various shelves in a warehouse, in this case, the delivery area is a row of shelves or an area where shelves exist. Here, the process of a courier delivering goods to the recipient is taken as an example for illustration.

[0047] As Figure 1 shown, the path planning method includes:

[0048] Step 101: Generate a set of key sequences including n key sequences.

[0049] Among them, each key sequence includes m first elements; each first element corresponds to a key value representing a delivery area configuration.

[0050] In this embodiment, the electronic device randomly configures a corresponding key value for each delivery area within the range of [0, 1]. The m delivery areas (L1, L2, …, L m ) correspond to m key values, and these m key values form a key sequence [k1, k2, …, k m . Each first element in the key sequence represents the corresponding key value configured for a delivery area. Through the above method, n key sequences can be obtained.

[0051] Before step 101, determine the delivery location of the goods to be delivered according to the goods information, and determine m delivery areas. The goods information includes but is not limited to the delivery location, expected delivery time, goods name, and goods attributes. According to whether the delivery location of the goods belongs to a specific delivery area, the goods are classified, and the goods belonging to the same delivery area are classified into one category. The goods information corresponding to the goods will affect the delivery priority of the delivery area during path planning. The delivery area represents a geographical area range. In the scenario of goods delivery in the logistics process, the delivery area is usually set as the area covered by each unified distribution point in the logistics.

[0052] In one embodiment, the goods are classified by cell, that is, the delivery area is a cell. For example, the delivery address of goods A is Building ×× in Community A, the delivery address of goods B is Building ×× in Community A, and the delivery address of goods C is Building ×× in Community B. In this way, goods A and goods B correspond to Community A in the same delivery area, and goods C corresponds to Community B in the delivery area.

[0053] It should be understood that in the above example, when determining m delivery areas, assume there are three communities, Community A, Community B, and Community C, and the delivery areas corresponding to all goods (goods A, goods B, and goods C) are not Community C, and Community C will not be determined as a delivery area.

[0054] It should be noted that for the delivery areas in the delivery path, it can be a fixed range, such as the community mentioned above; it can also be a variable range, such as Figure 2A schematic diagram of the delivery area shown, where the delivery area is set according to the clustering of the delivery locations of the goods. In one embodiment, before step 101, the delivery locations of the goods to be delivered can be clustered to determine m delivery areas.

[0055] Step 102: By iterating the key sequences in the set of key sequences, obtain the corresponding set of position sequences.

[0056] Wherein, the set of position sequences represents a set of position sequences.

[0057] Iterate each of the n key sequences through an algorithm, and update the set of position sequences during the iteration until the iteration stop condition is met, and output the updated set of position sequences as the result.

[0058] Here, based on the key values represented by the m first elements of the key sequences, sort the corresponding delivery areas, obtain the corresponding position sequences based on the order of the m delivery areas, and determine the set of position sequences based on the generated position sequences. When sorting the delivery areas, they can be arranged in ascending order of the corresponding key values or in descending order of the corresponding key values. Taking Figure 3 The schematic diagram of generating the position sequence shown as an example, a key sequence [0.6, 0.5, 0.7, 0.3, 0.2], determine the corresponding position sequence in ascending order of the corresponding key values, and obtain the position sequence as [L5, L4, L2, L1, L3]. Determine the corresponding position sequences for the n key sequences respectively to obtain a set of n position sequences.

[0059] Step 103: Based on the set of position sequences, generate delivery routes for the m delivery areas.

[0060] Wherein, both m and n are positive integers greater than 1.

[0061] Based on each position sequence in at least one position sequence of the set of position sequences, generate a delivery route for the m delivery areas.

[0062] In this embodiment, by iterating the key sequences representing the m delivery areas, obtain the corresponding set of position sequences, and generate delivery routes based on the set of position sequences, without artificially setting the delivery routes according to experience, improving the efficiency of goods delivery.

[0063] Preferably, in step 102, the obtaining the corresponding set of position sequences by iterating the key sequences in the set of key sequences includes:

[0064] Generate a corresponding position sequence for each key sequence in the set of key sequences to obtain the set of position sequences;

[0065] When the number of iterations is less than the set threshold, update the key sequences in the set of key sequences, update the number of iterations, and when the solution set of the first position sequences and the solution set of the second position sequences satisfy the set relationship, update the set of position sequences based on the first position sequences; wherein, the first position sequences represent the position sequences corresponding to the updated key sequences; the second position sequences are the position sequences selected from the set of position sequences; the solution sets of the first position sequences and the solution sets of the second position sequences are obtained by solving each of the p set objective functions;

[0066] When the number of iterations is greater than or equal to the set threshold, output the set of position sequences;

[0067] wherein, p is a positive integer.

[0068] Here, corresponding position sequences are generated for each key sequence in the initial set of key sequences to obtain the initial set of position sequences.

[0069] Iterate on the key sequences in the set of key sequences. Taking the t-th iteration as an example, the iteration process of the key sequences in the set of key sequences is described.

[0070] Judge the relationship between the current number of iterations and the set threshold.

[0071] When the number of iterations is less than the set threshold, update the t-generation key sequences in the set of key sequences through a search algorithm to obtain the (t + 1)-generation key sequences, and then generate the corresponding (t + 1)-generation first position sequences, and increment the number of iterations by one. Then select a position sequence from the set of position sequences as the second position sequence. Solve the first position sequences and the second position sequences through each of the p set objective functions to obtain the solution sets of the first position sequences and the solution sets of the second position sequences, and judge whether the solution sets of the first position sequences and the solution sets of the second position sequences satisfy the set relationship. After judging and executing the corresponding steps, judge the relationship between the current number of iterations and the set threshold again. Wherein, the solution set includes the solutions of each of the p objective functions.

[0072] When the solution sets of the first position sequences and the solution sets of the second position sequences satisfy the set relationship, replace the second position sequences in the set of position sequences with the first position sequences, thereby updating the set of position sequences. Here, the set relationship can be the magnitude relationship between the solution sets of the two position sequences, or the existence of a Pareto dominance relationship between the solution sets of the two position sequences.

[0073] When the number of iterations is greater than or equal to the set threshold, stop the iteration and output the set of position sequences as the set of position sequences for generating the delivery path.

[0074] Taking Figure 4 the schematic diagram of the shown iterative position sequence as an example, for a key sequence [0.6, 0.5, 0.7, 0.3, 0.2], the corresponding position sequence is [L5, L4, L2, L1, L3]. The t-generation key sequence in the key sequence set is updated through a search algorithm to obtain the (t + 1)-generation key sequence [0.61, 0.55, 0.65, 0.25, 0.35], and then the corresponding position sequence [L4, L5, L2, L1, L3] is generated.

[0075] Based on the update conditions for setting the position sequence set, a better position sequence set under specific metrics is obtained through iteration. In this way, a delivery path with better performance under specific metrics can be generated.

[0076] Preferably, updating the key sequence through the Levy Flight search algorithm can improve the global search ability.

[0077] In one embodiment, p is a positive integer greater than 1; the solution set of the position sequence includes the solutions corresponding to each of the p set objective functions.

[0078] Here, p objective functions f1(x), …, f K (x) are set, and the first position sequence and the second position sequence are solved to obtain the solution sets of the p objective function solutions for each position sequence, and it is determined whether the solution set of the first position sequence and the solution set of the second position sequence satisfy the set relationship.

[0079] When there are multiple factors affecting path planning, limited by the capabilities of manual planning, the effect of the planned delivery path is not good. In this embodiment, multiple objectives are converted into multiple objective functions, each position sequence corresponds to a solution set containing multi-objective function solutions, and the position sequence set is updated by judging the relationship between the solution sets of different position sequences. In this way, a position sequence set that takes multiple objectives into account can be obtained, and thus a globally better delivery path can be obtained.

[0080] In one embodiment, the set relationship indicates that the solution set of the first position sequence Pareto dominates the solution set of the second position sequence.

[0081] Here, for multi-objective optimization, it is usually impossible to make each objective reach the optimal value. By updating the position sequence set with the solution set of the position sequence that Pareto dominates, a position sequence set composed of Pareto optimal solutions is obtained, and multiple planning paths can be correspondingly generated. That is to say, more path choices are provided for the user (courier).

[0082] In one embodiment, the p set objective functions include at least one of the following:

[0083] Map distance objective function;

[0084] Timeout rate objective function.

[0085] Here, when setting the objective function, the objective functions that can be set include one or more of the following: map distance objective function, timeout rate objective function.

[0086] In practical applications, when calculating the timeout rate and map distance, the following formulas (1) and (2) can be used for calculation:

[0087] Formula for calculating the delivery timeout rate:

[0088]

[0089] Among them: n represents the total number of goods to be delivered, t k represents the actual delivery time of the k-th piece of goods, T k represents the expected delivery time of the recipient of the k-th piece of goods.

[0090] It should be understood that there is a corresponding relationship between the delivery location and the goods, and the order of the delivery locations will affect the delivery timeout rate of the goods. In this way, planning the path with the delivery timeout rate as the goal reduces the delivery timeout rate and improves the recipient's experience.

[0091] Formula for calculating the global delivery distance:

[0092]

[0093] Among them: m represents the total number of delivery locations.

[0094] Here, planning the path with the delivery distance as the goal improves the delivery efficiency.

[0095] In this way, the planned delivery path can take into account both the delivery efficiency represented by the delivery distance and the delivery effect represented by the delivery timeout rate, so as to obtain a globally optimal delivery path. Delivering goods based on the planned delivery path can take into account both the delivery efficiency and the delivery effect.

[0096] In one embodiment, when the number of iterations is less than the set threshold, the method further includes:

[0097] Generating q third position sequences through local search;

[0098] Updating the position sequence set with the generated q third position sequences; q is a positive integer.

[0099] Preferably, in step 102, when the number of iterations is less than the set threshold, the method further includes:

[0100] Generating q third position sequences through local search;

[0101] Update the position sequence set with the generated q third position sequences; q is a positive integer.

[0102] When the number of iterations is less than the set threshold, that is, during the iteration of the key sequence, with a set probability P a Discard some of the position sequences in the position sequence set. And based on the position sequences in the position sequence set, generate new third position sequences through local search and add them to the position sequence set.

[0103] In this way, based on the better position sequences in the position sequence set, explore better position sequences near the position sequences through local search, thereby accelerating the process of finding the optimal solution, reducing the number of iterations, and improving the efficiency of the path planning process.

[0104] In one embodiment, after generating the delivery paths for m delivery areas based on the position sequence set, the method further includes:

[0105] Display the generated delivery paths on the set interface.

[0106] Combined with Figure 5 , by calling the map component, at least one generated delivery path is displayed on the set interface to form a visual delivery route to guide the courier to deliver goods, improving the efficiency of goods delivery.

[0107] Next, the present application will be further described in detail in combination with application embodiments.

[0108] In the related art, for goods delivery at the community level in the logistics scenario, the courier makes path planning with multiple objectives such as the shortest delivery distance and the lowest overtime rate based on experience. When manually planning the delivery path, it is difficult to take into account multiple objectives. Based on such a delivery path for goods delivery, there is a problem of low delivery efficiency. Figure 6 Shows a schematic diagram of the implementation process of path planning provided by an application embodiment of the present application.

[0109] Input the goods information. Among them, the goods information includes but is not limited to: delivery location, expected delivery time, goods name, goods attributes. Here, the delivery location affects the result of clustering the delivery areas, the expected delivery time affects the priority of each delivery area in the delivery path, and the goods attributes characterize the attributes that affect the delivery path planning result, including but not limited to: whether it is fresh, whether it is a fragile item.

[0110] Cluster the goods according to whether the delivery locations of the goods belong to the same delivery area. The clustering standard is the delivery area with the smallest granularity of the community. In practical applications, each community has a unified and centralized express logistics management method, and it is most suitable to use the community as the clustering standard.

[0111] Build a delivery route planning model, with the multi-objectives of the shortest global delivery distance and the minimum delivery overtime rate.

[0112] The delivery overtime rate can be calculated by formula (1):

[0113]

[0114] Where: n represents the total number of goods to be delivered, t k represents the actual delivery time of the k-th piece of goods, and T k represents the expected delivery time of the recipient of the k-th piece of goods.

[0115] Here, with the goal of minimizing the delivery overtime rate, the model makes deliveries based on the planned route, which can ensure the minimum delivery overtime rate and improve the recipient's experience.

[0116] The global delivery distance can be calculated by formula (2):

[0117]

[0118] Where: m represents the total number of delivery locations.

[0119] Here, with the goal of the shortest delivery distance, the model makes deliveries based on the planned route, which can improve the delivery efficiency, reduce the requirements for couriers, and enhance the delivery experience of couriers.

[0120] Here, d ij can be the map distance between two points. By abstracting the community into location points and connecting to the map component, the location point information is visually presented on the map in the form of longitude and latitude coordinates, and the map distance between two points is determined based on the map component.

[0121] Generate a random key sequence for the location points, and encode and decode the random key sequence of the location points.

[0122] Combined with Figure 3 , in the random key sequence encoding, generate a random key sequence. Each key value key in the key sequence is randomly generated within the range of [0, 1]. Each key represents the key value configured for the location point, and the location sequence is determined based on the size of the key value. Here, the corresponding location sequence can be determined in ascending order of the key values in the corresponding key sequence.

[0123] Since L5 has the smallest key value of 0.2, L5 is set at the first position in the determined position sequence, that is, the first delivery position point. Since L4 has the second smallest key value of 0.3, L4 is the second delivery position point. According to this decoding process, the final position sequence is [L5, L4, L2, L1, L3]. During the algorithm iteration process, the key sequence will be continuously updated, and the position sequence will also be updated and adjusted. Combining Figure 4 , the Levy Flight value changes the key value of the key sequence in the t-th generation, generates the key value of the (t + 1)-th generation key sequence, and generates the corresponding position sequence, which changes from [L5, L4, L2, L1, L3] to [L4, L5, L2, L1, L3]. The final result of the algorithm iteration is to find the position sequence that satisfies the minimum delivery distance and timeout rate.

[0124] The multi-objective cuckoo algorithm is applied to solve the model. Each cuckoo lays K eggs at a time and places them in randomly selected nests, where egg k represents the solution of the k-th objective function. The best nests and high-quality eggs (solutions) will continue to the next generation. According to the similarity and difference of the eggs, the probability of abandoning eggs in each nest is P a , and a new nest with K eggs is built after abandoning the eggs.

[0125] Levy Flight is a random walk, intermittent, scale-free search algorithm. The Levy Flight search can be expressed by formula (3) as:

[0126]

[0127] where, is the solution in the t-th generation; α is the step size scaling factor; L(s, λ) is the Levy Flight search.

[0128] The Levy Flight search L(s, λ) can be expressed by formula (4) as:

[0129]

[0130] where, s is the step size; λ is the exponent of the gamma function.

[0131] The gamma function λ can be expressed by formula (5) as:

[0132]

[0133] Local search is another random walk search method, which is relatively stable. Local search is expressed by formula (6) as:

[0134]

[0135] where r and ε are random numbers following a uniform distribution; Heaviside(x) is the step function; P a is the proportion of discarded solutions / nests; is any solution / nest in the t-th generation of solutions.

[0136] Compared with the randomness of Levy Flight, local random walks have a certain directionality, maximizing the use of information from existing position points.

[0137] When the algorithm obtains the Pareto optimal solution and reaches the maximum number of iterations (set threshold), the algorithm terminates the iteration and outputs the Pareto solution set, which is the set of optimal delivery routes.

[0138] Here, taking the search method including two methods: global Levy Flight search and local search as an example, the algorithm is described.

[0139] Taking formulas (1) and (2) as two objective functions, an initial population (i.e., solution set) x of n nests / solutions is generated i and 2 eggs / objectives are produced in each nest

[0140] When t is less than the set maximum number of iterations,

[0141] Based on the key sequence, a new key sequence is generated through Levy Flight, and a corresponding position sequence is generated, updating the iteration number.

[0142] Evaluate the two objective parameters of the generated nest p (position sequence) to check whether it belongs to the Pareto optimal solution. Here, by randomly selecting a nest q from n nests, evaluate the 2 eggs / objectives of nest q. If nest p Pareto dominates nest q, replace nest q with nest p.

[0143] And, with a certain probability P a Abandon a part of the inferior solutions (position sequences), and generate a new solution through local search. Save the high-quality nests based on formula (6) and arrange the solutions to find the current non-inferior solutions.

[0144] Here, the specific actual delivery time (DT, Distribution Time) is proportional to the quantity of goods to be delivered at that location and can be calculated by formula (7) to determine the delivery time period of the delivery area corresponding to each location point:

[0145] DT i = k × N i (7)

[0146] where DT i represents the time when the courier is at location L iThe time required to deliver goods at a location; k represents the average time required to deliver one piece of goods, which can be set to 5 minutes per piece; N i represents the number of goods that the courier needs to deliver at location L i at the location.

[0147] In the case of 6 pieces of goods at a location point in a delivery area, it will stay in this delivery area for 30 minutes. In this way, combined with the visualization function of the map component, the location points can be connected in sequence according to the location sequence to form Figure 5 the visualized delivery route shown, guiding the courier to deliver goods.

[0148] Goods are clustered with the community as the smallest granularity, and a path planning model is established with the goals of the shortest global delivery path and the minimum overtime rate. Based on the algorithm, the optimal route is searched. Before delivery, the goods are clustered according to the delivery location. During delivery, with the goals of the shortest delivery distance and the minimum overtime rate, the globally optimal goods delivery route is planned in real time. Moreover, by accessing the map component, a visualized delivery route is formed to guide the courier to deliver goods. In this way, the delivery efficiency of the last mile of the end is improved, and the experience of the recipient and the courier is enhanced.

[0149] To implement the method of the embodiments of the present application, the embodiments of the present application also provide a path planning device, as Figure 7 shown, the device includes:

[0150] A first processing unit 701, configured to generate a set of key sequences including n key sequences; each key sequence includes m first elements; each first element corresponds to a key value representing a delivery area configuration;

[0151] A second processing unit 702, configured to obtain a corresponding set of location sequences by iterating the key sequences in the set of key sequences; the set of location sequences represents a set of location sequences;

[0152] A third processing unit 703, configured to generate delivery paths for m delivery areas based on the set of location sequences; where

[0153] both m and n are positive integers greater than 1.

[0154] Wherein, in one embodiment, the second processing unit 702 is configured to:

[0155] Generate a corresponding location sequence for each key sequence in the set of key sequences to obtain a set of location sequences;

[0156] When the number of iterations is less than the set threshold, update the key sequences in the set of key sequences, update the number of iterations, and update the set of position sequences based on the first position sequence when the solution set of the first position sequence and the solution set of the second position sequence satisfy the set relationship; wherein, the first position sequence represents the position sequence corresponding to the updated key sequence; the second position sequence is a position sequence selected from the set of position sequences; the solution set of the first position sequence and the solution set of the second position sequence are obtained by solving each of the p set target functions;

[0157] When the number of iterations is greater than or equal to the set threshold, output the set of position sequences;

[0158] Wherein, p is a positive integer.

[0159] In one embodiment, the p is a positive integer greater than 1; the solution set of the position sequences includes the solutions corresponding to each of the p set target functions.

[0160] In one embodiment, the set relationship means that the solution set of the first position sequence Pareto dominates the solution set of the second position sequence.

[0161] In one embodiment, the p set target functions include at least one of the following:

[0162] Map distance target function;

[0163] Timeout rate target function.

[0164] In one embodiment, when the number of iterations is less than the set threshold, the second processing unit 702 is further configured to:

[0165] Generate q third position sequences through local search;

[0166] Update the set of position sequences with the q generated third position sequences; q is a positive integer.

[0167] In one embodiment, the device further includes:

[0168] A display unit for displaying the generated delivery path on a set interface.

[0169] In actual application, the first processing unit 701, the second processing unit 702, the third processing unit 703, and the display unit can be implemented by a processor in the path planning device, such as a central processing unit (CPU), a digital signal processor (DSP), a microcontroller unit (MCU), or a field-programmable gate array (FPGA).

[0170] It should be noted that when the path planning device provided in the above embodiment performs path planning, only the division of the above program modules is used as an example for illustration. In actual application, the above processing can be allocated to different program modules according to needs, that is, the internal structure of the device is divided into different program modules to complete all or part of the processing described above. In addition, the path planning device provided in the above embodiment and the path planning method embodiment belong to the same concept. For the specific implementation process, please refer to the method embodiment, which will not be elaborated here.

[0171] Based on the hardware implementation of the above program modules, and in order to implement the path planning method of the embodiments of the present application, the embodiments of the present application also provide an electronic device. Figure 8 The following is a schematic diagram of the hardware composition structure of the electronic device according to the embodiments of the present application. As Figure 8 shown, the electronic device includes:

[0172] A communication interface 1, capable of interacting with other devices such as network devices.

[0173] A processor 2, connected to the communication interface 1 to implement information interaction with other devices, and used to execute the method provided by the above one or more technical solutions when running a computer program. And the computer program is stored on the memory 3.

[0174] Of course, in actual application, each component in the electronic device is coupled together through a bus system 4. It can be understood that the bus system 4 is used to realize the connection and communication between these components. In addition to the data bus, the bus system 4 also includes a power bus, a control bus, and a status signal bus. However, for the sake of clear illustration, in Figure 8 all kinds of buses are labeled as the bus system 4.

[0175] The memory 3 in the embodiments of the present application is used to store various types of data to support the operation of the electronic device. Examples of these data include: any computer program for operating on the electronic device.

[0176] It can be understood that the memory 3 can be a volatile memory or a non-volatile memory, or can include both volatile and non-volatile memories. Among them, the non-volatile memory can be a read-only memory (ROM, Read Only Memory), a programmable read-only memory (PROM, Programmable Read-Only Memory), an erasable programmable read-only memory (EPROM, Erasable Programmable Read-Only Memory), an electrically erasable programmable read-only memory (EEPROM, Electrically Erasable Programmable Read-Only Memory), a ferromagnetic random access memory (FRAM, ferromagnetic random access memory), a flash memory (Flash Memory), a magnetic surface memory, an optical disc, or a compact disc read-only memory (CD-ROM, Compact Disc Read-Only Memory); the magnetic surface memory can be a disk memory or a tape memory. The volatile memory can be a random access memory (RAM, Random Access Memory), which is used as an external cache. By way of example but not limitation, many forms of RAM are available, such as a static random access memory (SRAM, Static Random Access Memory), a synchronous static random access memory (SSRAM, Synchronous Static Random Access Memory), a dynamic random access memory (DRAM, Dynamic Random Access Memory), a synchronous dynamic random access memory (SDRAM, Synchronous Dynamic Random Access Memory), a double data rate synchronous dynamic random access memory (DDR SDRAM, Double Data Rate Synchronous Dynamic Random Access Memory), an enhanced synchronous dynamic random access memory (ESDRAM, Enhanced Synchronous Dynamic Random Access Memory), a sync link dynamic random access memory (SLDRAM, SyncLink Dynamic Random Access Memory), a direct rambus random access memory (DRRAM, Direct Rambus Random Access Memory).The memory 2 described in the embodiments of the present application is intended to include but not limited to these and any other suitable types of memories.

[0177] The method disclosed in the embodiments of the present application above can be applied to the processor 2 or implemented by the processor 2. The processor 2 may be an integrated circuit chip with the ability to process signals. During implementation, each step of the above method can be completed by the integrated logic circuit in the hardware of the processor 2 or by instructions in the form of software. The above-mentioned processor 2 may be a general-purpose processor, a DSP, or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The processor 2 can implement or execute the various methods, steps, and logic block diagrams disclosed in the embodiments of the present application. The general-purpose processor may be a microprocessor or any conventional processor, etc. Combining the steps of the method disclosed in the embodiments of the present application, it can be directly embodied as being executed and completed by the hardware decoding processor, or executed and completed by a combination of the hardware and software modules in the decoding processor. The software module may be located in a storage medium, and this storage medium is located in the memory 3. The processor 2 reads the program in the memory 3 and combines its hardware to complete the steps of the foregoing method.

[0178] When the processor 2 executes the program, it implements the corresponding processes in the various methods of the embodiments of the present application. For the sake of brevity, it will not be elaborated here.

[0179] In an exemplary embodiment, the embodiments of the present application also provide a storage medium, namely a computer storage medium, specifically a computer-readable storage medium, such as the memory 3 including a stored computer program. The above computer program can be executed by the processor 2 to complete the steps of the foregoing method. The computer-readable storage medium may be a FRAM, ROM, PROM, EPROM, EEPROM, Flash Memory, magnetic surface memory, optical disc, or CD-ROM, etc.

[0180] In several embodiments provided by the present application, it should be understood that the disclosed devices, electronic devices, and methods can be implemented in other ways. The device embodiments described above are only illustrative. For example, the division of the units is only a logical function division. In actual implementation, there may be other division methods, such as: multiple units or components can be combined, or can be integrated into another system, or some features can be ignored, or not executed. In addition, the coupling, direct coupling, or communication connection between the components shown or discussed with each other may be through some interfaces. The indirect coupling or communication connection of the devices or units may be electrical, mechanical, or other forms.

[0181] The units described above as separate components may or may not be physically separated. The components shown as units may or may not be physical units, that is, they may be located in one place or distributed over multiple network units; some or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0182] In addition, each functional unit in the embodiments of the present application may all be integrated into one processing unit, or each unit may be separately regarded as one unit, or two or more units may be integrated into one unit; the above-mentioned integrated units may be implemented in the form of hardware, or in the form of a combination of hardware and software functional units.

[0183] Those of ordinary skill in the art can understand that all or part of the steps of implementing the above method embodiments can be completed by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When the program is executed, it performs the steps including the above method embodiments; and the aforementioned storage medium includes: removable storage devices, ROM, RAM, magnetic disks or optical disks, etc., which can store program codes.

[0184] Alternatively, if the above-mentioned integrated units of the present application are implemented in the form of software functional modules and sold or used as independent products, they can also be stored in a computer-readable storage medium. Based on such an understanding, the technical solution of the embodiments of the present application essentially or the part that contributes to the prior art can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the methods described in the embodiments of the present application. And the aforementioned storage medium includes: removable storage devices, ROM, RAM, magnetic disks or optical disks, etc., which can store program codes.

[0185] It should be noted that the technical solutions described in the embodiments of the present application can be combined arbitrarily without conflict. Unless otherwise stated and limited, the term "connection" should be understood in a broad sense. For example, it can be an electrical connection, or the connection inside two components, it can be directly connected, or indirectly connected through an intermediate medium. For those of ordinary skill in the art, the specific meaning of the above terms can be understood according to specific circumstances.

[0186] In addition, in the examples of the present application, "first", "second", etc. are used to distinguish similar objects, and do not have to be used to describe a specific order or sequence. It should be understood that the objects distinguished by "first / second / third" can be interchanged under appropriate circumstances, so that the embodiments of the present application described here can be implemented in an order other than those illustrated or described here.

[0187] As used herein, the term "and / or" is merely a description of the relationship between associated objects, indicating that there can be three relationships. For example, A and / or B can represent: A exists alone, A and B exist simultaneously, and B exists alone. Additionally, the term "at least one" as used herein means any one of a plurality or any combination of at least two of a plurality. For example, including at least one of A, B, and C can represent including any one or more elements selected from the set composed of A, B, and C.

[0188] As described above, this is only the specific implementation manner of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art within the technical scope disclosed by the present application can easily think of changes or substitutions, which should all be covered within the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claimed rights.

[0189] For the various specific technical features in the various embodiments described in the specific implementation manner, various combinations can be made without conflict. For example, different embodiments can be formed by combining different specific technical features. To avoid unnecessary repetition, various possible combination methods of the various specific technical features in the present application will not be described separately.

Claims

1. A path planning method, characterized in that, The method includes: Generating a key sequence set including n key sequences; each key sequence includes m first elements; each first element corresponds to a key value representing a delivery area configuration; Obtaining a corresponding position sequence set by iterating the key sequences in the key sequence set; the position sequence set represents a set of position sequences; Generating delivery routes for m delivery areas based on the position sequence set; where Both m and n are positive integers greater than 1; where, the obtaining a corresponding position sequence set by iterating the key sequences in the key sequence set includes: Generating a corresponding position sequence for each key sequence in the key sequence set to obtain a position sequence set; When the number of iterations is less than a set threshold, updating the key sequences in the key sequence set, updating the number of iterations, and when the solution set of the first position sequence and the solution set of the second position sequence satisfy a set relationship, replacing the second position sequence in the position sequence set with the first position sequence to obtain an updated position sequence set; where the first position sequence represents the position sequence corresponding to the updated key sequence; the second position sequence is a position sequence selected from the position sequence set; the solution set of the first position sequence and the solution set of the second position sequence are obtained by solving each of p set target functions; When the number of iterations is greater than or equal to the set threshold, outputting the position sequence set; where, p is a positive integer.

2. The method according to claim 1, wherein The p is a positive integer greater than 1; the solution set of the position sequence includes the solution corresponding to each of the p set target functions.

3. The method according to claim 2, wherein The set relationship indicates that the solution set of the first position sequence Pareto dominates the solution set of the second position sequence.

4. The method according to any one of claims 1 to 3, characterized in that, The p set target functions include at least one of the following: Map distance target function; Timeout rate target function.

5. The method according to claim 1, characterized in that, When the number of iterations is less than the set threshold, the method further includes: Generating q third position sequences through local search; Updating the position sequence set with the q generated third position sequences; q is a positive integer.

6. The method according to claim 1, wherein After generating delivery routes for m delivery areas based on the position sequence set, the method further includes: Displaying the generated delivery routes on a set interface.

7. A path planning device, characterized in that, Including: A first processing unit for generating a key sequence set including n key sequences; Each key sequence includes m first elements; each first element corresponds to a key value representing a delivery area configuration; A second processing unit for obtaining a corresponding position sequence set by iterating the key sequences in the key sequence set; the position sequence set represents a set of position sequences; A third processing unit for generating delivery routes for m delivery areas based on the position sequence set; where Both m and n are positive integers greater than 1; The third processing unit is further configured to generate a corresponding position sequence for each key sequence in the key sequence set to obtain a position sequence set; When the number of iterations is less than the set threshold, update the key sequences in the set of key sequences, update the number of iterations, and when the solution set of the first position sequences and the solution set of the second position sequences satisfy the set relationship, replace the second position sequence in the set of position sequences with the first position sequence to obtain an updated set of position sequences; wherein, the first position sequence represents the position sequence corresponding to the updated key sequence; the second position sequence is the position sequence selected from the set of position sequences; the solution set of the first position sequences and the solution set of the second position sequences are obtained by solving each of the p set target functions; When the number of iterations is greater than or equal to the set threshold, output the set of position sequences; wherein, p is a positive integer.

8. An electronic device, characterized in that, It includes: a processor and a memory for storing a computer program that can run on the processor, wherein, when the processor is used to run the computer program, it executes the steps of the method according to any one of claims 1 to 6.

9. A storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it realizes the steps of the method according to any one of claims 1 to 6.

Citation Information

Patent Citations

  • Method and device used for path planning

    CN108492068A