An order scheduling method, device, storage medium and electronic device
By calculating the distribution cost and comprehensive characterization value of the corresponding distribution capacity of each order to be allocated, the problem of not being able to obtain the distribution result with the smallest global distribution cost in the prior art is solved, and a smaller global distribution cost is achieved.
Patent Information
- Application Number
- CN202010981704.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-09-17
- Publication Date
- 2025-06-24
- Estimated Expiration
- 2040-09-17
AI Technical Summary
The prior art only considers the order collection cost of a separate order in order scheduling, resulting in the distribution result with the smallest global delivery cost in the case of dense order space distribution.
By obtaining the information of each order to be allocated and the distribution capacity, calculate the distribution cost corresponding to each delivery capacity for each order to be allocated, determine the comprehensive characterization value that represents the difficulty of dispatching the order to be allocated, and sort the distribution capacity according to the comprehensive characterization value.
By introducing characterization values to measure and sort the difficulty of order dispatch, distribution capacity can be allocated to orders with high order dispatch difficulty under relatively sufficient information, thereby achieving distribution results with smaller global distribution costs.
Smart Images

Figure CN114202137B_ABST
Abstract
Description
Technical Field
[0001] This specification relates to the field of computer technology, and in particular, to an order scheduling method, apparatus, storage medium, and electronic device. Background Art
[0002] Currently, with the development of e-commerce platforms, logistics, as a link connecting online transactions and offline deliveries, has become an indispensable part of daily life. The selected order scheduling method has a decisive impact on the distribution cost and timeliness of logistics.
[0003] In the prior art, newly generated orders are usually assigned to the distribution capacity closest to the corresponding supplier, so that the cost (including time, distance, etc.) incurred by the distribution capacity during the order pickup process is minimized, achieving the purpose of reducing the distribution cost.
[0004] However, in the case of dense order spatial distribution, the distances between each distribution capacity and the supplier are not very different. Selecting the distribution capacity closest to the supplier may minimize the pickup cost of a single order, but compared with assigning it to other distribution capacities, the saved pickup cost accounts for too small a proportion of the distribution cost required for all distribution capacities to deliver all orders, resulting in an order scheduling method that only considers the pickup cost of a single order often not being able to obtain the distribution result with the minimum overall distribution cost. Summary of the Invention
[0005] This specification provides an order scheduling method and apparatus to partially solve the above problems existing in the prior art.
[0006] This specification adopts the following technical solutions:
[0007] This specification provides an order scheduling method, including:
[0008] Obtain information on each order to be assigned and distribution capacity;
[0009] For each order to be assigned, according to the information of the order to be assigned and the information of each distribution capacity, determine the distribution cost of each distribution capacity when the order to be assigned is assigned to each distribution capacity respectively, as the distribution cost of the order to be assigned corresponding to each distribution capacity;
[0010] For each order to be assigned, according to the distribution cost of the order to be assigned corresponding to each distribution capacity, determine at least two characterization values that can characterize the order assignment difficulty of the order to be assigned;
[0011] For each order to be assigned, according to the various characterization values of the order to be assigned, determine a comprehensive characterization value that characterizes the order assignment difficulty of the order to be assigned;
[0012] Determine the sorting of each order to be assigned according to the comprehensive characterization value of each order to be assigned;
[0013] Allocate delivery capacity for each order to be assigned according to the sorting of each order to be assigned.
[0014] Optionally, determine the comprehensive characterization value representing the order assignment difficulty of the order to be assigned, specifically including:
[0015] For each type of characterization value, determine the first parameter of this type of characterization value according to this type of characterization value of each order to be assigned;
[0016] Determine the weight corresponding to each type of characterization value according to the first parameter of each type of characterization value;
[0017] Determine the comprehensive characterization value of the order assignment difficulty of the order to be assigned according to each type of characterization value of the order to be assigned and the weight corresponding to each type of characterization value.
[0018] Optionally, determine at least two types of characterization values that can represent the order assignment difficulty of the order to be assigned, specifically including:
[0019] According to the delivery cost of the order to be assigned corresponding to each delivery capacity, determine the delivery capacity with the lowest delivery cost for delivering the order to be assigned, and use this delivery capacity as the initial delivery capacity of the order to be assigned; use the delivery cost of this delivery capacity for delivering the order to be assigned as the initial delivery cost of the order to be assigned;
[0020] According to the delivery cost of the order to be assigned corresponding to each delivery capacity, determine the stability of the order to be assigned, where the stability is used to represent the probability that the initial delivery capacity of the order to be assigned is the optimal delivery capacity for the order to be assigned, and the optimal delivery capacity is the delivery capacity corresponding to the order to be assigned when each order to be assigned is assigned to the delivery capacity that minimizes the sum of the delivery costs of all orders to be assigned;
[0021] Use the initial delivery cost of the order to be assigned as the first characterization value of the order to be assigned, and use the stability of the order to be assigned as the second characterization value of the order to be assigned.
[0022] Optionally, before determining the sorting of each order to be assigned, the method further includes:
[0023] For each order to be assigned, determine the order pressing type of the order to be assigned according to the information of the order to be assigned, where the order pressing type includes order-pressable and non-order-pressable;
[0024] Determine the sorting of each order to be assigned, specifically including:
[0025] Determine the sorting of each order to be allocated according to the comprehensive characterization value of each order to be allocated and the backlog type of each order to be allocated, where the orders to be allocated with non-backlog types are ranked before the orders to be allocated with backlog types.
[0026] Optionally, allocate distribution transportation capacity for each order to be allocated, specifically including:
[0027] According to the sorting of each order to be allocated, each order to be allocated is sequentially allocated to the distribution transportation capacity with the lowest distribution cost for delivering the order to be allocated.
[0028] Optionally, allocate distribution transportation capacity for each order to be allocated according to the sorting of each order to be allocated, specifically including:
[0029] According to the sorting of each order to be allocated, a matching relationship is sequentially established for each order to be allocated with the distribution transportation capacity with the lowest distribution cost for delivering the order to be allocated;
[0030] Determine the orders to be adjusted according to each matching relationship between the distribution transportation capacity and the orders to be allocated;
[0031] Taking the cost of delivering the order to be adjusted by the distribution transportation capacity corresponding to the order to be adjusted after adjusting the matching relationship as not greater than the cost of delivering the order to be adjusted by the distribution transportation capacity corresponding to the order to be adjusted before adjusting the matching relationship as a constraint, adjust each matching relationship between the order to be adjusted and the distribution transportation capacity;
[0032] Allocate distribution transportation capacity for each order to be allocated according to each adjusted matching relationship between the distribution transportation capacity and the orders to be allocated.
[0033] Optionally, determine the orders to be adjusted, specifically including:
[0034] For each distribution transportation capacity, among the orders to be allocated that have a matching relationship with the distribution transportation capacity, select the last determined order to be allocated that has a matching relationship with the distribution transportation capacity as the order to be adjusted.
[0035] Optionally, adjust each matching relationship between the order to be adjusted and the distribution transportation capacity, specifically including:
[0036] In the order of the sequence of each order to be adjusted in the said sorting, sequentially for each order to be adjusted, take the order to be adjusted as the target order;
[0037] For each distribution transportation capacity, according to each allocated order currently allocated to the distribution transportation capacity and each order to be allocated that currently has a matching relationship with the distribution transportation capacity, re-determine the distribution cost of the distribution transportation capacity for delivering the target order;
[0038] According to the re-determined distribution cost for each distribution transportation capacity, determine the distribution transportation capacity with the lowest re-determined distribution cost as the target transportation capacity;
[0039] Establish a matching relationship for the target order and the target transportation capacity.
[0040] Optionally, adjust each matching relationship between the orders to be adjusted and the distribution transportation capacity, specifically including:
[0041] Determine a taboo list and initialize the taboo list as an empty set;
[0042] Judge whether the adjustment stop condition is met. If so, stop the adjustment. Otherwise, for each order to be adjusted, use this order to be adjusted as the target order. If the target order exists in the taboo list, re-determine the target order. If the target order does not exist in the taboo list, adjust the matching relationship for this target order and add this target order to the taboo list.
[0043] Optionally, the adjustment stop condition specifically includes:
[0044] The number of times of adjusting the matching relationship reaches a first preset threshold; and / or
[0045] The consecutive number of times that the matching transportation capacity corresponding to the matching relationship after the adjustment of the target order is the same as the matching transportation capacity corresponding to the matching relationship before the adjustment reaches a second preset threshold.
[0046] An order scheduling device provided in this specification includes:
[0047] Information acquisition module: Acquire information on each order to be allocated and the distribution transportation capacity;
[0048] Cost determination module: For each order to be allocated, according to the information of this order to be allocated and the information of each distribution transportation capacity, determine the distribution cost of each distribution transportation capacity when this order to be allocated is allocated to each distribution transportation capacity respectively, as the distribution cost of this order to be allocated corresponding to each distribution transportation capacity;
[0049] Characterization value determination module: For each order to be allocated, according to the distribution cost of this order to be allocated corresponding to each distribution transportation capacity, determine at least two characterization values that can characterize the order assignment difficulty of this order to be allocated;
[0050] Comprehensive characterization value determination module: For each order to be allocated, according to the various characterization values of this order to be allocated, determine a comprehensive characterization value that characterizes the order assignment difficulty of this order to be allocated;
[0051] Order sorting module: Determine the sorting of each order to be allocated according to the comprehensive characterization values of each order to be allocated;
[0052] Order allocation module: Allocate distribution transportation capacity for each order to be allocated according to the sorting of each order to be allocated.
[0053] This specification provides a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the above-mentioned order scheduling method.
[0054] This specification provides an electronic device, including a memory, a processor, and a computer program stored on the memory and executable on the processor, where the processor implements the above-mentioned order scheduling method when executing the program.
[0055] At least one of the above technical solutions adopted in this specification can achieve the following beneficial effects:
[0056] In the order scheduling method provided in this specification, a characterization value is introduced to measure the dispatch difficulty of orders to be allocated, and the orders to be allocated are sorted according to the dispatch difficulty, and the orders to be allocated are sequentially allocated to the distribution capacity according to the sorting.
[0057] Therefore, when this method first allocates the orders to be allocated with low dispatch difficulty, for the orders to be allocated with high dispatch difficulty, by delaying the decision time, the known information at the time of allocation is increased, so that the distribution capacity can be allocated to the orders to be allocated with high dispatch difficulty under relatively sufficient information, thereby obtaining a distribution result with a smaller global distribution cost for the orders with high dispatch difficulty; when this method first allocates the orders to be allocated with high dispatch difficulty, since the orders with high dispatch difficulty have a greater impact on the global distribution cost, therefore, preferentially selecting a suitable distribution capacity for the orders with high dispatch difficulty can obtain a distribution result with a smaller global distribution cost.
[0058] Thereby obtaining a distribution result with a smaller global distribution cost for the orders to be allocated with high dispatch difficulty. BRIEF DESCRIPTION OF THE DRAWINGS
[0059] The drawings described herein are used to provide a further understanding of this specification, and constitute a part of this specification. The illustrative embodiments of this specification and their descriptions are used to explain this specification and do not constitute an improper limitation to this specification. In the drawings:
[0060] Figure 1 is a schematic flowchart of an order scheduling method provided by an embodiment of this specification;
[0061] Figure 2 is a schematic flowchart of an order scheduling method including adjusting the matching relationship provided by an embodiment of this specification;
[0062] Figure 3 is a schematic diagram of using a taboo list to adjust the matching relationship provided by an embodiment of this specification;
[0063] Figure 4 is a schematic diagram of an order scheduling device provided by an embodiment of this specification;
[0064] Figure 5 This is the schematic diagram of the electronic device provided for the embodiments of this specification corresponding to Figure 1 . Specific embodiments
[0065] To make the purpose, technical solutions, and advantages of this specification clearer, the technical solutions of this specification will be clearly and completely described below in conjunction with the specific embodiments of this specification and the corresponding drawings. Obviously, the described embodiments are only a part of the embodiments of this specification, rather than all of the embodiments. Based on the embodiments in this specification, all other embodiments obtained by those of ordinary skill in the art without creative efforts belong to the scope protected by this specification.
[0066] The following will describe in detail the technical solutions provided by each embodiment of this specification in conjunction with the drawings.
[0067] Figure 1 This is the schematic diagram of the order dispatching process provided for the embodiments of this specification, including:
[0068] S100: Obtain the information of each order to be allocated and the delivery capacity.
[0069] In the embodiments of this specification, the order to be allocated is an order that needs to be allocated to the delivery capacity. It can be an order newly generated within a preset time period, an order generated before a preset time point that has not been allocated to the delivery capacity, or an order that has been allocated to the delivery capacity before a preset time point but needs to be reassigned to other delivery capacity. In actual application scenarios, any order that needs to be allocated to the delivery capacity can be an order to be allocated.
[0070] For each order to be allocated, obtain the information of this order to be allocated. The information of this order to be allocated may include: order generation time, estimated delivery time, location information of the task point, etc. The task point may include the pick-up point and / or delivery point of this order to be allocated.
[0071] The delivery capacity is a transportation unit that can deliver the order to be allocated from the supplier's location to the recipient's location. It can be a transportation vehicle or a delivery person. The "able to" can either mean that the capacity of the delivery capacity can achieve the delivery process or that the delivery capacity has the willingness to receive the order to be allocated and deliver the order. The information of the delivery capacity may include information such as the transportation speed and / or load capacity and / or maximum driving distance of each delivery capacity, as well as information such as each allocated order that has been allocated to each delivery capacity.
[0072] When the transportation vehicle is a driverless vehicle, such as a drone or a driverless transportation vehicle, the delivery capacity can be the transportation vehicle; when the transportation vehicle is a vehicle that requires a driver, the delivery capacity can be the transportation vehicle and / or the delivery personnel. Specifically, in the embodiments of this specification, when there is a preset corresponding relationship between the transportation vehicle and the delivery personnel, the delivery capacity can be the transportation vehicle and / or the delivery personnel; when there is no preset corresponding relationship between the transportation vehicle and the delivery personnel, it is determined whether the transportation vehicle is a standard transportation vehicle. When the transportation vehicle is a standard transportation vehicle (that is, each transportation vehicle that can provide transportation services has the same or similar transportation speed and / or load capacity and / or maximum driving distance, or the transportation vehicles can be divided into several categories, and each transportation vehicle in each category has the same or similar transportation speed and / or load capacity and / or maximum driving distance), the delivery capacity can be the transportation vehicle or the delivery personnel; when the transportation vehicle is a non-standard transportation vehicle (that is, each transportation vehicle that can provide transportation services does not have the same or similar transportation speed and / or load capacity and / or maximum driving distance, and cannot be divided into several categories, and each transportation vehicle in each category has the same or similar transportation speed and / or load capacity and / or maximum driving distance), the delivery capacity can be the transportation vehicle.
[0073] S102: For each order to be assigned, according to the information of the order to be assigned and the information of each delivery capacity, determine the delivery cost of each delivery capacity when the order to be assigned is assigned to each delivery capacity respectively, as the delivery cost of the order to be assigned corresponding to each delivery capacity.
[0074] For each delivery capacity, determine the original delivery path of the delivery capacity, and the sum of the costs of delivering each assigned order along the original delivery path as the original delivery cost. Specifically, since the information of each assigned order of the delivery capacity includes the task point information of each order, etc., therefore, under the constraint of meeting the preset conditions, due to the different sorting of the task points of each assigned order by the matching capacity, there are different delivery paths.
[0075] The delivery path can be any path that can complete the delivery task of the assigned order. Since the assigned orders of each delivery capacity and the original delivery paths for delivering each assigned order have been determined when this specification assigns delivery capacity to the orders to be assigned, the embodiments of this specification will not elaborate on how to determine the original delivery path.
[0076] For each order to be assigned, according to the information of the order to be assigned, when the order to be assigned is respectively assigned to each distribution capacity, for each distribution capacity, the task points of the order to be assigned are added to the sorting of the task points of the orders already determined by the distribution capacity under the constraint of meeting the preset conditions, and the feasible paths are determined according to the sorted task points after addition, as well as the sum of the costs of the distribution capacity to distribute the orders already determined and the order to be assigned along each feasible path. The feasible path with the minimum sum of the costs of distributing the orders already determined and the order to be assigned is selected as the target path of the order to be assigned. The sum of the costs of the distribution capacity to distribute the orders already determined and the order to be assigned along the target path can be used as the distribution cost of the order to be assigned corresponding to the distribution capacity; alternatively, the increment of the sum of the costs of the distribution capacity to distribute the orders already determined and the order to be assigned along the target path compared with the original distribution cost can be used as the distribution cost of the order to be assigned corresponding to the distribution capacity.
[0077] The preset conditions for determining the sorting of task points can be, when determining the sorting of task points of the assigned orders, for each assigned order, conditions such as the distribution capacity arriving at the pick-up point of the order before arriving at the delivery point of the order; when adding the task points of the order to be assigned to the sorting of the task points of the orders already determined by the corresponding distribution capacity, the preset conditions can be conditions such as the distribution capacity arriving at the pick-up point of the order to be assigned before arriving at the delivery point of the order to be assigned, and can also include conditions such as not changing the sorting of the task points of the orders already determined in the original distribution path of the distribution capacity.
[0078] Specifically, for determining the feasible paths, under the condition of meeting the preset constraints, enabling the distribution capacity to complete the distribution of the orders already determined and the order to be assigned is the feasible path for the distribution capacity to distribute the orders already determined and the order to be assigned.
[0079] The distribution cost can be characterized by the duration and / or distance and / or order overtime duration consumed by the distribution capacity to distribute the order. The order overtime duration is the difference between the actual delivery time of the order and the expected delivery time of the order. Among them, the longer the consumed duration, the higher the distribution cost; the longer the distribution distance, the higher the distribution cost; the longer the order overtime duration, the higher the distribution cost.
[0080] In the embodiments of this specification, for each order to be assigned, when determining the feasible paths for each delivery capacity in the case of determining the assignment of each task point of the order to be assigned to each delivery capacity, for each delivery capacity, the task points of the order to be assigned can be independently added to the sorting of the task points of the orders already assigned to the delivery capacity under the constraint of meeting the preset conditions, and the feasible paths can be determined according to the sorting of the task points after addition, that is, the orders already determined for the delivery capacity only include the orders already assigned; for each delivery capacity, the task points of the order to be assigned can also be added to the sorting of the task points of the orders already determined for the delivery capacity under the constraint of meeting the preset conditions in sequence according to the initial sorting of the orders to be assigned preset, and the feasible paths can be determined according to the sorting of the task points after addition. The orders already determined include the orders already assigned to the delivery capacity and the orders to be assigned to the delivery capacity before the assignment of the order to be assigned, that is, after each assignment of the order to be assigned, for the next order to be assigned, the task points of the order to be assigned are re-determined for each matching delivery capacity according to the orders already determined to be added to the sorting of the task points of the orders already determined for the delivery capacity under the constraint of meeting the preset conditions, and the feasible paths are determined according to the sorting of the task points after addition.
[0081] The initial sorting of the preset orders to be assigned can be determined according to the order generation time of each order to be assigned.
[0082] S104: For each order to be assigned, at least two characterization values capable of characterizing the order assignment difficulty of the order to be assigned are determined according to the delivery costs of the order to be assigned corresponding to each delivery capacity.
[0083] In an actual application scenario, when multiple orders to be assigned need to be assigned to multiple delivery capacities, the ideal situation usually pursued is not the minimum delivery cost of a certain order, but the minimum global delivery cost, that is, the minimum sum of the delivery costs of each order to be assigned.
[0084] Since there is a sequence in the assignment of the orders to be assigned, and the influence degree of the delivery cost of each order to be assigned on the global delivery cost (the sum of the delivery costs of each order to be assigned) is different, and for each order to be assigned, the confidence degree that the order to be assigned is assigned to the delivery capacity with the lowest delivery cost for delivering the order to be assigned is the assignment method that makes the global delivery cost minimum is different. Based on the purpose of making the sum of the delivery costs of each order to be assigned smaller, the order assignment difficulty is introduced to characterize the above influence degree and confidence degree, and the assignment sequence of each order to be assigned is determined according to the order assignment difficulty of each order to be assigned.
[0085] Specifically, for the orders assigned earlier, less information is known when these orders are assigned. The probability of assigning such an order to an inappropriate delivery capacity is higher, but the probability of assigning it to the delivery capacity with the lowest delivery cost for this order is also higher. Inappropriate situations may include that after assigning the order to an inappropriate delivery capacity, when assigning subsequent other orders, the probability of approaching the allocation results that minimize the global delivery cost drops sharply, or after assigning the order to an inappropriate capacity, compared with assigning it to other relatively appropriate capacities, the increase in the global delivery cost is relatively large.
[0086] The characterization value is a value that can characterize the order assignment difficulty in a certain aspect.
[0087] S106: For each order to be assigned, based on the respective characterization values of this order to be assigned, determine a comprehensive characterization value that characterizes the order assignment difficulty of this order to be assigned.
[0088] A single characterization value can characterize the order assignment difficulty from a certain aspect. For each order to be assigned, the comprehensive characterization value of this order to be assigned determined based on the respective characterization values of this order to be assigned can characterize the order assignment difficulty of this order to be assigned more comprehensively and accurately from multiple aspects.
[0089] S108: Based on the comprehensive characterization values of each order to be assigned, determine the sorting of each order to be assigned.
[0090] The comprehensive characterization value can relatively accurately characterize the order assignment difficulty of the order to be assigned. Therefore, the sorting of each order to be assigned determined based on the comprehensive characterization values of each order to be assigned is the sorting of each order to be assigned determined by the order assignment difficulty.
[0091] S110: Based on the sorting of each order to be assigned, assign delivery capacity to each order to be assigned.
[0092] Sort each order to be assigned according to the order assignment difficulty, and assign delivery capacity to each order to be assigned according to the sorting. That is, assign delivery capacity to the order to be assigned with a low order assignment difficulty first, and postpone the assignment time of the order to be assigned with a high order assignment difficulty to assign the order to be assigned with a high order assignment difficulty when more information is available, or assign delivery capacity to the order to be assigned with a high order assignment difficulty first, and preferentially assign the delivery capacity with a lower delivery cost to the order that has a greater impact on the global delivery cost to achieve a lower global delivery cost. Further, the assigning delivery capacity to each order to be assigned means sequentially sending each order to be assigned to the corresponding delivery capacity as the order that the corresponding delivery capacity needs to execute the delivery service for.
[0093] Through the above Figure 1As can be seen from the described method, this specification proposes an order scheduling method. This method introduces a characterization value to measure the difficulty of order dispatching, sorts each order to be allocated according to the characterization value, and allocates delivery capacity to the orders to be allocated in sequence according to the sorting. When allocating the orders to be allocated with low dispatching difficulty first, that is, when the above sorting is from low to high in terms of the comprehensive characterization value, since the impact on the overall delivery cost is small even if it is allocated to an inappropriate delivery capacity, or there is a high certainty to determine the appropriate delivery capacity corresponding to this order. For the orders to be allocated with high dispatching difficulty, by delaying their dispatching time and increasing the known information at the time of allocation, it is possible to allocate delivery capacity for them under relatively sufficient information conditions. Therefore, an allocation result of each order to be allocated with a lower overall delivery cost can be obtained. When allocating the orders to be allocated with high dispatching difficulty first, that is, when the above sorting is from high to low in terms of the comprehensive characterization value, since its impact on the overall delivery cost is large, it is therefore preferentially allocated to the delivery capacity with the lowest delivery cost for this order, making the overall delivery cost also relatively small. Based on this, the order scheduling method in this specification determines the allocation order of the orders to be allocated according to the dispatching difficulty, and can achieve an order allocation result with a smaller overall delivery cost.
[0094] In the following, this specification will only take the case of allocating the orders to be allocated with low dispatching difficulty first for explanation.
[0095] Furthermore, since the dispatching difficulty is characterized by at least two characterization values, and for different characterization values, their degrees of characterizing the dispatching difficulty are not the same. Therefore, weights are introduced to respectively characterize the degrees of each characterization value in characterizing the dispatching difficulty, and a comprehensive characterization value representing each dispatching difficulty is determined according to the weights corresponding to each characterization value.
[0096] The weights of each characterization value can be determined by various subjective assignment methods (including the expert investigation method, the analytic hierarchy process, the binomial coefficient method, the ring comparison scoring method, the least squares method, etc.) according to the degree of emphasis on each characterization value according to actual needs; various objective assignment methods (including the principal component analysis method, the entropy value method, the deviation mean square deviation method, the coefficient of variation weight method, the multi-objective programming method, etc.) can also be used to determine the corresponding weights based on the correlation degree between each characterization value or the amount of information provided by each characterization value. It is also possible to combine subjective and objective methods to assign weights to the characterization values. In the following, this specification will only take the weights preset by the subjective assignment method and the weights determined by the coefficient of variation weight method in the objective assignment method as examples to illustrate the weights of the characterization values.
[0097] In one embodiment of this specification, the weights corresponding to each characterization value are preset by a subjective assignment method. For each type of characterization value, a first parameter of this type of characterization value is determined. The first parameter is the corresponding relationship between this type of characterization value and the preset weight of this type of characterization value. For example, when various characterization values and the weights corresponding to the characterization values are stored in a database, the first parameter is the index of this type of characterization value, and the weight corresponding to this type of characterization value is determined according to the first parameter.
[0098] In one embodiment of this specification, the weights corresponding to each characterization value are determined by the coefficient of variation weight method in the objective assignment method. For each type of characterization value, the standard deviation of this type of characterization value of each order to be assigned is determined, and the average value of this type of characterization value of each order to be assigned is determined. The ratio of the standard deviation of this type of characterization value of each order to be assigned to the average value of this type of characterization value of each order to be assigned is used as the coefficient of variation of this type of characterization value, that is, the first parameter of this type of characterization value. The weight of this type of characterization value is determined according to the ratio of the coefficient of variation of this type of characterization value to the sum of the coefficients of variation of various characterization values. The weights of various characterization values determined by the coefficient of variation weight method can measure the degree of dispersion of each type of characterization value. The higher the degree of dispersion of a characterization value, the greater the amount of information provided by the characterization value, and the higher its weight.
[0099] According to various characterization values and their determined corresponding weights, a comprehensive characterization value representing the difficulty of each order assignment is determined. Specifically, each type of characterization value can be weighted by its corresponding weight, and then the weighted characterization values are summed up. The sum of the weighted characterization values is used as the comprehensive characterization value representing the order assignment difficulty of each order to be assigned.
[0100] In one embodiment of this specification, for each order to be assigned, the initial delivery cost of this order to be assigned is used as the first characterization value of this order to be assigned, and the stability of this order to be assigned is used as the second characterization value of this order to be assigned. The initial delivery cost and the stability of the order to be assigned can respectively characterize the order assignment difficulty of the order to be assigned from different aspects.
[0101] Specifically, for each order to be assigned, the initial delivery cost is the delivery cost of the order to be assigned by the delivery capacity with the lowest delivery cost for delivering this order to be assigned. The lower the initial delivery cost corresponding to this order to be assigned, compared with the order to be assigned with a higher initial delivery cost, since its cost itself is smaller, the impact on the global delivery cost is also smaller; on the contrary, for the order to be assigned with a higher initial delivery cost, since its cost itself is larger, the impact on the global delivery cost is also larger. That is, the smaller the initial delivery cost, the smaller the impact of this order to be assigned on the global delivery cost, and the lower its order assignment difficulty.
[0102] Similarly, for each order to be assigned, the stability specifically represents the probability that the initial delivery capacity of the order to be assigned is the optimal delivery capacity of the order to be assigned. The initial delivery capacity is the delivery capacity with the lowest delivery cost for delivering the order to be assigned, and the optimal delivery capacity is the delivery capacity corresponding to the order to be assigned when each order to be assigned is assigned to the delivery capacity that minimizes the sum of the delivery costs of all orders to be assigned. Based on the purpose of minimizing the sum of the delivery costs for delivering each order to be assigned, the greater the probability that the initial delivery capacity of the order to be assigned is the optimal delivery capacity of the order to be assigned, the greater the confidence level that assigning the order to be assigned to the initial delivery capacity is a distribution method that results in a lower global delivery cost. It can be understood that when there is a high confidence level that assigning the order to be assigned to the initial delivery capacity is a distribution method that results in a lower global delivery cost, the initial delivery capacity corresponding to the order to be assigned is the appropriate delivery capacity for the order to be assigned. Therefore, the greater the stability of the order to be assigned, the lower the difficulty of order assignment.
[0103] In an embodiment of the present specification, the regret value is used to characterize the stability of the order to be assigned. Specifically, for each order to be assigned, the stability of the order to be assigned is determined based on the initial delivery cost of the order to be assigned and the delivery cost of delivering the order to be assigned by other delivery capacities other than the initial delivery capacity. It can be understood that in the absence of more information, it is often inclined to assign the order to be assigned to the initial delivery capacity. As more information is generated, specifically in this embodiment, it may be that other orders other than the order to be assigned are assigned to the delivery capacity, and it is possible that the delivery cost of delivering the order to be assigned by other delivery capacities other than the initial delivery capacity is lower. At this time, assigning the order to be assigned to the initial delivery capacity can be regarded as a distribution method with a relatively large loss for controlling the global delivery cost. Therefore, before performing the order assignment action, the regret value of the order to be assigned can be determined based on the initial delivery cost of the order to be assigned and the delivery cost of delivering the order to be assigned by other delivery capacities other than the initial delivery capacity, so as to judge the stability of the distribution method according to the opportunity cost.
[0104] It can be understood that the regret value needs to represent the difference between the initial delivery cost and the delivery cost of delivering the order to be assigned by other delivery capacities. Therefore, any method that can represent the degree of difference between the initial delivery cost and the delivery cost of delivering the order to be assigned by other delivery capacities can be selected as the method for determining the regret value, and the present specification does not limit how to determine the regret value.
[0105] As an example of determining the regret value, in one embodiment of this specification, for each order to be allocated, the difference between the delivery cost of delivering the order to be allocated by other delivery capacities other than the initial delivery capacity and the initial delivery cost can be used as the regret value of the order to be allocated. Further, the difference between the delivery cost of delivering the order to be allocated by the delivery capacity with the second lowest delivery cost for delivering the order to be allocated and the initial delivery cost can be used as the regret value of the order to be allocated; alternatively, the ratio of the delivery cost of delivering the order to be allocated by other delivery capacities other than the initial delivery capacity to the initial delivery cost can be used as the regret value of the order to be allocated.
[0106] In practical applications, the generation times of orders to be allocated are sequential. When orders with a time span in their generation times are used as orders to be allocated, due to their different generation times and / or different requirements for the delivery times of each order, the urgency of their allocation is also different. For reasons such as maintaining the user experience, for orders to be allocated that are generated earlier, compared to orders to be allocated that are generated later, their demand for allocating the order to a delivery capacity is more urgent; similarly, for orders with earlier required delivery times, compared to orders to be allocated with earlier required delivery times, their allocation demand is also more urgent. Therefore, the order pressing type is introduced to measure the urgency of allocation of orders to be allocated.
[0107] Specifically, for each order to be assigned, determine the information of the order to be assigned, and judge the hold order type of the order to be assigned according to the preset hold order conditions. When the hold order conditions are met, judge that the order to be assigned is a holdable order. The hold order conditions include at least one of the following conditions, or a combination of multiple conditions: the time elapsed since the generation of the order to be assigned is less than the preset maximum hold order duration; and the time for assigning the order to be assigned is greater than the preset minimum remaining time from the expected delivery time of the order to be assigned. When judging the hold order type of the order to be assigned only based on the maximum hold order duration, the information of the order to be assigned may only include the generation time of the order to be assigned and the preset maximum hold order duration; when judging the hold order type of the order to be assigned only based on the minimum remaining time, the information of the order to be assigned may only include the expected delivery time of the order to be assigned and the preset minimum remaining time; when judging the hold order type of the order to be assigned based on the maximum hold order duration and the minimum remaining time, the information of the order to be assigned includes at least the generation time of the order to be assigned, the preset maximum hold order duration, the expected delivery time, and the preset minimum remaining time. When judging the hold order type of the order to be assigned based on the maximum hold order duration and the minimum remaining time of the order to be assigned, the judgment method may be that when any one of the maximum hold order duration and the minimum remaining time of the order to be assigned meets the hold order conditions, judge that the order to be assigned is a holdable order; it may also be that when both the maximum hold order duration and the minimum remaining time of the order to be assigned meet the hold order conditions, judge that the order to be assigned is a holdable order.
[0108] Similarly, since the urgency of assigning orders to be assigned is also different, after allocating distribution capacity for orders to be assigned that cannot be held, send each order to be assigned of the non-holdable order type to the corresponding distribution capacity as the order that the corresponding distribution capacity needs to execute the distribution service; for orders to be assigned of the holdable order type, after determining the distribution capacity to be assigned to the order to be assigned for each order to be assigned using the above method, it is possible to judge whether the order to be assigned meets the hold order conditions according to the information of the order to be assigned. If it meets the conditions, temporarily do not assign the order to be assigned to the corresponding distribution capacity and use it as an order to be assigned for the next round of order scheduling. If it does not meet the conditions, assign distribution capacity for the order to be assigned.
[0109] In an embodiment of this specification, after sorting the order assignment difficulties of each order to be assigned according to the comprehensive characterization value of each order to be assigned, assign each order to be assigned to the distribution capacity with the lowest distribution cost for delivering the order to be assigned in sequence. Specifically, it is possible to assign each order to be assigned to the distribution capacity with the lowest distribution cost for delivering the order to be assigned in sequence according to the order of increasing order assignment difficulty of each order to be assigned.
[0110] In practical applications, often only according to the order of dispatch difficulty, each order to be assigned is successively assigned to the distribution capacity with the lowest distribution cost for delivering the order to be assigned, and the obtained assignment result cannot meet the control requirements of the global distribution cost. In order to further optimize the global distribution cost, after the above orders are assigned to the distribution capacity, it can be used not as the final assignment result, but as the establishment of a matching relationship, so as to adjust some of the already established matching relationships to obtain an assignment result with a smaller global distribution cost.
[0111] Specifically, as Figure 2 shown, after establishing a matching relationship for each order to be assigned in turn according to the sorting of each order to be assigned, with the distribution capacity with the lowest distribution cost for delivering the order to be assigned, determine some of the orders as the orders to be adjusted, and adjust the already established matching relationships for each order to be adjusted. Based on the optimization goal of obtaining an assignment result with a smaller global distribution cost, when adjusting the matching relationship for each order to be adjusted, the cost of delivering the order to be adjusted by the distribution capacity corresponding to the order to be adjusted after adjusting the matching relationship is not greater than the cost of delivering the order to be adjusted by the distribution capacity corresponding to the order to be adjusted before adjusting the matching relationship as a constraint. Thus, after adjusting the matching relationship for each order to be adjusted, the distribution cost of the order to be adjusted will be reduced, so there is a high probability of achieving the optimization goal of an assignment result with a smaller global distribution cost.
[0112] Furthermore, for the above purpose, any algorithm that can optimize and adjust the matching relationship for the order to be adjusted in the direction of a smaller global distribution cost according to the determined matching relationship can be selected for implementation. Specifically, in this specification, a local search algorithm is used as an example to illustrate the adjustment of the matching relationship of the order to be adjusted.
[0113] Taking the determined matching relationships of each order to be assigned as the initial solution, using the local search algorithm, for each order to be adjusted, successively search for a neighborhood optimal solution of the determined matching relationship of the order to be adjusted in the current search process, that is, a matching relationship with better neighborhood. The neighborhood, in an embodiment of this specification, is the feasible solutions of the order to be adjusted without changing the matching relationships of other orders to be assigned. That is to say, without changing other orders to be assigned, for each order to be adjusted, successively search for other matching relationships that are better than the current matching relationship of the order to be adjusted, so as to find a better matching relationship for the order to be adjusted. This better matching relationship is the local optimal solution of the order to be adjusted in the neighborhood. Using the local search algorithm to successively adjust the locally optimal matching relationships for each order to be adjusted, so as to obtain a globally better matching result for each order to be assigned.
[0114] In one embodiment of this specification, for each delivery capacity, among the unassigned orders that have a matching relationship with the delivery capacity, the last determined unassigned order that has a matching relationship with the delivery capacity is selected as the order to be adjusted. Specifically, in the case where, according to the order assignment difficulty, the unassigned orders are sequentially assigned to the delivery capacity with the lowest delivery cost for delivering the unassigned order in ascending order of the order assignment difficulty, the unassigned orders that are often assigned to the delivery capacity later, due to the relatively high order assignment difficulty characterized by their comprehensive characterization values, have a greater impact on the global delivery cost. Therefore, the last determined unassigned order that has a matching relationship with each delivery capacity is the unassigned order with the greatest order assignment difficulty among all the unassigned orders that have a matching relationship with the delivery capacity. Adjusting the matching relationship with this order as the order to be adjusted will have a greater impact on the global delivery cost and a greater optimization amplitude compared to adjusting the matching relationship of the unassigned orders for which the matching relationship was determined earlier for each delivery capacity.
[0115] In one embodiment of this specification, when adjusting the matching relationship for each order to be adjusted, the matching relationship can be adjusted for the orders to be adjusted sequentially according to the order assignment difficulty characterized by the comprehensive characterization values of the orders to be adjusted.
[0116] For each order to be adjusted, a matching relationship is established between it and the delivery capacity with the lowest delivery cost for delivering the unassigned order at the moment when the matching relationship of this order is adjusted. Specifically, this order to be adjusted is used as the target order. For each delivery capacity, based on the currently assigned orders assigned to this delivery capacity and the currently unassigned orders that have a matching relationship with this delivery capacity, the delivery cost for this delivery capacity to deliver the target order is re-determined. According to the re-determined delivery costs for each delivery capacity, the delivery capacity with the lowest re-determined delivery cost is used as the target capacity, and a matching relationship is established between this target order and this target capacity. That is to say, at the moment when the matching relationship of the target order is adjusted, since the delivery cost for delivering the target order is re-determined for each delivery capacity based on the known assignment information and matching relationship establishment information at this moment, more comprehensive information is obtained compared to when the matching relationship of the target order was first established. Therefore, when the matching relationship of the target order is adjusted, the target capacity is the capacity with the lowest cost for delivering the target order, that is, the local optimal solution of the target order at this moment.
[0117] Similarly, based on the optimization goal of obtaining a distribution result with a smaller global distribution cost, rather than the minimum local distribution cost of establishing a matching relationship for each order to be assigned, when adjusting the matching relationship for each order to be adjusted, it is possible to deliberately avoid falling into the local optimum of repeatedly adjusting the matching relationship for it. Therefore, in one embodiment of this specification, a taboo list is used to control the number of optimization times for each target order. Specifically, a taboo list is determined and initialized as an empty set. It is judged whether the adjustment stop condition is met. If so, the adjustment is stopped, and the distribution capacity is assigned to each order to be assigned according to the adjusted distribution capacity and each matching relationship of the order to be assigned. Otherwise, for each order to be adjusted, this order to be adjusted is used as the target order. If the target order exists in the taboo list, a new target order is determined. If the target order does not exist in the taboo list, the matching relationship for this target order is adjusted, and this target order is added to the taboo list. Since each order to be adjusted with an adjusted matching relationship is added to the taboo list regardless of the adjustment result, for each order to be adjusted, the matching relationship can only be adjusted once, regardless of whether the corresponding matching capacity changes, thus avoiding falling into the local optimum of repeatedly adjusting the matching relationship for it. As Figure 3 shown, when taking order 3 as the target order and adjusting the matching relationship of order 3, order 3 is added to the taboo list, and the matching relationship of order 3 is adjusted from distribution capacity 1 to distribution capacity 3.
[0118] Specifically, when using the taboo list to control the number of optimization times for each target order, the adjustment stop condition may include: the number of times of adjusting the matching relationship reaches the first preset threshold; the consecutive number of times that the matching capacity corresponding to the adjusted matching relationship of the target order is the same as the matching capacity corresponding to the matching relationship before adjustment reaches the second preset threshold. It can be understood that in order to limit the number of times of adjusting the matching relationship, the first preset threshold can be preset. When the number of times of adjusting the matching relationship reaches the first preset threshold, the adjustment is stopped; for the matching relationship established for each order to be assigned in turn according to the order dispatching difficulty for the first time, when the consecutive number of times that the matching capacity corresponding to the adjusted matching relationship of the target order is the same as the matching capacity corresponding to the matching relationship before adjustment reaches the second preset threshold, it is considered that the matching relationship established for the first time meets the control requirements of the global distribution cost, and the adjustment is stopped.
[0119] In one embodiment of this specification, the order scheduling method can be used when the pick-up points of all orders to be assigned are the same. At this time, when determining the feasible path according to the sorting of the task points of the assigned orders assigned to the matching transportation capacity, the pick-up point is in the front, and only the sorting of each delivery point needs to be determined. Similarly, when allocating the distribution transportation capacity for the order to be assigned, if there are already assigned orders assigned to the distribution transportation capacity and / or other orders to be assigned that were assigned to the distribution transportation capacity before this order to be assigned, the pick-up point is in the front, and only the delivery point of this order to be assigned needs to be added to the sorting of the delivery points of the assigned orders of the distribution transportation capacity under the constraint of meeting the preset conditions, and the delivery point sorting is determined according to the added delivery points. Similarly, when adjusting the matching relationship for the order to be adjusted, if there are already assigned orders assigned to the corresponding distribution transportation capacity and / or other orders to be assigned that established a matching relationship with the matching transportation capacity before this order to be adjusted, the pick-up point is in the front, and only the delivery point of this order to be adjusted needs to be added to the sorting of the delivery points of the assigned orders of the distribution transportation capacity under the constraint of meeting the preset conditions, and the delivery point sorting is determined according to the added delivery points. According to the above pick-up point in the front and the sorting of each delivery point, the feasible path for each distribution transportation capacity to deliver each order is determined.
[0120] The above is the order scheduling method provided by the embodiments of this specification. Based on the same idea, this specification also provides corresponding devices, storage media, and electronic devices.
[0121] Figure 4 It is a schematic structural diagram of an order scheduling device provided by the embodiments of this specification. The device includes:
[0122] An information acquisition module 400, which acquires the information of each order to be assigned and the distribution transportation capacity;
[0123] A cost determination module 402, for each order to be assigned, according to the information of this order to be assigned and the information of each distribution transportation capacity, determines the distribution cost of each distribution transportation capacity when this order to be assigned is assigned to each distribution transportation capacity respectively, as the distribution cost of this order to be assigned corresponding to each distribution transportation capacity;
[0124] A characterization value determination module 404, for each order to be assigned, according to the distribution cost of this order to be assigned corresponding to each distribution transportation capacity, determines at least two characterization values that can characterize the order assignment difficulty of this order to be assigned;
[0125] A comprehensive characterization value determination module 406, for each order to be assigned, according to the characterization values of this order to be assigned, determines a comprehensive characterization value that characterizes the order assignment difficulty of this order to be assigned;
[0126] An order sorting module 408, according to the comprehensive characterization values of each order to be assigned, determines the sorting of each order to be assigned;
[0127] The order allocation module 410 allocates delivery capacity for each order to be allocated according to the sorting of each order to be allocated.
[0128] Optionally, the comprehensive representation value determination module 406 is specifically configured to, for each type of representation value, determine a first parameter of the type of representation value according to the type of representation value of each order to be allocated; determine the weight corresponding to each type of representation value according to the first parameter of each type of representation value; and determine the comprehensive representation value of the order assignment difficulty of the order to be allocated according to each type of representation value of the order to be allocated and the weight corresponding to each type of representation value.
[0129] Optionally, the representation value determination module 404 is specifically configured to, according to the delivery cost of the order to be allocated corresponding to each delivery capacity, determine the delivery capacity with the lowest delivery cost for delivering the order to be allocated, and use the delivery capacity as the initial delivery capacity of the order to be allocated; use the delivery cost of delivering the order to be allocated by the delivery capacity as the initial delivery cost of the order to be allocated; determine the stability of the order to be allocated according to the delivery cost of the order to be allocated corresponding to each delivery capacity, where the stability is used to represent the probability that the initial delivery capacity of the order to be allocated is the optimal delivery capacity of the order to be allocated, and the optimal delivery capacity is the delivery capacity corresponding to the order to be allocated when each order to be allocated is allocated to the delivery capacity that minimizes the sum of the delivery costs of each order to be allocated; use the initial delivery cost of the order to be allocated as the first representation value of the order to be allocated, and use the stability of the order to be allocated as the second representation value of the order to be allocated.
[0130] Optionally, the information acquisition module 400 is specifically configured to, for each order to be allocated, determine the order pressing type of the order to be allocated according to the information of the order to be allocated, where the order pressing type includes order pressing allowed and order pressing not allowed;
[0131] The order sorting module 408 is specifically configured to determine the sorting of each order to be allocated according to the comprehensive representation value of each order to be allocated and the order pressing type of each order to be allocated, where the order to be allocated of the order pressing not allowed type is ranked before the order to be allocated of the order pressing allowed type.
[0132] Optionally, the order allocation module 410 is specifically configured to, according to the sorting of each order to be allocated, sequentially allocate each order to be allocated to the delivery capacity with the lowest delivery cost for delivering the order to be allocated.
[0133] Optionally, the order allocation module 410 is specifically configured to, according to the sorting of each order to be allocated, sequentially establish a matching relationship between each order to be allocated and the distribution capacity with the lowest distribution cost for delivering the order to be allocated; determine the order to be adjusted according to the matching relationships between the distribution capacity and the orders to be allocated; with the constraint that the cost of delivering the order to be adjusted by the distribution capacity corresponding to the adjusted matching relationship of each order to be adjusted is not greater than the cost of delivering the order to be adjusted by the distribution capacity corresponding to the order to be adjusted before the matching relationship is adjusted, adjust the matching relationships between the orders to be adjusted and the distribution capacity; and allocate the distribution capacity to each order to be allocated according to the adjusted matching relationships between the distribution capacity and the orders to be allocated.
[0134] Optionally, the order allocation module 410 is specifically configured to, for each distribution capacity, among the orders to be allocated that have a matching relationship with the distribution capacity, select the last determined order to be allocated that has a matching relationship with the distribution capacity as the order to be adjusted.
[0135] Optionally, the order allocation module 410 is specifically configured to, in the order of the sequence of each order to be adjusted in the sorting, sequentially for each order to be adjusted, use the order to be adjusted as the target order; for each distribution capacity, re-determine the distribution cost of delivering the target order by the distribution capacity according to each allocated order currently allocated to the distribution capacity and each order to be allocated that currently has a matching relationship with the distribution capacity; determine the distribution capacity with the lowest re-determined distribution cost as the target capacity according to the re-determined distribution cost for each distribution capacity; and establish a matching relationship between the target order and the target capacity.
[0136] Optionally, the order allocation module 410 is specifically configured to determine a taboo list and initialize the taboo list as an empty set; determine whether the adjustment stop condition is satisfied. If so, stop the adjustment. Otherwise, for each order to be adjusted, use the order to be adjusted as the target order. If the target order exists in the taboo list, re-determine the target order. If the target order does not exist in the taboo list, adjust the matching relationship for the target order and add the target order to the taboo list.
[0137] Optionally, the adjustment stop condition specifically includes: the number of times of adjusting the matching relationship reaches a first preset threshold; and / or the continuous number of times that the matching capacity corresponding to the adjusted matching relationship of the target order is the same as the matching capacity corresponding to the matching relationship before adjustment reaches a second preset threshold.
[0138] This specification also provides a computer-readable storage medium, which stores a computer program that can be used to execute the above Figure 1 provided order scheduling method.
[0139] This specification also providesFigure 5 Schematic structural diagram of the electronic device shown. As Figure 5 described, at the hardware level, the driverless device includes a processor, an internal bus, a network interface, a memory, and a non-volatile memory. Of course, it may also include other hardware required for other services. The processor reads the corresponding computer program from the non-volatile memory into the memory and then runs it to implement the above Figure 1 described order scheduling method. Of course, in addition to the software implementation method, this specification does not exclude other implementation methods, such as logical devices or a combination of software and hardware, etc. That is to say, the execution subject of the following processing flow is not limited to each logical unit, and can also be hardware or logical devices.
[0140] In the 1990s, improvements to a technology could be clearly distinguished as either hardware improvements (e.g., improvements to circuit structures such as diodes, transistors, switches, etc.) or software improvements (improvements to method flows). However, with the development of technology, many method flow improvements today can be regarded as direct improvements to hardware circuit structures. Almost all designers obtain the corresponding hardware circuit structure by programming the improved method flow into the hardware circuit. Therefore, it cannot be said that an improvement to a method flow cannot be implemented using a hardware entity module. For example, a programmable logic device (PLD) (such as a field programmable gate array (FPGA)) is an integrated circuit whose logic function is determined by the user programming the device. The designer can program on their own to "integrate" a digital system onto a single PLD, without having to ask a chip manufacturer to design and fabricate a dedicated integrated circuit chip. Moreover, nowadays, instead of manually fabricating integrated circuit chips, this programming is mostly implemented using "logic compiler" software, which is similar to the software compiler used in program development and writing. The original code before compilation also has to be written in a specific programming language, which is called a hardware description language (HDL), and there is not just one type of HDL, but many types, such as ABEL (Advanced Boolean Expression Language), AHDL (Altera Hardware Description Language), Confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, RHDL (Ruby Hardware Description Language), etc. The most commonly used ones currently are VHDL (Very-High-Speed Integrated Circuit Hardware Description Language) and Verilog. Those skilled in the art should also be aware that by simply performing some logical programming on the method flow using the above-mentioned several hardware description languages and programming it into the integrated circuit, it is easy to obtain the hardware circuit that implements the logical method flow.
[0141] The controller can be implemented in any suitable manner. For example, the controller can take the form of, for example, a microprocessor or a processor and a computer-readable medium storing computer-readable program code (such as software or firmware) executable by the (micro)processor, logic gates, switches, an application specific integrated circuit (ASIC), a programmable logic controller, and an embedded microcontroller. Examples of the controller include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20, and Silicone Labs C8051F320. The memory controller can also be implemented as part of the control logic of the memory. Those skilled in the art also know that, in addition to implementing the controller in the form of pure computer-readable program code, it is entirely possible to make the controller implement the same function in the form of logic gates, switches, application specific integrated circuits, programmable logic controllers, and embedded microcontrollers by logically programming the method steps. Therefore, such a controller can be considered a hardware component, and the devices included therein for implementing various functions can also be regarded as the structures within the hardware component. Or even, the devices for implementing various functions can be regarded as either software modules for implementing the method or the structures within the hardware component.
[0142] The systems, devices, modules, or units illustrated in the above embodiments can be specifically implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer. Specifically, the computer can be, for example, a personal computer, a laptop computer, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or any combination of these devices.
[0143] For the convenience of description, when describing the above devices, they are described separately as various units according to their functions. Of course, when implementing this specification, the functions of each unit can be implemented in the same or multiple software and / or hardware.
[0144] Those skilled in the art should understand that the embodiments of the present invention can be provided as a method, a system, or a computer program product. Therefore, the present invention can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Moreover, the present invention can take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk memories, CD-ROMs, optical memories, etc.) containing computer-usable program code.
[0145] The present invention is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It should be understood that each flow and / or block of the flowchart illustrations and / or block diagrams, and combinations of flows and / or blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions executed by the processor of the computer or other programmable data processing apparatus create means for implementing the functions specified in the flowchart Figure 1 for one or more flows and / or blocks Figure 1 for one or more blocks.
[0146] These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means that implement the functions specified in the flowchart Figure 1 for one or more flows and / or blocks Figure 1 for one or more blocks.
[0147] These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process, such that the instructions executed on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart Figure 1 for one or more flows and / or blocks Figure 1 for one or more blocks.
[0148] In a typical configuration, a computing device includes one or more processors (CPUs), an input / output interface, a network interface, and memory.
[0149] The memory may include non-permanent memory in the form of computer-readable media, random access memory (RAM), and / or non-volatile memory such as read-only memory (ROM) or flash memory (flash RAM). The memory is an example of computer-readable media.
[0150] Computer readable media include permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. Information can be computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer readable media does not include temporary computer readable media (transitory media), such as modulated data signals and carrier waves.
[0151] It should also be noted that the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, commodity or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, commodity or device. In the absence of more restrictions, the elements defined by the sentence "comprises a ..." do not exclude the existence of other identical elements in the process, method, commodity or device including the elements.
[0152] It should be understood by those skilled in the art that the embodiments of this specification may be provided as methods, systems or computer program products. Therefore, this specification may take the form of a complete hardware embodiment, a complete software embodiment or an embodiment combining software and hardware. Moreover, this specification may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0153] This specification may be described in the general context of computer-executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform specific tasks or implement specific abstract data types. This specification may also be practiced in distributed computing environments where tasks are performed by remote processing devices connected through a communication network. In a distributed computing environment, program modules may be located in local and remote computer storage media including storage devices.
[0154] Each embodiment in this specification is described in a progressive manner. For the same or similar parts among the embodiments, reference can be made to each other, and the differences between each embodiment and other embodiments are emphasized. In particular, for the system embodiments, since they are basically similar to the method embodiments, the description is relatively simple, and reference can be made to the corresponding parts of the method embodiments for relevant details.
[0155] The above description is only for the embodiments of this specification and is not intended to limit this specification. For those skilled in the art, various modifications and changes can be made to this specification. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principle of this specification shall be included within the scope of the claims of this specification.
Claims
1. An order scheduling method, characterized in that, Including: Obtaining information on each order to be assigned and the distribution capacity; For each order to be assigned, based on the information of the order to be assigned and the information of each distribution capacity, determine the distribution cost of each distribution capacity when the order to be assigned is assigned to each distribution capacity respectively, and use it as the distribution cost of the order to be assigned corresponding to each distribution capacity; For each order to be assigned, based on the distribution cost of the order to be assigned corresponding to each distribution capacity, determine at least two characterization values that can characterize the order assignment difficulty of the order to be assigned. Specifically, including: based on the distribution cost of the order to be assigned corresponding to each distribution capacity, determine the distribution capacity with the lowest distribution cost for delivering the order to be assigned, and use this distribution capacity as the initial distribution capacity of the order to be assigned; use the distribution cost of this distribution capacity for delivering the order to be assigned as the initial distribution cost of the order to be assigned; based on the distribution cost of the order to be assigned corresponding to each distribution capacity, determine the stability of the order to be assigned, where the stability is used to characterize the probability that the initial distribution capacity of the order to be assigned is the optimal distribution capacity, and the optimal distribution capacity is the distribution capacity corresponding to the order to be assigned when each order to be assigned is assigned to the distribution capacity that minimizes the sum of the distribution costs of all orders to be assigned; use the initial distribution cost of the order to be assigned as the first characterization value of the order to be assigned, and use the stability of the order to be assigned as the second characterization value of the order to be assigned; For each order to be assigned, based on the characterization values of the order to be assigned, determine a comprehensive characterization value that characterizes the order assignment difficulty of the order to be assigned. Specifically, including: for each type of characterization value, based on the characterization value of each order to be assigned of this type, determine the first parameter of this type of characterization value, based on the first parameter of each type of characterization value, determine the weight corresponding to each type of characterization value, and based on each characterization value of the order to be assigned and the weight corresponding to each type of characterization value, determine the comprehensive characterization value of the order assignment difficulty of the order to be assigned; Based on the comprehensive characterization values of each order to be assigned, determine the sorting of each order to be assigned; Based on the sorting of each order to be assigned, assign distribution capacity to each order to be assigned.
2. The method according to claim 1, characterized in that Before determining the sorting of each order to be assigned, it further includes: For each order to be assigned, based on the information of the order to be assigned, determine the order holding type of the order to be assigned, where the order holding type includes order holdable and non-order holdable; Determining the sorting of each order to be assigned, specifically including: Based on the comprehensive characterization values of each order to be assigned and the order holding type of each order to be assigned, determine the sorting of each order to be assigned, where the order to be assigned of the non-order holdable type is ranked before the order to be assigned of the order holdable type.
3. The method according to claim 1 or 2, characterized in that Assigning distribution capacity to each order to be assigned, specifically including: Based on the sorting of each order to be assigned, sequentially assign each order to be assigned to the distribution capacity with the lowest distribution cost for delivering the order to be assigned.
4. The method according to claim 1, characterized in that Based on the sorting of each order to be assigned, assign distribution capacity to each order to be assigned, specifically including: Based on the sorting of each order to be assigned, sequentially establish a matching relationship between each order to be assigned and the distribution capacity with the lowest distribution cost for delivering the order to be assigned; Determine the orders to be adjusted according to the respective matching relationships between the distribution capacity and the orders to be allocated; Taking the cost of delivering the order to be adjusted by the distribution capacity corresponding to the order to be adjusted after adjusting the matching relationship as not greater than the cost of delivering the order to be adjusted by the distribution capacity corresponding to the order to be adjusted before adjusting the matching relationship as a constraint, adjust the respective matching relationships between the orders to be adjusted and the distribution capacity; Allocate distribution capacity for each order to be allocated according to the respective matching relationships between the adjusted distribution capacity and the orders to be allocated.
5. The method according to claim 4, characterized in that, Determine the orders to be adjusted, specifically including: For each distribution capacity, among the orders to be allocated that have a matching relationship with the distribution capacity, select the last determined order to be allocated that has a matching relationship with the distribution capacity as the order to be adjusted.
6. The method according to claim 4, wherein Adjust the respective matching relationships between the orders to be adjusted and the distribution capacity, specifically including: In the order of the sequence of each order to be adjusted in the said sorting, for each order to be adjusted in turn, take this order to be adjusted as the target order; For each distribution capacity, according to each allocated order currently allocated to the distribution capacity and each order to be allocated currently having a matching relationship with the distribution capacity, re-determine the distribution cost of the distribution capacity delivering the target order; According to the re-determined distribution costs for each distribution capacity, determine the distribution capacity with the lowest re-determined distribution cost as the target capacity; Establish a matching relationship between the target order and the target capacity.
7. The method according to claim 4, wherein Adjust the respective matching relationships between the orders to be adjusted and the distribution capacity, specifically including: Determine a taboo list and initialize the taboo list as an empty set; Judge whether the adjustment stop condition is met. If so, stop the adjustment. Otherwise, for each order to be adjusted, take this order to be adjusted as the target order. If the target order exists in the taboo list, re-determine the target order. If the target order does not exist in the taboo list, adjust the matching relationship for the target order and add the target order to the taboo list.
8. The method according to claim 7, wherein The adjustment stop condition specifically includes: The number of times of adjusting the matching relationship reaches the first preset threshold; and / or The consecutive number of times that the matching capacity corresponding to the adjusted matching relationship of the target order is the same as the matching capacity corresponding to the matching relationship before adjustment reaches the second preset threshold.
9. An order scheduling device, characterized in that, Including: Information acquisition module: Acquire the information of each order to be allocated and the distribution capacity; Cost determination module: For each order to be allocated, according to the information of the order to be allocated and the information of each distribution capacity, determine the distribution cost of each distribution capacity when the order to be allocated is allocated to each distribution capacity respectively, as the distribution cost of the order to be allocated corresponding to each distribution capacity; Characterization value determination module: For each order to be assigned, based on the distribution costs of the order to be assigned corresponding to each distribution capacity, determine at least two characterization values that can characterize the order assignment difficulty of the order to be assigned. Specifically, it includes: Based on the distribution costs of the order to be assigned corresponding to each distribution capacity, determine the distribution capacity with the lowest distribution cost for delivering the order to be assigned, and use this distribution capacity as the initial distribution capacity of the order to be assigned; Use the distribution cost of this distribution capacity for delivering the order to be assigned as the initial distribution cost of the order to be assigned; Based on the distribution costs of the order to be assigned corresponding to each distribution capacity, determine the stability of the order to be assigned, where the stability is used to characterize the probability that the initial distribution capacity of the order to be assigned is the optimal distribution capacity of the order to be assigned, and the optimal distribution capacity is the distribution capacity corresponding to the order to be assigned when each order to be assigned is assigned to the distribution capacity that minimizes the sum of the distribution costs of each order to be assigned; Use the initial distribution cost of the order to be assigned as the first characterization value of the order to be assigned, and use the stability of the order to be assigned as the second characterization value of the order to be assigned; Comprehensive characterization value determination module: For each order to be assigned, based on the characterization values of the order to be assigned, determine a comprehensive characterization value that characterizes the order assignment difficulty of the order to be assigned. Specifically, it includes: For each type of characterization value, based on the characterization values of each order to be assigned of this type, determine the first parameter of this type of characterization value, based on the first parameter of each type of characterization value, determine the weight corresponding to each type of characterization value, and based on each type of characterization value of the order to be assigned and the weight corresponding to each type of characterization value, determine the comprehensive characterization value of the order assignment difficulty of the order to be assigned; Order sorting module: Determine the sorting of each order to be assigned according to the comprehensive characterization values of each order to be assigned; Order assignment module: Assign distribution capacity to each order to be assigned according to the sorting of each order to be assigned.
10. A computer-readable storage medium, characterized in that, The storage medium stores a computer program, and when the computer program is executed by a processor, it implements the order scheduling method according to any one of claims 1-8 above.
11. An electronic device, characterized in that, It includes a memory, a processor, and a computer program stored on the memory and executable on the processor. Among them, when the processor executes the program, it implements the order scheduling method according to any one of claims 1-8 above.
Citation Information
Patent Citations
Transport capacity scheduling method and device, electronic equipment and storage medium
CN110728432A
Order allocation method and device
CN110796378A