Path optimization algorithm considering cooperative delivery of courier and unmanned vehicle
By designing a path optimization algorithm for courier and unmanned vehicles, it solves the problem of low efficiency of the middle path optimization efficiency in the field of logistics distribution, realizes more efficient distribution and cost reduction, and promotes the unmanned and unmanned and unmanned and unmannedization of the logistics industry Sustainable development.
Patent Information
- Application Number
- CN202411422284.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-12
- Publication Date
- 2025-01-28
AI Technical Summary
The existing technology is difficult to effectively solve the problem of optimization of the coordinated delivery path between couriers and unmanned vehicles in the logistics and distribution field, especially when considering the loading capacity of unmanned vehicles and the diversity of customer packages, the existing algorithm is inefficient and costly. It is difficult to meet the growing delivery demand.
Put forward a path optimization algorithm for the collaborative distribution of courier and unmanned vehicles. By defining the control relationship and judgment method between the loading mode and the loading mode, the three -dimensional box model is designed to enumerate the algorithm, and branches use branches. Price and cutting algorithm solve the problem to improve the speed and efficiency of solution.
Through the optimization algorithm of the collaborative distribution path, the delivery efficiency is improved, the cost is reduced, the increasingly expired distribution needs can be better met, and the unmanned and sustainable development of the logistics industry can be promoted.
Smart Images

