CN114077947A - Distribution scheduling method, device, electronic equipment and storage medium - Google Patents

Distribution scheduling method, device, electronic equipment and storage medium Download PDF

Info

Publication number
CN114077947A
CN114077947A CN202010821429.2A CN202010821429A CN114077947A CN 114077947 A CN114077947 A CN 114077947A CN 202010821429 A CN202010821429 A CN 202010821429A CN 114077947 A CN114077947 A CN 114077947A
Authority
CN
China
Prior art keywords
distributed
path
order
capacity
delivery
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010821429.2A
Other languages
Chinese (zh)
Inventor
查莹
王圣尧
王凌
陈靖方
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Sankuai Online Technology Co Ltd
Original Assignee
Beijing Sankuai Online Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Sankuai Online Technology Co Ltd filed Critical Beijing Sankuai Online Technology Co Ltd
Priority to CN202010821429.2A priority Critical patent/CN114077947A/en
Publication of CN114077947A publication Critical patent/CN114077947A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06311Scheduling, planning or task assignment for a person or group
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • G06Q10/047Optimisation of routes or paths, e.g. travelling salesman problem
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0639Performance analysis of employees; Performance analysis of enterprise or organisation operations
    • G06Q10/06393Score-carding, benchmarking or key performance indicator [KPI] analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/083Shipping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0633Lists, e.g. purchase orders, compilation or processing
    • G06Q30/0635Processing of requisition or of purchase orders

