Order allocation method and device, electronic device and computer-readable storage medium

By calculating order combinations and optimizing delivery routes, the problem of unreasonable order allocation by logistics delivery personnel is solved, the fulfillment rate and user experience are improved, and efficient logistics delivery is achieved.

CN114596023BActive Publication Date: 2025-09-12ZHEJIANG TMALL TECH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202210108520.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-01-28
Publication Date
2025-09-12
Estimated Expiration
2042-01-28

AI Technical Summary

Technical Problem

In the existing technology, the unreasonable allocation of orders by logistics delivery personnel leads to delivery delays and low fulfillment rates, affecting user experience and the efficiency of logistics service providers.

Method used

By obtaining the earliest delivery time, latest delivery time and delivery location information of the order, the depth-first branch and bound algorithm and ALNS algorithm are used to calculate the order combination, generate delivery tasks that meet the pre-set constraints, and optimize the delivery route and time schedule.

Benefits of technology

It improves order fulfillment rates, reduces delivery delays, enhances user experience and logistics service efficiency, and avoids unreasonable problems caused by manual allocation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114596023B_ABST
    Figure CN114596023B_ABST
Patent Text Reader

Abstract

The present application discloses an order allocation method and device, an electronic device, and a computer-readable storage medium. The method comprises: obtaining order information of multiple orders, wherein the order information at least includes the earliest delivery time, the latest delivery time, and the delivery location of the order; performing calculations based on the order information and pre-set constraints to obtain an order combination result consisting of at least one order from the multiple orders; generating an order delivery task for a delivery trip based on the order combination result, wherein the order delivery task at least includes delivery itinerary information for each order in the order combination result. The embodiment of the present application not only selects orders for logistics delivery personnel, but also generates optimized delivery itineraries accordingly, thereby avoiding the defects of unreasonable delivery tasks due to reliance on manual order allocation and task generation.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of logistics technology, and in particular to an order distribution method and device, an electronic device, and a computer-readable storage medium. Background Art

[0002] The logistics industry has become an important part of people's daily lives. Whether in daily life or at work, people use various logistics services to deliver items conveniently and quickly. To this end, O2O (online to offline) services have emerged in the prior art. These services allow users to use various terminals to access a logistics service provider's website via the Internet, such as a webpage or application, and place logistics orders through this website. The logistics service provider can then arrange for offline logistics delivery personnel to deliver the orders based on the orders received via the Internet. When assigning orders to logistics delivery personnel, it is necessary to assign as many orders as possible to the logistics delivery personnel in a round while ensuring that the orders are delivered as soon as possible within the time specified by the user. This allows the logistics delivery personnel to deliver as many orders as possible in the round and ensure that the delivery timeliness of the orders is as high as possible.

[0003] Therefore, a solution is needed to reasonably allocate orders to logistics delivery personnel. Summary of the Invention

[0004] The embodiments of the present application provide an order allocation method and device, an electronic device, and a computer-readable storage medium to address the defects of unreasonable order allocation in the prior art.

[0005] To achieve the above objectives, the present invention provides an order allocation method, including:

[0006] Obtaining order information of multiple orders, wherein the order information at least includes the earliest delivery time, the latest delivery time, and the delivery location of the orders;

[0007] Calculating based on the order information and pre-set constraints to obtain an order combination result consisting of at least one order from the multiple orders;

[0008] An order delivery task with a delivery trip is generated according to the order combination result, wherein the order delivery task at least includes delivery trip information for each order in the order combination result.

[0009] The embodiment of the present application further provides an order distribution device, comprising:

[0010] An acquisition module, configured to acquire order information of a plurality of orders, wherein the order information at least includes the earliest delivery time, the latest delivery time, and the delivery location of the order;

[0011] a processing module, configured to perform calculations based on the order information and preset constraints to obtain an order combination result consisting of at least one order from the multiple orders;

[0012] A generation module is used to generate an order delivery task with a delivery trip based on the order combination result, wherein the order delivery task at least includes delivery trip information for each order in the order combination result.

[0013] An embodiment of the present application further provides an electronic device, including:

[0014] Memory, used to store programs;

[0015] The processor is used to run the program stored in the memory, and when the program is run, the order allocation method provided in the embodiment of the present application is executed.

[0016] An embodiment of the present application also provides a computer-readable storage medium on which a computer program executable by a processor is stored, wherein when the program is executed by the processor, the order allocation method provided in the embodiment of the present application is implemented.

[0017] The order distribution method and device, electronic device and computer-readable storage medium provided in the embodiments of the present application can obtain an order combination result consisting of at least one of these orders by performing calculations based on pre-set constraints according to the order information of multiple orders, and generate an order delivery task for a delivery trip based on the order information of the order combination result. Therefore, by using the pre-set constraints to calculate an order combination that meets the constraints from multiple orders, and generating a delivery task for a delivery trip based on the order information in the order combination result, the delivery personnel can perform delivery according to the delivery task. Since the generated delivery task meets the predetermined order combination generation constraints, the logistics delivery personnel can perform delivery according to the order task generated in this way, and can use indicators such as order fulfillment rate as pre-set constraints to not only select orders for the logistics delivery personnel, but also generate optimized delivery itineraries accordingly, thereby avoiding the unreasonable defects of relying on manual order allocation and task generation for delivery tasks.

[0018] The above description is only an overview of the technical solution of the present application. In order to more clearly understand the technical means of the present application, it can be implemented in accordance with the contents of the specification. In order to make the above and other purposes, features and advantages of the present application more obvious and easy to understand, the specific implementation methods of the present application are listed below. BRIEF DESCRIPTION OF THE DRAWINGS

[0019] Various other advantages and benefits will become apparent to those skilled in the art upon reading the detailed description of the preferred embodiment below. The accompanying drawings are for illustration purposes only and are not to be considered as limiting the present application. The same reference symbols are used throughout the drawings to represent the same components. In the drawings:

[0020] Figure 1 A schematic diagram of an application scenario of the order allocation solution provided in an embodiment of the present application;

[0021] Figure 2 A flowchart of an embodiment of the order allocation method provided by the present application;

[0022] Figure 3 A flowchart of another embodiment of the order allocation method provided by the present application;

[0023] Figure 4 A schematic structural diagram of an embodiment of the order distribution device provided by this application;

[0024] Figure 5 This is a schematic structural diagram of an electronic device embodiment provided in this application. DETAILED DESCRIPTION

[0025] Exemplary embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although exemplary 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. Rather, these embodiments are provided to enable a more thorough understanding of the present disclosure and to fully convey the scope of the present disclosure to those skilled in the art.

[0026] Example 1

[0027] The solution provided in the embodiments of the present application can be applied to any system with logistics information processing capabilities, such as a server system including a chip with information processing functions and related components, etc. Figure 1 This is a schematic diagram of an application scenario of the order allocation solution provided in the embodiment of the present application. Figure 1 The scenario shown is only one example of the application of the technical solution of this application.

[0028] The logistics industry has become an integral part of people's daily lives. Whether in daily life or at work, people rely on a variety of logistics services to deliver goods quickly and conveniently. To address this, O2O (online to offline) services have emerged in the prior art. These services allow users to access a logistics service provider's website via the internet, such as a webpage or application, using various terminals. These services then place logistics orders through the website. Based on these orders received online, the logistics service provider can then arrange for offline delivery personnel to carry out the delivery.

[0029] In particular, scheduled delivery services have emerged within O2O services, allowing users to specify delivery times. With this service, when placing an order using an app over the internet, users can select a delivery time in addition to the destination. They can even specify a delivery window, such as 10:00 AM to 10:30 AM. This allows users to better tailor their orders to their schedules and avoid conflicts. For example, if a user has a meeting scheduled for 9:00 AM and expects it to end before 10:00 AM, they can use this scheduled delivery service to specify a delivery time between 10:00 AM and 10:30 AM, avoiding the situation where they are unable to receive the delivery due to being in the meeting, or having their important meeting affected by the need for a delivery.