Figure CN119378776A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of logistics distribution path optimization algorithms, and in particular to a path optimization algorithm that takes into account the collaborative delivery of couriers and unmanned vehicles. Background Art
[0002] The booming development of e-commerce has not only driven the development of the logistics industry, but also posed new challenges to the updating of logistics technology. In the field of "last mile" delivery, problems such as severe labor shortage, high employee turnover rate, and rising labor costs have gradually emerged, which not only affects the stability of delivery services and consumers' shopping experience, but also further compresses the profit margins of enterprises. In order to meet these challenges, many companies have begun to explore the application of unmanned equipment in the delivery process, such as logistics unmanned vehicles and drones.
[0003] To maximize the potential of unmanned delivery equipment, logistics companies need to optimize delivery routes for them. Due to the limited endurance and cargo capacity of unmanned delivery tools such as unmanned vehicles, existing studies mostly assume that unmanned vehicles only serve one customer at a time and their loading capacity is simplified to a single container or a predefined maximum capacity limit.
[0004] Therefore, the present invention proposes a path optimization algorithm that takes into account the collaborative delivery of couriers and unmanned vehicles to solve the above problems. Summary of the invention
[0005] The technical problem to be solved by the present invention is to provide a path optimization algorithm that takes into account the collaborative delivery of couriers and unmanned vehicles, focusing on the delivery scenarios in which couriers and unmanned vehicles visit multiple customers respectively, and describing the loading capacity of the unmanned vehicle by the number and size of cargo compartments, while considering the number and size of customer packages. According to the proposed loading mode concept, a branch pricing and cutting algorithm is designed to solve the problem, and the solution speed is improved to improve delivery efficiency, reduce costs and meet the growing delivery needs, thereby promoting the unmanned and sustainable development of the logistics industry.
[0006] In order to solve the above technical problems, the technical solution of the present invention is: a path optimization algorithm considering the collaborative delivery of couriers and unmanned vehicles, and its innovation lies in: including the following three stages:
[0007] Phase 1: Define loading modes, the dominant relationship between loading modes and the judgment method;
[0008] Phase 2: Based on the three-dimensional packing model, a loading mode enumeration algorithm is designed to transform the three-dimensional loading constraints of the unmanned vehicle cargo compartment and the customer's package into loading mode selection constraints;
[0009] The third stage: Solve the transformed problem and obtain the delivery routes of the unmanned vehicles and couriers as well as the loading plan for the customer's packages.
[0010] Furthermore, the mode of collaborative delivery between couriers and unmanned vehicles means that for all customers to be delivered within the area governed by one outlet, the unmanned vehicle and the electric tricycle driven by the courier depart from the outlet, and after serving the assigned customers under the conditions of meeting the customer's allowed service time window and vehicle delivery capacity, they return to the outlet respectively;
[0011] The goal of collaborative delivery is to minimize the driving cost of electric tricycles and driverless vehicles, which is equal to the product of the vehicle's driving cost per unit time and the driving time;
[0012] The model settings for collaborative delivery include: assuming that all customers' packages are rectangular; the same customer has one or more packages to be delivered; the same customer's packages cannot be delivered by multiple vehicles; the electric tricycle has only one cargo hold, and the placement of the package in the cargo hold of the electric tricycle is not considered; the unmanned vehicle has different types and numbers of cargo holds, and all are rectangular. The different types of cargo holds of unmanned vehicles have the same length and width, and only the height is different; the package is placed in the cargo hold of the unmanned vehicle, that is, the side of the package is parallel to the side of the cargo hold of the unmanned vehicle; packages from different customers cannot be placed in the same cargo hold of the unmanned vehicle.
[0013] Furthermore, in the first stage, the loading mode refers to the type and quantity configuration of the unmanned vehicle cargo compartment required to meet customer needs;
[0014] The dominance relationship between the two loading modes, i.e., the dominance rule, is defined as follows: if loading mode p dominates loading mode p', the following two conditions must be met:
[0015] Condition 1: Each cargo hold required in loading pattern p should be allocated to a cargo hold in loading pattern p';
[0016] Condition 2: Each cargo hold of loading pattern p' can be assigned at most one cargo hold of loading pattern p;
[0017] The method for determining the dominant relationship between two loading modes is:
[0018] The number of cargo holds of the same type in loading mode p and loading mode p' are compared in order of cargo hold volumes from large to small. If the number of cargo holds of this type in loading mode p is greater than that in loading mode p', loading mode p cannot dominate loading mode p'. Otherwise, the number of cargo holds that is more than that in loading mode p can be accumulated to the next number of cargo holds involved in the comparison in loading mode p'. If the number of cargo holds with the smallest volume accumulated in loading mode p' is not less than the number of cargo holds of this type in loading mode p, loading mode p dominates loading mode p'.
[0019] Furthermore, the design method of the loading mode enumeration algorithm in the second stage is: according to the number of cargo holds required for the number of customer packages, that is, given the number of cargo holds n f , from the customer using one unmanned vehicle cargo hold to the number of cargo holds n f The unmanned vehicle cargo compartment is traversed to find the loading mode with the smallest total volume. The searching process is equivalent to solving a three-dimensional packing problem, that is, solving the three-dimensional packing model to obtain the dominated assembly mode.
[0020] Furthermore, in the design method of the loading mode enumeration algorithm of the second stage, given the number of cargo holds, there are multiple loading modes with the smallest total volume. After finding a loading mode p, it is necessary to design constraints to remove the loading mode p and find other loading modes. The designed constraints include:
[0021] Formula 1:
[0022] Formula 2: When n pm >0,
[0023] Formula 3: When n pm >0,
[0024] Formula 4: When n pm >0,
[0025] Formula 5: When n pm >0,
[0026] in, Indicates the type of unmanned vehicle cargo compartment A collection of The larger the value of , the larger the cargo hold volume of the corresponding type;
[0027] Indicates the type of unmanned vehicle The collection of cargo holds b;
[0028] L m ,W m ,H m Represents the types of unmanned vehicles Length, width and height of the cargo hold;
[0029] z mb is a 0-1 variable, which takes the value 1 if the cargo compartment b of the unmanned vehicle type m is selected, otherwise it takes the value 0;
[0030] V min represents the total volume of the cargo hold corresponding to the optimal solution of the three-dimensional packing model;
[0031] n pm Indicates that the loading mode p adopts the unmanned vehicle type Number of cargo holds;
[0032] M is n f +1;
[0033] is a 0-1 variable. If the number of cargo compartments with unmanned vehicle type m in the new loading pattern is less than the number of cargo compartments with unmanned vehicle type n corresponding to the previously found loading pattern p pm -0.5, the value is 1, otherwise it is 0;
[0034] is a 0-1 variable if the number of cargo holds of type m used in the new loading pattern is greater than the number of types n corresponding to the previously found loading pattern p pm +0.5, the value is 1, otherwise it is 0.
[0035] Furthermore, the loading mode enumeration algorithm in the second stage includes two steps:
[0036] The first step: Initialize each client The non-dominated loading mode,
[0037] in, represents the customer point set, equal to {1,...,n};
[0038] Indicates the customer The set of non-dominated loading patterns;
[0039] Step 2: Loop through Indicates customer point A set of packages, solve the three-dimensional packing model, if the model is not feasible, move to the next n f If the model is feasible, then add constraints 1-5 and continue to solve the model until it is infeasible. When the newly generated loading pattern p is not When any of the solutions in
[0040] Through the loading mode enumeration algorithm, each customer The corresponding three-dimensional loading constraints of the package are transformed into the set of non-dominated loading patterns Select a load mode constraint.
[0041] Furthermore, in the third stage, the branch-price-cut algorithm is used to solve the transformed problem. When the branch-price-cut algorithm is used to solve the problem, an integer programming model based on set partitioning needs to be established. The integer programming model based on set partitioning is as follows:
[0042] Formula 6:
[0043] Formula 7:
[0044] Equation 8: θ r ∈{0,1},
[0045] in, Represents the set of all feasible paths;
[0046] α ir Indicates the path Visit customers The number of times;
[0047] c r Indicates the path Costs;
[0048] θ r is a 0-1 decision variable. If path If yes, the value is 1, otherwise it is 0;
[0049] The branch-and-bound search algorithm is based on the branch-and-bound search. It uses the column generation algorithm to solve the optimal solution of the corresponding relaxation problem at each node of the search tree. When the pricing problem no longer has a feasible path using an electric tricycle or an unmanned vehicle with a negative test number, it stops solving and uses valid inequalities to strengthen the solution. The branch-and-bound search algorithm adds the Subset-Row inequality to the restricted main problem. For a subset of 3 customer points, The Subset-Row inequality is defined as follows:
[0050] Formula 9:
[0051] in, It represents the set of customer point subsets corresponding to all Subset-Row inequalities in the main problem;
[0052] Represents the set of all feasible paths A subset of
[0053] When adding Subset-Row inequalities to the restricted main problem, the branch-price-cut algorithm only adds inequalities with a violation degree greater than 0.05, and the number of inequalities added each time does not exceed 10, and the total number of inequalities added to each search tree node does not exceed 50;
[0054] When the Subset-Row inequality is added to the restricted main problem, the calculation formula of the objective function of the pricing problem is:
[0055] Formula 10:
[0056] in, Indicates the number of tests corresponding to the path in the restricted master problem;
[0057] μ i and λ S They are the dual variables corresponding to Equation 7 and Equation 9 respectively.
[0058] Furthermore, in the third stage, in the branch pricing and cutting algorithm, a labeling algorithm is used to solve the pricing problem to obtain a feasible path using the electric tricycle or the unmanned vehicle;
[0059] The label algorithm uses labels to save the path status from the starting point, and expands the label along the arc according to the expansion rule. Each non-dominated loading mode corresponding to the expanded customer can generate a new label, and the dominance rule is used to exclude labels that cannot become the optimal solution;
[0060] Defining Tags Represents from the starting point 0 to point a path of
[0061] in, Represents the set of visited customers;
[0062] π represents the sum of the corresponding dual variables of Equation 7 and Equation 9;
[0063] φ represents an array, φ[S] represents the corresponding point set S and the number of customers;
[0064] ρ cb represents the total cost when using the electric tricycle;
[0065] t cb represents the earliest service start time at point i when using an electric tricycle;
[0066] q cb Indicates the cumulative demand of customers along this path;
[0067] ρ sr represents the total cost when using an unmanned vehicle;
[0068] t sr represents the earliest service start time at point i when using an unmanned vehicle;
[0069] Represents an array, Indicates the cumulative number of cargo holds of type m used by the route;
[0070] The label of the initial starting point is Label L i Extending along the arc to point j, considering only the non-dominated loading mode at point j, we can obtain If point j adopts loading mode Label L i The extension process is as follows:
[0071] Formula 11:
[0072] Formula 12:
[0073] Formula 13:
[0074] Formula 14:
[0075] Formula 15:
[0076] Formula 16:
[0077] Formula 17:
[0078] Formula 18:
[0079] Formula 19:
[0080] Where mod represents the remainder function, (φ[S](L i )+1)mod 2 means taking (φ[S](L i )+1) divided by 2;
[0081] c cb represents the driving cost of the electric tricycle per unit time;
[0082] Indicates that the electric tricycle is in arc The driving time;
[0083] represents the set of feasible arcs in the distribution network;
[0084] Indicates customer point The earliest allowed delivery time;
[0085] Indicates customer point service time;
[0086] l jo ,w jo ,h jo Respectively represent packages Length, width and height;
[0087] c sr Indicates the driving cost of the logistics unmanned vehicle per unit time;
[0088] Indicates that logistics unmanned vehicles are in arc The driving time;
[0089] If the time or capacity constraints of the electric tricycle are not met, it means that the electric tricycle cannot continue to deliver;
[0090] If the time or capacity constraints of the driverless vehicle are not met, it means that the driverless vehicle cannot continue to deliver;
[0091] If neither the electric tricycle nor the driverless vehicle can deliver, the label is not extended;
[0092] For the label of n+1 points, select ρ sr and ρ cb The smaller value is taken as the cost of the feasible path;
[0093] The process of using the dominance rule to exclude labels that cannot be the optimal solution is as follows: Assume that customer point i has two labels and Dominate The necessary and sufficient conditions are:
[0094] Formula 20:
[0095] Formula 21:
[0096] Formula 22:
[0097] Formula 23:
[0098] Formula 24:
[0099] Formula 25:
[0100] Formula 26:
[0101] Among them, in formula 26 Indicates the result obtained by applying the judgment method of the dominant relationship between two loading modes The corresponding unmanned vehicle loading mode controls Corresponding unmanned vehicle loading mode.
[0102] Furthermore, in the third stage, in order to speed up the solution of column generation, two strategies are added to the labeling algorithm, namely:
[0103] The first strategy is to use a bidirectional limit search, that is, based on the forward label, add a backward label extending from point n+1 until a threshold of a key resource is reached, and then connect the forward and backward labels to generate a complete path from point 0 to point n+1. The key resource is time and the threshold is Indicates customer point The latest allowed delivery time;
[0104] The second strategy is to use ng path relaxation to dynamically expand the ng point set in an iterative method. During the iteration process, regardless of whether the ng loop is satisfied, the starting point of the loop with a length of 2 is added to the ng point set.
[0105] Furthermore, in the third stage, in the branch-price-cut algorithm, a parallel minimum cost insertion heuristic algorithm is used to search for the initial column of the main problem constrained at the root node of the tree, and for the columns of other nodes, the existing columns are copied from the parent node, and all columns that do not meet the branch constraints are deleted;
[0106] The initial upper bound of the problem is obtained by using optimization software at the root node to solve the integer programming model Equation 6-Equation 8 of the set partition consisting of the columns generated by the column generation algorithm;
[0107] For branching and searching strategies, the flow The arc closest to 0.5 is used as the branch variable, and two child nodes are created by setting this branch variable to 0 or 1;
[0108] In a search tree, when there are multiple nodes to choose from, the best-first strategy is adopted, that is, the node with the smallest lower bound is selected for exploration.
[0109] The advantages of the present invention are:
[0110] (1) The present invention proposes loading modes, the dominant relationship between loading modes and the judgment method, designs a loading mode enumeration algorithm based on the three-dimensional packing model, transforms the three-dimensional loading constraints of the unmanned vehicle cargo compartment and the customer's package into the selection constraints of the loading mode, and selects the dominant loading mode through the dominance rules to simplify the problem, thereby improving the solution efficiency.
[0111] (2) The present invention designs a branch pricing and cutting algorithm based on loading patterns and governing rules to solve the problem. When solving the pricing problem, a labeling algorithm is proposed for the problem structure, which has resource constraints and a basic shortest path problem of two types of vehicles. A variety of acceleration strategies are added to further improve the solution efficiency. BRIEF DESCRIPTION OF THE DRAWINGS
[0112] The present invention will be further described in detail below in conjunction with the accompanying drawings and specific embodiments.
[0113] Figure 1 Schematic diagram of the courier and unmanned vehicle collaborative delivery mode of the present invention.
[0114] Figure 2 A schematic diagram of the cargo compartment configuration of the unmanned vehicle of the present invention.
[0115] Figure 3 This is a flow chart of the path optimization algorithm considering the collaborative delivery of couriers and unmanned vehicles according to the present invention.
[0116] Figure 4 It is a flow chart of the branch pricing and cutting algorithm of the present invention. DETAILED DESCRIPTION
[0117] In order to further explain the technical means and effects adopted by the present invention to achieve the predetermined invention purpose, the specific implementation mode, structure, characteristics and effects of the present invention are described in detail below in combination with the accompanying drawings and preferred embodiments.
[0118] Example
[0119] This embodiment provides a path optimization algorithm that considers the collaborative delivery of couriers and unmanned vehicles. Figure 3 As shown, it includes the following three stages:
[0120] Phase 1: Define loading modes, the dominant relationships between loading modes, and the judgment methods.
[0121] The mode of collaborative delivery between couriers and unmanned vehicles, such as Figure 1 As shown, for all customers waiting for delivery in the area governed by one outlet, the unmanned vehicle and the electric tricycle driven by the courier start from the outlet, and after serving the assigned customers under the conditions of meeting the customer's allowed service time window and vehicle delivery capacity, they return to the outlet respectively.
[0122] The goal of collaborative delivery is to minimize the driving costs of electric tricycles and driverless vehicles, where the driving cost is equal to the product of the vehicle's driving cost per unit time and the driving time.
[0123] The collaborative delivery model settings include: assuming that the customer's packages are all rectangular; the same customer has one or more packages to be delivered; the same customer's package cannot be delivered by multiple vehicles; the electric tricycle has only one cargo compartment, and the placement of the package in the cargo compartment of the electric tricycle is not considered; the unmanned vehicle has different types and numbers of cargo compartments, and they are all rectangular. The length and width of the cargo compartments of different types of unmanned vehicles are the same, and only the height is different, such as Figure 2 As shown; to facilitate customer pickup, the package is placed in the cargo hold of the unmanned vehicle, that is, the side of the package is parallel to the side of the cargo hold of the unmanned vehicle; to protect customer privacy, packages from different customers cannot be placed in the same cargo hold of the unmanned vehicle.
[0124] In the first phase, the loading mode refers to the type and quantity of unmanned vehicle cargo compartments required to meet customer needs.
[0125] The dominance relationship between two loading patterns, i.e., the dominance rule, is defined as follows: If loading pattern p dominates loading pattern p', the following two conditions must be met:
[0126] Condition 1: Each cargo hold required in loading pattern p should be allocated to a cargo hold in loading pattern p';
[0127] Condition 2: Each cargo hold of loading pattern p' can be assigned at most one cargo hold of loading pattern p.
[0128] According to the definition of dominance relationship, the method for determining the dominance relationship between two loading modes is:
[0129] The number of cargo holds of the same type in loading mode p and loading mode p' are compared in order of cargo hold volumes from large to small. If the number of cargo holds of this type in loading mode p is greater than that in loading mode p', loading mode p cannot dominate loading mode p'. Otherwise, the number of cargo holds that is more than that in loading mode p can be accumulated to the next number of cargo holds involved in the comparison in loading mode p'. If the number of cargo holds with the smallest volume accumulated in loading mode p' is not less than the number of cargo holds of this type in loading mode p, loading mode p dominates loading mode p'.
[0130] In this embodiment, the judgment method can be represented by Algorithm 1. In Algorithm 1, lines 2 to 5 check whether the mth cargo hold of loading mode p' can meet the requirements of loading mode p; since a large cargo hold can load a small cargo hold, lines 6 to 8 indicate that the remaining cargo holds of the mth category of loading mode p' can be regarded as the m-1th category cargo holds.
[0131]
[0132] Phase 2: Based on the three-dimensional packing model, a loading mode enumeration algorithm is designed to convert the three-dimensional loading constraints of the unmanned vehicle cargo compartment and the customer's package into loading mode selection constraints.
[0133] In the second stage, since the loading mode with a smaller total volume or a smaller number of cargo holds does not necessarily dominate the mode with a larger total volume or a larger number of cargo holds, a loading mode enumeration algorithm is designed. The design method of the loading mode enumeration algorithm is as follows: according to the number of cargo holds required for the number of customer packages, that is, traversing from the customer using an unmanned vehicle cargo hold to the unmanned vehicle cargo hold used, to find the loading mode with the smallest total volume. The search process is equivalent to solving a three-dimensional packing problem, that is, solving the three-dimensional packing model to obtain the dominated assembly mode. In addition, using the domination rule to find the dominant loading mode can reduce the number of loading modes, thereby simplifying the scale of the problem.
[0134] In the second stage, given the number of cargo holds, there are multiple loading modes with the smallest total volume. After finding a loading mode p, it is necessary to design constraints to remove the loading mode p and find other loading modes. The designed constraints include:
[0135] Formula 1:
[0136] Formula 2: When n pm >0,
[0137] Formula 3: When n pm >0,
[0138] Formula 4: When n pm >0,
[0139] Formula 5: When n pm >0,
[0140] in, Indicates the type of unmanned vehicle cargo compartment A collection of The larger the value of , the larger the cargo hold volume of the corresponding type;
[0141] Indicates the type of unmanned vehicle The collection of cargo holds b;
[0142] L m ,W m ,H m Represents the types of unmanned vehicles Length, width and height of the cargo hold;
[0143] z mbis a 0-1 variable, which takes the value 1 if the cargo compartment b of the unmanned vehicle type m is selected, otherwise it takes the value 0;
[0144] V min represents the total volume of the cargo hold corresponding to the optimal solution of the three-dimensional packing model;
[0145] n pm Indicates that the loading mode p adopts the unmanned vehicle type Number of cargo holds;
[0146] M is the number of given cargo holds n f +1;
[0147] is a 0-1 variable. If the number of cargo compartments with unmanned vehicle type m in the new loading pattern is less than the number of cargo compartments with unmanned vehicle type n corresponding to the previously found loading pattern p pm -0.5, the value is 1, otherwise it is 0;
[0148] is a 0-1 variable if the number of cargo holds of type m used in the new loading pattern is greater than the number of types n corresponding to the previously found loading pattern p pm +0.5, the value is 1, otherwise it is 0.
[0149] Constraint 1 ensures that the objective function of the new loading scheme is still the objective function of the original loading scheme. Constraints 2-4 are used to exclude the previous optimal solution, so that the optimal solution generated each time is not generated before. Constraint 5 constrains the value of the decision variable.
[0150] The loading mode enumeration algorithm in the second phase consists of two steps:
[0151] The first step: Initialize each client The non-dominated loading mode,
[0152] in, represents the customer point set, equal to {1,...,n};
[0153] Indicates the customer The set of non-dominated loading patterns;
[0154] Step 2: Loop through Indicates customer point A set of packages, solve the three-dimensional packing model, if the model is not feasible, move to the next n f If the model is feasible, then add constraints 1-5 and continue to solve the model until it is infeasible. When the newly generated loading pattern p is not When any of the solutions in
[0155] The loading mode enumeration algorithm can be expressed by Algorithm 2:
[0156]
[0157]
[0158] Through the above loading mode enumeration algorithm, each customer The corresponding three-dimensional loading constraints of the package are transformed into the set of non-dominated loading patterns Select a load mode constraint.
[0159] The third stage: Solve the transformed problem and obtain the delivery routes of the unmanned vehicles and couriers as well as the loading plan for the customer's packages.
[0160] In this embodiment, a branch pricing and cutting algorithm is designed in the third stage for solving the problem. To use the algorithm, an integer programming model based on set partitioning needs to be established. The integer programming model based on set partitioning is as follows:
[0161] Formula 6:
[0162] Formula 7:
[0163] Equation 8: θ r ∈{0,1},
[0164] in, Represents the set of all feasible paths;
[0165] α ir Indicates the path Visit customers The number of times;
[0166] c r Indicates the path Costs;
[0167] θ r is a 0-1 decision variable. If path The value is 1, otherwise it is 0.
[0168] Formula 6 minimizes the total cost of the selected path, Formula 7 ensures that each customer point is visited once and only once, and Formula 8 restricts the value range of the decision variable.
[0169] The branch-and-bound search algorithm is based on the branch-and-bound search, and uses the column generation algorithm to solve the optimal solution of the corresponding relaxation problem at each node of the search tree. When the pricing problem no longer has a feasible path using an electric tricycle or an unmanned vehicle with a negative test number, the solution is stopped, and a valid inequality is used to strengthen the solution. The present invention adds the Subset-Row inequality to the restricted main problem in the branch-and-bound search algorithm. For a subset containing 3 customer points The Subset-Row inequality is defined as follows:
[0170] Formula 9:
[0171] in, It represents the set of customer point subsets corresponding to all Subset-Row inequalities in the main problem; Represents the set of all feasible paths Since the subset contains only 3 customer points, all Subset-Row inequalities can be enumerated and added to the restricted main problem.
[0172] In order to balance the quality of the lower bound and the complexity of the pricing problem, the branch-price-cut algorithm only adds inequalities with a violation degree greater than 0.05 when adding Subset-Row inequalities to the restricted main problem, and the number of inequalities added each time does not exceed 10, and the total number of inequalities added to each search tree node does not exceed 50.
[0173] When the Subset-Row inequality is added to the restricted main problem, the calculation formula of the objective function of the pricing problem is:
[0174] Formula 10:
[0175] in, Indicates the number of tests corresponding to the path in the restricted master problem;
[0176] μ i and λ S They are the dual variables corresponding to Equation 7 and Equation 9 respectively.
[0177] In this embodiment, in the third stage, according to the characteristics of the problem, a labeling algorithm is used in the branch pricing and cutting algorithm to solve the pricing problem to obtain a feasible path using an electric tricycle or an unmanned vehicle.
[0178] The label algorithm uses labels to save the path status starting from the starting point, and expands the labels along the arc according to the expansion rules. A new label can be generated for each non-dominated loading mode corresponding to the customer expanded to. At the same time, the dominance rules are used to exclude labels that cannot become the optimal solution.
[0179] Defining Tags Represents from the starting point 0 to point a path of
[0180] in, Represents the set of visited customers;
[0181] π represents the sum of the corresponding dual variables of Equation 7 and Equation 9;
[0182] φ represents an array, φ[S] represents the corresponding point set S and the number of customers;
[0183] ρ cb represents the total cost when using the electric tricycle;
[0184] t cb represents the earliest service start time at point i when using an electric tricycle;
[0185] q cb Indicates the cumulative demand of customers along this path;
[0186] ρ sr represents the total cost when using an unmanned vehicle;
[0187] t sr represents the earliest service start time at point i when using an unmanned vehicle;
[0188] Represents an array, Indicates the cumulative number of cargo holds of type m used on this route.
[0189] The label of the initial starting point is Label L i Extending along the arc to point j, considering only the non-dominated loading mode at point j, we can obtain If point j adopts loading mode Label L i The extension process is as follows:
[0190] Formula 11:
[0191] Formula 12:
[0192] Formula 13:
[0193] Formula 14:
[0194] Formula 15:
[0195] Formula 16:
[0196] Formula 17:
[0197] Formula 18:
[0198] Formula 19:
[0199] Where mod represents the remainder function, (φ[S](L i )+1)mod 2 means taking (φ[S](L i )+1) divided by 2;
[0200] c cb represents the driving cost of the electric tricycle per unit time;
[0201] Indicates that the electric tricycle is in arc The driving time;
[0202] represents the set of feasible arcs in the distribution network;
[0203] Indicates customer point The earliest allowed delivery time;
[0204] Indicates customer point service time;
[0205] l jo ,w jo ,h jo Respectively represent packages Length, width and height;
[0206] c sr Indicates the driving cost of the logistics unmanned vehicle per unit time;
[0207] Indicates that logistics unmanned vehicles are in arc The driving time;
[0208] If the time or capacity constraints of the electric tricycle are not met, it means that the electric tricycle cannot continue to deliver; if the time or capacity constraints of the unmanned vehicle are not met, it means that the unmanned vehicle cannot continue to deliver; if both the electric tricycle and the unmanned vehicle cannot deliver, the label is not extended; for the label of point n+1, select ρ sr and ρ cb The smaller value is taken as the cost of the feasible path.
[0209] Using the dominance rule, we can delete labels that cannot be the optimal path. Assume that customer point i has two labels: and Dominate The necessary and sufficient conditions are:
[0210] Formula 20:
[0211] Formula 21:
[0212] Formula 22:
[0213] Formula 23:
[0214] Formula 24:
[0215] Formula 25:
[0216] Formula 26:
[0217] Among them, in formula 26 Indicates the result obtained by applying the judgment method of the dominant relationship between two loading modes The corresponding unmanned vehicle loading mode controls Corresponding unmanned vehicle loading mode.
[0218] In order to speed up the solution of column generation, two strategies are added to the labeling algorithm, namely:
[0219] The first strategy is to use a bidirectional limit search, that is, based on the forward label, add a backward label extending from point n+1 until a threshold of a key resource is reached, and then connect the forward and backward labels to generate a complete path from point 0 to point n+1. In this embodiment, the key resource is time and the threshold is Indicates customer point The latest allowed delivery time;
[0220] The second strategy is to use ng path relaxation to dynamically expand the ng point set in an iterative method. During the iteration process, regardless of whether the ng loop is satisfied, the starting point of the loop with a length of 2 is added to the ng point set.
[0221] In the third stage, in the branch-price-cut algorithm, a parallel minimum cost insertion heuristic algorithm is used to search for the initial columns of the main problem at the root node of the tree. For the columns of other nodes, the existing columns are copied from the parent node, and all columns that do not meet the branch constraints are deleted. The initial upper bound of the problem is obtained by using optimization software at the root node to solve the integer programming model (Equation 6-Equation 8) of the set partition composed of the columns generated by the column generation algorithm. For the branching and search strategies, the flow rate is used. The arc closest to 0.5 is used as the branch variable, and two child nodes can be created by setting this branch variable to 0 or 1; in the search tree, when there are multiple nodes to choose from, the best first strategy is adopted, that is, the node with the smallest lower bound is selected for exploration.
[0222] In this embodiment, Figure 4 As shown in Figure 2, the process of solving the problem by the branch pricing and cutting algorithm is as follows:
[0223] Step 1: Initialize the search tree and add the root node;
[0224] Step 2: According to the best first strategy, select the node to be visited with the smallest value of the problem objective function after linear relaxation;
[0225] Step 3: Construct the restricted main problem at the selected root node;
[0226] Step 4: Use optimization software to solve the constraint master problem and use labeling algorithm to solve the pricing problem;
[0227] Step 5: Determine whether a column with a negative test number is generated. If so, return to step 3 and add the generated negative column to the restricted main problem. Otherwise, go to step 6.
[0228] Step 6: Determine whether the objective function value is greater than the upper bound. If so, delete the node and go directly to step 10. If not, go to step 7.
[0229] Step 7: Determine whether the number of Subset-Row inequalities added is greater than 50. If so, proceed to Step 8. If not, return to Step 3 and add the first 10 Subset-Row inequalities with violation degrees exceeding 0.05 to the restricted main problem.
[0230] Step 8: Determine whether the objective function value is an integer solution. If so, proceed to step 9. If not, select a branch variable, generate a child node, and add the child node to the search tree, then directly proceed to step 10.
[0231] Step 9: Determine whether the integer solution is less than the upper bound. If so, update the upper bound. If not, delete the node.
[0232] Step 10: Determine whether the search tree is empty. If so, end. If not, return to step 2.
[0233] The above description is only a preferred embodiment of the present invention and does not limit the present invention in any form. Although the present invention has been disclosed as a preferred embodiment as above, it is not used to limit the present invention. Any technical personnel in this field can make some changes or modify the technical contents disclosed above into equivalent embodiments without departing from the scope of the technical solution of the present invention. However, any brief modifications, equivalent changes and modifications made to the above embodiments based on the technical essence of the present invention without departing from the content of the technical solution of the present invention are still within the scope of the technical solution of the present invention.
Claims
1. A path optimization algorithm considering the collaborative delivery of couriers and unmanned vehicles, characterized by: It includes the following three stages: Phase 1: Define loading modes, the dominant relationship between loading modes and the judgment method; Phase 2: Based on the three-dimensional packing model, a loading mode enumeration algorithm is designed to transform the three-dimensional loading constraints of the unmanned vehicle cargo compartment and the customer's package into loading mode selection constraints; The third stage: Solve the transformed problem and obtain the delivery routes of the unmanned vehicles and couriers as well as the loading plan for the customer's packages.
2. The path optimization algorithm considering the collaborative delivery of couriers and unmanned vehicles according to claim 1 is characterized by: The mode of collaborative delivery between couriers and unmanned vehicles means that for all customers to be delivered within the area governed by a network point, the unmanned vehicle and the electric tricycle driven by the courier depart from the network point, and after serving the assigned customers under the conditions of meeting the customer's allowed service time window and vehicle delivery capacity, they return to the network point respectively; The goal of collaborative delivery is to minimize the driving cost of electric tricycles and driverless vehicles, which is equal to the product of the vehicle's driving cost per unit time and the driving time; The model setting of collaborative delivery includes: assuming that the customer's packages are all rectangular; The same customer has one or more parcels to be delivered; the parcels of the same customer cannot be delivered by multiple vehicles; the electric tricycle has only one cargo hold, and the placement of the parcel in the cargo hold of the electric tricycle is not considered; the unmanned vehicle has different types and numbers of cargo holds, and all are rectangular. The different types of cargo holds of the unmanned vehicle have the same length and width, and only the height is different; the parcel is placed in the cargo hold of the unmanned vehicle, that is, the side of the parcel is parallel to the side of the cargo hold of the unmanned vehicle; parcels of different customers cannot be placed in the same cargo hold of the unmanned vehicle.
3. The path optimization algorithm considering the collaborative delivery of couriers and unmanned vehicles according to claim 2 is characterized by: In the first stage, the loading mode refers to the type and quantity of unmanned vehicle cargo compartments required to meet customer needs; The dominance relationship between the two loading modes, i.e., the dominance rule, is defined as follows: if loading mode p dominates loading mode p', the following two conditions must be met: Condition 1: Each cargo hold required in loading pattern p should be allocated to a cargo hold in loading pattern p'; Condition 2: Each cargo hold of loading pattern p' can be assigned at most one cargo hold of loading pattern p; The method for determining the dominant relationship between two loading modes is: The number of cargo holds of the same type in loading mode p and loading mode p' are compared in order of cargo hold volumes from large to small. If the number of cargo holds of this type in loading mode p is greater than that in loading mode p', loading mode p cannot dominate loading mode p'. Otherwise, the number of cargo holds that is more than that in loading mode p can be accumulated to the next number of cargo holds involved in the comparison in loading mode p'. If the number of cargo holds with the smallest volume accumulated in loading mode p' is not less than the number of cargo holds of this type in loading mode p, loading mode p dominates loading mode p'.
4. The path optimization algorithm considering the collaborative delivery of couriers and unmanned vehicles according to claim 3 is characterized by: The design method of the loading mode enumeration algorithm in the second stage is: according to the number of cargo holds required for the number of customer packages, that is, given the number of cargo holds n f , from the customer using one unmanned vehicle cargo hold to the number of cargo holds n f The unmanned vehicle cargo compartment is traversed to find the loading mode with the smallest total volume. The searching process is equivalent to solving a three-dimensional packing problem, that is, solving the three-dimensional packing model to obtain the dominated assembly mode.
5. The path optimization algorithm considering the collaborative delivery of couriers and unmanned vehicles according to claim 4 is characterized by: In the design method of the loading pattern enumeration algorithm of the second stage, given the number of cargo holds, there are multiple loading patterns with the smallest total volume. After finding a loading pattern p, it is necessary to design constraints to remove the loading pattern p and find other loading patterns. The designed constraints include: Formula 1: Formula 2: When n pm >0, Formula 3: When n pm >0, Formula 4: When n pm >0, Formula 5: When n pm >0, in, Indicates the type of unmanned vehicle cargo compartment A collection of The larger the value of , the larger the cargo hold volume of the corresponding type; Indicates the type of unmanned vehicle The collection of cargo holds b; L m ,W m ,H m Represents the types of unmanned vehicles Length, width and height of the cargo hold; z mb is a 0-1 variable, which takes the value 1 if the cargo compartment b of the unmanned vehicle type m is selected, otherwise it takes the value 0; V min represents the total volume of the cargo hold corresponding to the optimal solution of the three-dimensional packing model; n pm Indicates that the loading mode p adopts the unmanned vehicle type Number of cargo holds; M is n f +1; is a 0-1 variable. If the number of cargo compartments with unmanned vehicle type m in the new loading pattern is less than the number of cargo compartments with unmanned vehicle type n corresponding to the previously found loading pattern p pm -0.5, the value is 1, otherwise it is 0; is a 0-1 variable if the number of cargo holds of type m used in the new loading pattern is greater than the number of types n corresponding to the previously found loading pattern p pm +0.5, the value is 1, otherwise it is 0.
6. The path optimization algorithm considering the collaborative delivery of couriers and unmanned vehicles according to claim 5 is characterized by: The loading mode enumeration algorithm in the second stage includes two steps: The first step: Initialize each client The non-dominated loading mode, in, represents the customer point set, equal to {1,...,n}; Indicates the customer The set of non-dominated loading patterns; Step 2: Loop through Indicates customer point A set of packages, solve the three-dimensional packing model, if the model is not feasible, move to the next n f If the model is feasible, then add constraints 1-5 and continue to solve the model until it is infeasible. When the newly generated loading pattern p is not When any of the solutions in Through the loading mode enumeration algorithm, each customer The corresponding three-dimensional loading constraints of the package are transformed into the set of non-dominated loading patterns Select a load mode constraint.
7. The path optimization algorithm considering the collaborative delivery of couriers and unmanned vehicles according to claim 6 is characterized by: In the third stage, the branch-price-cut algorithm is used to solve the transformed problem. When the branch-price-cut algorithm is used to solve the problem, an integer programming model based on set partitioning needs to be established. The integer programming model of set partitioning is as follows: Formula 6: Formula 7: Equation 8: θ r ∈{0,1}, in, Represents the set of all feasible paths; α ir Indicates the path Visit customers The number of times; c r Indicates the path Costs; θ r is a 0-1 decision variable. If path If yes, the value is 1, otherwise it is 0; The branch-and-bound search algorithm is based on the branch-and-bound search. It uses the column generation algorithm to solve the optimal solution of the corresponding relaxation problem at each node of the search tree. When the pricing problem no longer has a feasible path using an electric tricycle or an unmanned vehicle with a negative test number, it stops solving and uses valid inequalities to strengthen the solution. The branch-and-bound search algorithm adds the Subset-Row inequality to the restricted main problem. For a subset of 3 customer points, The Subset-Row inequality is defined as follows: Formula 9: in, It represents the set of customer point subsets corresponding to all Subset-Row inequalities in the main problem; Represents the set of all feasible paths A subset of When adding Subset-Row inequalities to the restricted main problem, the branch-price-cut algorithm only adds inequalities with a violation degree greater than 0.05, and the number of inequalities added each time does not exceed 10, and the total number of inequalities added to each search tree node does not exceed 50; When the Subset-Row inequality is added to the restricted main problem, the calculation formula of the objective function of the pricing problem is: Formula 10: in, Indicates the number of tests corresponding to the path in the restricted master problem; μ i and λ S They are the dual variables corresponding to Equation 7 and Equation 9 respectively.
8. The path optimization algorithm considering the coordinated delivery of couriers and unmanned vehicles according to claim 7 is characterized by: In the third stage, in the branch pricing and cutting algorithm, a labeling algorithm is used to solve the pricing problem to obtain a feasible path using an electric tricycle or an unmanned vehicle; The label algorithm uses labels to save the path status from the starting point, and expands the label along the arc according to the expansion rule. Each non-dominated loading mode corresponding to the expanded customer can generate a new label, and the dominance rule is used to exclude labels that cannot become the optimal solution; Defining Tags Represents from the starting point 0 to point a path of in, Represents the set of visited customers; π represents the sum of the corresponding dual variables of Equation 7 and Equation 9; φ represents an array, φ[S] represents the corresponding point set S and the number of customers; ρ cb represents the total cost when using the electric tricycle; t cb represents the earliest service start time at point i when using an electric tricycle; q cb Indicates the cumulative demand of customers along this path; ρ sr represents the total cost when using an unmanned vehicle; t sr represents the earliest service start time at point i when using an unmanned vehicle; Represents an array, Indicates the cumulative number of cargo holds of type m used by the route; The label of the initial starting point is Label L i Extending along the arc to point j, considering only the non-dominated loading mode at point j, we can obtain If point j adopts loading mode Label L i The extension process is as follows: Formula 11: Formula 12: Formula 13: Formula 14: Formula 15: Formula 16: Formula 17: Formula 18: Formula 19: Where mod represents the remainder function, (φ[S](L i )+1)mod 2 means taking (φ[S](L i )+1) divided by 2; c cb represents the driving cost of the electric tricycle per unit time; Indicates that the electric tricycle is in arc The driving time; represents the set of feasible arcs in the distribution network; Indicates customer point The earliest allowed delivery time; Indicates customer point service time; l jo ,w jo ,h jo Respectively represent packages Length, width and height; c sr Indicates the driving cost of the logistics unmanned vehicle per unit time; Indicates that logistics unmanned vehicles are in arc The driving time; If the time or capacity constraints of the electric tricycle are not met, it means that the electric tricycle cannot continue to deliver; If the time or capacity constraints of the driverless vehicle are not met, it means that the driverless vehicle cannot continue to deliver; If neither the electric tricycle nor the driverless vehicle can deliver, the label is not extended; For the label of n+1 points, select ρ sr and ρ cb The smaller value is taken as the cost of the feasible path; The process of using the dominance rule to exclude labels that cannot be the optimal solution is as follows: Assume that customer point i has two labels and Dominate The necessary and sufficient conditions are: Formula 20: Formula 21: Formula 22: Formula 23: Formula 24: Formula 25: Formula 26: Among them, in formula 26 Indicates the result obtained by applying the judgment method of the dominant relationship between two loading modes The corresponding unmanned vehicle loading mode controls Corresponding unmanned vehicle loading mode.
9. The path optimization algorithm considering the collaborative delivery of couriers and unmanned vehicles according to claim 8 is characterized by: In the third stage, in order to speed up the solution of column generation, two strategies are added to the labeling algorithm, namely: The first strategy is to use a bidirectional limit search, that is, based on the forward label, add a backward label extending from point n+1 until the threshold of a certain key resource is reached, and then connect the forward and backward labels to generate a complete path from point 0 to point n+1. The key resource is time and the threshold is 0.5* Indicates customer point The latest allowed delivery time; The second strategy is to use ng path relaxation to dynamically expand the ng point set in an iterative method. During the iteration process, regardless of whether the ng loop is satisfied, the starting point of the loop with a length of 2 is added to the ng point set.
10. The path optimization algorithm considering the coordinated delivery of couriers and unmanned vehicles according to claim 9 is characterized by: In the third stage, in the branch-price-cut algorithm, a parallel minimum cost insertion heuristic algorithm is used to search for the initial column of the main problem constrained at the root node of the tree, and for the columns of other nodes, the existing columns are copied from the parent node, and all columns that do not meet the branch constraints are deleted; The initial upper bound of the problem is obtained by using optimization software at the root node to solve the integer programming model Equation 6-Equation 8 of the set partition consisting of the columns generated by the column generation algorithm; For branching and searching strategies, the flow The arc closest to 0.5 is used as the branch variable, and two child nodes are created by setting this branch variable to 0 or 1; In a search tree, when there are multiple nodes to choose from, the best-first strategy is adopted, that is, the node with the smallest lower bound is selected for exploration.
Citation Information
Patent Citations
Unmanned vehicle distribution path planning method
CN111860991A
Cooperative distribution path optimization method based on branch pricing cutting algorithm
CN114037180A
Marine container booking decision robust optimization model considering order uncertainty and optimization solving method thereof
CN116307063A
Logistics distribution vehicle path optimization algorithm considering concentration ratio of unloading points
CN117829711A
Cited By
Logistics path collaborative optimization method and system
CN121998212A