Method and device for generating distribution plan

By dividing and adjusting the distribution location collection in the target time stage of the e-commerce platform, the distribution plan is generated, and the problem of low generation efficiency of distribution plan in the existing technology is solved, and fast and efficient distribution plan generation is achieved.

CN112801593BActive Publication Date: 2025-03-18BEIJING DIDI INFINITY TECH & DEV CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202110182207.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-02-09
Publication Date
2025-03-18
Estimated Expiration
2041-02-09

AI Technical Summary

Technical Problem

The prior art is difficult to quickly generate efficient delivery solutions in e-commerce platforms, resulting in inefficient delivery and affecting user experience.

Method used

By dividing multiple delivery locations into location sets in the target time phase and adjusting these location sets after the cargo information is confirmed, a delivery plan associated with the multiple delivery locations is generated.

Benefits of technology

It improves the efficiency of distribution plan generation and can generate reasonable distribution plans in a short time to meet the rapid delivery needs of e-commerce platforms.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN112801593B_ABST
    Figure CN112801593B_ABST
Patent Text Reader

Abstract

According to an embodiment of the present disclosure, a method, apparatus, device, storage medium and program product for generating a distribution plan are provided. The method proposed herein includes: in a target time phase, based at least on the geographic information of the multiple distribution locations, dividing the multiple distribution locations into multiple location sets, and the cargo information to be distributed at the multiple distribution locations is variable within the target time phase; in response to the expiration of the target time phase, adjusting the multiple location sets based at least on the confirmed cargo information of the multiple distribution locations; and generating distribution plans associated with the multiple distribution locations based on the adjusted multiple location sets. Based on this approach, the generation process of the distribution plan can be performed in stages, thereby improving the efficiency of generating the distribution plan.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Embodiments of the present disclosure generally relate to the field of computer technology, and more specifically, to a method, apparatus, device, storage medium, and program product for generating a delivery plan. Background Art

[0002] With the development of e-commerce, being able to deliver the goods purchased by users to the location specified by users in a timely manner is an important link that affects user experience. For e-commerce platforms, the delivery of goods depends on business modules such as routing and path planning. Routing means combining multiple orders to form the same goods delivery route to arrange the same delivery party (for example, delivery vehicle) for delivery. Path planning is used to guide the delivery party on which route to deliver multiple orders in sequence.

[0003] Currently, users are becoming more and more enthusiastic about e-commerce, and the number of orders that need to be planned is increasing. Route and route planning usually takes a lot of time. However, e-commerce platforms are in urgent need of generating delivery plans as soon as possible to facilitate the delivery party to deliver the goods in a timely manner. Therefore, how to improve the efficiency of generating delivery plans has become the focus of current attention. Summary of the invention

[0004] According to some embodiments of the present disclosure, a solution for generating a delivery solution is provided.

[0005] In a first aspect of the present disclosure, a method for generating a distribution plan is provided. The method includes: in a target time period, based at least on geographic information of the multiple distribution locations, dividing the multiple distribution locations into multiple location sets, wherein the cargo information to be distributed at the multiple distribution locations is variable within the target time period; in response to the expiration of the target time period, adjusting the multiple location sets based at least on confirmed cargo information of the multiple distribution locations; and generating a distribution plan associated with the multiple distribution locations based on the adjusted multiple location sets.

[0006] In a second aspect of the present disclosure, a device for generating a distribution plan is provided. The device includes: a division module configured to divide a plurality of distribution locations into a plurality of location sets at a target time period based at least on geographic information of the plurality of distribution locations, wherein the cargo information to be distributed at the plurality of distribution locations is variable within the target time period; an adjustment module configured to adjust the plurality of location sets based at least on confirmed cargo information of the plurality of distribution locations in response to expiration of the target time period; and a generation module configured to generate a distribution plan associated with the plurality of distribution locations based on the adjusted plurality of location sets.

[0007] In a third aspect of the present disclosure, an electronic device is provided, comprising one or more processors and a memory, wherein the memory is used to store computer executable instructions, and the computer executable instructions are executed by the one or more processors to implement the method according to the first aspect of the present disclosure.

[0008] In a fourth aspect of the present disclosure, a computer-readable storage medium is provided, on which computer-executable instructions are stored, wherein the computer-executable instructions implement the method according to the first aspect of the present disclosure when executed by a processor.

[0009] In a fifth aspect of the present disclosure, a computer program product is provided, comprising computer executable instructions, wherein the computer executable instructions implement the method according to the first aspect of the present disclosure when executed by a processor.

[0010] According to the embodiments of the present disclosure, the generation process of the distribution plan can be performed in stages, thereby improving the efficiency of generating the distribution plan. Specifically, a rough arrangement can be performed after the distribution location is determined, and an adjustment can be performed after the cargo information is determined, thereby improving the efficiency of generating the distribution plan.

[0011] This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the present disclosure, nor is it intended to limit the scope of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS

[0012] The above and other features, advantages and aspects of the embodiments of the present disclosure will become more apparent with reference to the following detailed description in conjunction with the accompanying drawings. In the accompanying drawings, the same or similar reference numerals represent the same or similar elements, wherein:

[0013] Figure 1 A block diagram illustrating an example environment in which embodiments of the present disclosure can be implemented;

[0014] Figure 2 A flowchart showing a process of generating a delivery plan according to some embodiments of the present disclosure;

[0015] Figure 3 A schematic diagram showing adjustment of multiple position sets according to some embodiments of the present disclosure is shown;

[0016] Figure 4 A block diagram showing an apparatus for generating a delivery plan according to some embodiments of the present disclosure; and

[0017] Figure 5 A block diagram of an electronic device is shown in which one or more embodiments of the present disclosure may be implemented. DETAILED DESCRIPTION

[0018] Some example embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although some embodiments of the present disclosure are shown in the accompanying drawings, it should be understood that the present disclosure can be implemented in various forms and should not be limited by the embodiments set forth herein. On the contrary, these embodiments are provided to make the present disclosure more thorough and complete, and to fully convey the scope of the present disclosure to those skilled in the art.

[0019] As used herein, the term "including" and its variations mean open inclusion, i.e., "including but not limited to". Unless otherwise stated, the term "or" means "and / or". The term "based on" means "based at least in part on". The terms "an example embodiment" and "an embodiment" mean "at least one example embodiment". The term "another embodiment" means "at least one additional embodiment". The terms "first", "second", etc. may refer to different or the same objects. Other explicit and implicit definitions may also be included below.

[0020] As discussed above, with the increasing enthusiasm of users for e-commerce, there are usually a large number of orders that need to be delivered, which requires the e-commerce platform to quickly generate delivery plans to arrange for the corresponding delivery parties to execute the delivery of the corresponding orders.

[0021] Taking the community group buying platform as an example, the deadline for users to "group order" is, for example, 11:00 p.m., which requires the community group buying platform to complete steps such as arranging lines, arranging delivery parties, and route planning in a short period of time. Subsequent business processes, such as cargo sorting and delivery party loading, all rely on the delivery plan of the community group buying platform. However, since arranging lines and route planning themselves are extremely time-complex problems, insufficient computing time may lead to the rationality of the generated delivery plan. Therefore, how to improve the efficiency of generating delivery plans has become the current focus of attention.

[0022] In view of this, an embodiment of the present disclosure proposes a scheme for generating a distribution plan. In the scheme, first, in a target time period, based at least on the geographic information of the multiple distribution locations, multiple distribution locations are divided into multiple location sets, wherein the cargo information to be distributed at the multiple distribution locations is variable within the target time period. Subsequently, in response to the expiration of the target time period, the multiple location sets are adjusted based at least on the confirmed cargo information of the multiple distribution locations. The adjusted multiple location sets can be used to generate a distribution plan associated with the multiple distribution locations.

[0023] Unlike traditional solutions that require arranging lines only after the goods information is confirmed, according to such a solution, the embodiments of the present disclosure can start rough arrangement after the delivery location (for example, the location of the group leader) is confirmed, and use the goods information to perform fine arrangement after the goods to be delivered at the delivery location are confirmed, thereby improving the efficiency of generating delivery plans.

[0024] Some example embodiments of the present disclosure will be described below with continued reference to the accompanying drawings.

[0025] Example Environment

[0026] Figure 1 1 shows a block diagram of an example environment 100 in which embodiments of the present disclosure can be implemented. Figure 1 As shown, the environment 100 includes a computing device 130 configured to generate a delivery plan 140 associated with a plurality of delivery locations 110 for goods to be delivered. In some implementations, the computing device 130 can be any suitable type of electronic device. Exemplarily, the computing device 130 can be a server for generating a delivery plan.

[0027] In some implementations, the multiple delivery locations 110 may be indicated by coordinate values ​​to correspond to specific locations of the goods to be delivered in the real world. Alternatively, the multiple delivery locations 110 may also be represented by POIs, for example.

[0028] For example, in a community group buying scenario, the delivery location 110 may represent the location corresponding to the “group leader” of the group order, and the group buying application needs to arrange transportation to deliver the corresponding goods to multiple “group leaders”.

[0029] In some implementations, the delivery plan 140 may include grouping information of multiple delivery locations 110 to indicate which delivery locations are delivered by the same delivery party. Figure 1 As an example, multiple delivery locations may be divided into two location sets 165 and 170 to indicate that the delivery locations in location set 165 will be delivered by the same vehicle, while the delivery locations in location set 170 will be delivered by another vehicle.

[0030] In some implementations, the delivery plan 140 may also indicate the delivery parties corresponding to the location sets. For example, the location set 165 may be delivered by the delivery party 150 , and the location set 170 may be delivered by the delivery party 160 .

[0031] In some implementations, the delivery parties 150 and 160 may indicate a vehicle (eg, a truck) responsible for delivery, a person (eg, a driver) responsible for delivery, or an organization responsible for delivery, among others.

[0032] In some implementations, the delivery plan 140 may also include a delivery path corresponding to the location set to indicate the delivery order of the delivery locations in the location set. In some implementations, the delivery path may indicate a path starting from the starting point 120 and sequentially passing through the delivery locations in the location set. Figure 1 As described above, the delivery path 145 corresponds to the location set 165, and the delivery path 155 corresponds to the location set 170. For example, the starting point 120 may represent a cargo warehouse or a loading location.

[0033] In some implementations, the delivery path may also include a route from the last delivered delivery location to the destination ( Figure 1 The destination may be, for example, a parking lot of the delivery party, the driver's home, or other appropriate location. In some implementations, the destination may also be specified by the delivery party.

[0034] The detailed process of generating the delivery plan 140 will be described below. Figure 2 A detailed description is not given here.

[0035] Example Process

[0036] The following will be combined Figure 2 The process of generating a delivery plan according to an embodiment of the present disclosure is described in detail. Figure 2 FIG. 2 is a schematic diagram of a process 200 for generating a delivery plan according to some embodiments of the present disclosure. Figure 1 Let's discuss the process of generating a delivery plan. Process 200 can be, for example, Figure 1 The process 200 is executed at the computing device 130 shown. It should be understood that the process 200 may also include blocks not shown and / or may omit blocks shown. The scope of the present disclosure is not limited in this regard.

[0037] like Figure 2 As shown, in box 202, during the target time period, the computing device 130 divides the multiple delivery locations 110 into multiple location sets based at least on the geographic information of the multiple delivery locations 110, wherein the cargo information to be delivered at the multiple delivery locations is variable during the target time period.

[0038] As discussed above, taking the community group purchase application as an example, it can, for example, prohibit adding new group leaders or revoke existing group leaders after 9 p.m. That is, after 9 p.m., the group leaders who need to deliver goods have been confirmed. Accordingly, the computing device 130 can, for example, determine multiple delivery locations 110 based on the information of the group leaders of the goods to be delivered.

[0039] In some implementations, after the multiple delivery locations 110 are confirmed, the computing device 130 may group the multiple delivery locations 110 based on the geographic information of the multiple delivery locations 110, regardless of whether the delivery cargo information at each delivery location 110 changes.

[0040] In some implementations, computing device 130 may determine travel costs between different delivery locations based at least on geographic information, wherein the delivery costs include at least one of straight-line distance, navigation distance, or navigation time between different delivery locations. Additionally, computing device 130 may cluster multiple delivery locations based on the travel costs to determine multiple location sets.

[0041] In some implementations, computing device 130 may determine straight-line distances (also referred to as Manhattan distances) between different delivery locations 110 based on geographic information (eg, expressed in latitude and longitude) to construct a distance matrix.

[0042] Subsequently, the computing device 130 may generate a vector for each delivery location based on the distance matrix, and perform constrained clustering based on the vector. In this way, the computing device 130 may preferentially cluster delivery locations with a shorter straight-line distance into the same location set.

[0043] In some implementations, the computing device 130 may also construct a navigation time matrix and / or a navigation distance matrix for the multiple delivery locations 110 , considering that the straight-line distance between two delivery locations may be short but the navigation distance between them may be long.

[0044] Similarly, during the clustering process, the computing device 130 may not only consider the distance matrix generated based on the straight-line distance, but may also consider the navigation time matrix and / or the navigation distance matrix, so as to make the grouping more reasonable.

[0045] In some implementations, the computing device 130 may also be based on historical delivery plans associated with the plurality of delivery locations 110 during the clustering process. On the one hand, considering that some historical delivery plans are made by experts, the rationality of the grouping can be improved by considering the historical delivery plans. On the other hand, the delivery party generally also expects that the delivery locations it is responsible for delivering are fixed.

[0046] Specifically, the computing device 130 may determine the number of historical co-linearities between two delivery locations within a predetermined time period, that is, the number of times they were grouped into the same location set, based on historical delivery plans. For example, the computing device 130 may determine that two delivery locations were grouped into the same location set for 6 days in the past week.

[0047] Similarly, such historical collinearity numbers may also be converted into a collinearity matrix to serve as a basis for the computing device 130 to cluster the plurality of delivery locations 110 .

[0048] In some implementations, in order to improve the efficiency of clustering and the adjustment described later, the computing device 130 may also prepare basic data before clustering. Specifically, the computing device 130 may generate basic data for the division process or the adjustment process at the target time stage, wherein the basic data includes at least one of the following: coordinate information of the delivery location, navigation distance between different delivery locations, straight-line distance between different delivery locations, navigation time between different delivery locations, or historical collinear information between different delivery locations, wherein the historical collinear information indicates whether different delivery locations have been delivered by the same delivery party.

[0049] Considering that such basic information requires a long calculation time and can be subsequently applied to multiple stages such as routing and path planning, by preferentially preparing basic data, the embodiments of the present disclosure can further improve the efficiency of generating delivery plans.

[0050] In some implementations, after the plurality of delivery locations 110 are divided into a plurality of location sets based on clustering, if the target time period has not expired, the computing device 130 may further adjust the clustered plurality of location sets based on a neighborhood search method.

[0051] After clustering-based grouping, the delivery locations in the same location set are closer in distance. However, such grouping is only a rough division, and it does not take into account the number of delivery locations in each set and the information of the goods to be delivered at each delivery location. For example, the total weight or total volume of the goods to be delivered of all the delivery locations included in some location sets exceeds the upper limit of the vehicle, resulting in one vehicle being unable to complete the delivery. Or, there are too few delivery locations in some location sets, resulting in a low vehicle load.

[0052] In order to adjust the accuracy of the grouping, the computing device 130 may, for example, use an adaptive large neighborhood search (ALNS) technology to adjust the grouping of multiple delivery locations.

[0053] Figure 3 A schematic diagram of adjusting grouping based on ALNS according to an embodiment of the present disclosure is shown. Figure 3 Figure (A) shows the initial grouping, Figure (B) shows the Destroy stage, and Figure (C) shows the Repair stage. Accordingly, the location set can be represented as an undirected graph to indicate the corresponding lines.

[0054] Specifically, the destruction phase refers to deleting some or all of the delivery locations in one or several location sets from the existing location sets; the repair phase refers to adding the deleted delivery locations to other location sets in a certain way, or creating some new location sets for them.

[0055] In some implementations, the computing device 130 may perform the destruction phase based on a cluster destruction operator. Specifically, the computing device 130 may destroy all delivery locations in a specific area, that is, remove the delivery locations from the corresponding routes. Exemplarily, the computing device 130 may randomly select a delivery location as the center and destroy all delivery locations within a predetermined distance from the delivery location.

[0056] In some implementations, the computing device 130 may also use a convex hull operator to perform the destruction phase. Specifically, the computing device 130 may calculate the convex hull area of ​​each route, and remove the delivery locations that may cause the convex hull area to drop sharply from the route, thereby achieving a better routing effect. By reducing the convex hull area, the embodiments of the present disclosure may improve the cohesion of the location set, thereby reducing the travel distance of the delivery party to perform the delivery of goods.

[0057] In some implementations, the computing device 130 may also utilize a neighbor path destruction operator to perform the destruction phase. Specifically, the computing device 130 may destroy one or more neighbor lines that are close to a route and the route, thereby resolving some route interlacing issues.

[0058] In some implementations, the computing device 130 may utilize a minimum spanning tree repair operator to perform the repair phase. Specifically, the computing device 130 may preferentially add the deleted route to the route with the shortest minimum spanning tree distance when adding it back.

[0059] In some implementations, the computing device 130 may utilize a historical collinearity repair operator to perform the repair phase. Specifically, the computing device 130 may prioritize adding a delivery location to the route that has the greatest improvement in the historical collinearity.

[0060] In some implementations, the computing device 130 may use a minimum cut repair operator to perform the repair phase. Specifically, the computing device 130 may aggregate the delivery locations of the multiple routes after the damage to form a fully connected graph, and then generate one or more routes from the fully connected graph according to the minimum cut algorithm.

[0061] In some implementations, if the target time period has not expired, computing device 130 may perform the ALNS-based adjustment multiple times.

[0062] At block 204 , in response to the target time period expiring, computing device 130 adjusts the plurality of sets of locations based at least on the confirmed shipment information for the plurality of delivery locations 110 .

[0063] Taking the community group buying scenario as an example, for example, at 11 o'clock in the evening, users will no longer be allowed to add new orders or delete existing orders, that is, the information of goods to be delivered at multiple delivery locations 110 can be confirmed.

[0064] Accordingly, the computing device 130 may perform adjustments for the multiple location sets based on the confirmed cargo information and, for example, based on the ALNS algorithm described above. It should be understood that the multiple location sets adjusted here may, for example, be multiple location sets adjusted once or multiple times by the ALNS algorithm during the target time period.

[0065] In some implementations, computing device 130 may adjust the plurality of location combinations according to the agreed delivery constraints. Specifically, computing device 130 may adjust the plurality of location sets so that the adjusted plurality of location sets satisfy the predetermined delivery constraints.

[0066] In some implementations, the delivery constraint may include a cargo constraint, which is a constraint on the weight and / or size of the total cargo associated with a single set of locations. For example, the delivery constraint may be such that the weight of the total cargo associated with a single set of locations cannot exceed the maximum load weight of the delivery vehicle or a predetermined ratio of the maximum load weight, or such that the size of the total cargo cannot exceed the maximum load size or a predetermined ratio of the maximum load size.

[0067] In some implementations, the delivery constraint may also include a time constraint, wherein the time constraint is determined based on the expected delivery time of at least one of the multiple delivery locations. In some implementations, the time constraint may, for example, indicate the latest delivery time of a single delivery location in each location set, which, for example, cannot exceed the time threshold specified by the platform. In some implementations, the time constraint may also be specified by, for example, the group leader or the user who groups the order.

[0068] In some implementations, the delivery constraint may further include a number constraint, wherein the number constraint is a constraint on the number of delivery locations included in a single location set. For example, the delivery constraint may stipulate that the number of delivery locations delivered by a single delivery party does not exceed 10.

[0069] Based on this approach, the computing device 130 can use the finalized cargo information to adjust multiple location sets. Since the grouping based on geographic information has been previously experienced at the target time stage, or optionally one or more location set adjustments based on ALNS have been experienced, the amount of calculation required for the adjustment performed by the computing device 130 after the cargo information is finally confirmed will be much less than the amount of calculation required for traditional routing based on the delivery location and cargo information.

[0070] At block 206 , the computing device 130 generates a delivery plan associated with the plurality of delivery locations 110 based on the adjusted plurality of location sets.

[0071] In some implementations, the computing device 130 may generate the delivery plan 140 such that the delivery locations 110 in a single location set will be delivered by the same delivery party.

[0072] In some implementations, the computing device 130 may further assign a corresponding delivery party to each of the adjusted plurality of location sets, wherein the delivery party is used to perform the delivery of goods to a group of delivery locations in the corresponding location set. For example, the computing device 130 may determine the delivery party corresponding to the corresponding location set based on the delivery party arrangement in the historical delivery plan.

[0073] In some implementations, for each set of locations, the computing device 130 may also determine a delivery path for the delivery party to perform delivery of goods for the corresponding set of locations. For example, the computing device 130 may construct the delivery path based on an appropriate path generation algorithm. For example, the computing device 130 may construct the delivery path based on the shortest navigation distance, the shortest navigation time, the lowest energy consumption, and so on.

[0074] In some implementations, computing device 130 may also determine an expected delivery time associated with a target delivery location in a set of delivery locations based on the delivery path, and provide information about the expected delivery time to a first terminal device associated with the target delivery location.

[0075] Taking community group purchasing as an example, after determining the delivery path, the computing device 130 estimates the expected delivery time corresponding to each delivery location 140 based on the delivery path, and can send information about the expected delivery time to the "group leader" corresponding to each delivery location 140, so that the "group leader" can prepare to receive the goods in advance.

[0076] In some implementations, the computing device 130 may also provide information related to the delivery path to a second terminal device associated with the delivery party. For example, the computing device 130 may cause the second terminal device to present the delivery path in response to the delivery party starting to deliver the goods, so as to guide the delivery party to perform the goods delivery according to the delivery path.

[0077] In some implementations, the computing device 130 may also determine the delivery fee associated with the delivery party based on the delivery cost (e.g., expected energy consumption, expected tolls, etc.) of the delivery route 150. Based on this approach, the delivery fee can be made more reasonable.

[0078] Example devices and equipment

[0079] Figure 4 A schematic structural block diagram of an apparatus 400 for generating a delivery plan according to some embodiments of the present disclosure is shown. The apparatus 400 may be implemented as or included in a computing device 130 or other device that implements the process for generating a delivery plan of the present disclosure.

[0080] like Figure 4 As shown, the device 400 includes: a division module 410, which is configured to divide the multiple delivery locations into multiple location sets based on at least the geographic information of the multiple delivery locations during the target time period, and the cargo information to be delivered at the multiple delivery locations is variable during the target time period. The device 400 also includes an adjustment module 420, which is configured to adjust the multiple location sets based on at least the confirmed cargo information of the multiple delivery locations in response to the expiration of the target time period; and a generation module 430, which is configured to generate a delivery plan associated with the multiple delivery locations based on the adjusted multiple location sets.

[0081] In some implementations, the partitioning module 410 includes: a cost determination module, configured to determine the driving cost between different delivery locations based at least on geographic information, wherein the delivery cost includes at least one of the straight-line distance, navigation distance, or navigation time between the different delivery locations; and a clustering module, configured to cluster multiple delivery locations based on the driving cost to determine multiple location sets.

[0082] In some implementations, clustering is also based on historical delivery plans associated with the plurality of delivery locations.

[0083] In some implementations, the partitioning module 410 further includes: a clustering adjustment module configured to adjust the clustered plurality of location sets based on a neighborhood search method during a target time period.

[0084] In some implementations, device 400 also includes: a basic data generation module, configured to generate basic data for division or adjustment during a target time period, the basic data including at least one of the following: coordinate information of the delivery location, the navigation distance between different delivery locations, the straight-line distance between different delivery locations, the navigation time between different delivery locations, or historical collinearity information between different delivery locations, the historical collinearity information indicating whether different delivery locations have been delivered by the same delivery party.

[0085] In some implementations, the adjustment module 420 includes: a set adjustment module, configured to adjust multiple location sets so that the adjusted multiple location sets satisfy predetermined delivery constraints, the delivery constraints including at least cargo constraints, which are constraints on the weight and / or size of the total cargo associated with a single location set.

[0086] In some implementations, the delivery constraint also includes at least one of the following: a time constraint, which is determined based on the expected delivery time of at least one delivery location among the multiple delivery locations, or a number constraint, which is a constraint on the number of delivery locations included in a single location set.

[0087] In some implementations, the generation module 430 includes: an assignment module configured to assign a delivery party corresponding to each of the adjusted plurality of location sets, the delivery party being used to perform cargo delivery for a group of delivery locations in the corresponding location set.

[0088] In some implementations, the generation module 430 further includes: a path determination module configured to determine a delivery path for the delivery party to perform the delivery of goods.

[0089] In some implementations, the apparatus 400 further includes: a time estimation module configured to determine, based on a delivery path, an expected delivery time associated with a target delivery location among a set of delivery locations; and a first providing module configured to provide information about the expected delivery time to a first terminal device associated with the target delivery location.

[0090] In some implementations, the apparatus 400 further includes: a second providing module configured to provide information indicating a delivery path to a second terminal device associated with the delivery party.

[0091] In some implementations, the apparatus 400 further includes a billing module configured to determine a delivery fee associated with the delivery party based on the delivery route.

[0092] Figure 5 A block diagram of an electronic device 500 is shown in which one or more embodiments of the present disclosure may be implemented. It should be understood that Figure 5The electronic device 500 shown is merely exemplary and should not constitute any limitation on the functionality and scope of the embodiments described herein. Figure 5 The electronic device 500 shown may be included in or implemented as Figure 1 A computing device 130 or other device implementing the present disclosure for generating a delivery plan.

[0093] like Figure 5 As shown, the electronic device 500 is in the form of a general-purpose computing device. The electronic device 500 may also be any type of computing device or server. The components of the electronic device 500 may include, but are not limited to, one or more processors or processing units 510, a memory 520, a storage device 530, one or more communication units 540, one or more input devices 550, and one or more output devices 560. The processing unit 510 may be an actual or virtual processor and is capable of performing various processes according to a program stored in the memory 520. In a multi-processor system, multiple processing units execute computer executable instructions in parallel to improve the parallel processing capability of the electronic device 500.

[0094] The electronic device 500 typically includes a plurality of computer storage media. Such media may be any available media accessible to the electronic device 500, including but not limited to volatile and non-volatile media, removable and non-removable media. The memory 520 may be a volatile memory (e.g., a register, a cache, a random access memory (RAM)), a non-volatile memory (e.g., a read-only memory (ROM), an electrically erasable programmable read-only memory (EEPROM), flash memory), or some combination thereof. The storage device 530 may be a removable or non-removable medium, and may include a machine-readable medium, such as a flash drive, a disk, or any other medium, which may be capable of being used to store information and / or data (e.g., map data) and may be accessed within the electronic device 500.

[0095] The electronic device 500 may further include additional removable / non-removable, volatile / non-volatile storage media. Figure 5 As shown in , a disk drive for reading or writing from a removable, non-volatile disk (e.g., a "floppy disk") and an optical drive for reading or writing from a removable, non-volatile optical disk may be provided. In these cases, each drive may be connected to the bus (not shown) by one or more data media interfaces. The memory 520 may include a computer program product 525 having one or more program modules that are configured to perform various methods or actions of various embodiments of the present disclosure.

[0096] The communication unit 540 implements communication with other computing devices through a communication medium. Additionally, the functions of the components of the electronic device 500 can be implemented in a single computing cluster or multiple computing machines that can communicate through a communication connection. Therefore, the electronic device 500 can operate in a networked environment using a logical connection with one or more other servers, a network personal computer (PC), or another network node.

[0097] The input device 550 may be one or more input devices, such as a mouse, a keyboard, a tracking ball, etc. The output device 560 may be one or more output devices, such as a display, a speaker, a printer, etc. The electronic device 500 may also communicate with one or more external devices (not shown) through the communication unit 540 as needed, such as a storage device, a display device, etc., communicate with one or more devices that allow a user to interact with the electronic device 500, or communicate with any device that allows the electronic device 500 to communicate with one or more other computing devices (e.g., a network card, a modem, etc.). Such communication may be performed via an input / output (I / O) interface (not shown).

[0098] According to an exemplary implementation of the present disclosure, a computer-readable storage medium is provided, on which computer-executable instructions or programs are stored, wherein the computer-executable instructions or programs are executed by a processor to implement the method or function described above. The computer-readable storage medium may include a non-transient computer-readable medium. According to an exemplary implementation of the present disclosure, a computer program product is also provided, including computer-executable instructions or programs, and the computer-executable instructions or programs are executed by a processor to implement the method or function described above. The computer program product may be tangibly embodied on a non-transient computer-readable medium.

[0099] Various aspects of the present disclosure are described herein with reference to flowcharts and / or block diagrams of methods, devices, equipment, and computer program products implemented according to the present disclosure. It should be understood that each box in the flowchart and / or block diagram and the combination of boxes in the flowchart and / or block diagram can be implemented by computer executable instructions or programs.

[0100] These computer executable instructions or programs can be provided to a processing unit of a general-purpose computer, a special-purpose computer, or other programmable data processing device, thereby producing a machine, so that when these instructions are executed by the processing unit of the computer or other programmable data processing device, a device that implements the functions / actions specified in one or more boxes in the flowchart and / or block diagram is generated. These computer executable instructions or programs can also be stored in a computer-readable storage medium, and these instructions cause the computer, programmable data processing device, and / or other equipment to work in a specific manner, so that the computer-readable medium storing the instructions includes a manufactured product, which includes instructions for implementing various aspects of the functions / actions specified in one or more boxes in the flowchart and / or block diagram.

[0101] Computer-executable instructions or programs can be loaded onto a computer, other programmable data processing apparatus, or other device so that a series of operational steps are performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, so that the instructions executed on the computer, other programmable data processing apparatus, or other device implement the functions / actions specified in one or more boxes in the flowchart and / or block diagram.

[0102] The flow chart and block diagram in the accompanying drawings show the possible architecture, function and operation of the system, method and computer program product according to multiple implementations of the present disclosure. In this regard, each square box in the flow chart or block diagram can represent a part of a module, program segment or instruction, and a part of a module, program segment or instruction includes one or more executable instructions for realizing the logical function of the specification. In some implementations as replacements, the function marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two continuous square boxes can actually be executed substantially in parallel, and they can sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be realized by a special hardware-based system that performs the function or action of the specification, or can be realized by a combination of special hardware and computer instructions.

[0103] The above descriptions of various implementations of the present disclosure are exemplary, non-exhaustive, and not limited to the disclosed implementations. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described implementations. The selection of terms used herein is intended to best explain the principles of the implementations, practical applications, or improvements to the technology in the market, or to enable other persons of ordinary skill in the art to understand the various implementations disclosed herein.

[0104] Example Implementation

[0105] TS 1. A method for generating a distribution plan, comprising:

[0106] In a target time period, the plurality of delivery locations are divided into a plurality of location sets based at least on geographic information of the plurality of delivery locations, and information of goods to be delivered at the plurality of delivery locations is variable in the target time period;

[0107] In response to expiration of the target time period, adjusting the plurality of sets of locations based at least on confirmed shipment information for the plurality of delivery locations; and

[0108] Based on the adjusted plurality of location sets, delivery plans associated with the plurality of delivery locations are generated.

[0109] TS 2. The method according to TS 1, wherein dividing the plurality of delivery locations into a plurality of location sets comprises:

[0110] Determining a travel cost between different delivery locations based at least on the geographic information, wherein the delivery cost comprises at least one of a straight-line distance, a navigation distance, or a navigation time between different delivery locations; and

[0111] The plurality of delivery locations are clustered based on the travel cost to determine the plurality of location sets.

[0112] TS 3. The method according to TS 2, wherein the clustering is further based on historical delivery plans associated with the plurality of delivery locations.

[0113] TS 4. The method according to any one of TS 2 to 3, wherein dividing the plurality of delivery locations into a plurality of location sets further comprises:

[0114] During the target time period, the plurality of clustered location sets are adjusted based on a neighborhood search method.

[0115] TS 5. The method according to TS 1, further comprising:

[0116] At the target time stage, basic data for the division or the adjustment is generated, and the basic data includes at least one of the following:

[0117] Coordinate information of the delivery location,

[0118] Navigation distances between different delivery locations,

[0119] The straight-line distance between different delivery locations,

[0120] Navigation time between delivery locations, or

[0121] Historical collinearity information between different delivery locations, wherein the historical collinearity information indicates whether the different delivery locations have been delivered by the same delivery party.

[0122] TS 6. The method according to TS 1, wherein adjusting the plurality of position sets comprises:

[0123] The plurality of location sets are adjusted so that the adjusted plurality of location sets satisfy predetermined delivery constraints, wherein the delivery constraints at least include a cargo constraint, which is a constraint on the weight and / or size of total cargo associated with a single location set.

[0124] TS 7. The method according to TS 6, wherein the delivery constraint further comprises at least one of the following:

[0125] a time constraint, the time constraint being determined based on an expected delivery time of at least one of the plurality of delivery locations, or

[0126] A number constraint is a constraint on the number of delivery locations included in a single location set.

[0127] TS 8. The method according to TS 1, wherein generating a delivery plan associated with the plurality of delivery locations comprises:

[0128] A corresponding delivery party is assigned to each of the adjusted plurality of location sets, and the delivery party is used to perform cargo delivery for a group of delivery locations in the corresponding location set.

[0129] TS 9. The method according to TS 8, wherein generating a delivery plan associated with the plurality of delivery locations further comprises:

[0130] A delivery path for the delivery party to execute the delivery of the goods is determined.

[0131] TS 10. The method according to TS 9, further comprising:

[0132] determining an expected delivery time associated with a target delivery location in the set of delivery locations based on the delivery path; and

[0133] Information about the expected delivery time is provided to a first terminal device associated with the target delivery location.

[0134] TS 11. The method according to TS 9, further comprising:

[0135] Information indicating the delivery route is provided to a second terminal device associated with the delivery party.

[0136] TS 12. The method according to TS 9, further comprising:

[0137] Based on the delivery route, a delivery fee associated with the delivery party is determined.

[0138] TS 13. A device for generating a distribution plan, comprising:

[0139] a division module configured to divide the plurality of delivery locations into a plurality of location sets at least based on geographic information of the plurality of delivery locations during a target time period, wherein information of goods to be delivered at the plurality of delivery locations is variable during the target time period;

[0140] an adjustment module configured to adjust the plurality of sets of locations based at least on the confirmed shipment information of the plurality of delivery locations in response to the expiration of the target time period; and

[0141] The generating module is configured to generate a delivery plan associated with the plurality of delivery locations based on the adjusted plurality of location sets.

[0142] TS 14. An electronic device comprising:

[0143] Memory and processor;

[0144] The memory is used to store one or more computer instructions, wherein the one or more computer instructions are executed by the processor to implement the method according to any one of TS 1 to 12.

[0145] TS 15. A computer-readable storage medium having one or more computer instructions stored thereon, wherein the one or more computer instructions are executed by a processor to implement the method according to any one of TS 1 to 12.

[0146] TS 16. A computer program product comprising computer executable instructions, wherein the computer executable instructions implement the method according to any one of TS 1 to 12 when executed by a processor.

Claims

1. A method for generating a distribution plan, comprising: At a target time stage, the plurality of delivery locations are divided into a plurality of location sets based at least on geographic information of the plurality of delivery locations, including: determining a travel cost between different delivery locations based at least on the geographic information; Clustering the plurality of delivery locations based on the travel cost to determine the plurality of location sets; If the target time period has not expired, adjusting the plurality of clustered location sets multiple times based on a neighborhood search method, wherein the adjustment at least includes a destruction phase and a repair phase for the plurality of location sets; The destruction phase of the multiple adjustments is performed based on any one of a cluster destruction operator, a convex hull operator, and a neighbor path destruction operator; The repair phase of the multiple adjustments is performed based on any one of a minimum spanning tree repair operator, a historical collinear number repair operator, and a minimum cut repair operator; The cargo information to be delivered at the plurality of delivery locations is variable within the target time period; In response to expiration of the target time period, adjusting the plurality of sets of locations based at least on confirmed shipment information for the plurality of delivery locations; and Based on the adjusted plurality of location sets, delivery plans associated with the plurality of delivery locations are generated. 2 . The method according to claim 1 , wherein the travel cost comprises at least one of a straight-line distance, a navigation distance or a navigation time between different delivery locations. 3 . The method of claim 1 , wherein the clustering is further based on historical delivery plans associated with the plurality of delivery locations.

4. The method according to claim 1, further comprising: At the target time stage, basic data for the division or the adjustment is generated, and the basic data includes at least one of the following: Coordinate information of the delivery location, Navigation distances between different delivery locations, The straight-line distance between different delivery locations, Navigation time between delivery locations, or Historical collinearity information between different delivery locations, wherein the historical collinearity information indicates whether the different delivery locations have been delivered by the same delivery party.

5. The method of claim 1 , wherein adjusting the plurality of sets of locations comprises: The plurality of location sets are adjusted so that the adjusted plurality of location sets satisfy predetermined delivery constraints, wherein the delivery constraints at least include a cargo constraint, which is a constraint on the weight and / or size of total cargo associated with a single location set.

6. The method according to claim 5, wherein the delivery constraint further comprises at least one of the following: a time constraint, the time constraint being determined based on an expected delivery time of at least one of the plurality of delivery locations, or A number constraint is a constraint on the number of delivery locations included in a single location set.

7. The method of claim 1 , wherein generating a delivery plan associated with the plurality of delivery locations comprises: A corresponding delivery party is assigned to each of the adjusted plurality of location sets, and the delivery party is used to perform cargo delivery for a group of delivery locations in the corresponding location set.

8. The method of claim 7, wherein generating a delivery plan associated with the plurality of delivery locations further comprises: A delivery path for the delivery party to execute the delivery of the goods is determined.

9. The method according to claim 8, further comprising: determining, based on the delivery route, an expected delivery time associated with a target delivery location in the set of delivery locations; as well as Information about the expected delivery time is provided to a first terminal device associated with the target delivery location.

10. The method according to claim 8, further comprising: Information indicating the delivery route is provided to a second terminal device associated with the delivery party.

11. The method according to claim 8, further comprising: Based on the delivery route, a delivery fee associated with the delivery party is determined.

12. A device for generating a distribution plan, comprising: The partitioning module is configured to partition the plurality of delivery locations into a plurality of location sets based at least on the geographic information of the plurality of delivery locations during a target time period, including: determining a travel cost between different delivery locations based at least on the geographic information; Clustering the plurality of delivery locations based on the travel cost to determine the plurality of location sets; If the target time period has not expired, adjusting the plurality of clustered location sets multiple times based on a neighborhood search method, wherein the adjustment at least includes a destruction phase and a repair phase for the plurality of location sets; The destruction phase of the multiple adjustments is performed based on any one of a cluster destruction operator, a convex hull operator, and a neighbor path destruction operator; The repair phase of the multiple adjustments is performed based on any one of a minimum spanning tree repair operator, a historical collinear number repair operator, and a minimum cut repair operator; The cargo information to be delivered at the plurality of delivery locations is variable within the target time period; an adjustment module configured to adjust the plurality of sets of locations based at least on the confirmed shipment information of the plurality of delivery locations in response to the expiration of the target time period; and The generating module is configured to generate a delivery plan associated with the plurality of delivery locations based on the adjusted plurality of location sets.

13. An electronic device comprising: Memory and processor; The memory is used to store one or more computer instructions, wherein the one or more computer instructions are executed by the processor to implement the method according to any one of claims 1 to 11.

14. A computer-readable storage medium having one or more computer instructions stored thereon, wherein the one or more computer instructions are executed by a processor to implement the method according to any one of claims 1 to 11.

15. A computer program product comprising computer executable instructions, wherein the computer executable instructions, when executed by a processor, implement the method according to any one of claims 1 to 11.

Citation Information

Patent Citations

  • Information generation method and device

    CN109816132A

  • Delivery scheme determination method and device and computer readable storage medium

    CN110390409A

  • Transportation path determination method and device, computer equipment and storage medium

    CN110852534A