[0030] Logistics service providers typically set up fixed delivery stations in various regions and deliver the goods in user orders to these stations in advance. Afterwards, the logistics service provider or the station's management personnel can assign orders to each delivery person, allowing them to deliver to the destinations specified in the orders. However, delivery personnel often deliver orders to multiple locations along the way while leaving the delivery station. Therefore, delivery stations often assign multiple orders to a single delivery person, allowing them to deliver along the way during a single delivery round.

[0031] In the embodiment of the present application, a delivery trip may refer to the logistics delivery personnel departing from the delivery station for delivery and returning to the delivery station. Therefore, when the delivery station assigns orders to the logistics delivery personnel, it is necessary to assign as many orders as possible within a trip to the logistics delivery personnel while ensuring that the orders are delivered as soon as possible within the time specified by the user. This allows the logistics delivery personnel to deliver as many orders as possible within a delivery trip and ensures that the delivery timeliness of the orders is guaranteed as much as possible.

[0032] In the existing technology, distribution station managers typically assign orders to logistics delivery personnel waiting for delivery. Logistics delivery personnel then determine the number of orders they need to accept based on their experience or daily performance requirements. After accepting an order and departing from the distribution station to begin delivery, they often rely on their own experience to determine the delivery route. However, this manual task allocation and empirical route determination method rarely considers all factors, making it difficult to truly determine the preferred delivery route and specific delivery parameters, such as the latest departure time, for logistics delivery personnel. These factors directly affect the on-time delivery of orders, or the fulfillment rate, and therefore affect the number of orders successfully delivered by logistics delivery personnel and customer satisfaction.

[0033] For example, in Figure 1 In the scenario shown in , a scenario is shown in which a distribution station allocates orders to logistics distribution personnel based on the four existing orders D1-D4. In an embodiment of the present application, D1-D4 can all be timed orders, that is, they need to be delivered according to the time period required by the customer. For example, order D1 requires delivery between 9:00 and 9:30 am, order D2 requires delivery between 10:00 and 10:30 am, order D3 requires delivery between 10:10 and 10:40 am, and order D4 requires delivery between 11:00 and 11:30 am. Figure 1 The distribution of the destinations of the four orders D1-D4 is schematically shown in FIG. Figure 1 As shown in the figure, D1 is closest to the delivery station, and D4 is farthest from the delivery station. Therefore, in the prior art, logistics delivery personnel typically determine the number of orders to accept based on experience and then assign the required number of orders to the logistics delivery personnel in sequence. For example, if a logistics delivery personnel requests three orders, the prior art distribution station can assign D1-D3 to the logistics delivery personnel according to the logistics delivery personnel's request. This allows the logistics delivery personnel to depart immediately after receiving the delivery order and deliver orders D1-D3 in sequence according to their planned route. However, the designated delivery time periods for orders D3 and D2 are very close, while their destinations are far apart. Therefore, when the logistics delivery personnel deliver orders, they will inevitably cause delays in the delivery of orders D2 or D3. This delay is caused by the distribution station's unreasonable allocation of delivery orders to the logistics delivery personnel.

[0034] Therefore, according to an embodiment of the present application, various combinations of orders can be calculated taking into account the delivery time window specified by the user in the scheduled delivery scenario, and important service indicators such as fulfillment rate can be used as predetermined constraints, so that a more reasonable order combination can be determined as the order task finally assigned to the delivery personnel.

[0035] For example, in Figure 1 In the scenario shown in , there are four orders D1-D4 at the distribution station that can be assigned to logistics delivery personnel. These orders can all be, for example, scheduled delivery orders. In the scheduled delivery scenario, the user selects the delivery time window for the logistics objects involved in the order, namely the earliest delivery time and the latest delivery time. The earliest delivery time can be the earliest time the user wants the order to be delivered. In other words, the user does not want the logistics objects involved in the order to be delivered before this time, while the latest delivery time can be the latest time the user wants the order to be delivered. In other words, the user hopes to receive the logistics objects at the latest before this time. For example, for an office worker, when the order is destined for their home address, the earliest delivery time can be the earliest time the user believes they can receive the order after getting up, while the latest delivery time can be the time the user believes they must leave home for work. In other words, in this case, if the order is delivered earlier than the earliest delivery time, the user may not have gotten up yet, and the logistics delivery personnel knocking on the door or contacting the user will inevitably disturb the user's rest. If the order is delivered later than the latest delivery time, the user may have left home and gone to work. In this case, even if the logistics delivery personnel delivers the logistics objects involved in the order, there is no way to deliver it to the user, or the user cannot sign for it.

[0036] Of course, in the embodiments of the present application, the delivery time window is not necessarily defined by the earliest delivery time and the latest delivery time defined above. For example, in the aforementioned scenario where the user leaves home early for work, the user can set the latest time they leave home for work as the latest delivery time, and set aside a certain time period, such as half an hour, based on the latest delivery time as the time period for accepting orders. Therefore, the time half an hour before the latest delivery time can be used as the earliest delivery time. In the embodiments of the present application, the earliest delivery time and the latest delivery time can be defined in various ways depending on the situation.

[0037] In addition, in the embodiments of the present application, when the logistics platform receives and accepts a user's scheduled delivery order, it can generally be regarded as a certain contract between the logistics distribution service provider and the user. That is, the logistics distribution service provider needs to deliver the goods specified by the user in the order to the destination specified in the order within the time window specified by the user in the order. Therefore, in this case, the timely fulfillment rate becomes an important service indicator of the logistics distribution service in the scheduled order scenario. The timely fulfillment rate can be the number of orders delivered by the logistics distribution personnel within the delivery time window specified in the user's order / the total number of orders delivered by the logistics distribution personnel.

[0038] However, in typical logistics services, on-time fulfillment can directly impact the user experience. A poor user experience can also directly impact repeat purchases and willingness to buy new products. Therefore, logistics service providers need to consider on-time fulfillment when assigning tasks to delivery personnel.

[0039] Therefore, in the order allocation scheme of the embodiment of the present application, in addition to considering the timely fulfillment rate of orders, the latest departure time of the logistics delivery personnel can also be further considered. In most current timed delivery scenarios, after the logistics delivery personnel arrive at the distribution station and are assigned the existing orders, when the delivery time window of these orders allows the logistics delivery personnel to continue waiting, they can then check whether there are any orders that are relatively convenient for the logistics delivery personnel and do not violate the delivery time window of the orders they have already received. In other words, the logistics delivery personnel can be assigned orders that can be delivered in one trip as much as possible, which can improve the delivery efficiency of the logistics delivery personnel. However, since the logistics delivery personnel receive multiple orders and the delivery windows of the orders need to be met, the logistics delivery personnel cannot be allowed to wait indefinitely in the distribution station. They need to be given a latest departure time, that is, the latest time when the logistics delivery personnel can leave the distribution station while ensuring the timely fulfillment rate of the orders they have received.

[0040] Therefore, in an embodiment of the present application, since it is necessary to first calculate the delivery itinerary information of each order when calculating the timely fulfillment rate in order to determine the time when the order is delivered, once an order combination that can meet the timely fulfillment rate or other constraints is determined, a delivery task including the delivery itinerary information of each order can be provided to the logistics delivery personnel, so that the logistics delivery personnel can perform delivery according to the itinerary information. This can also avoid the problem of order delivery delays caused by unreasonable routes planned by the logistics delivery personnel themselves.

[0041] Specifically, in the embodiment of the present application, the order information of multiple orders can be obtained first. As mentioned above, the order information of each order can at least include the earliest delivery time, the latest delivery time and the delivery location of the order. For example, in Figure 1 In the scenario shown in , the distribution station can first obtain the order information of the four orders D1-D4, such as the delivery time window, that is, the earliest delivery time and the latest delivery time of each order mentioned above, and can also obtain the delivery location of each order to facilitate the calculation of the delivery route of the logistics delivery personnel.