Landscapes

  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Engineering & Computer Science (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Development Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Tourism & Hospitality (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Game Theory and Decision Science (AREA)
  • Educational Administration (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The embodiment of the application discloses a delivery scheduling method, a delivery scheduling device, electronic equipment and a storage medium, wherein the method comprises the following steps: obtaining a plurality of orders to be distributed and a plurality of corresponding candidate delivery capacities; respectively determining an optimal path of each candidate delivery capacity when each order to be distributed is distributed to each candidate delivery capacity; determining an evaluation index value for distributing each order to be distributed to each candidate distribution transport capacity according to the optimal path of the candidate distribution transport capacity when each order to be distributed is distributed to each candidate distribution transport capacity; according to the evaluation index value for distributing each order to be distributed to each candidate distribution capacity, determining the regret value corresponding to the situation that each order to be distributed is not distributed to the candidate distribution capacity corresponding to the optimal evaluation index value; and distributing the order to be distributed with the maximum regret value to the candidate distribution capacity corresponding to the optimal evaluation index value. The embodiment of the application can improve the delivery efficiency of delivery capacity and improve user experience.

Description

Distribution scheduling method, device, electronic equipment and storage medium
Technical Field
The embodiment of the application relates to the technical field of internet, in particular to a delivery scheduling method, a delivery scheduling device, electronic equipment and a storage medium.
Background
Take-out delivery is a rapidly growing business model of O2O (Online To Offline) in recent years. In this business model, the reasonable assignment of delivery capacity to orders determines the user's experience and delivery efficiency of the delivery capacity. However, as the take-out delivery industry develops rapidly, the challenge of the scheduling algorithm is to provide a reasonable matching relationship between orders and delivery capacity in a scene with a huge matching scale.
The current order assignment is to obtain the path of the distribution transporting capacity distribution order by a path optimization algorithm, and then describe the matching relation between the distribution transporting capacity and the order according to the path to finally form an order assignment scheme and assign the order to the proper distribution transporting capacity. Therefore, the order distribution scheduling problem can be solved independently by two sub-problems, namely a path planning algorithm for reasonably planning distribution transportation capacity distribution orders and an order dispatching algorithm for determining an assignment scheme according to a path planning result. The current assignment algorithm rule is that the order with the optimal scheduling index is distributed to the corresponding distribution capacity for distribution each time until all current orders are completely distributed, and a greedy algorithm is adopted. Although the greedy algorithm can find a better solution to a certain extent, as the solving scale increases, the solving quality of the greedy algorithm decreases, the difference from the optimal solution becomes large, and because the greedy assignment algorithm only considers the matching combination of the currently scheduled optimal distribution capacity and the orders in the dynamic decision process and does not consider the influence on other orders and distribution capacities, a relatively unreasonable distribution scheme is generated in the subsequent assignment process, the global optimality is poor, and the distribution efficiency of the distribution capacities is influenced.
Disclosure of Invention
The embodiment of the application provides a distribution scheduling method and device, electronic equipment and a storage medium, and distribution efficiency of distribution capacity is improved.
In order to solve the foregoing problem, in a first aspect, an embodiment of the present application provides a delivery scheduling method, including:
obtaining a plurality of orders to be distributed and a plurality of corresponding candidate delivery capacities;
respectively determining an optimal path of each candidate delivery capacity when each order to be distributed is distributed to each candidate delivery capacity;
determining an evaluation index value for distributing each order to be distributed to each candidate distribution transport capacity according to the optimal path of the candidate distribution transport capacity when each order to be distributed is distributed to each candidate distribution transport capacity;
according to the evaluation index value for distributing each order to be distributed to each candidate distribution capacity, determining the regret value corresponding to the situation that each order to be distributed is not distributed to the candidate distribution capacity corresponding to the optimal evaluation index value;
and distributing the order to be distributed with the maximum regret value to the candidate distribution capacity corresponding to the optimal evaluation index value.
In a second aspect, an embodiment of the present application provides a delivery scheduling apparatus, including:
the dispatching object acquisition module is configured to acquire a plurality of orders to be distributed and a plurality of corresponding candidate delivery capacities;
an optimal path determination module configured to determine an optimal path for each candidate delivery capacity when each to-be-distributed order is distributed to each candidate delivery capacity, respectively;
an evaluation index determination module configured to determine an evaluation index value for allocating each to-be-allocated order to each candidate delivery capacity according to the optimal path of the candidate delivery capacity when each to-be-allocated order is allocated to each candidate delivery capacity;
the regret value determining module is configured to determine a regret value corresponding to the situation that each order to be distributed is not distributed to the candidate distribution capacity corresponding to the optimal evaluation index value according to the evaluation index value for distributing each order to be distributed to each candidate distribution capacity;
and the order distribution module is configured to distribute the to-be-distributed order with the maximum regret value to the candidate distribution capacity corresponding to the optimal evaluation index value.
In a third aspect, an embodiment of the present application further provides an electronic device, which includes a memory, a processor, and a computer program stored in the memory and executable on the processor, where the processor implements the delivery scheduling method according to the embodiment of the present application when executing the computer program.
In a fourth aspect, the present application provides a computer-readable storage medium, on which a computer program is stored, where the computer program is executed by a processor to perform the steps of the delivery scheduling method disclosed in the present application.
According to the distribution scheduling method, the distribution scheduling device, the electronic equipment and the storage medium, when each order to be distributed is distributed to each candidate distribution capacity, the optimal path of each candidate distribution capacity is determined, the evaluation index value of each order to be distributed to each candidate distribution capacity is further determined, the regret value corresponding to the situation that each order to be distributed is not distributed to the candidate distribution capacity corresponding to the optimal evaluation index value is determined, the order to be distributed with the maximum regret value is distributed to the candidate distribution capacity corresponding to the optimal evaluation index value, and the influence of current assignment on future scheduling is considered through the regret value, so that the algorithm can be prevented from falling into local minimum, the quantity of simple substances can be increased, the distribution efficiency of the distribution capacity is further improved, and the user experience is improved.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings needed to be used in the description of the embodiments or the prior art will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present application, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without inventive exercise.
Fig. 1 is a flowchart of a delivery scheduling method according to a first embodiment of the present application;
fig. 2 is a flowchart of a delivery scheduling method according to a second embodiment of the present application;
FIGS. 3a-3c are schematic diagrams of a mutation process in an embodiment of the present application;
FIGS. 4a-4c are schematic diagrams of the interleaving process in an embodiment of the present application;
fig. 5 is a schematic structural diagram of a delivery scheduling apparatus according to a third embodiment of the present application;
fig. 6 is a schematic structural diagram of an electronic device according to a fourth embodiment of the present application.
Detailed Description
The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are some, but not all, embodiments of the present application. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
Example one
This embodiment provides a delivery scheduling method, which is applicable to the field of takeout delivery and the like requiring real-time delivery, as shown in fig. 1, and the method includes: one or more of steps 110 through 150.
Step 110, a plurality of orders to be distributed and a plurality of corresponding candidate delivery capacities are obtained.
For a delivery capacity, it is generally responsible for the delivery of goods in a corresponding area, so that the orders to be distributed in a region can be uniformly delivered and scheduled, and a plurality of orders to be distributed and a plurality of corresponding candidate delivery capacities can be obtained.
Step 120, respectively determining an optimal path of each candidate delivery capacity when each to-be-distributed order is distributed to each candidate delivery capacity.
When an order to be distributed is distributed to a candidate distribution capacity, the candidate distribution capacity can have a plurality of paths for distributing the order to be distributed and the distributed but undistributed orders, an evaluation index value corresponding to each path can be calculated, and a path with the optimal evaluation index value is determined to be an optimal path of the candidate distribution capacity when the order to be distributed is distributed to the candidate distribution capacity.
When determining the optimal path, a combined heuristic rule, such as sorting, interpolating, or the like, may be used to generate the optimal path for a candidate delivery capacity when an order to be allocated is allocated to the candidate delivery capacity, that is, a greedy algorithm may be used to determine the optimal path. Of course, in addition to using greedy algorithm to determine the optimal path, the optimal path may be determined in other manners, such as population initialization, mutation, and crossing.
Step 130, determining an evaluation index value for allocating each to-be-allocated order to each candidate delivery capacity according to the optimal path of the candidate delivery capacity when each to-be-allocated order is allocated to each candidate delivery capacity.
The evaluation index is used for evaluating the quality of one delivery route, and for example, the sum of the timeout time and the total route of the delivery route may be used as the evaluation index, the unit of the timeout time is minutes, and the unit of the total route is kilometers.
The method includes the steps that each order to be distributed corresponds to one optimal path when being distributed to each candidate distribution capacity, an evaluation index value of each optimal path is determined based on a calculation mode of the evaluation index, the evaluation index value of each order to be distributed to each candidate distribution capacity is obtained, an evaluation index matrix composed of the evaluation index values can be obtained based on a plurality of orders to be distributed and a plurality of candidate distribution capacities, for example, the orders are used as rows, the candidate distribution capacities are used as columns, and therefore an evaluation index matrix can be obtained. For example, there are 5 orders to be distributed and 3 candidate deliveries, and a 5-row and 3-column evaluation index matrix can be obtained, and an element a in the evaluation index matrixijIn order to assign the ith to-be-assigned order to the evaluation index value of the jth candidate delivery capacity, i is 1,2,3,4,5, j is 1,2, 3.
Step 140, determining a regret value corresponding to the situation that each order to be distributed is not distributed to the candidate distribution capacity corresponding to the optimal evaluation index value according to the evaluation index value for distributing each order to be distributed to each candidate distribution capacity.
When the evaluation index is the sum of the timeout time and the total route of the distribution route, the optimal evaluation index value is the minimum evaluation index value, namely, the smaller the sum of the timeout time and the total route is, the better the distribution route is.
After obtaining the evaluation index value for allocating each to-be-allocated order to each candidate distribution capacity, an evaluation index value corresponding to each candidate distribution capacity of one to-be-allocated order, which includes an optimal evaluation index value, may be determined, at this time, according to the evaluation index value corresponding to each candidate distribution capacity of the to-be-allocated order, a regret value corresponding to when the to-be-allocated order is allocated to other candidate distribution capacities than the optimal evaluation index value may be determined, for example, a difference between a suboptimal evaluation index value and the optimal evaluation index value may be taken as a regret value.
In an embodiment of the present application, the determining, according to an evaluation index value that allocates each to-be-allocated order to each candidate delivery capacity, a regret value corresponding to a case where each to-be-allocated order is not allocated to a candidate delivery capacity corresponding to an optimal evaluation index value includes: determining an optimal evaluation index value and a suboptimal evaluation index value corresponding to each order to be distributed according to the evaluation index value for distributing each order to be distributed to each candidate distribution transport capacity; and taking the difference value between the suboptimal evaluation index value corresponding to each order to be distributed and the optimal evaluation index value as a regret value corresponding to the candidate distribution capacity corresponding to the optimal evaluation index value when the order to be distributed is not distributed.
For one order to be distributed, if the order to be distributed is not distributed to the candidate distribution capacity corresponding to the optimal evaluation index value, the order to be distributed is probably distributed to the candidate distribution capacity corresponding to the suboptimal evaluation index value when the next round of distribution is carried out, therefore, the difference value of the suboptimal evaluation index value and the optimal evaluation index value is taken as the regret value corresponding to the candidate distribution capacity corresponding to the optimal evaluation index value when the order to be distributed is not distributed, and for each order to be distributed, the corresponding regret value is determined according to the mode. The regret value determined based on the mode is accurate, so that the distribution efficiency of the distribution capacity can be further improved.
And 150, distributing the order to be distributed with the maximum regret value to the candidate distribution capacity corresponding to the optimal evaluation index value.
After an order to be allocated is allocated to a candidate delivery capacity, the evaluation index value obtained by allocating the remaining order to be allocated to the candidate delivery capacity is updated and changed, so that the assignment of the remaining order to be allocated is influenced, and the assignment result of the order to be allocated is also indirectly influenced. In order to consider the influence on the subsequent assignment result in the process of dispatching, the regret value is introduced as an index of a dispatching basis in the embodiment of the application, the influence among different orders to be distributed is comprehensively considered through the regret value, the order to be distributed with the maximum regret value is selected for distribution each time, and the effect better than that of a greedy assignment algorithm can be obtained.
The larger the difference between the suboptimal evaluation index value and the optimal evaluation index value is, the larger the cost to be paid if the order to be allocated is not allocated to the candidate distribution capacity corresponding to the optimal evaluation index value is, that is, the higher the regret degree is, so the order to be allocated with the maximum regret value should be allocated to the candidate distribution capacity corresponding to the optimal evaluation index value.
After the order to be distributed with the maximum regret value is distributed to the candidate distribution capacity corresponding to the optimal evaluation index value, the optimal path and the evaluation index value for distributing other orders to be distributed to the candidate distribution capacity are affected, so that the optimal path for distributing other orders to be distributed to the candidate distribution capacity needs to be determined again, the evaluation index value and the regret value need to be calculated again, and the order assignment of the next round is carried out based on the regret value.
According to the delivery scheduling method provided by the embodiment of the application, when each order to be distributed is distributed to each candidate delivery capacity, the optimal path of each candidate delivery capacity is determined, the evaluation index value for distributing each order to be distributed to each candidate delivery capacity is further determined, the regret value corresponding to the situation that each order to be distributed is not distributed to the candidate delivery capacity corresponding to the optimal evaluation index value is determined, the order to be distributed with the maximum regret value is distributed to the candidate delivery capacity corresponding to the optimal evaluation index value, and the influence of the current assignment on future scheduling is considered through the regret value, so that the algorithm can be prevented from falling into local minimum, the quantity of the delivered orders can be improved, the delivery efficiency of the delivery capacity is improved, and the user experience is improved.
Example two
This embodiment provides a delivery scheduling method, which is applicable to the field of takeout delivery and the like requiring real-time delivery, as shown in fig. 2, and the method includes: one or more of steps 201 through 211.
Step 201, a plurality of orders to be distributed and a plurality of corresponding candidate delivery capacities are obtained.
Step 202, determining one to-be-distributed order from the plurality of to-be-distributed orders as a current to-be-distributed order, and determining one candidate delivery capacity from the plurality of candidate delivery capacities as a current candidate delivery capacity.
And respectively determining the optimal paths corresponding to the orders to be distributed and the candidate delivery capacity aiming at each order to be distributed and each candidate delivery capacity.
Step 203, determining a preset number of distribution paths corresponding to the current candidate distribution capacity when the current to-be-distributed order is distributed to the current candidate distribution capacity, determining an optimal path from the preset number of distribution paths, taking the optimal path as an initial iterative optimal path, and taking the distribution path as an iterative target path.
And determining a preset number of delivery paths corresponding to the current candidate delivery capacity when the current to-be-distributed order is distributed to the current candidate delivery capacity through population initialization. After the preset number of distribution paths corresponding to the current candidate distribution capacity are determined, the evaluation index value of each distribution path is calculated, when the evaluation index is the sum of the timeout time and the total distance of the distribution paths, the distribution path with the minimum evaluation index value is determined to be the optimal path, the optimal path is used as the initial iterative optimal path and is used for comparing the initial iterative optimal path with a new distribution path obtained by subsequent iterative variation cross processing, and the iterative optimal path is updated. And taking the distribution path as an iteration target path for subsequent iteration variation cross processing.
In an embodiment of the application, the determining a preset number of delivery paths corresponding to the current candidate delivery capacity when the current to-be-distributed order is distributed to the current candidate delivery capacity includes:
and determining a distribution path corresponding to the current candidate distribution transport capacity when the current order to be distributed is distributed to the current candidate distribution transport capacity according to the current order to be distributed and the predicted arrival time of the order to be distributed of the current candidate distribution transport capacity, and randomly generating other distribution paths to obtain the preset number of distribution paths corresponding to the current candidate distribution transport capacity.
Wherein the orders to be delivered for the current candidate delivery capacity are orders that have been allocated to the current candidate delivery capacity but have not completed delivery.
When population initialization is carried out, a distribution path is generated through heuristic rules, other distribution paths are randomly generated, a preset number of distribution paths are obtained, and the preset number of distribution paths are used as a population. When the distribution path is generated through the heuristic rule, the distribution path can be determined according to the urgency degree of the current order to be distributed and the order to be distributed of the current candidate distribution capacity, and the urgency degree of each order can be measured through the predicted arrival time of each order, so that the distribution path can be determined according to the predicted arrival time of each order, namely, the picking address and the receiving address in each order are sequenced from morning to evening according to the predicted arrival time to generate the distribution path. By using heuristic rules to generate a distribution path, the quality of individuals (distribution paths) in the population can be ensured, and meanwhile, other distribution paths are randomly generated, so that the diversity of solutions can be improved.
In an embodiment of the application, the determining, according to the current order to be allocated and the estimated arrival time of the order to be distributed of the current candidate distribution capacity, a distribution path corresponding to the current candidate distribution capacity when the current order to be allocated is allocated to the current candidate distribution capacity includes: taking the delivery addresses in the to-be-delivered orders which are finished with goods taking in the to-be-delivered orders of the current candidate delivery capacity as a first set; taking the goods picking address and the goods delivering address of the current order to be distributed and taking the goods picking address and the goods delivering address of the order to be distributed, which is not picked in the order to be distributed of the current candidate distribution capacity, as a second set; according to the first set and the second set, splicing the delivery addresses in the first set and the pick-up addresses and delivery addresses in the second set to obtain a splicing sequence; and determining a delivery path corresponding to the current candidate delivery capacity according to each pick-up address and delivery address in the splicing sequence.
The addresses (including the pick and delivery addresses) may be encoded in advance, for example, the addresses may be encoded as numerical identifiers, i.e., the addresses may be represented by numerical identifiers. Because the urgency degree of the order to be delivered after the goods taking is finished is higher than that of the order to be delivered and the order to be distributed which are not taken, whether the order has been taken or not is judged to divide the address in the order into two sets, namely, the delivery address in the order to be delivered after the goods taking is finished is put into a first set, the goods taking address and the delivery address in the order to be distributed which is not taken are put into a second set, and the goods taking address and the delivery address of the current order to be distributed are put into a second set. And then sorting the delivery addresses of each order to be delivered in the first set according to the predicted delivery time of each order to be delivered in the first set to obtain a first sequence, sorting the current order to be delivered in the second set and the pick-up address and the delivery address of each order to be delivered according to the current order to be delivered and the predicted delivery time of each order to be delivered in the second set to obtain a second sequence, and splicing the first sequence and the second sequence to obtain a spliced sequence. And arranging each goods taking address and each goods delivering address in the splicing sequence according to the principle that the total route is shortest and the overtime time is shortest to generate a delivery route corresponding to the current candidate delivery capacity.
The coding rule of the delivery route is which position the several addresses correspond to in the delivery route, if the numerical identifiers of the pick-up address and the delivery address included in the delivery route are respectively 0,1,3 and 2 in sequence, then 0 represents the current position of the current candidate delivery capacity, 1 represents the address to be reached by the first current candidate delivery capacity, 3 represents the address to be reached by the second current candidate delivery capacity, and 2 represents the address to be reached by the third current candidate delivery capacity.
When the delivery addresses of each order to be delivered in the first set are sorted according to the expected delivery time of each order to be delivered in the first set to obtain the first sequence, the delivery addresses of each order to be delivered in the first set may be sorted according to the order from morning to evening or the order from evening to morning of the expected delivery time of each order to be delivered in the first set to obtain the first sequence. When the picking address and the delivery address of the current order to be allocated and each order to be delivered in the second set are sorted according to the current order to be allocated and the predicted delivery time of each order to be delivered in the second set, and the second sequence is obtained, the picking address and the delivery address of the current order to be allocated and each order to be delivered in the second set may be sorted according to the sequence of the predicted delivery times of the current order to be allocated and each order to be delivered in the second set from morning to evening or from evening to morning, and the second sequence is obtained. However, when the first sequence and the second sequence are obtained, the sequence of the estimated delivery time of each order is the same, namely the sequence of the estimated delivery time from the morning to the evening when the first sequence is obtained, and the sequence of the estimated delivery time from the morning to the evening when the second sequence is obtained; if the estimated arrival time is in the order from late to early when the first sequence is obtained, the estimated arrival time is also in the order from late to early when the second sequence is obtained.
Splicing the delivery addresses in the first set and the pick-up addresses and the delivery addresses in the second set according to the first set and the second set to obtain a splicing sequence, wherein the splicing sequence comprises: sorting the delivery addresses of the orders to be delivered in the first set according to the sequence of the predicted delivery time of each order to be delivered in the first set from morning to evening to obtain a first sequence; sorting the goods taking addresses and the goods delivering addresses of the current orders to be distributed and each order to be delivered in the second set according to the sequence of the predicted delivery time of the current orders to be distributed and each order to be delivered in the second set from morning to evening to obtain a second sequence; and splicing the second sequence after the first sequence to obtain a spliced sequence.
And sorting the delivery addresses in the first set according to the sequence of the estimated delivery time of the to-be-delivered orders corresponding to each delivery address in the first set from morning to evening to obtain a first sequence, and sorting the pick-up addresses and the delivery addresses in the second set according to the sequence of the current to-be-distributed orders corresponding to each address in the second set or the estimated delivery time of each to-be-delivered order from morning to evening to obtain a second sequence. Since the urgency of the orders in the first set is higher than the urgency of the orders in the second set, the second sequence is spliced behind the first sequence to obtain an integrated spliced sequence. Sequencing is carried out according to the sequence of the predicted delivery time from morning to evening, so that the subsequent calculation is facilitated.
In an embodiment of the present application, the determining, according to each pickup address and delivery address in the splicing sequence, a delivery path corresponding to a current candidate delivery capacity includes:
and inserting the goods taking addresses or the goods delivering addresses in the splicing sequence into the position with the optimal evaluation index value in the current candidate delivery capacity taking point sequence in sequence until the positions of all the goods taking addresses and the goods delivering addresses in the splicing sequence in the taking point sequence are determined, and taking the taking point sequence as a delivery path corresponding to the current candidate delivery capacity.
The evaluation index may be the sum of the timeout time and the total route, and the evaluation index is optimal, that is, the evaluation index is the smallest.
According to the sequence of each address in the splicing sequence, sequentially inserting each address in the splicing sequence to the position of the optimal evaluation index value in the current candidate distribution capacity taking and delivering point sequence, namely, when one address is inserted into the taking and delivering point sequence each time, calculating the evaluation index values of multiple possible results, selecting one result of the optimal evaluation index value as the insertion position of the address, inserting the address to the corresponding insertion position in the taking and delivering point sequence until the positions of all the addresses in the splicing sequence in the taking and delivering point sequence are determined, and after the positions of all the addresses in the splicing sequence in the taking and delivering point sequence are determined, the taking and delivering point sequence is the obtained distribution path of the current candidate distribution capacity. The distribution path determined in this way is the path with the optimal evaluation index value, so that the individual quality in the population can be ensured.
For example, the addresses included in the splicing sequence are 1,2, and 3 in order, and the current position of the current candidate delivery capacity, i.e., the starting path point, is 0, when the address in the splicing sequence is not inserted, the pick-and-place point sequence of the current candidate delivery capacity includes the position of 0; sequentially inserting each address in the spliced sequence into the fetching and delivering point sequence, firstly inserting a first address 1 in the spliced sequence into the fetching and delivering point sequence, and inserting 1 into 0 in the fetching and delivering point sequence to obtain a fetching and delivering point sequence of 0, 1; then, inserting the second address 2 in the splicing sequence into the fetching point sequence, wherein two results exist, namely 2 can be inserted between 0 and 1, or can be inserted after 1, so as to obtain two paths, namely 0,2,1 and 0,1,2, calculating the evaluation index values of the two paths, if the evaluation index value of the first path is superior to that of the second path, determining to insert 2 between 0 and 1 of the fetching point sequence, and after the insertion, updating the fetching point sequence to 0,2, 1; and then, inserting a third address 3 in the splicing sequence into the pick-up and delivery point sequence, wherein three results are obtained, namely 3 can be inserted between 0 and 2, or between 2 and 1, or can be inserted after 1, so as to obtain three paths, namely 0,3,2,1, 0,2,3,1 and 0,2,1,3, calculating evaluation index values of the three paths, if the evaluation index value of the second path is the evaluation index values of the first path and the second path, determining to insert 3 between 2 and 1 of the pick-up and delivery point sequence, updating the pick-up and delivery point sequence to 0,2,3,1 after the insertion, inserting all addresses in the splicing sequence into the pick-up and delivery point sequence, and thus the pick-up and delivery point sequence 0,2,3,1 is the delivery path of the current candidate delivery capacity.
And 204, performing mutation processing on the iteration target paths in the preset number based on the discrete difference operator, and performing cross processing on the mutation paths obtained after the mutation processing in a local search mode to generate a preset number of new distribution paths.
The mutation operation is mainly based on discrete difference operators, and provides a direction for population evolution by extracting difference information between different individuals (namely, iterative target paths). The mutated path generated by the discrete difference operator may contain repeated points, and is not a legal solution, so that a legal child individual needs to be generated through a crossover operation, that is, a new distribution path is generated.
In an embodiment of the present application, the performing mutation processing on the preset number of iterative target paths based on the discrete difference operator includes:
based on the discrete difference operator, carrying out mutation processing on a preset number of iteration target paths according to the following formula to obtain a mutation path:
Figure BDA0002634516720000111
wherein, VxIn order to be a variation path,
Figure BDA0002634516720000112
and
Figure BDA0002634516720000113
f is a differential amplification factor, N is the number of path points in the iterative target path, and the sign is the three paths randomly selected from the preset number of iterative target paths
Figure BDA0002634516720000114
And
Figure BDA0002634516720000115
the operation modes of (1) are respectively as follows:
Figure BDA0002634516720000121
Figure BDA0002634516720000122
wherein, ΔxIn order to be the difference vector,
Figure BDA0002634516720000123
is the difference vector ΔxThe h-th element of (a) is,
Figure BDA0002634516720000124
is path XbThe h-th waypoint in (1),
Figure BDA0002634516720000125
is path XcThe h-th waypoint in (1),
Figure BDA0002634516720000126
is a variation path VxThe h-th path point in (b), rand (h), is a random decimal between [0, 1).
Firstly, randomly selecting three iteration target paths from the preset number of iteration target paths to be respectively used as first paths XaA second path XbAnd a third path Xc(ii) a Based on discrete difference operator, according to the above formula, the first path X is processedaA second path XbAnd a third path XcPerforming mutation process, i.e. first according to the second path XbAnd a third path XcCalculating a difference vector ΔxThen based on the first path XaSum difference vector ΔxCalculating to obtain a variation path Vx. The difference amplification factor F is adjustable, i.e. F can be determined as required.
FIGS. 3a-3c are schematic diagrams of the mutation process in the embodiment of the present application, as shown in FIGS. 3a-3c, the first path X a0,3,4,5,1,2, the second path XbIs 0,3,1,2,4,5, a third path XcIs 0,1,4,3,2,5, as shown in FIG. 3a, X is first calculatedb-XcObtaining Xb-XcIs 0,2, -3, -1,2, 0; as shown in fig. 3b, the difference vector Δ is then calculatedxThe difference amplification factor is 0.5, the random numbers rand (h) are respectively 0.7,0.3,0.4,0.6,0.1 and 0.2, and the difference vector delta is obtained by calculationxIs 0,2, -3,0,20; according to a first path X, as shown in FIG. 3caAnd the difference vector ΔxCalculating variant individuals VxThe variant path is obtained by the variant individualxIs 0,5,1,5,3, 2.
After a mutated path is generated, the mutated path is subjected to cross processing to obtain a new distribution path. And then, selecting three different iteration target paths from the preset number of iteration target paths to perform mutation processing until a preset number of new distribution paths are generated, and completing the iteration.
In an embodiment of the application, the performing, by using a local search method, cross-processing the mutated paths obtained after the mutation processing to generate a preset number of new distribution paths includes: removing initial path points and repeated path points in the varied path to obtain a processed varied path; randomly selecting an iteration target path from the preset number of iteration target paths as a parent path, and removing repeated path points in the parent path and the processed variant path to obtain a processed parent path; and under the conditions of the prior delivery and taking constraint and the capacity constraint of the current candidate delivery and transportation capacity distribution container, sequentially inserting the path points in the processed variable path to the position with the optimal evaluation index value in the processed parent path to obtain a new distribution path.
And the starting path point is the current position of the current candidate delivery capacity, and the current position is used as the starting point of the current candidate delivery capacity. The picking and delivery priority constraint means that when a picking address and a delivery address corresponding to an order are included in a delivery path, the picking address must be arranged before the delivery address. The current candidate delivery capacity delivery container capacity constraint is that the delivery capacity delivery container is a delivery capacity limited delivery container, the contents of the delivery container cannot exceed the capacity limit, and if it is estimated that placing a content into the delivery container would exceed the capacity limit, a delivery address would need to be inserted first. For example, in the field of takeaway delivery, where a delivery capacity has taken 3 orders to reach the capacity of the delivery container (i.e., take-away box), it is necessary to insert a delivery address and deliver an order to free the delivery container of the capacity occupied by the order.
FIGS. 4a-4c are schematic diagrams of the crossing process in the embodiment of the present application, and as shown in FIG. 4a, the mutated path V obtained by the mutation process x0,5,1,5,3,2, removing the repeat route point and the start route point 0 in the mutated route to obtain the post-processing mutated route V'xIs 1,3, 2; randomly selecting an iteration target path from a preset number of iteration target paths as a parent path, as shown in fig. 4b, where the parent path X isd0,1,3,4,2,5, the parent path XdAnd post-processing mutated path V'xThe path point of the middle repetition is from the father path XdIs removed to obtain a processed parent route X'dIs 0,4, 5; then, the processed mutant route V'xRoute points of (5) are inserted in sequence into the processed parent route X'dThe position where the evaluation index value is optimal is first converted into a post-process variation route V'xRoute point 1 of (1) is inserted into parent route X'dIn (1), three insertion modes are possible, that is, route point 1 can be inserted into parent route X'dBetween 0 and 4, or between 4 and 5, or after 5, thereby forming three paths, calculating evaluation index values of the three paths under the condition that all the three paths satisfy the pickup priority constraint and the current candidate delivery capacity distribution container capacity constraint, wherein the position in the path with the lowest evaluation index value is the position with the optimal evaluation index value, and inserting the position into the processed parent route X'd0,1,4,5, and then the post-treatment mutation pathway V'xRoute points 3,2 in (1) are inserted into the processed parent route X 'as described above'dAnd (5) evaluating the position with the optimal index value to obtain a new distribution path 0,3,1,2,4, 5.
In the process of generating the new distribution path, a traversal and insertion mode is adopted to perform local search, so that the quality of the solution can be improved, namely the quality of the obtained new distribution path can be improved.
Step 205, updating the iterative optimal path according to the preset number of iterative target paths and the preset number of new distribution paths, and determining the preset number of iterative target paths for the next iteration.
And selecting an optimal path from the preset number of iteration target paths and the preset number of new distribution paths, updating the iteration optimal path into the optimal path, and selecting the preset number of optimal paths from the preset number of iteration target paths and the preset number of new distribution paths as the iteration target path for the next iteration.
In an embodiment of the application, the updating the iterative optimal path according to the preset number of iterative target paths and the preset number of new distribution paths, and determining a preset number of iterative target paths for performing the next iteration includes: determining a distribution path with an optimal evaluation index value from the iteration target paths in the preset number and the new distribution paths in the preset number as a current optimal path; if the evaluation index value of the current optimal path is superior to that of the iterative optimal path, replacing the iterative optimal path with the current optimal path; and determining a preset number of distribution paths with optimal evaluation index values from the preset number of iteration target paths and the preset number of new distribution paths, and taking the distribution paths as iteration target paths for next iteration.
In the process of iterative processing, after each time a preset number of iterative target paths are subjected to mutation and cross processing, a distribution path with an optimal evaluation index value is determined from the iterative target paths before the mutation and cross processing and new distribution paths generated after the mutation and cross processing, the distribution path is used as a current optimal path, the evaluation index value of the current optimal path and the evaluation index value of the iterative optimal path are compared, and if the evaluation index value of the current optimal path is superior to the evaluation index value of the iterative optimal path, the iterative optimal path is replaced by the current optimal path.
The method comprises the steps of respectively calculating evaluation index values for a preset number of iteration target paths and a preset number of new distribution paths, selecting the distribution path with the optimal evaluation index values, namely sequencing the iteration target paths and the new distribution paths according to the sequence of the evaluation index values from small to large, and selecting the distribution paths with the preset number and the distribution paths with the highest sequencing as the iteration target paths for the next iteration.
Step 206, determining whether the iteration termination condition is satisfied, if not, executing step 204, and if so, executing step 207.
The iteration termination condition may be an iteration time, and the iteration time may be related to the number of path points in the iteration target path, for example, the iteration time may be a product of 0.5 and the number of path points.
When the iteration termination condition is iteration time, timing is started when mutation processing and cross processing are started, when one iteration is completed, namely a preset number of new distribution paths are generated, whether the iteration termination condition is met is judged, namely whether the current consumed time from the start of timing is greater than or equal to the iteration time is judged, if not, the next iteration is carried out in step 204, and if so, the optimal path is determined in step 207.
And step 207, taking the iterative optimal path as the corresponding optimal path for distributing the current to-be-distributed order to the current candidate delivery capacity.
Through the iteration processing, the iteration optimal path is a distribution path with an optimal evaluation index value from the initial iteration target path and the new distribution path generated in the iteration process, and therefore the iteration optimal path is the corresponding optimal path when the current to-be-distributed orders are distributed to the current candidate distribution transport capacity.
Step 208, determining whether an optimal path of each candidate delivery capacity has been determined for allocating each to-be-allocated order to each candidate delivery capacity, if not, performing step 202, and if so, performing step 209.
Through the above loop processing, an optimal path of each candidate delivery capacity when each to-be-allocated order is allocated to each candidate delivery capacity is determined, and then subsequent steps may be performed to assign the to-be-allocated orders.
Step 209, determining an evaluation index value for allocating each to-be-allocated order to each candidate delivery capacity according to the optimal path of the candidate delivery capacity when each to-be-allocated order is allocated to each candidate delivery capacity.
Step 210, determining a regret value corresponding to the situation that each order to be distributed is not distributed to the candidate distribution capacity corresponding to the optimal evaluation index value according to the evaluation index value for distributing each order to be distributed to each candidate distribution capacity.
And step 211, allocating the order to be allocated with the maximum regret value to the candidate distribution capacity corresponding to the optimal evaluation index value.
The step 201 to the step 211 are performed to allocate the order to be allocated with the maximum regret value to the candidate distribution capacity corresponding to the optimal evaluation index value, and then the step 201 to the step 211 are performed to allocate other orders to be allocated until all the orders to be allocated are allocated.
According to the distribution scheduling method provided by the embodiment of the application, after population initialization is carried out, variation processing is carried out based on a discrete difference algorithm, a local search mode is adopted to carry out cross processing on the variation path after the variation processing, an optimal path is generated through iteration, and because difference information in the population is utilized during the variation processing, compared with a greedy algorithm in the prior art, the globality and optimality of a path planning algorithm are enhanced, the distribution path of distribution capacity can be optimized, more reasonable input is provided for a subsequent order distribution algorithm, and therefore the distribution efficiency of the distribution capacity can be further improved.
EXAMPLE III
In this embodiment, as shown in fig. 5, a delivery scheduling apparatus 500 includes:
a dispatch object acquisition module 510 configured to acquire a plurality of orders to be distributed and a corresponding plurality of candidate delivery capacities;
an optimal path determining module 520 configured to determine an optimal path for each candidate delivery capacity when each to-be-distributed order is distributed to each candidate delivery capacity, respectively;
an evaluation index determination module 530 configured to determine an evaluation index value for allocating each to-be-allocated order to each candidate delivery capacity according to the optimal path of the candidate delivery capacity when each to-be-allocated order is allocated to each candidate delivery capacity;
a regret value determining module 540, configured to determine, according to the evaluation index value that allocates each to-be-allocated order to each candidate distribution capacity, a regret value corresponding to a time when each to-be-allocated order is not allocated to the candidate distribution capacity corresponding to the optimal evaluation index value;
and the order allocation module 550 is configured to allocate the to-be-allocated order with the maximum regret value to the candidate delivery capacity corresponding to the optimal evaluation index value.
Optionally, the optimal path determining module includes:
the current processing object determining unit is configured to determine one to-be-distributed order from the plurality of to-be-distributed orders as a current to-be-distributed order, and determine one candidate delivery capacity from the plurality of candidate delivery capacities as a current candidate delivery capacity;
the population initialization unit is configured to determine a preset number of distribution paths corresponding to the current candidate distribution capacity when the current to-be-distributed order is distributed to the current candidate distribution capacity, determine an optimal path from the preset number of distribution paths, use the optimal path as an initial iterative optimal path, and use the distribution path as an iterative target path;
the variation cross processing unit is configured to perform variation processing on the preset number of iteration target paths based on a discrete difference operator, perform cross processing on the variation paths obtained after the variation processing in a local search mode, and generate a preset number of new distribution paths;
the iteration control unit is configured to update the optimal iteration path according to the preset number of iteration target paths and the preset number of new distribution paths, determine a preset number of iteration target paths for next iteration, and iteratively execute the mutation processing, the intersection processing and the updating of the optimal iteration path until an iteration termination condition is met;
the optimal path determining unit is configured to take the iterative optimal path as a corresponding optimal path when the current to-be-distributed order is distributed to the current candidate distribution capacity;
and the circulation control unit is configured to circularly execute the determination of the current to-be-distributed orders and the current candidate delivery capacity, and determine the corresponding optimal path when the current to-be-distributed orders are distributed to the current candidate delivery capacity until the optimal path of each candidate delivery capacity when each to-be-distributed order is distributed to each candidate delivery capacity is determined.
Optionally, the population initialization unit includes:
and the population initialization subunit is configured to determine, according to the current order to be allocated and the estimated arrival time of the order to be distributed of the current candidate distribution capacity, one distribution path corresponding to the current candidate distribution capacity when the current order to be allocated is allocated to the current candidate distribution capacity, and randomly generate other distribution paths to obtain a preset number of distribution paths corresponding to the current candidate distribution capacity.
Optionally, the population initialization subunit includes:
an address classification submodule configured to use delivery addresses in to-be-delivered orders, of which the picking is completed, in to-be-delivered orders of the current candidate delivery capacity as a first set; taking the goods picking address and the goods delivering address of the current order to be distributed and taking the goods picking address and the goods delivering address of the order to be distributed, which is not picked in the order to be distributed of the current candidate distribution capacity, as a second set;
the address splicing submodule is configured to splice the delivery addresses in the first set and the pick-up addresses and the delivery addresses in the second set according to the first set and the second set to obtain a spliced sequence;
and the delivery path determining submodule is configured to determine a delivery path corresponding to the current candidate delivery capacity according to each pick-up address and delivery address in the splicing sequence.
Optionally, the address splicing submodule is specifically configured to:
sorting the delivery addresses of the orders to be delivered in the first set according to the sequence of the predicted delivery time of each order to be delivered in the first set from morning to evening to obtain a first sequence;
sorting the goods taking addresses and the goods delivering addresses of the current orders to be distributed and each order to be delivered in the second set according to the sequence of the predicted delivery time of the current orders to be distributed and each order to be delivered in the second set from morning to evening to obtain a second sequence;
and splicing the second sequence after the first sequence to obtain a spliced sequence.
Optionally, the delivery path determining sub-module is specifically configured to:
and inserting the goods taking addresses or the goods delivering addresses in the splicing sequence into the position with the optimal evaluation index value in the current candidate delivery capacity taking point sequence in sequence until the positions of all the goods taking addresses and the goods delivering addresses in the splicing sequence in the taking point sequence are determined, and taking the taking point sequence as a delivery path corresponding to the current candidate delivery capacity.
Optionally, the variant interleaving processing unit includes:
the mutation processing subunit is configured to perform mutation processing on a preset number of iterative target paths based on the discrete difference operator according to the following formula to obtain a mutated path:
Figure BDA0002634516720000181
wherein, VxIn order to be a variation path,
Figure BDA0002634516720000182
and
Figure BDA0002634516720000183
f is a differential amplification factor, N is the number of path points in the iterative target path, and the sign is the three paths randomly selected from the preset number of iterative target paths
Figure BDA0002634516720000184
And
Figure BDA0002634516720000185
the operation modes of (1) are respectively as follows:
Figure BDA0002634516720000186
Figure BDA0002634516720000187
wherein, ΔxIn order to be the difference vector,
Figure BDA0002634516720000188
is the difference vector ΔxThe h-th element of (a) is,
Figure BDA0002634516720000189
is path XbThe h-th waypoint in (1),
Figure BDA00026345167200001810
is path XcThe h-th waypoint in (1),
Figure BDA00026345167200001811
is a variation path VxThe h-th path point in (b), rand (h), is a random decimal between [0, 1).
Optionally, the variant crossing processing unit further includes:
a cross processing subunit configured to remove a start path point and a repeat path point in the mutated path, resulting in a processed mutated path; randomly selecting an iteration target path from the preset number of iteration target paths as a parent path, and removing repeated path points in the parent path and the processed variant path to obtain a processed parent path; and under the conditions of the prior delivery and taking constraint and the capacity constraint of the current candidate delivery and transportation capacity distribution container, sequentially inserting the path points in the processed variable path to the position with the optimal evaluation index value in the processed parent path to obtain a new distribution path.
Optionally, the iteration control unit includes:
a current optimal path determining subunit, configured to determine, as a current optimal path, a distribution path with an optimal evaluation index value from the preset number of iteration target paths and the preset number of new distribution paths;
the iterative optimal path updating subunit is configured to replace the iterative optimal path with the current optimal path if the evaluation index value of the current optimal path is superior to the evaluation index value of the iterative optimal path;
and the next iteration path determining subunit is configured to determine a preset number of distribution paths with optimal evaluation index values from the preset number of iteration target paths and the preset number of new distribution paths, and the distribution paths are used as iteration target paths for performing next iteration.
Optionally, the regret value determining module includes:
the optimal suboptimal index determining unit is configured to determine an optimal evaluation index value and a suboptimal evaluation index value corresponding to each order to be distributed according to the evaluation index value for distributing each order to be distributed to each candidate distribution transport capacity;
and the regret value determining unit is configured to be used for taking the difference value between the suboptimal evaluation index value corresponding to each order to be distributed and the optimal evaluation index value as the regret value corresponding to the candidate distribution capacity corresponding to the optimal evaluation index value when the order to be distributed is not distributed.
The delivery scheduling apparatus provided in the embodiment of the present application is configured to implement each step of the delivery scheduling method described in the embodiment of the present application, and specific implementation of each module of the apparatus refers to the corresponding step, which is not described herein again.
The delivery scheduling device provided by the embodiment of the application determines the optimal path of each candidate delivery capacity when each to-be-distributed order is distributed to each candidate delivery capacity, further determines the evaluation index value for distributing each to-be-distributed order to each candidate delivery capacity, determines the regret value corresponding to the situation that each to-be-distributed order is not distributed to the candidate delivery capacity corresponding to the optimal evaluation index value, and distributes the to-be-distributed order with the maximum regret value to the candidate delivery capacity corresponding to the optimal evaluation index value.
Example four
Embodiments of the present application also provide an electronic device, as shown in fig. 6, the electronic device 600 may include one or more processors 610 and one or more memories 620 connected to the processors 610. Electronic device 600 may also include input interface 630 and output interface 640 for communicating with another apparatus or system. Program code executed by processor 610 may be stored in memory 620.
The processor 610 in the electronic device 600 calls the program code stored in the memory 620 to perform the delivery scheduling method in the above-described embodiment.
The above elements in the above electronic device may be connected to each other by a bus, such as one of a data bus, an address bus, a control bus, an expansion bus, and a local bus, or any combination thereof.
Embodiments of the present application further provide a computer-readable storage medium, on which a computer program is stored, where the computer program, when executed by a processor, implements the steps of the delivery scheduling method according to the embodiments of the present application.
The embodiments in the present specification are described in a progressive manner, each embodiment focuses on differences from other embodiments, and the same and similar parts among the embodiments are referred to each other. For the device embodiment, since it is basically similar to the method embodiment, the description is simple, and for the relevant points, refer to the partial description of the method embodiment.
The above detailed description is given to a delivery scheduling method, a delivery scheduling apparatus, an electronic device, and a storage medium provided in the embodiments of the present application, and a specific example is applied in the detailed description to explain the principles and embodiments of the present application, and the description of the above embodiments is only used to help understanding the method and the core idea of the present application; meanwhile, for a person skilled in the art, according to the idea of the present application, there may be variations in the specific embodiments and the application scope, and in summary, the content of the present specification should not be construed as a limitation to the present application.
Through the above description of the embodiments, those skilled in the art will clearly understand that each embodiment can be implemented by software plus a necessary general hardware platform, and certainly can also be implemented by hardware. With this understanding in mind, the above-described technical solutions may be embodied in the form of a software product, which can be stored in a computer-readable storage medium such as ROM/RAM, magnetic disk, optical disk, etc., and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to execute the methods described in the embodiments or some parts of the embodiments.

Claims (13)

1. A delivery scheduling method, comprising:
obtaining a plurality of orders to be distributed and a plurality of corresponding candidate delivery capacities;
respectively determining an optimal path of each candidate delivery capacity when each order to be distributed is distributed to each candidate delivery capacity;
determining an evaluation index value for distributing each order to be distributed to each candidate distribution transport capacity according to the optimal path of the candidate distribution transport capacity when each order to be distributed is distributed to each candidate distribution transport capacity;
according to the evaluation index value for distributing each order to be distributed to each candidate distribution capacity, determining the regret value corresponding to the situation that each order to be distributed is not distributed to the candidate distribution capacity corresponding to the optimal evaluation index value;
and distributing the order to be distributed with the maximum regret value to the candidate distribution capacity corresponding to the optimal evaluation index value.
2. The method of claim 1, wherein separately determining the optimal path for each candidate delivery capacity for each to-be-allocated order to be allocated to each candidate delivery capacity comprises:
determining one to-be-distributed order from a plurality of to-be-distributed orders as a current to-be-distributed order, and determining one candidate delivery capacity from a plurality of candidate delivery capacities as a current candidate delivery capacity;
determining a preset number of distribution paths corresponding to the current candidate distribution capacity when the current order to be distributed is distributed to the current candidate distribution capacity, determining an optimal path from the preset number of distribution paths as an initial iterative optimal path, and taking the distribution path as an iterative target path;
based on the discrete difference operator, carrying out mutation processing on the iteration target paths in the preset number, and carrying out cross processing on the mutation paths obtained after the mutation processing in a local search mode to generate a preset number of new distribution paths;
updating the iterative optimal path according to the preset number of iterative target paths and the preset number of new distribution paths, determining the preset number of iterative target paths for next iteration, and iteratively executing the mutation processing, the cross processing and the updating of the iterative optimal path until an iteration termination condition is met;
taking the iterative optimal path as the corresponding optimal path when the current order to be distributed is distributed to the current candidate distribution capacity;
and circularly executing the steps of determining the current order to be distributed and the current candidate distribution capacity, and determining the corresponding optimal path when the current order to be distributed is distributed to the current candidate distribution capacity until the optimal path of each candidate distribution capacity when each order to be distributed is distributed to each candidate distribution capacity is determined.
3. The method of claim 2, wherein the determining a preset number of delivery paths corresponding to the current candidate delivery capacity when the current order to be distributed is distributed to the current candidate delivery capacity comprises:
and determining a distribution path corresponding to the current candidate distribution transport capacity when the current order to be distributed is distributed to the current candidate distribution transport capacity according to the current order to be distributed and the predicted arrival time of the order to be distributed of the current candidate distribution transport capacity, and randomly generating other distribution paths to obtain the preset number of distribution paths corresponding to the current candidate distribution transport capacity.
4. The method of claim 3, wherein determining a delivery path corresponding to the current candidate delivery capacity when the current order to be allocated is allocated to the current candidate delivery capacity according to the current order to be allocated and the estimated time of arrival of the order to be delivered of the current candidate delivery capacity comprises:
taking the delivery addresses in the to-be-delivered orders which are finished with goods taking in the to-be-delivered orders of the current candidate delivery capacity as a first set;
taking the goods picking address and the goods delivering address of the current order to be distributed and taking the goods picking address and the goods delivering address of the order to be distributed, which is not picked in the order to be distributed of the current candidate distribution capacity, as a second set;
according to the first set and the second set, splicing the delivery addresses in the first set and the pick-up addresses and delivery addresses in the second set to obtain a splicing sequence;
and determining a delivery path corresponding to the current candidate delivery capacity according to each pick-up address and delivery address in the splicing sequence.
5. The method of claim 4, wherein said concatenating the delivery address of the first set and the pick and delivery address of the second set according to the first set and the second set to obtain a concatenated sequence comprises:
sorting the delivery addresses of the orders to be delivered in the first set according to the sequence of the predicted delivery time of each order to be delivered in the first set from morning to evening to obtain a first sequence;
sorting the goods taking addresses and the goods delivering addresses of the current orders to be distributed and each order to be delivered in the second set according to the sequence of the predicted delivery time of the current orders to be distributed and each order to be delivered in the second set from morning to evening to obtain a second sequence;
and splicing the second sequence after the first sequence to obtain a spliced sequence.
6. The method of claim 4, wherein determining the delivery path corresponding to the current candidate delivery capacity according to each pick-and-deliver address in the spliced sequence comprises:
and inserting the goods taking addresses or the goods delivering addresses in the splicing sequence into the position with the optimal evaluation index value in the current candidate delivery capacity taking point sequence in sequence until the positions of all the goods taking addresses and the goods delivering addresses in the splicing sequence in the taking point sequence are determined, and taking the taking point sequence as a delivery path corresponding to the current candidate delivery capacity.
7. The method of claim 2, wherein the performing mutation processing on the preset number of iterative target paths based on the discrete difference operator comprises:
based on the discrete difference operator, carrying out mutation processing on a preset number of iteration target paths according to the following formula to obtain a mutation path:
Figure FDA0002634516710000031
wherein, VxIn order to be a variation path,
Figure FDA0002634516710000032
and
Figure FDA0002634516710000033
for randomly selecting from the preset number of iteration target pathsTaking three paths, F is a differential amplification coefficient, N is the number of path points in the iteration target path, and the sign
Figure FDA0002634516710000034
And
Figure FDA0002634516710000035
the operation modes of (1) are respectively as follows:
Figure FDA0002634516710000036
Figure FDA0002634516710000037
wherein, ΔxIn order to be the difference vector,
Figure FDA0002634516710000038
is the difference vector ΔxThe h-th element of (a) is,
Figure FDA0002634516710000039
is path XbThe h-th waypoint in (1),
Figure FDA00026345167100000310
is path XcThe h-th waypoint in (1),
Figure FDA00026345167100000311
is a variation path VxThe h-th path point in (b), rand (h), is a random decimal between [0, 1).
8. The method according to claim 2, wherein the generating a preset number of new distribution paths by performing cross processing on the mutated paths obtained after the mutation processing in a local search manner comprises:
removing initial path points and repeated path points in the varied path to obtain a processed varied path;
randomly selecting an iteration target path from the preset number of iteration target paths as a parent path, and removing repeated path points in the parent path and the processed variant path to obtain a processed parent path;
and under the conditions of the prior delivery and taking constraint and the capacity constraint of the current candidate delivery and transportation capacity distribution container, sequentially inserting the path points in the processed variable path to the position with the optimal evaluation index value in the processed parent path to obtain a new distribution path.
9. The method according to claim 2, wherein the updating the iterative optimal path according to the preset number of iterative target paths and a preset number of new distribution paths, and determining a preset number of iterative target paths for performing a next iteration includes:
determining a distribution path with an optimal evaluation index value from the iteration target paths in the preset number and the new distribution paths in the preset number as a current optimal path;
if the evaluation index value of the current optimal path is superior to that of the iterative optimal path, replacing the iterative optimal path with the current optimal path;
and determining a preset number of distribution paths with optimal evaluation index values from the preset number of iteration target paths and the preset number of new distribution paths, and taking the distribution paths as iteration target paths for next iteration.
10. The method according to any one of claims 1 to 9, characterized in that said determining, according to the evaluation index value assigning each order to be allocated to each candidate delivery capacity, a regret value corresponding to a time at which each order to be allocated is not assigned to the candidate delivery capacity corresponding to the optimal evaluation index value, comprises:
determining an optimal evaluation index value and a suboptimal evaluation index value corresponding to each order to be distributed according to the evaluation index value for distributing each order to be distributed to each candidate distribution transport capacity;
and taking the difference value between the suboptimal evaluation index value corresponding to each order to be distributed and the optimal evaluation index value as a regret value corresponding to the candidate distribution capacity corresponding to the optimal evaluation index value when the order to be distributed is not distributed.
11. A delivery scheduling apparatus, comprising:
the dispatching object acquisition module is configured to acquire a plurality of orders to be distributed and a plurality of corresponding candidate delivery capacities;
an optimal path determination module configured to determine an optimal path for each candidate delivery capacity when each to-be-distributed order is distributed to each candidate delivery capacity, respectively;
an evaluation index determination module configured to determine an evaluation index value for allocating each to-be-allocated order to each candidate delivery capacity according to the optimal path of the candidate delivery capacity when each to-be-allocated order is allocated to each candidate delivery capacity;
the regret value determining module is configured to determine a regret value corresponding to the situation that each order to be distributed is not distributed to the candidate distribution capacity corresponding to the optimal evaluation index value according to the evaluation index value for distributing each order to be distributed to each candidate distribution capacity;
and the order distribution module is configured to distribute the to-be-distributed order with the maximum regret value to the candidate distribution capacity corresponding to the optimal evaluation index value.
12. An electronic device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, wherein the processor implements the delivery scheduling method of any one of claims 1 to 10 when executing the computer program.
13. A computer-readable storage medium, on which a computer program is stored, which program, when being executed by a processor, is adapted to carry out the steps of the delivery scheduling method according to any one of claims 1 to 10.
CN202010821429.2A 2020-08-14 2020-08-14 Distribution scheduling method, device, electronic equipment and storage medium Pending CN114077947A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010821429.2A CN114077947A (en) 2020-08-14 2020-08-14 Distribution scheduling method, device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010821429.2A CN114077947A (en) 2020-08-14 2020-08-14 Distribution scheduling method, device, electronic equipment and storage medium

Publications (1)

Publication Number Publication Date
CN114077947A true CN114077947A (en) 2022-02-22

Family

ID=80280886

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010821429.2A Pending CN114077947A (en) 2020-08-14 2020-08-14 Distribution scheduling method, device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN114077947A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117575451A (en) * 2024-01-12 2024-02-20 深圳市今天国际物流技术股份有限公司 Logistics order control method, device, computer equipment and storage medium

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117575451A (en) * 2024-01-12 2024-02-20 深圳市今天国际物流技术股份有限公司 Logistics order control method, device, computer equipment and storage medium
CN117575451B (en) * 2024-01-12 2024-04-30 深圳市今天国际物流技术股份有限公司 Logistics order control method, device, computer equipment and storage medium

Similar Documents

Publication Publication Date Title
CN109840648B (en) Method and device for outputting bin information
CN110472899B (en) Method and device for distributing articles out of warehouse
CN107203789B (en) Distribution model establishing method, distribution method and related device
CN111275369B (en) Method and device for realizing planned warehouse crossing based on sorting by sub-sowing
US10311358B2 (en) Systems and methods for multi-objective evolutionary algorithms with category discovery
Neto et al. A simulation-based evolutionary multiobjective approach to manufacturing cell formation
Russell Mathematical programming heuristics for the production routing problem
CN112183852A (en) Logistics distribution route screening and freight accounting method, system, terminal and medium
CN111428991B (en) Method and device for determining delivery vehicles
Padmanabhan Panchu et al. Multi-objective Optimisation of Multi-robot Task Allocation with Precedence Constraints.
Zhang et al. Location assignment for outbound containers with adjusted weight proportion
Pedrielli et al. Hybrid order picking strategies for fashion E-commerce warehouse systems
CN113592282A (en) Article distribution method and device
CN111080206A (en) Method, device and equipment for generating replenishment list and storage medium
Nguyen et al. Learning reusable initial solutions for multi-objective order acceptance and scheduling problems with genetic programming
Guo et al. Storage assignment for newly arrived items in forward picking areas with limited open locations
CN107203865B (en) Order distribution method and device
CN114077947A (en) Distribution scheduling method, device, electronic equipment and storage medium
Cunha Campos et al. NSGA-II with iterated greedy for a bi-objective three-stage assembly flowshop scheduling problem
CN111523743A (en) Order distribution method, device, server and nonvolatile storage medium
CN111144796A (en) Method and device for generating tally information
CN113177704A (en) Task allocation method and device for automatic guided vehicle and computer storage medium
CN113450037A (en) Replenishment method, device and system for warehouse
CN113449941B (en) Method and device for distributing picking tasks, electronic equipment and storage medium
CN112132642B (en) Order combination method and device based on multi-objective optimization

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination