Multi-scene vehicle scheduling optimization algorithm based on parallel evolution framework
Through the parallel evolution framework and Knee point adaptive crossover mechanism, multi-scene vehicle path planning is optimized, and the problems of local optimization and computational complexity in multi-scene multi-objective vehicle path planning are solved, achieving efficient optimization effects in multiple scenarios .
Patent Information
- Application Number
- CN202411218840.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-02
- Publication Date
- 2024-12-31
AI Technical Summary
The existing multi-scene multi-objective vehicle path planning methods are prone to obtain local optimal solutions when the scenes are large, and the calculation time and complexity are too high.
Using a multi-scene vehicle scheduling optimization algorithm based on the parallel evolution framework, it is improved by the non-dominant sorting genetic algorithm and the KnEA algorithm, combined with the adaptive cross-section mechanism of Knee points and migration solutions, dynamically adjust the cross operator to optimize the population number and optimize the population number proportion matrix. , find a collection of trade-off routes that are effective in multiple scenarios.
The efficiency and quality of multi-scene vehicle scheduling optimization algorithm is significantly improved, and a set of solutions that optimize and balance in multiple scenarios are provided, suitable for multi-objective optimization problems.
Smart Images

Figure CN119228017A_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of vehicle dispatch path planning, and specifically relates to a multi-scenario vehicle dispatch optimization algorithm based on a parallel evolution framework. Background Art
[0002] The goal of the vehicle routing problem (CVRP) with vehicle capacity constraints is to design several vehicle routes to meet the needs of all customers at the lowest transportation cost while ensuring that the load of each vehicle does not exceed its capacity limit. It usually consists of a distribution center and several customer points. Each customer has a different amount of cargo demand, and the customer points are not arranged linearly. The distribution center distributes according to the cargo demand of the customer points. Under certain constraints, the optimization algorithm provides flexible distribution solutions to meet the needs of all customers, usually achieving the shortest distribution distance, minimum distribution cost, and shortest distribution time.
[0003] The multi-scenario multi-objective optimization problem is a concept that has emerged in the past two years. The main difference between multi-task modeling and multi-scenario modeling is that multi-task modeling solves different tasks in the same scenario, while multi-scenario modeling solves the same task in different scenarios. The multi-scenario multi-objective vehicle routing problem (MSCVRP) is an extension of the traditional CVRP problem. It considers the delivery situation in different real-world scenarios and minimizes the objective functions such as vehicle delivery time and cost while meeting the delivery requirements.
[0004] The core of MSCVRP mainly includes two parts. First, determine the most suitable delivery route for each scenario, that is, minimize the objective functions such as delivery distance and total cost under the premise of meeting the delivery requirements; second, find a compromise delivery route in all scenarios to reduce the impact of scenario changes on the optimization objectives. At present, there are two main methods for solving multi-scenario multi-objective optimization problems. One is the aggregation method, whose main idea is to transform the multi-scenario optimization problem into a multi-objective problem and solve it using a multi-objective evolutionary algorithm. When the differences between scenarios are large, this method will find that the final solution is a local optimal solution, which is not the true optimal solution for the multi-scenario optimization problem. The other method is the scenario-oriented method. The main idea is to first obtain the optimal solution set in each scenario, which is defined as the non-dominated solution of its scenario. Its disadvantage is that the calculation time and complexity are too high. Summary of the invention
[0005] In view of the above problems, the purpose of the present invention is to provide an optimization method for the established multi-scenario multi-objective vehicle routing model with capacity constraints, and find out the compromise delivery route set (PCOS) that achieves good results in multiple scenarios; at the same time, by calculating the distance between the Knee point generated after the three-population crossover operator optimizes the population and the migration solution to the extreme value line, the update of the optimized population quantity ratio matrix is realized, thereby dynamically adjusting the quantity of each operator optimized population, and a multi-scenario vehicle scheduling optimization algorithm based on a parallel evolution framework can significantly improve the quality of PCOS.
[0006] In order to achieve the above object, the present invention adopts the following technical solutions:
[0007] A control method for a multi-scenario vehicle scheduling optimization algorithm based on a parallel evolutionary framework, which is used to optimize a vehicle routing problem, comprises the following steps:
[0008] Step S1: construct a multi-scenario vehicle path planning model;
[0009] Step S2: construct a multi-scenario vehicle scheduling optimization algorithm framework based on a parallel evolution framework;
[0010] Step S3: Design an adaptive crossover mechanism for the migration solution and the knee point.
[0011] Preferably, the step S1 builds a multi-scenario vehicle path planning model based on model assumptions, model variable definitions and mathematical models; specifically includes the following steps:
[0012] Step S11: Model Assumptions
[0013] Step S111: It is assumed that there is only one distribution center, and each vehicle starts from the distribution center and returns to the distribution center after completing the delivery task;
[0014] Step S112: setting each vehicle to have the same type, the same loading volume, and the same type of goods required by the customer point;
[0015] Step S113: setting the vehicle not to be overloaded during delivery and the cargo demand of each customer point not to exceed the maximum cargo capacity of the vehicle;
[0016] Step S114: Assume that the location information and cargo demand of all customer points are known, and each customer point can only be delivered by one vehicle;
[0017] Step S115: setting that the vehicle cannot pick up and deliver goods at the same time, and the weight of the vehicle's goods changes monotonically;
[0018] Step S116: Since the delivery conditions of vehicles on weekdays and weekends are different, weekdays and weekends can be defined as two different delivery scenarios, with weekdays defined as scenario 1 and weekends defined as scenario 2;
[0019] Step 12: Model variable definition: define the variables and related parameters in the MSCVRP model as follows:
[0020] i, j, h: node index;
[0021] k: vehicle index;
[0022] 0: distribution center;
[0023] x ijk : Decision variable, if vehicle k passes through arc (i, j) in the optimal solution, i≠j, then its value is 1, otherwise it is 0;
[0024] d ij : represents the distance from customer point i to customer point j;
[0025] μ ij : auxiliary variables of MTZ;
[0026] V: the set of all nodes {0, 1, 2...n};
[0027] A: the set of all connected arcs (i, j);
[0028] K: the set of all vehicles
[0029] C: The set of all customer points {1, 2, ...n}
[0030] q i : The demand of the i-th customer point
[0031] Q: Full load of each vehicle
[0032] W f : Detour coefficient f∈{1, 2} in different scenarios
[0033] L f :Vehicle maintenance and driver labor unit price f∈{1, 2} in different scenarios
[0034] TD: The total distance traveled by vehicles delivering to all customers
[0035] c: Fuel cost per unit distance
[0036] u k : Total number of delivery vehicles used
[0037] Tp jk : The sum of the cargo capacity constraints violated by vehicle k when performing the delivery task from customer point j to customer point j
[0038] q ijk : The sum of the cargo quantities from customer point i to customer point j that violate the cargo capacity constraint
[0039] v ijk1 : Whether the path from customer point i to customer point j violates the cargo capacity constraint v ijk1 ∈{0,1}
[0040] v ijk2 :If v ijk1 =1, the number of customers violating the cargo capacity constraint on the path from customer point i to customer point j
[0041] W fij : The detour coefficient f∈{1, 2} from customer point i to customer point j in scenario f
[0042] s1: Weekday scenario
[0043] s2: Weekend scene
[0044] P f :All customer points in each scenario are defined as the population f∈{1, 2} in the scenario
[0045] Step 13: Mathematical model establishment
[0046] Step 131: Establish the objective function model:
[0047] 1) Vehicle fuel consumption cost f1
[0048]
[0049] f1=TD·c (2)
[0050] Where TD represents the total distance traveled by all vehicles delivering to customers, f∈{1, 2}, and W 1ij , W 2ij The detour coefficients from customer point i to customer point j for two different scenarios, weekdays and weekends, respectively, x ijk represents the decision variable, d ij represents the distance from customer point i to customer point j, and c represents the fuel cost per unit distance
[0051] 2) Vehicle maintenance and driver labor costs f2
[0052]
[0053] Among them, f∈{1, 2}, L1 and L2 correspond to the vehicle maintenance and driver labor unit prices in two different scenarios, weekdays and weekends, respectively, and u k Indicates the total number of delivery vehicles used
[0054] 3) Penalty cost f3
[0055] Tp ijk =q ijk +v ijk1 +v ijk2 (4)
[0056]
[0057] Among them, Tp jk represents the sum of the cargo capacity constraints violated by vehicle k when performing the delivery task from customer point j to customer point j, q ijk represents the sum of the cargo capacity constraints violated from customer point i to customer point j, v ijk1 Indicates whether the path from customer point i to customer point j violates the cargo capacity constraint, v ijk1 ∈{0, 1}, 0 means that this path does not violate the capacity constraint, 1 means that this path violates the capacity constraint; v ijk2 If v ijk1 =1, the number of customers violating the cargo capacity constraint on this route, P e represents the capacity constraint penalty coefficient
[0058] 4) Carbon emission function f4
[0059] C ijk =ρ0+(ρ * -ρ0)r ijk (6)
[0060]
[0061] Among them, C ijk represents the carbon emissions of the kth vehicle from customer i to customer j, ρ0 represents the carbon emissions of the vehicle when it is unloaded, and ρ * Expressing the carbon emissions of a vehicle when fully loaded, Q ijk represents the real-time cargo volume from customer i to j from the kth vehicle, Q represents the full load capacity of the vehicle, and r ijk represents the rate of change coefficient of cargo volume from customer i to customer j, f∈{1, 2}, W 1ij , W 2ij The detour coefficients from customer point i to customer point j for two different scenarios, weekdays and weekends, d ij It represents the distance from customer point i to j, which can truly reflect the positive proportional relationship between carbon emissions, cargo volume and distance, which is in line with the actual situation.
[0062] Integrate the above cost functions to establish the objective function model
[0063] O1=f1+f2+f3 (9)
[0064] O2=f4 (10).
[0065] Preferably, the step S13 further comprises step 132: constraint condition:
[0066]
[0067] Constraint (11) means that each customer point will only be delivered once and can only be served by one vehicle.
[0068]
[0069] Constraint (12) means that all vehicles start from the warehouse and return to the warehouse when performing tasks.
[0070]
[0071] Constraint (13) indicates that the delivery vehicle cannot be replaced midway
[0072]
[0073] Constraint (14) indicates that the traffic volume entering and leaving the customer point is equal.
[0074]
[0075] Constraint (15) means eliminating all possible sub-loops in the delivery route.
[0076]
[0077] Constraint (16) represents a Binary (0-1) constraint, 1 means vehicle k passes through arc (i, j), 0 means it does not pass through
[0078]
[0079] Constraint (17) indicates that the vehicle capacity is not overloaded when the vehicle performs the delivery task.
[0080] Preferably, step S2 comprises the following steps:
[0081] Step S21: Initialize the population, set the parallel evolutionary optimization algorithm framework encoding mode, and set the maximum number of population fitness evaluations; the number of customer points in each scenario is set to n, the total number of planned delivery vehicles is K, the lower limit of the decision variable is 1, and the upper limit is n+K; there are a total of n+K values, 1...n+K are randomly arranged in a shuffled order, (n, n+K)K numbers are randomly inserted into the randomly arranged 1...n sequence to form a number sequence with a dimension of n+K, and the random numbers with numbers on both sides greater than n and the middle number of 1...n are taken as a route, and all delivery routes are listed in this way;
[0082] Step S22: Evaluate the population in each scenario; for each population, calculate the objective function value and constraint violation degree of its individuals in the respective scenarios, where the individuals of population P1 in scenario s1 are evaluated in scenario s1, and the individuals of population P2 in scenario s2 are evaluated in scenario s2, P1obj represents the target value of population P1 in s1, and P2obj represents the target value of population P2 in s2;
[0083] Step S23: the population is evaluated in other scenarios; the individuals of the population P1 in the scenario s1 are evaluated in the scenario s2, and the individuals of the population P2 in the scenario s2 are evaluated in the scenario s1, P1Scen2obj represents the target value of the population P1 in s2, and P2Scen1obj represents the target value of the population P2 in s1;
[0084] Step S24: non-dominated sorting; applying the non-dominated sorting algorithm (NDSort) to sort P1 and P2 according to the objective function value and the constraint violation degree to form a non-dominated layer (Front) and a maximum non-dominated layer (MaxFNo);
[0085] Step S25: Knee point identification strategy; using the evaluation indicators of steps S23 and S25, the domain width ratio r, the proportion of knee points to all solutions t, and the frontier surface F of the non-dominated layer i The Knee point ratio threshold rate is used to identify the Knee points in each non-dominated layer frontier surface, and the extreme value line H of each scene is output. Since each scene in this paper has two optimization objectives, the extreme value line is defined by the extreme value solutions of the two optimization objectives, one of which has the largest value on O1 and the other has the largest value on O2. The two solutions are connected to form an extreme value line, which can be expressed as ax+by+c=0. The specific values of parameters a, b, and c are determined by the two extreme value solutions on the Pareto frontier.
[0086] Step S26: Knee point update strategy: update the Knee points and population P selected from scenes s1 and s2 using environment selection;
[0087] Step S27: Knee point interaction strategy: determine the Knee points that perform well in various scenarios and realize the interaction of the Knee points;
[0088] Step S28: forming a compromise delivery route solution set (PCOSs); after the algorithm iterates to the maximum number of population fitness evaluations, based on the interactive knee points and the extreme line information of each scenario, a public compromise solution (PCOSs) that achieves the best compromise balance between various scenarios or decision makers is obtained.
[0089] Preferably, the knee point interaction strategy of step S27 has the following specific process:
[0090] Step S271: The knee point sets of the two scenes are defined as Knee1 and Knee2 respectively, and the extreme value lines of the two scenes are defined as H1 and H2 respectively;
[0091] Step S272: determine the Knee points that perform well in all scenarios; when Knee1 and Knee2 are not empty, calculate the signed distance D(B, H1) of each individual in Knee2 relative to the extreme line H1 of scene s1, and the signed distance D(A, H2) of each individual in Knee1 relative to the extreme line H2 of scene s2;
[0092] The formula for calculating the distance index is as follows:
[0093]
[0094] Among them, H1 and H2 represent the extreme lines of scene s1 and scene s2 respectively, (a1, b1) and (a2, b2) represent the normal vectors of extreme lines H1 and H2 respectively, A and B represent a point in Knee1 and Knee2 respectively, (x A ,y A )、(x B ,y B ) represent the coordinate values of A and B in the target space respectively; when D(B, H1)>0, it means that the corresponding Knee2 point is located below the extreme value line of scene s1; when D(A, H2)>0, it means that the corresponding Knee1 point is located below the extreme value line of scene s2;
[0095] Step S273: Select Knee points that are conducive to cross-scene interaction; define all Knee2 points below the extreme value line of scene s1 as P1new; define Knee1 points below the extreme value line of scene s2 as P2new, and use P1new and P2new as candidate solutions for cross-scene interaction;
[0096] Step S274: Evaluate P1new and P2new in the corresponding scenarios; re-evaluate the performance of P1new and P2new in the scenarios s1 and s2 respectively to ensure that the new evaluation data reflects their performance in the corresponding scenarios;
[0097] Step S275: forming a set of common compromise optimal solutions (PCOSs); merging P1new and P2new with P1 and P2 respectively to form new P1 and P2; merging the new P1 and P2 as a set of compromise optimal solutions (PCOSs), performing environmental selection update on the optimal solution set, the new P1 and P2, and keeping their number n;
[0098] Step S276: extract the decision variable set of the new P1, obtain its objective function value set in the scene s1, and then evaluate the decision variable set of P1 in the scene s2 to obtain the objective function value set P1Scen2obj of P1 in the scene s2, thereby realizing cross-scene performance evaluation; similarly, for P2, perform the same process to obtain the objective function value set P2Scen1obj of P2 in the scene s1;
[0099] Step S277: Construct a PopT solution set; put the decision variables, constraints, target values, PCOSs sets, P1Scen2obj, and P2Scen1obj of the population in each scenario into the PopT solution set, and call it when drawing the scene target space diagram.
[0100] Preferably, step S3 comprises the following steps:
[0101] Step S31: In the MSCVRP of this paper, the same multiple crossover operators are placed in each scene. Compared with the traditional single crossover method, the adaptive crossover mechanism can significantly improve the quality of PCOS;
[0102] Step S32: Initialize the operator optimization population quantity ratio matrices M1 and M2 of the two scenarios respectively; M1 and M2 determine the number of optimized populations for each crossover operator, and divide each population into three parts, represented as P1{k}, P2{k}, k={1, 2, 3}, to form an adaptive crossover mechanism based on multiple crossover operator optimization population quantity ratio matrices;
[0103] Step S33: Update the operator optimization population quantity ratio matrix M1, M2; based on the multi-scenario vehicle scheduling optimization algorithm framework of the second stage, calculate the distance between the Knee point generated after each operator optimization population and the migration solution to the extreme value line, and realize the update of the optimization population quantity ratio matrix, so as to dynamically adjust the quantity of each operator optimization population and improve the population optimization effect;
[0104] Step S34: Output the population after adaptive cross optimization and compromise solution PCOS.
[0105] Preferably, the step S31 designs three crossover operators, which respectively include the following steps:
[0106] Step S311: The first crossover operator is sequential crossover (OX), which selects a partial subsequence of a parent chromosome from two parent individuals and maintains its order, and supplements the remaining elements from the other parent in order to generate a child with the characteristics of both parents, thereby optimizing the order problem of the solution;
[0107] Step S312: The second crossover operator is defined as the O1 operator. When generating offspring, this operator comprehensively considers the distance factor between customer points in the parent solution and the maximum capacity constraint of the vehicle, and generates a better offspring solution that meets the constraints on the basis of retaining the shorter route segments in the parent solution. During the crossover operation, the algorithm evaluates the distance of each route segment in the parent solution, and selects the best or better route segment for combination based on the evaluation information.
[0108] Step S313: The third crossover operator is defined as the O2 operator. The specific idea is to first randomly select two routes from two parent generations, randomly select a breakpoint in each route, and divide the route into two parts; the part starting from the distribution center is called the route head, and the part returning to the distribution center is called the route tail; the two routes will be divided into four parts: the head of route one, the tail of route one, the head of route two, and the tail of route two; then, the head of route one and the tail of route two are combined into a new route, and the head of route two and the tail of route one are combined into another new route;
[0109] Preferably, the step S33 updates the operator optimization population quantity ratio matrix, comprising the following steps:
[0110] Step S331: Define the knee point generated by P1(k) as K 1-k , the extreme value line is defined as H 1-k ; The knee point generated by P2{k} is defined as K 2-k , the extreme value line is defined as H 2-k ; Using H 2-k From K 1-k Select P 2-k new, using H 1-k From K 2-k Select P 1-k new; for example, using H 2-1 From K 1-1 Select P 2-1 new, using H 1-1 From K 2-1 Select P 1-1 new;
[0111] Step S332: Normalize the extreme value lines corresponding to the three crossover operators in each scene; select the hyperplane farthest from the far point among the extreme value lines generated by the three crossover operators in scene 1 and scene 2, respectively, and define it as H3=max{H 1-k}、E4=max{H 2-k};
[0112] Step S333: Calculate the distance between the Knee point generated after each operator optimizes the population and the migration solution to the extreme value line; define S 1-k =[K 1-k, P 1-k new]、S 2-k =[K 2-k , P 2-k new], calculate S 1-k Signed distance D to extreme line H3 1-k , S 2-k Signed distance D to extreme line H4 2-k , respectively, as the evaluation index of the optimization effect of the three crossover operators in scenario 1 and scenario 2, D 1-k With D 2-k The larger it is, the better the effect of the corresponding operator in optimizing the population is;
[0113] D 1-k , D 2-k The calculation formula is as follows:
[0114]
[0115] In the above formula, (a3, b3) and (a4, b4) represent the normal vectors of the extreme value lines H3 and H4 respectively. Respectively represent S 1-k , S 2-k The coordinate value in the target space; when D 1-k >0, indicating S 1-k Located below the extreme value line H3; when D 2-k >0, indicating S 2-k Located below the extreme value line H4;
[0116] Step S334: According to D 1-k , D 2-k Update M1 and M2 respectively; Update M1 and M2 according to equations (26)-(29), and normalize them to ensure that the sum of the elements in M1 and M2 is 1;
[0117] W S1 =D 1-1 +D 1-2 +D 1-3 (26)
[0118] W S2 =D 2-1 +D 2-2 +D 2-3 (27)
[0119]
[0120] Step S335: handle the special cases of M1 and M2; when one of the elements in M1 and M2 is 0, set it to 0.1 and subtract 0.1 from the largest element; when two elements are 0, set them to 0.1 respectively and the largest element is 0.8.
[0121] Compared with the prior art, the present invention has the following beneficial effects:
[0122] (1) The present invention adopts the non-dominated sorting genetic algorithm NSGAII and the KnEA algorithm as the basic framework and improves them so as to facilitate their application in optimization problems in multiple scenarios. The improved interactive selection mechanism of the present invention allows the algorithm to consider not only the optimization target in a single scenario but also the target performance in multiple scenarios in the process of population evolution.
[0123] (2) By identifying the knee points in each scenario, that is, the delivery routes that are good compromises in the objective function space, the present invention can evaluate the performance of these solutions in other scenarios and select those individuals with good performance in multiple scenarios as potential compromise solutions. These compromise solutions are then integrated into a set of candidate solutions to form a set of compromise solutions (PCOSs), which provides a set of solutions that are optimized and balanced in multiple scenarios for the final decision.
[0124] During this process, the algorithm can adjust the sensitivity of knee point recognition and the preference strategy applied in the interactive selection process through parameter settings, thereby ensuring the flexibility of the algorithm and its adaptability in changing application environments.
[0125] (3) In order to solve the limitation of single crossover operator optimization, the present invention designs an adaptive crossover mechanism for migration solutions and knee points on the multi-scenario vehicle scheduling optimization algorithm framework of the parallel evolution framework.
[0126] (4) The present invention designs three population crossover operators, and uses the distance between the knee point generated after each operator optimizes the population and the migration solution to the extreme value line to update the optimized population quantity ratio matrix, thereby dynamically adjusting the quantity of each operator optimized population, which can significantly improve the quality of PCOS.
[0127] (5) The present invention can be widely applied to multi-objective optimization problems in many fields such as industrial design, financial modeling, resource management, etc. Through the present invention, users can obtain an efficient, reliable optimization tool that can reflect the needs of multiple scenarios.
[0128] In summary, based on the non-dominated sorting genetic algorithm (NSGAII), the present invention combines the KnEA algorithm, through interactive population dynamic evolution and knee point evaluation strategy, and proposes a multi-scenario vehicle scheduling optimization algorithm based on a parallel evolution framework. The established multi-scenario multi-objective vehicle path model with capacity constraints is optimized, and a compromise distribution route set (PCOS) that achieves good results in multiple scenarios is found. In order to solve the limitations of single crossover operator optimization, an adaptive crossover mechanism for migration solutions and knee points is designed on the multi-scenario vehicle scheduling optimization algorithm framework of the parallel evolution framework. Three population crossover operators are designed, and the distance between the knee point generated after calculating the optimized population of each operator and the migration solution to the extreme value line is used to realize the update of the optimized population quantity ratio matrix, thereby dynamically adjusting the quantity of each operator optimized population, which can significantly improve the quality of PCOS. BRIEF DESCRIPTION OF THE DRAWINGS
[0129] Figure 1 A block diagram of a multi-scenario vehicle scheduling optimization algorithm based on a parallel evolution framework provided by an embodiment of the present invention;
[0130] Figure 2 A block diagram of an adaptive crossover mechanism for a multi-scenario vehicle scheduling optimization algorithm based on a parallel evolutionary framework is provided for an embodiment of the present invention. DETAILED DESCRIPTION
[0131] The technical solutions in the embodiments of the present invention will be described clearly and completely below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, rather than all the embodiments.
[0132] like Figure 1 As shown, a control method of a multi-scenario vehicle scheduling optimization algorithm based on a parallel evolution framework disclosed in the present invention is used to optimize the vehicle path problem, including the following steps:
[0133] Step S1: Building a multi-scenario vehicle path planning model based on model assumptions, model variable definitions and mathematical models; the specific steps are as follows:
[0134] Step S11: Model Assumptions
[0135] Step S111: It is assumed that there is only one distribution center, and each vehicle starts from the distribution center and returns to the distribution center after completing the delivery task;
[0136] Step S112: setting each vehicle to have the same type, the same loading volume, and the same type of goods required by the customer point;
[0137] Step S113: setting the vehicle not to be overloaded during delivery and the cargo demand of each customer point not to exceed the maximum cargo capacity of the vehicle;
[0138] Step S114: Assume that the location information and cargo demand of all customer points are known, and each customer point can only be delivered by one vehicle;
[0139] Step S115: setting that the vehicle cannot pick up and deliver goods at the same time, and the weight of the vehicle's goods changes monotonically;
[0140] Step S116: Since the delivery conditions of vehicles on weekdays and weekends are different, weekdays and weekends can be defined as two different delivery scenarios, with weekdays defined as scenario 1 and weekends defined as scenario 2;
[0141] Step 12: Model variable definition: define the variables and related parameters in the MSCVRP model as follows:
[0142] i, j, h: node index;
[0143] k: vehicle index;
[0144] 0: distribution center;
[0145] x ijk : Decision variable, if vehicle k passes through arc (i, j) in the optimal solution, i≠j, then its value is 1, otherwise it is 0;
[0146] d ij : represents the distance from customer point i to customer point j;
[0147] μ ij : auxiliary variables of MTZ;
[0148] V: the set of all nodes {0, 1, 2...n};
[0149] A: the set of all connected arcs (i, j);
[0150] K: the set of all vehicles
[0151] C: The set of all customer points {1, 2, ...n}
[0152] q i :Demand at customer point i
[0153] Q: Full load of each vehicle
[0154] W f : Detour coefficient f∈{1, 2} in different scenarios
[0155] L f :Vehicle maintenance and driver labor unit price f∈{1, 2} in different scenarios
[0156] TD: The total distance traveled by vehicles delivering to all customers
[0157] c: Fuel cost per unit distance
[0158] u k : Total number of delivery vehicles used
[0159] Tp jk : The sum of the cargo capacity constraints violated by vehicle k when performing the delivery task from customer point j to customer point j
[0160] q ijk : The sum of the cargo quantities from customer point i to customer point j that violate the cargo capacity constraint
[0161] v ijk1 : Whether the path from customer point i to customer point j violates the cargo capacity constraint v ijk1 ∈{0,1}
[0162] v ijk2 :If v ijk1 =1, the number of customers violating the cargo capacity constraint on the path from customer point i to customer point j
[0163] W fij : The detour coefficient f∈{1, 2} from customer point i to customer point j in the fth scenario
[0164] s1: Weekday scenario
[0165] s2: Weekend scene
[0166] P f :All customer points in each scenario are defined as the population f∈{1, 2} in the scenario
[0167] Step 13: Mathematical model establishment
[0168] Step 131: Establish the objective function model:
[0169] 1) Vehicle fuel consumption cost f1
[0170]
[0171] f1=TD·c (2)
[0172] Where TD represents the total distance traveled by all vehicles delivering to customers, f∈{1, 2}, and W 1ij , W 2ij The detour coefficients from customer point i to customer point j for two different scenarios, weekdays and weekends, respectively, x ijk represents the decision variable, d ij represents the distance from customer point i to customer point j, and c represents the fuel cost per unit distance
[0173] 2) Vehicle maintenance and driver labor costs f2
[0174]
[0175] Among them, f∈{1,2}, L1 and L2 correspond to the vehicle maintenance and driver labor unit prices in two different scenarios, weekdays and weekends, respectively, and u k Indicates the total number of delivery vehicles used
[0176] 3) Penalty cost f3
[0177] Tp ijk =q ijk +v ijk1 +v ijk2 (4)
[0178]
[0179] Among them, Tp jk represents the sum of the cargo capacity constraints violated by vehicle k when performing the delivery task from customer point j to customer point j, q ijk represents the sum of the cargo capacity constraints violated from customer point i to customer point j, v ijk1 Indicates whether the path from customer point i to customer point j violates the cargo capacity constraint, v ijk1 ∈{0, 1}, 0 means that this path does not violate the capacity constraint, 1 means that this path violates the capacity constraint; v ijk2 If v ijk1 =1, the number of customers violating the cargo capacity constraint on this route, P e represents the capacity constraint penalty coefficient
[0180] 4) Carbon emission function f4
[0181] C ijk =ρ0+(ρ * -ρ0)r ijk (6)
[0182]
[0183] Among them, C ijk represents the carbon emissions of the kth vehicle from customer i to customer j, ρ0 represents the carbon emissions of the vehicle when it is unloaded, and ρ * Expressing the carbon emissions of a vehicle when fully loaded, Q ijk represents the real-time cargo volume from customer i to j from the kth vehicle, Q represents the full load capacity of the vehicle, and r ijk represents the rate of change coefficient of cargo volume from customer i to customer j, f∈{1, 2}, W 1ij , W 2ijThe detour coefficients from customer point i to customer point j for two different scenarios, weekdays and weekends, d ij It represents the distance from customer point i to j, which can truly reflect the positive proportional relationship between carbon emissions, cargo volume and distance, which is in line with the actual situation.
[0184] Integrate the above cost functions to establish the objective function model
[0185] O1=f1+f2+f3 (9)
[0186] O2=f4 (10).
[0187] Preferably, the step S13 further comprises step 132: constraint condition:
[0188]
[0189] Constraint (11) means that each customer point will only be delivered once and can only be served by one vehicle.
[0190]
[0191] Constraint (12) means that all vehicles start from the warehouse and return to the warehouse when performing tasks.
[0192]
[0193] Constraint (13) indicates that the delivery vehicle cannot be replaced midway
[0194]
[0195] Constraint (14) indicates that the traffic volume entering and leaving the customer point is equal.
[0196]
[0197] Constraint (15) means eliminating all possible sub-loops in the delivery route.
[0198]
[0199] Constraint (16) represents a Binary (0-1) constraint, 1 means vehicle k passes through arc (i, j), 0 means it does not pass through
[0200]
[0201] Constraint (17) indicates that the vehicle capacity is not overloaded when the vehicle performs the delivery task.
[0202] Step S2: Construct a multi-scenario vehicle scheduling optimization algorithm framework based on a parallel evolution framework; the specific steps are as follows:
[0203] Step S21: Initialize the population, set the parallel evolutionary optimization algorithm framework encoding mode, and set the maximum number of population fitness evaluations; the number of customer points in each scenario is set to n, the total number of planned delivery vehicles is K, the lower limit of the decision variable is 1, and the upper limit is n+K; there are a total of n+K values, 1...n+K are randomly arranged in a shuffled order, (n, n+K)K numbers are randomly inserted into the randomly arranged 1...n sequence to form a number sequence with a dimension of n+K, and the random numbers with numbers on both sides greater than n and the middle number of 1...n are taken as a route, and all delivery routes are listed in this way;
[0204] Step S22: Evaluate the population in each scenario; for each population, calculate the objective function value and constraint violation degree of its individuals in the respective scenarios, where the individuals of population P1 in scenario s1 are evaluated in scenario s1, and the individuals of population P2 in scenario s2 are evaluated in scenario s2, P1obj represents the target value of population P1 in s1, and P2obj represents the target value of population P2 in s2;
[0205] Step S23: the population is evaluated in other scenarios; the individuals of the population P1 in the scenario s1 are evaluated in the scenario s2, and the individuals of the population P2 in the scenario s2 are evaluated in the scenario s1, P1Scen2obj represents the target value of the population P1 in s2, and P2Scen1obj represents the target value of the population P2 in s1;
[0206] Step S24: non-dominated sorting; applying the non-dominated sorting algorithm (NOSort) to sort P1 and P2 according to the objective function value and the constraint violation degree to form a non-dominated layer (Front) and a maximum non-dominated layer (MaxFNo);
[0207] Step S25: Knee point identification strategy; using the evaluation indicators of steps S23 and S25, the domain width ratio r, the proportion of knee points to all solutions t, and the frontier surface F of the non-dominated layer i The Knee point ratio threshold rate is used to identify the Knee points in each non-dominated layer frontier surface, and the extreme value line H of each scene is output. Since each scene in this paper has two optimization objectives, the extreme value line is defined by the extreme value solutions of the two optimization objectives, one of which has the largest value on O1 and the other has the largest value on O2. The two solutions are connected to form an extreme value line, which can be expressed as ax+by+c=0. The specific values of parameters a, b, and c are determined by the two extreme value solutions on the Pareto frontier.
[0208] Step S26: Knee point update strategy: using environment selection to update the Knee points and population P selected from scenes s1 and s2;
[0209] Step S27: Knee point interaction strategy: determine the Knee points that perform well in various scenarios and implement the interaction of the Knee points; the specific process is as follows:
[0210] Step S271: The knee point sets of the two scenes are defined as Knee1 and Knee2 respectively, and the extreme value lines of the two scenes are defined as H1 and H2 respectively;
[0211] Step S272: determine the Knee points that perform well in all scenarios; when Knee1 and Knee2 are not empty, calculate the signed distance D(B, H1) of each individual in Knee2 relative to the extreme line H1 of scene s1, and the signed distance D(A, H2) of each individual in Knee1 relative to the extreme line H2 of scene s2;
[0212] The formula for calculating the distance index is as follows:
[0213]
[0214] Among them, H1 and H2 represent the extreme lines of scene s1 and scene s2 respectively, (a1, b1) and (a2, b2) represent the normal vectors of extreme lines H1 and H2 respectively, A and B represent a point in Knee1 and Knee2 respectively, (x A ,y A )、(x B ,y B ) represent the coordinate values of A and B in the target space respectively; when D(B, H1)>0, it means that the corresponding Knee2 point is located below the extreme value line of scene s1; when D(A, H2)>0, it means that the corresponding Knecc1 point is located below the extreme value line of scene s2;
[0215] Step S273: Select Knee points that are conducive to cross-scene interaction; define all Knee2 points located below the extreme value line of scene s1 as P1new; define Knee1 points located below the extreme value line of scene s2 as P2new, and use P1new and P2new as candidate solutions for cross-scene interaction;
[0216] Step S274: Evaluate P1new and P2new in the corresponding scenarios; re-evaluate the performance of P1new and P2new in the scenarios s1 and s2 respectively to ensure that the new evaluation data reflects their performance in the corresponding scenarios;
[0217] Step S275: forming a set of common compromise optimal solutions (PCOSs); merging P1new and P2new with P1 and P2 respectively to form new P1 and P2; merging the new P1 and P2 as a set of compromise optimal solutions (PCOSs), performing environmental selection update on the optimal solution set, the new P1 and P2, and keeping their number n;
[0218] Step S276: extract the decision variable set of the new P1, obtain its objective function value set in the scene s1, and then evaluate the decision variable set of P1 in the scene s2 to obtain the objective function value set P1Scen2obj of P1 in the scene s2, thereby realizing cross-scene performance evaluation; similarly, for P2, perform the same process to obtain the objective function value set P2Scen1obj of P2 in the scene s1;
[0219] Step S277: Construct a PopT solution set; put the decision variables, constraints, target values, PCOSs sets, P1Scen2obj, and P2Scen1obj of the population in each scenario into the PopT solution set, and call it when drawing the scene target space diagram.
[0220] Step S28: forming a compromise delivery route solution set (PCOSs); after the algorithm iterates to the maximum number of population fitness evaluations, based on the interactive knee points and the extreme line information of each scenario, a public compromise solution (PCOSs) that achieves the best compromise balance between various scenarios or decision makers is obtained.
[0221] Step S3: Design an adaptive crossover mechanism for the migration solution and the knee point. The specific steps are as follows:
[0222] Step S31: In the MSCVRP of this paper, the same multiple crossover operators are put into each scene respectively. Compared with the traditional single crossover method, the adaptive crossover mechanism can significantly improve the quality of PCOS.
[0223] In order to solve the limitation of single crossover operator optimization, step S31 designs three crossover operators, and designs an adaptive crossover mechanism for migration solutions and knee points on the multi-scenario vehicle scheduling optimization algorithm framework of the parallel evolution framework. By calculating the distance between the knee point generated by each operator of the three population crossover operators after optimizing the population and the migration solution to the extreme value line, the optimization population quantity ratio matrix is updated, thereby dynamically adjusting the quantity of each operator optimized population, which can significantly improve the quality of PCOS.
[0224] The designs of the three crossover operators include the following steps:
[0225] Step S311: The first crossover operator is sequential crossover (OX), which selects a partial subsequence of a parent chromosome from two parent individuals and maintains its order, and supplements the remaining elements from the other parent in order to generate a child with the characteristics of both parents, thereby optimizing the order problem of the solution;
[0226] Step S312: The second crossover operator is defined as the O1 operator. When generating offspring, this operator comprehensively considers the distance factor between customer points in the parent solution and the maximum capacity constraint of the vehicle, and generates a better offspring solution that meets the constraints on the basis of retaining the shorter route segments in the parent solution. During the crossover operation, the algorithm evaluates the distance of each route segment in the parent solution, and selects the best or better route segment for combination based on the evaluation information.
[0227] Step S313: The third crossover operator is defined as the O2 operator. The specific idea is to first randomly select two routes from two parent generations, randomly select a breakpoint in each route, and divide the route into two parts; the part starting from the distribution center is called the route head, and the part returning to the distribution center is called the route tail; the two routes will be divided into four parts: the head of route one, the tail of route one, the head of route two, and the tail of route two; then, the head of route one and the tail of route two are combined into a new route, and the head of route two and the tail of route one are combined into another new route.
[0228] Step S32: Initialize the operator optimization population quantity ratio matrices M1 and M2 of the two scenarios respectively; M1 and M2 determine the number of optimized populations for each crossover operator, and divide each population into three parts, represented as P1{k}, P2{k}, k={1, 2, 3}, to form an adaptive crossover mechanism based on multiple crossover operator optimization population quantity ratio matrices;
[0229] Step S33: Update the operator optimization population quantity ratio matrix M1, M2; based on the multi-scenario vehicle scheduling optimization algorithm framework of the second stage, calculate the distance between the Knee point generated after each operator optimization population and the migration solution to the extreme value line, and realize the update of the optimization population quantity ratio matrix, so as to dynamically adjust the quantity of each operator optimization population and improve the population optimization effect;
[0230] The specific steps are as follows:
[0231] Step S331: Define the knee point generated by P1{k} as K 1-k , the extreme value line is defined as H 1-k ; The knee point generated by P2{k} is defined as K 2-k , the extreme value line is defined as H 2-k ; Using H 2-k From K 1-k Select P 2-k new, using H1-k From K 2-k Select P 1-k new; for example, using H 2-1 From K 1-1 Select P 2-1 new, using H 1-1 From K 2-1 Select P 1-1 new;
[0232] Step S332: Normalize the extreme value lines corresponding to the three crossover operators in each scene; select the hyperplane farthest from the far point among the extreme value lines generated by the three crossover operators in scene 1 and scene 2, respectively, and define it as H3=max{H 1-k}、H4=max{H 2-k};
[0233] Step S333: Calculate the distance between the Knee point generated after each operator optimizes the population and the migration solution to the extreme value line; define S 1-k =[K 1-k , P 1-k new]、S 2-k =[K 2-k , P 2-k new], calculate S 1-k Signed distance D to extreme line H3 1-k , S 2-k Signed distance D to extreme line H4 2-k , respectively, as the evaluation index of the optimization effect of the three crossover operators in scenario 1 and scenario 2, D 1-k With D 2-k The larger it is, the better the effect of the corresponding operator in optimizing the population is;
[0234] D 1-k , D 2-k The calculation formula is as follows:
[0235]
[0236]
[0237] In the above formula, (a3, b3) and (a4, b4) represent the normal vectors of the extreme value lines H3 and H4 respectively. Respectively represent S 1-k , S 2-k The coordinate value in the target space; when D 1-k >0, indicating S 1-k Located below the extreme value line H3; when D 2-k >0, indicating S 2-k Located below the extreme value line H4;
[0238] Step S334: According to D 1-k , D 2-k Update M1 and M2 respectively; Update M1 and M2 according to equations (26)-(29), and normalize them to ensure that the sum of the elements in M1 and M2 is 1;
[0239] W S1 =D 1-1 +D 1-2 +D 1-3 (26)
[0240] W S2 =D 2-1 +D 2-2 +D 2-3 (27)
[0241]
[0242] Step S335: handle the special cases of M1 and M2; when one of the elements in M1 and M2 is 0, set it to 0.1 and subtract 0.1 from the largest element; when two elements are 0, set them to 0.1 respectively and the largest element is 0.8.
[0243] Step S34: Output the population after adaptive cross optimization and compromise solution PCOS.
[0244] The multi-scenario multi-objective vehicle routing problem (MSCVRP) is an extension of the traditional capacity-constrained vehicle scheduling (CVRP) problem. This embodiment takes into account the distribution conditions in different real-world scenarios, uses the non-dominated sorting genetic algorithm NSGAII and the KnEA algorithm as the basic framework, and improves them to minimize the objective functions such as vehicle delivery time and cost while meeting the distribution requirements of each scenario, so as to facilitate the application in optimization problems in multiple scenarios. Therefore, the advantages of the algorithm proposed in this embodiment are mainly reflected in the interactive selection mechanism, which allows the algorithm to comprehensively consider the target performance in multiple scenarios during the evolution of the population.
[0245] The core of the multi-scenario vehicle scheduling optimization algorithm of the parallel evolution framework adopted in this embodiment mainly includes two parts. First, the most ideal delivery route for each scenario is determined by the algorithm, that is, the objective functions such as delivery distance and total cost are minimized under the premise of meeting the delivery requirements; secondly, a compromise delivery route should be found in all scenarios to reduce the impact of scenario changes on the optimization target. In this embodiment, each compromise delivery route is defined as a solution; the route that achieves a good optimization effect in the compromise delivery route is defined as a KneeSolution, referred to as the Knee point; finally, all the selected compromise delivery routes constitute a compromise delivery route solution set (PCOS). PCOS provides decision makers with a set of solutions that optimize and balance the objectives in multiple scenarios. During the PCOS construction process, decision makers can set parameters according to actual needs to adjust the selection of delivery routes, thereby ensuring the flexibility of PCOS and its adaptability in changing application scenarios.
[0246] This embodiment updates the optimized population quantity ratio matrix by calculating the distance between the Knee point generated after optimizing the population for each operator of the three population crossover operators and the migration solution to the extreme value line, thereby dynamically adjusting the quantity of the optimized population for each operator, which can significantly improve the quality of PCOS.
[0247] By adopting the above embodiment, it can be widely applied to multi-objective optimization problems existing in many fields such as industrial design, financial modeling, resource management, etc. By implementing the present invention, users can obtain an optimization tool that is efficient, reliable and can reflect the needs of multiple scenarios.
[0248] In addition, the terms "first" and "second" are used for descriptive purposes only and should not be understood as indicating or implying relative importance or implicitly indicating the number of the indicated technical features. Therefore, the features defined as "first" and "second" may explicitly or implicitly include one or more of the features. In the description of the present invention, the meaning of "plurality" is two or more, unless otherwise clearly and specifically defined.
[0249] The above description is only a preferred specific implementation manner of the present invention, but the protection scope of the present invention is not limited thereto. Any technician familiar with the technical field can make equivalent replacements or changes according to the technical scheme and inventive concept of the present invention within the technical scope disclosed by the present invention, which should be covered by the protection scope of the present invention.
Claims
1. A control method for a multi-scenario vehicle scheduling optimization algorithm based on a parallel evolutionary framework, used to optimize vehicle routing problems, characterized in that: The steps include: Step S1: construct a multi-scenario vehicle path planning model; Step S2: construct a multi-scenario vehicle scheduling optimization algorithm framework based on a parallel evolution framework; Step S3: Design an adaptive crossover mechanism for the migration solution and the knee point.
2. According to the multi-scenario vehicle scheduling optimization algorithm based on the parallel evolution framework of claim 1, it is characterized in that: The step S1 builds a multi-scenario vehicle path planning model based on model assumptions, model variable definitions and mathematical models; specifically includes the following steps: Step S11: Model Assumptions Step S111: It is assumed that there is only one distribution center, and each vehicle starts from the distribution center and returns to the distribution center after completing the delivery task; Step S112: setting each vehicle to have the same type, the same loading volume, and the same type of goods required by the customer point; Step S113: setting the vehicle not to be overloaded during delivery and the cargo demand of each customer point not to exceed the maximum cargo capacity of the vehicle; Step S114: Assume that the location information and cargo demand of all customer points are known, and each customer point can only be delivered by one vehicle; Step S115: setting that the vehicle cannot pick up and deliver goods at the same time, and the weight of the vehicle's goods changes monotonically; Step S116: Since the delivery conditions of vehicles on weekdays and weekends are different, weekdays and weekends can be defined as two different delivery scenarios, with weekdays defined as scenario 1 and weekends defined as scenario 2; Step 12: Model variable definition. Define the variables and related parameters in the MSCVRP model as follows: i, j, h: node index; k: vehicle index; 0: distribution center; x ijk : Decision variable, if vehicle k passes through arc (i, j) in the optimal solution, i≠j, then its value is 1, otherwise it is 0; d ij : represents the distance from customer point i to customer point j; μ ij : auxiliary variables of MTZ; V: the set of all nodes {0, 1, 2...n}; A: the set of all connected arcs (i, j); K: the set of all vehicles C: The set of all customer points {1, 2, ...n} q i : The demand of the i-th customer point Q: Full load of each vehicle W f : Detour coefficient f∈{1,2} in different scenarios L f :Vehicle maintenance and driver labor unit price f∈{1, 2} in different scenarios TD: The total distance traveled by vehicles delivering to all customers c: Fuel cost per unit distance u k : Total number of delivery vehicles used Tp jk : The sum of the cargo capacity constraints violated by vehicle k when performing the delivery task from customer point j to customer point j q ijk : The sum of the cargo quantities from customer point i to customer point j that violate the cargo capacity constraint v ijk1 : Whether the path from customer point i to customer point j violates the cargo capacity constraint v ijk1 ∈{0, 1} v ijk2 :If v ijk1 =1, the number of customers violating the cargo capacity constraint on the path from customer point i to customer point j W fij : The detour coefficient f∈{1, 2} from customer point i to customer point j in scenario f s1: Weekday scenario s2: Weekend scene P f :All customer points in each scenario are defined as the population f∈{1, 2} in the scenario Step 13: Mathematical model establishment Step 131: Establish the objective function model: 1) Vehicle fuel consumption cost f1 f1=TD·c (2) Where TD represents the total distance traveled by all vehicles delivering to customers, f∈{1, 2}, and W 1ij , W 2ij The detour coefficients from customer point i to customer point j for two different scenarios, weekdays and weekends, respectively, x ijk represents the decision variable, d ij represents the distance from customer point i to customer point j, and represents the fuel cost per unit distance 2) Vehicle maintenance and driver labor costs f2 Among them, f∈{1,2}, L1 and L2 correspond to the vehicle maintenance and driver labor unit prices in two different scenarios, weekdays and weekends, respectively, and u k Indicates the total number of delivery vehicles used 3) Penalty cost f3 Tp ijk =q ijk +v ijk1 +v ijk2 (4) Among them, Tp jk represents the sum of the cargo capacity constraints violated by vehicle k when performing the delivery task from customer point j to customer point j, q ijk represents the sum of the cargo capacity constraints violated from customer point i to customer point j, v ijk1 Indicates whether the path from customer point i to customer point j violates the cargo capacity constraint, v ijk1 ∈{0, 1}, 0 means that this path does not violate the capacity constraint, 1 means that this path violates the capacity constraint; v ijk2 If v ijk1 =1, the number of customers violating the cargo capacity constraint on this route, P e represents the capacity constraint penalty coefficient 4) Carbon emission function f4 C ijk =ρ0+(ρ * -ρ0)r ijk (6) Among them, C ijk represents the carbon emissions of the kth vehicle from customer i to customer j, ρ0 represents the carbon emissions of the vehicle when it is unloaded, and ρ * Expressing the carbon emissions of a vehicle when fully loaded, Q ijk represents the real-time cargo volume from customer i to j from the kth vehicle, Q represents the full load capacity of the vehicle, and r ijk represents the rate of change coefficient of cargo volume from customer i to customer j, f∈{1, 2}, W 1ij , W 2ij The detour coefficients from customer point i to customer point j for two different scenarios, weekdays and weekends, d ij It represents the distance from customer point i to j, which can truly reflect the positive proportional relationship between carbon emissions, cargo volume and distance, which is in line with the actual situation. Integrate the above cost functions to establish the objective function model O1=f1+f2+f3 (9) O2=f4 (10).
3. The multi-scenario vehicle scheduling optimization algorithm based on a parallel evolution framework according to claim 2 is characterized in that: The step S13 further includes step 132: constraint conditions: Constraint (11) means that each customer point will only be delivered once and can only be served by one vehicle. Constraint (12) means that all vehicles start from the warehouse and return to the warehouse when performing tasks. Constraint (13) indicates that the delivery vehicle cannot be replaced midway Constraint (14) indicates that the traffic volume entering and leaving the customer point is equal. Constraint (15) means eliminating all possible sub-loops in the delivery route. Constraint (16) represents a Binary (0-1) constraint, 1 means vehicle k passes through arc (i, j), 0 means it does not pass through Constraint (17) indicates that the vehicle capacity is not overloaded when the vehicle performs the delivery task.
4. The multi-scenario vehicle scheduling optimization algorithm based on a parallel evolution framework according to claim 2 is characterized in that: The step S2 comprises the following steps: Step S21: Initialize the population, set the parallel evolutionary optimization algorithm framework encoding mode, and set the maximum number of population fitness evaluations; the number of customer points in each scenario is set to n, the total number of planned delivery vehicles is K, the lower limit of the decision variable is 1, and the upper limit is n+K; there are a total of n+K values, 1...n+K are randomly arranged in a shuffled order, (n, n+K)K numbers are randomly inserted into the randomly arranged 1...n sequence to form a number sequence with a dimension of n+K, and the random numbers with numbers on both sides greater than n and the middle number of 1...n are taken as a route, and all delivery routes are listed in this way; Step S22: Evaluate the population in each scenario; for each population, calculate the objective function value and constraint violation degree of its individuals in the respective scenarios, where the individuals of population P1 in scenario s1 are evaluated in scenario s1, and the individuals of population P2 in scenario s2 are evaluated in scenario s2, P1obj represents the target value of population P1 in s1, and P2obj represents the target value of population P2 in s2; Step S23: the population is evaluated in other scenarios; the individuals of the population P1 in the scenario s1 are evaluated in the scenario s2, and the individuals of the population P2 in the scenario s2 are evaluated in the scenario s1, P1Scen2obj represents the target value of the population P1 in s2, and P2Scen1obj represents the target value of the population P2 in s1; Step S24: non-dominated sorting; applying the non-dominated sorting algorithm (NDSort) to sort P1 and P2 according to the objective function value and the constraint violation degree to form a non-dominated layer (Front) and a maximum non-dominated layer (MaxFNo); Step S25: Knee point identification strategy; using the evaluation indicators of steps S23 and S25, the domain width ratio r, the proportion of knee points to all solutions t, and the frontier surface F of the non-dominated layer i The Knee point ratio threshold rate is used to identify the Knee points in each non-dominated layer frontier surface, and the extreme value line H of each scene is output. Since each scene in this paper has two optimization objectives, the extreme value line is defined by the extreme value solutions of the two optimization objectives, one of which has the largest value on O1 and the other has the largest value on O2. The two solutions are connected to form an extreme value line, which can be expressed as ax+by+c=0. The specific values of parameters a, b, and c are determined by the two extreme value solutions on the Pareto frontier. Step S26: Knee point update strategy: update the Knee points and population P selected from scenes s1 and s2 using environment selection; Step S27: Knee point interaction strategy: determine the Knee points that perform well in various scenarios and realize the interaction of the Knee points; Step S28: forming a compromise delivery route solution set (PCOSs); after the algorithm iterates to the maximum number of population fitness evaluations, based on the interactive knee points and the extreme line information of each scenario, a public compromise solution (PCOSs) that achieves the best compromise balance between various scenarios or decision makers is obtained.
5. The multi-scenario vehicle scheduling optimization algorithm based on a parallel evolution framework according to claim 4 is characterized in that: The knee point interaction strategy of step S27 is specifically as follows: Step S271: The knee point sets of the two scenes are defined as Knee1 and Knee2 respectively, and the extreme value lines of the two scenes are defined as H1 and H2 respectively; Step S272: determine the Knee points that perform well in all scenarios; when Knee1 and Knee2 are not empty, calculate the signed distance D(B, H1) of each individual in Knee2 relative to the extreme line H1 of scene s1, and the signed distance D(A, H2) of each individual in Knee1 relative to the extreme line H2 of scene s2; The formula for calculating the distance index is as follows: Among them, H1 and H2 represent the extreme lines of scene s1 and scene s2 respectively, (a1, b1) and (a2, b2) represent the normal vectors of extreme lines H1 and H2 respectively, A and B represent a point in Knee1 and Knee2 respectively, (x A ,y A )、(x B ,y B ) represent the coordinate values of A and B in the target space respectively; when D(B, H1)>0, it means that the corresponding Knee2 point is located below the extreme value line of scene s1; when D(A, H2)>0, it means that the corresponding Knee1 point is located below the extreme value line of scene s2; Step S273: Select Knee points that are conducive to cross-scene interaction; define all Knee2 points located below the extreme value line of scene s1 as P1new; define Knee1 points located below the extreme value line of scene s2 as P2new, and use P1new and P2new as candidate solutions for cross-scene interaction; Step S274: Evaluate P1new and P2new in the corresponding scenarios; re-evaluate the performance of P1new and P2new in the scenarios s1 and s2 respectively to ensure that the new evaluation data reflects their performance in the corresponding scenarios; Step S275: forming a set of common compromise optimal solutions (PCOSs); merging P1new and P2new with P1 and P2 respectively to form new P1 and P2; merging the new P1 and P2 as a set of compromise optimal solutions (PCOSs), performing environmental selection update on the optimal solution set, the new P1 and P2, and keeping their number n; Step S276: extract the decision variable set of the new P1, obtain its objective function value set in the scene s1, and then evaluate the decision variable set of P1 in the scene s2 to obtain the objective function value set P1Scen2obj of P1 in the scene s2, thereby realizing cross-scene performance evaluation; similarly, for P2, perform the same process to obtain the objective function value set P2Scen1obj of P2 in the scene s1; Step S277: Construct a PopT solution set; put the decision variables, constraints, target values, PCOSs sets, P1Scen2obj, and P2Scen1obj of the population in each scenario into the PopT solution set, and call it when drawing the scene target space diagram.
6. The multi-scenario vehicle scheduling optimization algorithm based on a parallel evolution framework according to claim 1 is characterized in that: The step S3 comprises the following steps: Step S31: In the MSCVRP of this paper, the same multiple crossover operators are placed in each scene. Compared with the traditional single crossover method, the adaptive crossover mechanism can significantly improve the quality of PCOS; Step S32: Initialize the operator optimization population quantity ratio matrices M1 and M2 of the two scenarios respectively; M1 and M2 determine the number of optimized populations for each crossover operator, and divide each population into three parts, represented as P1{k}, P2{k}, k={1, 2, 3}, to form an adaptive crossover mechanism based on multiple crossover operator optimization population quantity ratio matrices; Step S33: Update the operator optimization population quantity ratio matrix M1, M2; based on the multi-scenario vehicle scheduling optimization algorithm framework of the second stage, calculate the distance between the Knee point generated after each operator optimization population and the migration solution to the extreme value line, and realize the update of the optimization population quantity ratio matrix, so as to dynamically adjust the quantity of each operator optimization population and improve the population optimization effect; Step S34: Output the population after adaptive cross optimization and compromise solution PCOS.
7. The multi-scenario vehicle scheduling optimization algorithm based on a parallel evolution framework according to claim 1 is characterized in that: The step S31 designs three crossover operators, which respectively include the following steps: Step S311: The first crossover operator is sequential crossover (OX), which selects a partial subsequence of a parent chromosome from two parent individuals and maintains its order, and supplements the remaining elements from the other parent in order to generate a child with the characteristics of both parents, thereby optimizing the order problem of the solution; Step S312: The second crossover operator is defined as the O1 operator. When generating offspring, this operator comprehensively considers the distance factor between customer points in the parent solution and the maximum capacity constraint of the vehicle, and generates a better offspring solution that meets the constraints on the basis of retaining the shorter route segments in the parent solution. During the crossover operation, the algorithm evaluates the distance of each route segment in the parent solution, and selects the best or better route segment for combination based on the evaluation information. Step S313: The third crossover operator is defined as the O2 operator. The specific idea is to first randomly select two routes from two parent generations, randomly select a breakpoint in each route, and divide the route into two parts; the part starting from the distribution center is called the route head, and the part returning to the distribution center is called the route tail; the two routes will be divided into four parts: the head of route one, the tail of route one, the head of route two, and the tail of route two; then, the head of route one and the tail of route two are combined into a new route, and the head of route two and the tail of route one are combined into another new route; 8. The multi-scenario vehicle scheduling optimization algorithm based on a parallel evolution framework according to claim 1 is characterized in that: The step S33 updates the operator optimization population quantity ratio matrix, comprising the following steps: Step S331: Define the knee point generated by P1{k} as K 1-k , the extreme value line is defined as H 1-k ; The knee point generated by P2{k} is defined as K 2-k , the extreme value line is defined as H 2-k ; Using H 2-k From K 1-k Select P 2-k new, using H 1-k From K 2-k Select P 1- k new; for example, using H 2-1 From K 1-1 Select P 2-1 new, using H 1-1 From K 2-1 Select P 1-1 new; Step S332: normalizing the extreme value lines corresponding to the three crossover operators in each scenario; In scenario 1 and scenario 2, the hyperplane farthest from the far point among the extreme value lines generated by the three crossover operators is selected and defined as H3 = max{H 1-k }、H4=max{H 2-k }; Step S333: Calculate the distance between the Knee point generated after each operator optimizes the population and the migration solution to the extreme value line; define S 1-k =[K 1-k , P 1-k new]、S 2-k =[K 2-k , P 2-k new], calculate S 1-k Signed distance D to extreme line H3 1-k , S 2-k Signed distance D to extreme line H4 2-k , respectively, as the evaluation index of the optimization effect of the three crossover operators in scenario 1 and scenario 2, D 1-k With D 2-k The larger it is, the better the effect of the corresponding operator optimization population is; D 1-k , D 2-k The calculation formula is as follows: In the above formula, (a3, b3) and (a4, b4) represent the normal vectors of the extreme value lines H3 and H4 respectively. Respectively represent S 1-k , S 2-k The coordinate value in the target space; when D 1-k >0, indicating S 1-k Located below the extreme value line H3; when D 2-k >0, indicating S 2-k Located below the extreme value line H4; Step S334: According to D 1-k , D 2-k Update M1 and M2 respectively; Update M1 and M2 according to equations (26)-(29), and normalize them to ensure that the sum of the elements in M1 and M2 is 1; W S1 =D 1-1 +D 1-2 +D 1-3 (26) W S2 =D 2-1 +D 2-2 +D 2-3 (27) Step S335: Process the special cases of M1 and M2; when one of the elements in M1 and M2 is 0, set it to 0.1 and subtract 0.1 from the largest element; When two elements are 0, they are set to 0.1 respectively, and the largest element is 0.8.
Citation Information
Cited By
Capacity constraint vehicle path modeling and solving method based on large language model
CN122288543A
Program, data processing device, and data processing method
WO2026210571A1