[0042] Afterwards, the embodiment of the present application can generate multiple initial order combinations for these four orders, and calculate the delivery itinerary of each order in the order combination, for example, the delivery route and the corresponding delivery time, for each order combination. Thus, based on the delivery time of each order calculated in this way, for example, the fulfillment timeliness rate is calculated to determine whether the constraint conditions are met. For example, in an embodiment of the present application, a depth-first branch and bound algorithm (Branch & Bound) and ALNS (adaptive large neighborhood search) can be used to solve various order combinations to determine the final order combination to generate a delivery task.

[0043] For example, considering the adaptability of the above two algorithms, in an embodiment of the present application, for a small number of orders, a branch and bound algorithm can be used to determine the final order combination, and for a large number of orders, ALNS can be used to find an optimal solution in a short time.

[0044] Therefore, after the algorithm to be used is determined according to the number of orders to be allocated at the delivery station, the selected algorithm can be used to calculate the order combination.

[0045] For example, the calculated order combination results can be evaluated, and the evaluation can be closely related to the target setting as a constraint condition. In an embodiment of the present application, the following two targets can be mainly used as constraint conditions. For example, the timely fulfillment rate can be used as a constraint condition, that is, the number of orders that violate the delivery time window can be minimized as the target. In other words, the delivery route and delivery time can be calculated in sequence for the orders in each order combination, so that the fulfillment status of each order in the order combination can be determined one by one, that is, whether it is delivered within the delivery time window specified by the order, thereby calculating the total number of orders that violate the delivery time window in the order combination. That is, the total number of orders in the order combination that cannot be delivered within the delivery window specified by the order. Therefore, the constraint condition can be used to ensure that the delivery task generated by the final order combination can minimize the number of defaulting orders or even zero, which can maximize the user experience.

[0046] However, in the order combination determined by the above constraint of the minimum number of default orders, it is very likely that only one order will default, that is, only one order will not be delivered within the specified delivery time window, but the timeout period is long. In other words, for different order combinations, it is very likely that two or more order combinations contain the same orders, for example, both contain Figure 1As shown in the figure, there are four orders D1-D4. However, the order sequence within these order combinations differs, meaning that the delivery order is different. Consequently, in one order combination, orders D1-D3 are all delivered on time, but D4 is delivered last, resulting in a longer timeout for D4, for example, an hour. However, according to the calculation method for the aforementioned constraints, this order combination ultimately results in only one defaulted order. In another order combination, only D1 is delivered on time, while orders D2-D4 all default and are delivered late. However, the delivery timeout for each of these orders is relatively short, for example, around 5-10 minutes. Therefore, if the order combination is determined based on the aforementioned on-time fulfillment rate constraint, the first order combination is undoubtedly the most reasonable, as the delivery task generated based on this order combination ultimately results in only one order timeout. However, this long timeout for this order actually creates a poor logistics experience for the user of order D4, a situation that logistics service providers would like to avoid.

[0047] Therefore, in the embodiments of the present application, as opposed to using the on-time fulfillment rate as a constraint, a balance objective can be used as a constraint, i.e., the goal is to minimize the sum of the squares of the time that violates the delivery time window specified in the order. Although using this constraint may result in an increase in the number of overdue orders, it will not cause the problem of individual orders being severely overdue due to the priority of on-time fulfillment, which would cause a very poor experience for consumers.

[0048] In addition, in an embodiment of the present application, one of the above two constraints can also be used as the first priority target, and when the calculated timely fulfillment rate or equilibrium target of the order combination is the same, the second priority target can be further used, such as the number of orders arriving in advance, the total distance of the order journey, etc., so that when multiple order combinations meet the first priority, the second priority target can be further used for comparison, so that the order combination that meets the second priority target can be used as the final order combination result to generate a delivery task.

[0049] In addition, when calculating the delivery time for each order in the order combination, it is calculated as if the delivery personnel depart immediately. Therefore, after each round of generating the delivery route and the delivery time of each order, the latest time for the logistics delivery personnel to leave the delivery station can be corrected.

[0050] For example, in the embodiment of the present application, a certain order combination includes N orders, each order i∈N, and the delivery time window of each order is the earliest delivery time ET i , latest delivery time LT i The calculated delivery time for each order is RT i , then the timeout time OT for each order isi =RT i -LT i , early arrival time BT i =ET i -RT i .

[0051] Therefore, according to the above calculation method, when there is a timeout order, that is, there is a timeout period greater than zero in the orders constituting the order combination, that is, max*OT i +>0, there is no need to correct the delivery time of each order, and there is no need to correct the latest departure time, but should depart immediately.

[0052] When there are only early orders, that is, there are no orders with a timeout greater than zero but there are orders with an early arrival time greater than zero, max*OT i +≤0&&max*BT i +>0, it means that the overall time of the order combination can be pushed back. However, in order to ensure that the pushed time does not cause the order to arrive late, the maximum push time MPT can be further calculated as min*abs(OT i )++, where abs() is the absolute value function. Therefore, in order to cover all early orders, the required transition time NPT = max*BT i |BT i >0+, so the overall time can be shifted back min*MPT,NPT+.

[0053] In addition, when there is no order in the current order combination that violates the delivery time window, that is, max*OT i +≤0&&max*BT i +≤0, the latest departure time of the delivery personnel can be pushed back, and the delay time can be further calculated as min*abs(OT i )++.

[0054] In addition, when calculating order combinations using the depth-first branch-and-bound method, the order combinations can be adjusted in the following three situations, namely, branch reduction.

[0055] For example, when there is no order in the current delivery trip with an estimated delivery time earlier than the earliest delivery time or later than the latest delivery time, the total delivery distance determined based on the delivery trip information is greater than the current delivery distance; when there is an order in the current delivery trip with an estimated delivery time earlier than the earliest delivery time or later than the latest delivery time, after deleting the last added order, there is no order in the current delivery trip with an estimated delivery time earlier than the earliest delivery time or later than the latest delivery time; when there is an order in the current delivery trip with an estimated delivery time earlier than the earliest delivery time or later than the latest delivery time, the number of orders with an estimated delivery time earlier than the earliest delivery time or later than the latest delivery time is greater than a preset threshold.

[0056] In addition, when calculating the order combination with the equilibrium target as the constraint condition, the order combination can be adjusted in the following two situations.

[0057] When there are orders in the current delivery trip with an estimated delivery time earlier than the earliest delivery time or later than the latest delivery time, after deleting the last added order, there are no orders in the current delivery trip with an estimated delivery time earlier than the earliest delivery time or later than the latest delivery time.

[0058] When there is an order in the current delivery trip whose estimated delivery time is earlier than the earliest delivery time or later than the latest delivery time, the sum of the squares of the lengths of time that the estimated delivery time is earlier than the earliest delivery time or later than the latest delivery time is greater than a predetermined threshold.

[0059] Furthermore, when performing order combination calculations for a large number of orders, as described above, the ALNS algorithm may be used for calculations. In this algorithm, in addition to the above calculations, the following processing may be further performed.

[0060] 1. Removal processing: that is, remove the order with the most timeouts. If no order has timed out, remove the order with the longest distance from the current order until a predetermined number of orders have been removed. Alternatively, a predetermined number of orders can be removed randomly. Alternatively, orders can be removed based on the change in delivery distance before and after removal. For example, if the original delivery order is order D1->order D2->order D3, then the order that maximizes length(D1->D2)+length(D2->D3)-length(D1->D3) can be removed until a predetermined number of orders have been removed.

[0061] 2. Repair processing, that is, for orders to be delivered, determine the latest order combination in which the newly added order will not time out. If it will time out anyway, directly use the newly added order as the first order in the order combination; for newly added pickup points, the order combination with the shortest distance between the pickup point and the adjacent delivery point can be determined as the final order combination.

[0062] 3. Update processing, that is, if the currently selected removal processing or repair processing obtains a better solution than the current solution, the corresponding removal processing or repair processing selection probability increases; if the current solution is better than the solution of the previous round of iteration, the solution of this round of iteration is accepted and the iteration continues; if the solution of this round of iteration is worse than the solution of the previous round of iteration, the solution of this round of iteration is accepted with a predetermined probability, where the acceptance probability threshold can be e^(delayed order quantity of the previous round - delayed order quantity of this round); if the solution of this round of iteration is not accepted, it falls back to the solution of the previous round of iteration for the next round of iteration.

[0063] 4. Exception handling: For situations where delivery encounters extreme weather or late warehouse delivery, in an embodiment of the present application, special handling can also be performed on the execution time of the final delivery task calculated according to the above method to avoid affecting the assessment of delivery personnel due to such extreme situations.

[0064] For example, in extreme weather conditions, since extreme weather affects the delivery speed of logistics delivery personnel, in an embodiment of the present application, the impact of different weather conditions on riding speed can be fitted based on historical experience, and the delivery speed for calculating the order delivery time has been corrected, so that the result calculated in this case can be compared with the pre-set maximum tolerable timeout to determine the final timeout threshold.

[0065] In addition, in the case where the logistics object is shipped out late, that is, the logistics delivery personnel get the logistics object to be delivered at the delivery station late, this is not caused by the delivery personnel. Therefore, in the embodiment of the present application, the estimated warehouse shipment time and the actual shipment time of the order can be compared. If the actual shipment time is greater than the estimated shipment time, the order is a late shipment order. During the calculation process, if the order is bound to time out, the upper limit of the timeout time can be the warehouse shipment late time.

[0066] Therefore, according to the order distribution scheme provided in the embodiment of the present application, by calculating based on the pre-set constraints according to the order information of multiple orders, an order combination result consisting of at least one of these orders can be obtained, and an order delivery task for a delivery trip can be generated based on the order information of the order combination result. Therefore, by using the pre-set constraints to calculate the order combination that meets the constraints from multiple orders, and generating a delivery task for a delivery trip with the order information in the order combination result, the delivery personnel can perform delivery according to the delivery task. Since the generated delivery task meets the predetermined order combination generation constraints, the logistics delivery personnel perform delivery according to the order task generated in this way. Indicators such as order fulfillment rate can be used as pre-set constraints to not only select orders for the logistics delivery personnel, but also generate optimized delivery itineraries accordingly, thereby avoiding the unreasonable defects of relying on manual order allocation and task generation for delivery tasks.

[0067] The above embodiments are illustrations of the technical principles and exemplary application frameworks of the embodiments of the present application. The specific technical solutions of the embodiments of the present application are further described in detail below through multiple embodiments.

[0068] Example 2

[0069] Figure 2 This is a flowchart of an embodiment of the order distribution method provided by this application. The execution subject of this method can be various terminals or server devices with logistics information processing capabilities, or devices or chips integrated on these devices. Figure 2 As shown, the order allocation method includes the following steps:

[0070] S201, obtaining order information of multiple orders.

[0071] In step S201, order information for multiple orders to be assigned may first be obtained. In this embodiment of the present application, the order information may include the earliest delivery time, the latest delivery time, and the delivery location for the order. In other words, in this embodiment of the present application, the order information obtained in step S201 may at least include the delivery time window and delivery address specified by the user for the order.

[0072] S202: Calculate based on the order information and pre-set constraints to obtain an order combination result consisting of at least one order from the multiple orders.

[0073] In step S202, the multiple orders obtained in step S201 can be combined, and for each combination, an order combination that meets the pre-set constraints can be calculated. For example, an initial order combination can be formed based on a predetermined quantity, and multiple order combinations can be generated by adding orders one by one, and order combinations can also be generated by adjusting the order of the orders in the order combination. The order of the orders in each order combination is the delivery order when the delivery task is finally generated. Therefore, in step S202, calculations can be performed for order combinations with different orders and different order delivery orders, and it can be determined whether the pre-set constraints are met. In other words, in step S202, the preset constraints can be used to select an order combination that meets the constraints from the various combinations of the multiple orders obtained in step S201 as the final order combination result.

[0074] S203: Generate an order delivery task for a delivery trip based on the order combination result.

[0075] In step S203, an order delivery task for the logistics delivery personnel to perform during a delivery trip can be generated based on the order combination result calculated in step S202 that meets the pre-set constraints. For example, if the final order combination result generated in step S202 is an order combination consisting of multiple orders arranged in sequence, this sequence can be used as the delivery order, and the delivery route and delivery time of each order calculated for this order combination in step S202 can be used as the delivery itinerary information for each order. This information of these orders can then be matched one-to-one with the order information to generate the order delivery task.

[0076] Therefore, according to the order allocation method provided in the embodiment of the present application, by calculating based on the pre-set constraints according to the order information of multiple orders, an order combination result consisting of at least one of these orders can be obtained, and an order delivery task for a delivery trip can be generated based on the order information of the order combination result. Therefore, by using the pre-set constraints to calculate the order combination that meets the constraints from multiple orders, and generating a delivery task for a delivery trip with the order information in the order combination result, the delivery personnel can perform delivery according to the delivery task. Since the generated delivery task meets the predetermined order combination generation constraints, the logistics delivery personnel perform delivery according to the order task generated in this way. Indicators such as order fulfillment rate can be used as pre-set constraints to not only select orders for the logistics delivery personnel, but also generate optimized delivery itineraries accordingly, thereby avoiding the unreasonable defects of relying on manual order allocation and task generation for delivery tasks.

[0077] Example 3

[0078] Figure 3 This is a flowchart of another embodiment of the order distribution method provided by this application. The execution subject of this method can be various terminals or server devices with order distribution capabilities, or devices or chips integrated on these devices. Figure 3 As shown, the order allocation method provided in the embodiment of the present application may include the following steps:

[0079] S301, obtaining order information of multiple orders.

[0080] In step S301, order information for multiple orders to be assigned may first be obtained. In this embodiment of the present application, the order information may include the earliest delivery time, the latest delivery time, and the delivery location for the order. In other words, in this embodiment of the present application, the order information obtained in step S301 may at least include the delivery time window and delivery address specified by the user for the order.

[0081] S302: Generate multiple initial order combinations for multiple orders.

[0082] In step S302, the multiple orders obtained in step S301 can be combined, and for each combination, an order combination that meets pre-set constraints can be calculated. For example, an initial order combination can be formed based on a predetermined quantity, and multiple order combinations can be generated by adding orders one by one. Order combinations can also be generated by adjusting the order of orders within an order combination. The order order within each order combination will be the final delivery order when the delivery task is generated.

[0083] S303: Calculate the delivery itinerary information of each order in the initial order combination in a predetermined order.

[0084] In step S303, the delivery itinerary can be calculated for each of the initial order combinations generated in step S302. For example, in step S303, the route from the current location, such as the delivery station, to the delivery location of the first order in an initial order combination can be calculated first, and the time to arrive at the delivery location can be calculated based on the pre-set travel speed of the delivery personnel, so that the time can be used as the delivery completion time of the first order. In particular, in the embodiment of the present application, since logistics delivery personnel can use various means of transportation for delivery, the travel speed of the delivery personnel used in step S303 can be determined based on the transportation information of different logistics delivery personnel, and the route from the current location to the delivery location can be further determined based on the transportation used by the logistics delivery personnel. For example, when a logistics delivery person uses a car as a means of transportation, they can select roads accessible by car to form a delivery route. They can also further select a location such as a parking lot near the delivery address where cars can be parked as the first delivery address for the order, and further use walking as the mode of transportation from the first delivery address to the actual delivery address, thereby calculating the time from the current location to the delivery address and the delivery route in two parts. In addition, when a logistics delivery person uses a bicycle or electric bicycle as a means of transportation to perform a delivery task, they can use almost all roads on the map as roads that can constitute the delivery route.

[0085] S304: Determine, based on the order information of each order in the initial order combination and the preset constraints, an initial order combination that meets the constraints as an order combination result.

[0086] Therefore, in step S304, the delivery itinerary information of each order in each initial order combination calculated in step S303 can be used to determine whether the pre-set constraints are met. In other words, in step S304, the pre-set constraints can be used to select an order combination that meets the constraints from the multiple initial order combinations obtained in step S302 as the final order combination result.

[0087] For example, in an embodiment of the present application, different algorithms can be selected based on the number of order combinations generated in step S302. For example, a depth-first branch-and-bound algorithm and ALNS can be used to perform constraint calculations on the initial order combinations calculated in step S303 to determine the final order combination results. Because these two algorithms have different advantages, in an embodiment of the present application, for situations with a small number of orders, a branch-and-bound algorithm can be used to determine the final order combination, and for situations with a very large number of orders, ALNS can be used to find the optimal solution in a short period of time.

[0088] For example, the constraints that can be used in step S304 may include: an on-time fulfillment rate constraint, i.e., minimizing the number of orders with an estimated delivery time that is earlier than the earliest delivery time or later than the latest delivery time; and a balance constraint, i.e., minimizing the sum of the squares of the lengths of time that the estimated delivery time is earlier than the earliest delivery time or later than the latest delivery time. Furthermore, in addition to the above two constraints, further constraints may be included: an early order quantity constraint, i.e., minimizing the number of orders with an estimated delivery time that is earlier than the earliest delivery time; and a total delivery distance constraint, i.e., minimizing the total delivery distance determined based on the delivery itinerary information.

[0089] For example, if the on-time fulfillment rate constraint is used in step S304, that is, if the final order combination result is determined based on the minimum number of orders that violate the delivery time window, the fulfillment status of each order in the initial order combination can be determined based on the delivery route and delivery time of the orders in each order combination calculated in step S303, that is, whether it is delivered within the delivery time window specified by the order, thereby calculating the total number of orders that violate the delivery time window in the initial order combination. In other words, the total number of orders in the order combination that cannot be delivered within the order's specified delivery window. Therefore, in step S304, the constraint condition can be used to select the order combination that can minimize or even reduce the number of orders that violate the order as the final order combination result, thereby maximizing the user experience.

[0090] Furthermore, when determining the order combination results using the on-time fulfillment rate constraint in step S304, it's very likely that only one order in the final order combination will default—that is, only one order will not be delivered within the specified delivery time window, but will time out for a long period. In other words, when calculating the order combination using the on-time fulfillment rate constraint in step S304, due to the different order ordering within the order combination, that is, the different delivery orders, most orders in an order combination will be delivered on time, while only the last delivered order will time out for a long period, for example, one hour. However, when such an order combination is calculated using the on-time fulfillment rate constraint, it will be selected as the final order combination result because it ultimately has only one defaulting order. However, in the order combination that is not selected, there may be two or more orders that default and time out, but the delivery timeout for each of the timeout orders is relatively short, for example, approximately 5-10 minutes. In actual logistics experience, orders determined according to the on-time fulfillment rate constraint described above may experience a very poor logistics experience for the user due to the long timeout of the last order. This is something that logistics service providers hope to avoid.

[0091] Therefore, in step S304, the constraints can be balanced, aiming to minimize the sum of the squares of the time violations of the delivery time window specified in the order. Using these constraints for calculations will, in the scenario described above, determine the final order combination as the final order combination. Although this order combination contains a large number of timeout orders, the timeouts for each order are relatively short, resulting in a better user experience than if the on-time fulfillment rate constraint were used, where individual orders had significant timeouts, leading to a poor user experience.

[0092] Furthermore, in step S304, the on-time fulfillment rate constraint and the balance constraint can be prioritized over the early order quantity constraint and the total delivery distance constraint. Therefore, when multiple order combination results are calculated using the on-time fulfillment rate constraint or the balance constraint in step S304, the early order quantity constraint or the total delivery distance constraint can be further used to filter these order combination results, thereby selecting an order combination that satisfies the early order quantity constraint or the total delivery distance constraint as the final order combination result.

[0093] In addition, when the order combination is calculated using the depth-first branch-and-bound method in step S304, the order combination can be adjusted, i.e., branch reduction, in the following three situations.

[0094] For example, when there is no order in the current delivery trip with an estimated delivery time earlier than the earliest delivery time or later than the latest delivery time, the total delivery distance determined based on the delivery trip information is greater than the current delivery distance; when there is an order in the current delivery trip with an estimated delivery time earlier than the earliest delivery time or later than the latest delivery time, after deleting the last added order, there is no order in the current delivery trip with an estimated delivery time earlier than the earliest delivery time or later than the latest delivery time; when there is an order in the current delivery trip with an estimated delivery time earlier than the earliest delivery time or later than the latest delivery time, the number of orders with an estimated delivery time earlier than the earliest delivery time or later than the latest delivery time is greater than a preset threshold.

[0095] In addition, when calculating the order combination based on the equilibrium constraint condition in step S304, the order combination can be adjusted in the following two situations.

[0096] When there are orders in the current delivery trip with an estimated delivery time earlier than the earliest delivery time or later than the latest delivery time, after deleting the last added order, there are no orders in the current delivery trip with an estimated delivery time earlier than the earliest delivery time or later than the latest delivery time.

[0097] When there is an order in the current delivery trip whose estimated delivery time is earlier than the earliest delivery time or later than the latest delivery time, the sum of the squares of the lengths of time that the estimated delivery time is earlier than the earliest delivery time or later than the latest delivery time is greater than a predetermined threshold.

[0098] In addition, when performing order combination calculation for order combinations exceeding a predetermined threshold number in step S304, as described above, the ALNS algorithm may be used for calculation. In this algorithm, in addition to the above calculation, the following processing may be further performed.

[0099] 1. Removal processing: that is, remove the order with the most timeouts. If no order has timed out, remove the order with the longest distance from the current order until a predetermined number of orders have been removed. Alternatively, a predetermined number of orders can be removed randomly. Alternatively, orders can be removed based on the change in delivery distance before and after removal. For example, if the original delivery order is order D1->order D2->order D3, then the order that maximizes length(D1->D2)+length(D2->D3)-length(D1->D3) can be removed until a predetermined number of orders have been removed.

[0100] 2. Repair processing, that is, for orders to be delivered, determine the latest order combination in which the newly added order will not time out. If it will time out anyway, directly use the newly added order as the first order in the order combination; for newly added pickup points, the order combination with the shortest distance between the pickup point and the adjacent delivery point can be determined as the final order combination.

[0101] 3. Update processing, that is, if the currently selected removal processing or repair processing obtains a better solution than the current solution, the corresponding removal processing or repair processing selection probability increases; if the current solution is better than the solution of the previous round of iteration, the solution of this round of iteration is accepted and the iteration continues; if the solution of this round of iteration is worse than the solution of the previous round of iteration, the solution of this round of iteration is accepted with a predetermined probability, where the acceptance probability threshold can be e^(delayed order quantity of the previous round - delayed order quantity of this round); if the solution of this round of iteration is not accepted, it falls back to the solution of the previous round of iteration for the next round of iteration.

[0102] 4. Exception handling: For situations where delivery encounters extreme weather or late warehouse delivery, in an embodiment of the present application, special handling can also be performed on the execution time of the final delivery task calculated according to the above method to avoid affecting the assessment of delivery personnel due to such extreme situations.

[0103] For example, in extreme weather conditions, since extreme weather affects the delivery speed of logistics delivery personnel, in an embodiment of the present application, the impact of different weather conditions on riding speed can be fitted based on historical experience, and the delivery speed for calculating the order delivery time has been corrected, so that the result calculated in this case can be compared with the pre-set maximum tolerable timeout to determine the final timeout threshold.

[0104] In addition, in the case where the logistics object is shipped out late, that is, the logistics delivery personnel get the logistics object to be delivered at the delivery station late, this is not caused by the delivery personnel. Therefore, in the embodiment of the present application, the estimated warehouse shipment time and the actual shipment time of the order can be compared. If the actual shipment time is greater than the estimated shipment time, the order is a late shipment order. During the calculation process, if the order is bound to time out, the upper limit of the timeout time can be the warehouse shipment late time.

[0105] S305: Generate an order delivery task for a delivery trip based on the order combination result.

[0106] In step S305, the order delivery tasks to be performed by the logistics delivery personnel during a delivery trip can be generated based on the order combination results calculated in step S304 that meet the pre-set constraints. For example, if the final order combination result generated in step S304 is an order combination consisting of multiple orders arranged in sequence, this sequence can be used as the delivery order, and the delivery route and delivery time of each order calculated for this order combination in step S303 can be used as the delivery itinerary information for each order. This information can then be matched one-to-one with the order information to generate the order delivery tasks.

[0107] Therefore, according to the order allocation method provided in the embodiment of the present application, by calculating based on the pre-set constraints according to the order information of multiple orders, an order combination result consisting of at least one of these orders can be obtained, and an order delivery task for a delivery trip can be generated based on the order information of the order combination result. Therefore, by using the pre-set constraints to calculate the order combination that meets the constraints from multiple orders, and generating a delivery task for a delivery trip with the order information in the order combination result, the delivery personnel can perform delivery according to the delivery task. Since the generated delivery task meets the predetermined order combination generation constraints, the logistics delivery personnel perform delivery according to the order task generated in this way. Indicators such as order fulfillment rate can be used as pre-set constraints to not only select orders for the logistics delivery personnel, but also generate optimized delivery itineraries accordingly, thereby avoiding the unreasonable defects of relying on manual order allocation and task generation for delivery tasks.

[0108] Example 4

[0109] Figure 4 This is a schematic diagram of the structure of an embodiment of the order distribution device provided by this application, which can be used to execute Figure 2 or Figure 3 The order allocation method shown in . Figure 4 As shown, the order distribution device may include: an acquisition module 41, a processing module 42 and a generation module 43.

[0110] The acquisition module 41 may be used to acquire order information of multiple orders.

[0111] Acquisition module 41 may first acquire order information for multiple orders to be assigned. In this embodiment of the present application, the order information may include the earliest delivery time, the latest delivery time, and the delivery location for the order. In other words, in this embodiment of the present application, the order information acquired by acquisition module 41 may at least include the delivery time window and delivery address specified by the user for the order.

[0112] The processing module 42 may be configured to perform calculations based on the order information and pre-set constraints to obtain an order combination result consisting of at least one order from the plurality of orders.

[0113] The processing module 42 can combine the multiple orders obtained by the acquisition module 41, and calculate the order combination that meets the pre-set constraints for each combination. For example, the initial order combination can be composed based on a predetermined quantity, and multiple order combinations can be generated by adding orders one by one, and the order combination can also be generated by adjusting the order of the orders in the order combination. The order of the orders in each order combination is the delivery order when the delivery task is finally generated. Therefore, the processing module 42 can calculate the order combination with different orders and different order delivery orders, and determine whether the pre-set constraints are met. In other words, the processing module 42 can select the order combination that meets the constraints from the various combinations of multiple orders obtained by the acquisition module 41 through the preset constraints as the final order combination result.

[0114] Specifically, in an embodiment of the present application, the processing module 42 can calculate the delivery itinerary information of each order in the initial order combination in a predetermined order. For example, the processing module 42 can calculate the delivery itinerary for the initial order combination one by one. For example, the route from the current location, such as the distribution station, to the delivery location can be first calculated based on the delivery location of the first order in an initial order combination, and the time to arrive at the delivery location can be calculated based on the pre-set travel speed of the delivery personnel, so that the time can be used as the delivery completion time of the first order. In particular, in an embodiment of the present application, since logistics delivery personnel can use various means of transportation for delivery, the travel speed of the delivery personnel used can be determined based on the transportation information of different logistics delivery personnel, and the route from the current location to the delivery location can be further determined based on the transportation used by the logistics delivery personnel. For example, when a logistics delivery person uses a car as a means of transportation, they can select roads accessible by car to form a delivery route. They can also further select a location such as a parking lot near the delivery address where cars can be parked as the first delivery address for the order, and further use walking as the mode of transportation from the first delivery address to the actual delivery address, thereby calculating the time from the current location to the delivery address and the delivery route in two parts. In addition, when a logistics delivery person uses a bicycle or electric bicycle as a means of transportation to perform a delivery task, they can use almost all roads on the map as roads that can constitute the delivery route.

[0115] The processing module 42 may also determine an initial order combination that meets the constraint conditions as an order combination result based on the order information of each order in the initial order combination and the preset constraint conditions.

[0116] Processing module 42 can determine whether the calculated delivery itinerary information for each order in each initial order combination satisfies the pre-set constraints. In other words, processing module 42 can use the pre-set constraints to select an order combination that satisfies the constraints from among the multiple acquired initial order combinations as the final order combination result.

[0117] For example, in an embodiment of the present application, processing module 42 may select different algorithms based on the number of generated order combinations, such as a depth-first branch-and-bound algorithm and ALNS, to perform constraint calculations on the calculated initial order combinations to determine the final order combination results. Because these two algorithms have different advantages, in an embodiment of the present application, for situations with a small number of orders, a branch-and-bound algorithm may be used to determine the final order combination, while for situations with a very large number of orders, ALNS may be used to find the optimal solution in a short period of time.

[0118] For example, the constraints that processing module 42 may use include: an on-time fulfillment rate constraint, i.e., minimizing the number of orders with an estimated delivery time that is earlier than the earliest delivery time or later than the latest delivery time; and a balance constraint, i.e., minimizing the sum of the squares of the lengths of time by which the estimated delivery time is earlier than the earliest delivery time or later than the latest delivery time. Furthermore, in addition to the above two constraints, further constraints may be included: an early order quantity constraint, i.e., minimizing the number of orders with an estimated delivery time that is earlier than the earliest delivery time; and a total delivery distance constraint, i.e., minimizing the total delivery distance determined based on the delivery itinerary information.

[0119] For example, when processing module 42 uses the on-time fulfillment rate constraint, that is, when the condition for determining the final order combination result is to minimize the number of orders that violate the delivery time window, the fulfillment status of each order in the initial order combination can be determined based on the calculated delivery route and delivery time of the orders in each order combination, that is, whether it is delivered within the delivery time window specified by the order, thereby calculating the total number of orders in the initial order combination that violate the delivery time window. In other words, the total number of orders in the order combination that cannot be delivered within the order's specified delivery window. Therefore, processing module 42 can use this constraint to select the order combination that can minimize or even reduce the number of orders that violate the order as the final order combination result, thereby maximizing the user experience.

[0120] Furthermore, when processing module 42 uses the on-time fulfillment rate constraint to determine the resulting order combination, it's very likely that only one order in the final order combination will default—that is, only one order will not be delivered within the specified delivery time window, but will have a long timeout. In other words, when processing module 42 calculates the order combination based on the on-time fulfillment rate constraint, due to the different order ordering within the order combination, that is, the different delivery order, most orders in an order combination will be delivered on time, while only the last delivered order will timeout for a long time, for example, one hour. However, when such an order combination is calculated based on the on-time fulfillment rate constraint, it will be selected as the final order combination because it ultimately has only one defaulting order. However, in the order combination that is not selected, there may be two or more orders that default and timeout, but the delivery timeout for each of the timeout orders is relatively short, for example, approximately 5-10 minutes. In actual logistics experience, the orders determined based on the on-time fulfillment rate constraint as above, due to the long timeout of the last order, will actually result in a very poor logistics experience for the user of that order. This is also something that logistics service providers hope to avoid.

[0121] Therefore, processing module 42 can balance the constraints, aiming to minimize the sum of the squares of the time violations of the delivery time window specified in the order. Using such constraints for calculations will, in the scenario described above, determine the latter order combination as the final order combination result. Although this order combination contains a large number of timeout orders, because the timeout period for each order is relatively short, the user experience is actually better than the problem of using the on-time fulfillment rate constraint, where individual orders have serious timeouts, resulting in a poor experience.

[0122] Furthermore, processing module 42 may also prioritize the aforementioned on-time fulfillment rate constraint and balance constraint over the early order quantity constraint and total delivery distance constraint. Therefore, when processing module 42 calculates multiple order combination results using the on-time fulfillment rate constraint or balance constraint, it may further filter these order combination results using the early order quantity constraint or total delivery distance constraint, thereby selecting the order combination that satisfies the early order quantity constraint or total delivery distance constraint as the final order combination result.

[0123] In addition, when the processing module 42 calculates the order combination using a depth-first branch-and-bound method, the order combination can be adjusted, i.e., branch reduction, in the following three situations.

[0124] For example, when there is no order in the current delivery trip with an estimated delivery time earlier than the earliest delivery time or later than the latest delivery time, the total delivery distance determined based on the delivery trip information is greater than the current delivery distance; when there is an order in the current delivery trip with an estimated delivery time earlier than the earliest delivery time or later than the latest delivery time, after deleting the last added order, there is no order in the current delivery trip with an estimated delivery time earlier than the earliest delivery time or later than the latest delivery time; when there is an order in the current delivery trip with an estimated delivery time earlier than the earliest delivery time or later than the latest delivery time, the number of orders with an estimated delivery time earlier than the earliest delivery time or later than the latest delivery time is greater than a preset threshold.

[0125] In addition, when the processing module 42 calculates the order combination based on the equilibrium constraint condition, the order combination can be adjusted in the following two situations.

[0126] When there are orders in the current delivery trip with an estimated delivery time earlier than the earliest delivery time or later than the latest delivery time, after deleting the last added order, there are no orders in the current delivery trip with an estimated delivery time earlier than the earliest delivery time or later than the latest delivery time.

[0127] When there is an order in the current delivery trip whose estimated delivery time is earlier than the earliest delivery time or later than the latest delivery time, the sum of the squares of the lengths of time that the estimated delivery time is earlier than the earliest delivery time or later than the latest delivery time is greater than a predetermined threshold.

[0128] In addition, when the processing module 42 performs order combination calculation for the order combinations exceeding the predetermined threshold number, as described above, the ALNS algorithm may be used for calculation. In this algorithm, in addition to the above calculation, the following processing may be further performed.

[0129] 1. Removal processing: that is, remove the order with the most timeouts. If no order has timed out, remove the order with the longest distance from the current order until a predetermined number of orders have been removed. Alternatively, a predetermined number of orders can be removed randomly. Alternatively, orders can be removed based on the change in delivery distance before and after removal. For example, if the original delivery order is order D1->order D2->order D3, then the order that maximizes length(D1->D2)+length(D2->D3)-length(D1->D3) can be removed until a predetermined number of orders have been removed.

[0130] 2. Repair processing, that is, for orders to be delivered, determine the latest order combination in which the newly added order will not time out. If it will time out anyway, directly use the newly added order as the first order in the order combination; for newly added pickup points, the order combination with the shortest distance between the pickup point and the adjacent delivery point can be determined as the final order combination.

[0131] 3. Update processing, that is, if the currently selected removal processing or repair processing obtains a better solution than the current solution, the corresponding removal processing or repair processing selection probability increases; if the current solution is better than the solution of the previous round of iteration, the solution of this round of iteration is accepted and the iteration continues; if the solution of this round of iteration is worse than the solution of the previous round of iteration, the solution of this round of iteration is accepted with a predetermined probability, where the acceptance probability threshold can be e^(delayed order quantity of the previous round - delayed order quantity of this round); if the solution of this round of iteration is not accepted, it falls back to the solution of the previous round of iteration for the next round of iteration.

[0132] 4. Exception handling: For situations where delivery encounters extreme weather or late warehouse delivery, in an embodiment of the present application, special handling can also be performed on the execution time of the final delivery task calculated according to the above method to avoid affecting the assessment of delivery personnel due to such extreme situations.

[0133] For example, in extreme weather conditions, since extreme weather affects the delivery speed of logistics delivery personnel, in an embodiment of the present application, the impact of different weather conditions on riding speed can be fitted based on historical experience, and the delivery speed for calculating the order delivery time has been corrected, so that the result calculated in this case can be compared with the pre-set maximum tolerable timeout to determine the final timeout threshold.

[0134] In addition, in the case where the logistics object is shipped out late, that is, the logistics delivery personnel get the logistics object to be delivered at the delivery station late, this is not caused by the delivery personnel. Therefore, in the embodiment of the present application, the estimated warehouse shipment time and the actual shipment time of the order can be compared. If the actual shipment time is greater than the estimated shipment time, the order is a late shipment order. During the calculation process, if the order is bound to time out, the upper limit of the timeout time can be the warehouse shipment late time.

[0135] The generation module 43 can be used to generate an order delivery task with a delivery trip based on the order combination result.

[0136] Generating module 43 can generate order delivery tasks for logistics delivery personnel to perform during a delivery trip based on the order combination results calculated by processing module 42 that meet pre-set constraints. For example, the final order combination result generated by processing module 42 is an order combination consisting of multiple orders arranged in sequence. Therefore, this sequence can be used as the delivery order, and the delivery route and delivery time calculated for each order in this order combination can be used as the delivery itinerary information for each order. This information can then be matched one-to-one with the order information to generate the order delivery tasks.

[0137] Therefore, according to the order distribution device provided in the embodiment of the present application, by calculating based on the pre-set constraints according to the order information of multiple orders, an order combination result consisting of at least one of these orders can be obtained, and an order delivery task for a delivery trip can be generated according to the order information of the order combination result. Therefore, by using the pre-set constraints to calculate the order combination that meets the constraints from multiple orders, and generating a delivery task for a delivery trip with the order information in the order combination result, the delivery personnel can perform delivery according to the delivery task. Since the generated delivery task meets the predetermined order combination generation constraints, the logistics delivery personnel perform delivery according to the order task generated in this way. Indicators such as order fulfillment rate can be used as pre-set constraints to not only select orders for the logistics delivery personnel, but also generate optimized delivery itineraries accordingly, thereby avoiding the unreasonable defects of relying on manual order allocation and task generation for delivery tasks.

[0138] Example 5

[0139] The internal functions and structure of the order distribution device are described above. The device can be implemented as an electronic device. Figure 5 This is a schematic diagram of the structure of an electronic device embodiment provided by this application. Figure 5 As shown, the electronic device includes a memory 51 and a processor 52 .

[0140] Memory 51 is used to store programs. In addition to the aforementioned programs, memory 51 may also be configured to store various other data to support operations on the electronic device. Examples of such data include instructions for any application or method operating on the electronic device, contact data, phone book data, messages, images, videos, etc.

[0141] The memory 51 can be implemented by any type of volatile or non-volatile memory device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk or optical disk.

[0142] Processor 52 is not limited to a CPU and may also be a processing chip such as a graphics processing unit (GPU), a field programmable gate array (FPGA), an embedded neural network processor (NPU), or an artificial intelligence (AI) chip. Processor 52 is coupled to memory 51 and executes the program stored in memory 51 to perform the order allocation method of the second or third embodiment described above.

[0143] Further, if Figure 5 As shown, the electronic device may further include: a communication component 53, a power component 54, an audio component 55, a display 56 and other components. Figure 5 Only some components are shown schematically, which does not mean that the electronic device only includes Figure 5 Components shown.

[0144] The communication component 53 is configured to facilitate wired or wireless communication between the electronic device and other devices. The electronic device can access a wireless network based on a communication standard, such as a mobile communication network such as WiFi, 2G, 3G, 4G / LTE, 5G, or a combination thereof. In an exemplary embodiment, the communication component 53 receives a broadcast signal or broadcast-related information from an external broadcast management system via a broadcast channel. In an exemplary embodiment, the communication component 53 also includes a near field communication (NFC) module to facilitate short-range communication. For example, the NFC module can be implemented based on radio frequency identification (RFID) technology, infrared data association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology and other technologies.

[0145] The power supply assembly 54 provides power to various components of the electronic device. The power supply assembly 54 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power to the electronic device.

[0146] The audio component 55 is configured to output and / or input audio signals. For example, the audio component 55 includes a microphone (MIC), which is configured to receive external audio signals when the electronic device is in an operating mode, such as a call mode, a recording mode, and a voice recognition mode. The received audio signal can be further stored in the memory 51 or transmitted via the communication component 53. In some embodiments, the audio component 55 also includes a speaker for outputting audio signals.

[0147] The display 56 includes a screen, which may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touches, slides, and gestures on the touch panel. The touch sensor may not only sense the boundaries of a touch or slide action, but also detect the duration and pressure associated with the touch or slide operation.

[0148] Those skilled in the art will appreciate that all or part of the steps in the above-described method embodiments can be implemented using hardware associated with program instructions. The aforementioned program can be stored in a computer-readable storage medium. When executed, the program performs the steps of the above-described method embodiments. The aforementioned storage medium includes various media capable of storing program code, such as ROM, RAM, magnetic disks, or optical disks.

[0149] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the above embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the above embodiments, or replace some or all of the technical features therein with equivalents. However, these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of the present invention.

Claims

1. An order allocation method, comprising: Obtaining order information of multiple orders, wherein the order information at least includes the earliest delivery time, the latest delivery time, and the delivery location of the orders; Calculation is performed based on the order information and pre-set constraints to obtain an order combination result consisting of at least one order from the multiple orders, wherein the constraints include: a first constraint and a second constraint, the first constraint having a higher priority than the second constraint, the first constraint being: the number of orders with an estimated delivery time earlier than the earliest delivery time or later than the latest delivery time is minimized, or the sum of the squares of the lengths of time with an estimated delivery time earlier than the earliest delivery time or later than the latest delivery time is minimized; the second constraint being: the number of orders with an estimated delivery time earlier than the earliest delivery time is minimized, or the total delivery distance determined based on the delivery trip information is minimized; An order delivery task with a delivery trip is generated according to the order combination result, wherein the order delivery task at least includes delivery trip information for each order in the order combination result.

2. The order allocation method according to claim 1, wherein: The calculating based on the order information and the preset constraint conditions to obtain an order combination result consisting of at least one order from the multiple orders includes: generating a plurality of initial order combinations for the plurality of orders, wherein each initial order combination includes at least one order sorted in a predetermined order; Calculate the delivery itinerary information of each order in the initial order combination according to the predetermined order; According to the order information of each order in the initial order combination and the preset constraint conditions, an initial order combination that meets the constraint conditions is determined as the order combination result.

3. The order allocation method according to claim 1, wherein: The calculating based on the order information and the preset constraint conditions to obtain an order combination result consisting of at least one order from the multiple orders includes: Calculate the fulfillment status of the delivery trip based on the earliest delivery time, latest delivery time and estimated delivery time of the order. When there is an order in the order combination result whose estimated delivery time is later than the latest delivery time, the latest departure time of the delivery trip is determined as the pickup end time; When the order combination result only contains orders whose estimated delivery time is earlier than the earliest delivery time, the latest departure time of the delivery trip is determined to be the sum of the collection end time and the first elapsed time length, where the first elapsed time length is the minimum value of the maximum elapsed time length and the maximum early arrival time length among all orders; When there is no order in the order combination result with an estimated delivery time earlier than the earliest delivery time or later than the latest delivery time, the latest departure time of the delivery trip is determined to be the sum of the collection end time and the second elapsed time length, where the second elapsed time length is the minimum elapsed time length among all orders.

4. The order allocation method according to claim 2, wherein: The first constraint condition is that the number of orders with an estimated delivery time earlier than the earliest delivery time or later than the latest delivery time is minimal, and determining, based on the order information of each order in the initial order combination and the preset constraint condition, an initial order combination that satisfies the constraint condition as the order combination result includes: Under the following conditions, the order combination result is generated by deleting the last order added in the currently calculated initial order combination: When there is no order in the current delivery trip with an estimated delivery time earlier than the earliest delivery time or later than the latest delivery time, the total delivery distance determined based on the delivery trip information is greater than the current delivery distance; If there are orders in the current delivery trip with an estimated delivery time earlier than the earliest delivery time or later than the latest delivery time, after deleting the last added order, there will be no orders in the current delivery trip with an estimated delivery time earlier than the earliest delivery time or later than the latest delivery time; When there are orders in the current delivery trip whose estimated delivery time is earlier than the earliest delivery time or later than the latest delivery time, the number of orders whose estimated delivery time is earlier than the earliest delivery time or later than the latest delivery time is greater than a preset threshold.

5. The order allocation method according to claim 2, wherein: The first constraint condition is that the sum of the squares of the lengths of time during which the estimated delivery time is earlier than the earliest delivery time or later than the latest delivery time is minimized, and determining, based on the order information of each order in the initial order combination and the preset constraint condition, an initial order combination that satisfies the constraint condition as the order combination result includes: Under the following conditions, the order combination result is generated by deleting the last order added in the currently calculated initial order combination: When there are orders in the current delivery trip with an estimated delivery time earlier than the earliest delivery time or later than the latest delivery time, after deleting the last added order, there are no orders in the current delivery trip with an estimated delivery time earlier than the earliest delivery time or later than the latest delivery time; When there is an order in the current delivery trip whose estimated delivery time is earlier than the earliest delivery time or later than the latest delivery time, the sum of the squares of the lengths of time that the estimated delivery time is earlier than the earliest delivery time or later than the latest delivery time is greater than a predetermined threshold.

6. An order distribution device, comprising: An acquisition module, configured to acquire order information of a plurality of orders, wherein the order information at least includes the earliest delivery time, the latest delivery time, and the delivery location of the order; a processing module, configured to perform calculations based on the order information and pre-set constraints to obtain an order combination result consisting of at least one order from the multiple orders, wherein the constraints include: a first constraint and a second constraint, the first constraint having a higher priority than the second constraint, the first constraint being: the number of orders with an estimated delivery time earlier than the earliest delivery time or later than the latest delivery time being minimized, or the sum of the squares of the lengths of time with an estimated delivery time earlier than the earliest delivery time or later than the latest delivery time being minimized; and the second constraint being: the number of orders with an estimated delivery time earlier than the earliest delivery time being minimized, or the total delivery distance determined based on the delivery trip information being minimized. A generation module is used to generate an order delivery task with a delivery trip based on the order combination result, wherein the order delivery task at least includes delivery trip information for each order in the order combination result.

7. The order distribution device according to claim 6, wherein: The processing module is further configured to: generating a plurality of initial order combinations for the plurality of orders, wherein each initial order combination includes at least one order sorted in a predetermined order; Calculate the delivery itinerary information of each order in the initial order combination according to the predetermined order; According to the order information of each order in the initial order combination and the preset constraint conditions, an initial order combination that meets the constraint conditions is determined as the order combination result.

8. An electronic device comprising: Memory, used to store programs; A processor, configured to run the program stored in the memory to execute the order allocation method according to any one of claims 1 to 5.

9. A computer-readable storage medium having stored thereon a computer program executable by a processor, wherein: When the program is executed by a processor, the order allocation method according to any one of claims 1 to 5 is implemented.

Citation Information

Patent Citations

  • Scheduling method and device, electronic equipment and storage medium

    CN113095553A