A hybrid adaptive swarm intelligence optimization method for construction and demolition waste reverse logistics network design
By employing a hybrid adaptive swarm intelligence optimization method, a three-vector encoding structure, and adaptive crossover probability, combined with a multi-stage repair mechanism, the problem of multi-level decision-making in the design of reverse logistics networks for construction solid waste is solved, improving computational efficiency and solution quality. This method is suitable for the engineering design of large-scale urban reverse logistics networks for construction solid waste.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- INNER MONGOLIA ACADEMY OF SCIENCE & TECHNOLOGY
- Filing Date
- 2026-04-17
- Publication Date
- 2026-07-14
AI Technical Summary
Existing technologies struggle to effectively integrate multi-level decision-making in the design of reverse logistics networks for construction solid waste, resulting in significant uncertainties. Furthermore, existing algorithms are deficient in computational efficiency and solution quality, leading to high design costs and low efficiency.
A hybrid adaptive swarm intelligence optimization method is adopted, which uses a three-vector encoding structure to represent the selection of collection centers, waste point allocation and vehicle routes. Combined with hierarchical heuristic initialization, adaptive crossover probability and multi-stage repair mechanism, the reverse logistics network of construction solid waste is optimized.
It enables the simultaneous optimization of economic costs and social impact in large-scale urban construction solid waste reverse logistics networks, improves solution efficiency and solution quality, and is suitable for engineering design.
Smart Images

Figure CN122390328A_ABST
Abstract
Description
Technical Field
[0001] This invention discloses a hybrid adaptive swarm intelligence optimization method for the design of a reverse logistics network for construction solid waste, belonging to the field of environmental resource recycling technology. Background Technology
[0002] With the acceleration of urbanization, the amount of solid waste generated by construction activities continues to rise, and its management involves the entire process from collection, sorting, and transportation at waste generation points to final recycling or disposal. An efficient reverse logistics network requires strategic site selection for collection centers, tactical optimization of the allocation relationship between waste generation points and treatment facilities, and precise planning of transport vehicle routes at the operational level. These three levels of decision-making are coupled, constituting a typical joint optimization problem of resource allocation and vehicle routing. Existing technologies, when dealing with such problems, often simplify them to single-level decision-making, such as focusing only on facility site selection while ignoring route optimization, or planning routes while assuming fixed facility locations. This leads to problems such as high costs and low efficiency in the actual operation of the designed network. In addition, the amount of construction solid waste generated has significant uncertainty, with large fluctuations in waste output in different regions and at different times. Traditional models are often based on deterministic historical average data, which is difficult to adapt to dynamic and changing realities.
[0003] To address the aforementioned combinatorial optimization problem, various solution methods have been proposed in existing technologies. Exact solution methods, such as branch and bound and cutting plane methods, can obtain theoretically optimal solutions, but when faced with large-scale real-world scenarios involving hundreds or thousands of decision variables and complex constraints, the computation time increases exponentially, making it difficult to complete the solution within an acceptable timeframe. Therefore, metaheuristic algorithms are widely used in academia and industry for approximate solutions, among which the artificial bee colony algorithm has attracted attention due to its few parameters, ease of implementation, and strong global search capabilities.
[0004] However, traditional artificial bee colony algorithms primarily target continuous space optimization problems. Their encoding methods and search mechanisms cannot directly handle combined decisions involving discrete facility location, integer allocation, and path sequencing in reverse logistics networks. Existing improvements either use simple interval mapping to forcibly convert continuous solutions into discrete solutions, leading to solution space distortion; or they introduce complex local search strategies but lack structured representations of solutions, resulting in poor coordination between different decision levels. Furthermore, most existing metaheuristic methods employ random generation strategies in the initialization phase, resulting in low-quality initial solutions and a lack of effective mechanisms to repair solutions that violate constraints, leading to a significant waste of computational resources exploring infeasible solutions. Summary of the Invention
[0005] This application provides a hybrid adaptive swarm intelligence optimization method for the design of a reverse logistics network for construction solid waste, including the following steps: S1. Obtain basic data on the reverse logistics network of construction solid waste in the area to be optimized, including the location of multiple waste generation points and their solid waste generation range, the location of multiple candidate collection centers and their construction costs and processing capacity, the location of multiple recycling companies and their processing capacity, and the load limit and start-up cost of transport vehicles. S2. Based on the aforementioned basic data, construct a mixed-integer linear programming model that integrates collection center location decisions, waste generation point allocation decisions, recycling enterprise allocation decisions, and vehicle routing decisions. S3, execute the hybrid adaptive swarm intelligence optimization process, maintain a population containing multiple food sources, each food source is represented by a three-vector encoding structure, the three-vector encoding structure includes a first binary vector for characterizing the activation state of the candidate collection center, a second integer vector for characterizing the allocation relationship between the waste generation point and the activated collection center, and a third integer vector sequence for characterizing the order in which transport vehicles access the waste generation point; S4. Using a hierarchical heuristic initialization strategy, generate an initial three-vector code for each food source in the population that satisfies all constraints in the mixed-integer linear programming model. S5, In the hired bee stage, for the current food source, another food source is randomly selected from the population, and the three-vector encodings of the two food sources are cross-operated based on the adaptive cross-probability to generate the first candidate food source; S6. During the observation bee phase, based on the fitness value of each food source, two food sources are selected through a roulette wheel selection mechanism, and the three-vector codes of these two food sources are cross-operated based on the dynamically adjusted cross-probability to generate a second candidate food source. S7, during the scout bee phase, if a food source is not updated within a preset number of iterations, it is discarded and a new food source is generated to replace it through a random perturbation mechanism; S8, iteratively execute S5 to S7 until the preset termination condition is met, and decode the three-vector encoding of the food source with the best fitness value in the current population into the optimized design scheme of the reverse logistics network and output it.
[0006] Furthermore, the length of the first binary vector in the three-vector encoding structure is equal to the number of candidate collection centers, and the value of each bit is used to uniquely determine whether the corresponding candidate collection center is activated. The length of the second integer vector is equal to the number of waste generation points, and the value of each bit is used to uniquely assign the corresponding waste generation point to an activated collection center. The third integer vector sequence is a list with the same number of elements as the number of collection centers activated in the first binary vector. Each element in the list is an integer vector representing the order in which one or more transport vehicles serving the corresponding collection center visit their assigned waste generation points.
[0007] Furthermore, the adaptive crossover probability in S5 is dynamically adjusted nonlinearly based on the current iteration number to balance global exploration and local exploitation; The crossover operation further includes: S51, determine the current food source and the randomly selected other food source, and obtain the first binary vector, second integer vector and third integer vector sequence of the two respectively; S52, perform multi-point crossover on the first binary vector, randomly generate a binary mask of the same length as the first binary vector, and replace the gene fragment at the corresponding position in the other food source with the current food source according to the mask to generate a new first binary vector; S53, perform sequential crossover on the second integer vector, randomly determine two crossover points, retain the gene fragments in the second integer vector of the current food source located between the two crossover points, and fill in the genes in the second integer vector of the other food source that do not appear in the retained fragments in the order of their appearance in the other food source to generate a new second integer vector; S54, perform path-based crossover on each sub-vector in the third integer vector sequence. For each activated collection center, obtain the sub-vector in the current food source and the sub-vector in another food source, randomly select sub-path segments for exchange, and make local adjustments to the duplicate and missing nodes generated after the exchange to generate a new third integer vector sequence. S55, the new first binary vector, the new second integer vector, and the new third integer vector sequence are combined to form the first candidate food source.
[0008] Furthermore, the dynamically adjusted crossover probability in S6 is calculated based on the current iteration number and the diversity index of the current population. The roulette wheel selection mechanism allocates selection probabilities based on the fitness value of the food source; The specific steps for generating the second candidate food source include: S61, calculate the fitness value of each food source in the population. The higher the fitness value, the greater the probability of it being selected. S62, Based on the calculated probabilities, the first parent food source and the second parent food source are selected by roulette wheel. S63, obtain the average Hamming distance between the current iteration number and the three-vector codes of all food sources in the current population as the population diversity index; S64. Based on the preset time decay factor and the population diversity index, dynamically calculate the crossover probability value for this crossover operation. The crossover probability value is positively correlated with the population diversity index and negatively correlated with the current iteration number. S65, using the dynamically calculated crossover probability value, perform a crossover operation on the three-vector codes of the first parent food source and the second parent food source to generate the second candidate food source.
[0009] Furthermore, the hierarchical heuristic initialization strategy in S4, used to generate an initial three-vector code that meets the constraints, includes: S41, initialize the first binary vector, calculate the expected capacity of each candidate collection center by means of the fuzzy triangular number transformation method according to the solid waste generation range of the waste generation point and the maximum capacity of the candidate collection center, and randomly activate some candidate collection centers in a manner not lower than the preset activation rate based on the preset risk preference parameter, so as to ensure that the total generation of all waste generation points does not exceed the total expected capacity of the activated collection centers. S42, initialize the second integer vector, and sequentially allocate the waste generation points to the activated collection centers. For each waste generation point, according to its solid waste generation range and the remaining capacity of the currently activated collection centers, select a collection center that meets the capacity constraint through a fuzzy comparison method for allocation, and update the remaining capacity of the collection center. If none of the currently activated collection centers can meet the capacity constraint, activate the candidate collection center and perform the allocation. S43, initialize the third integer vector sequence. For each activated collection center, obtain all the allocated waste generation points. Using a greedy path construction algorithm, with the upper limit of the load capacity of the transport vehicle as a constraint, generate vehicle paths covering all allocated points in sequence to obtain the corresponding integer vectors, and combine them to form the third integer vector sequence. S44. Combine the initialized first binary vector, second integer vector, and third integer vector sequence to form the initial feasible food source.
[0010] Furthermore, after performing any of the operations in S5 to S7, a multi-stage repair mechanism is used to perform feasibility repair on the three-vector encoding of the generated new food source to ensure that all constraints in the mixed-integer linear programming model are met. The multi-stage repair mechanism is used to correct the parts of the newly generated food source that violate the constraints, including: Phase 1: Perform waste point allocation repair. Iterate through the second integer vector and check whether the collection center assigned to each waste point is active in the first binary vector and whether the current cumulative allocation of the collection center exceeds its processing capacity. If either condition is not met, the waste point is reassigned to another active collection center that meets the capacity constraint. If there is no active collection center that meets the condition, the currently inactive candidate collection center is activated and assigned to the waste point. Phase Two: Perform recycling enterprise allocation and repair. Based on the allocation result of the second integer vector, calculate the amount of recyclable waste for each activated collection center and check whether the recycling enterprise allocated to each activated collection center meets its processing capacity constraints. If not, the collection center is reassigned to another recycling enterprise that meets the capacity constraints. If none of the available recycling enterprises meet the constraints, the recycling enterprise with the lowest current load is selected for allocation. Phase 3 involves vehicle route repair. Based on the correspondence between collection centers and waste generation points determined by the repaired second integer vector, for each activated collection center, the greedy route construction algorithm is re-executed to generate new vehicle routes with the upper limit of the transport vehicle's load capacity as a constraint, thereby updating the corresponding sub-vectors in the third integer vector sequence.
[0011] Furthermore, the greedy path construction algorithm in stage three includes a 2-opt local optimization process after generating the vehicle path. This process involves iteratively swapping two non-adjacent edges in the current path to shorten the total path length until no better path can be obtained.
[0012] Furthermore, in the mixed-integer linear programming model in S2, the objective function, based on representing construction cost, transportation cost, vehicle start-up cost, and waste identification cost, integrates resident emotional compensation cost; The cost of residents' emotional compensation is quantified by a nonlinear influence function, taking the population density of the areas through which the transportation route passes, the transportation time period, and the population density around the collection center as input variables to characterize the differentiated psychological impact of different transportation routes and facility site selection schemes on surrounding residents. The mixed-integer linear programming model transforms the solid waste generation range of the waste generation point into a clear equivalent constraint with a confidence level through fuzzy programming, and generates differentiated network design schemes based on the decision-maker's risk preference.
[0013] Furthermore, the random perturbation mechanism in S7, used to generate new food sources to replace discarded food sources, includes: S71, obtain the three-vector code of the discarded food source; S72, the first binary vector is perturbed, one or more bits are randomly selected for inversion, and it is checked whether the condition that at least one collection center is activated is met after inversion. If not, the operation is restored or a collection center is forcibly activated. S73, Perturb the second integer vector: Randomly select waste generation points and change the currently assigned collection center to another randomly selected collection center that is active and has not yet reached its capacity limit; S74, the third integer vector sequence is perturbed, and a path sub-vector corresponding to the activated collection center is randomly selected. The order of the nodes in the sub-vector is randomly shuffled, or some nodes in two different paths are randomly swapped. S75, the perturbed first binary vector, second integer vector and third integer vector sequence are combined to form the new food source.
[0014] Furthermore, the hybrid adaptive swarm intelligent optimization process iterates cyclically between the hired bee stage, the observation bee stage, and the scout bee stage. After each iteration, all candidate food sources generated in the current iteration are compared with the food sources in the original population, and individuals with better fitness values are retained to update the population. The fitness value is obtained by calculating the objective function value of the three-vector encoding under the mixed-integer linear programming model. For solutions that violate any constraint in the model, the fitness value is reduced by introducing a dynamically adjusted penalty coefficient to guide the search process to converge toward the feasible solution space.
[0015] This invention discloses a hybrid adaptive swarm intelligence optimization method for designing a reverse logistics network for construction solid waste, belonging to the field of environmental resource recycling technology. It constructs a hybrid integer linear programming model integrating multi-level decision-making; employs a three-vector parallel encoding structure to uniformly represent the selection of collection centers, waste point allocation, and vehicle routing schemes; and generates high-quality initial solutions through a hierarchical heuristic initialization strategy. Within the framework of the artificial bee colony algorithm, it designs a search mechanism for hired bees and observer bees based on adaptive crossover probability, introducing dynamic crossover probabilities that consider iterative progress and population diversity, combined with a multi-stage repair mechanism to ensure the feasibility of the solution; and maintains population diversity through random perturbations during the scout bee stage. This invention can effectively handle the uncertainty of construction solid waste generation, simultaneously optimize economic costs and social impacts, and significantly improve solution efficiency while ensuring solution quality. It is suitable for the engineering design of large-scale urban construction solid waste reverse logistics networks. Attached Figure Description
[0016] Figure 1 This is a flowchart illustrating the process of a hybrid adaptive swarm intelligence optimization method for designing a reverse logistics network for construction solid waste, as disclosed in an embodiment of this application. Figure 2 This is a second flowchart of a hybrid adaptive swarm intelligence optimization method for designing a reverse logistics network for construction solid waste, as disclosed in an embodiment of this application. Figure 3 This is the third flowchart of a hybrid adaptive swarm intelligence optimization method for designing a reverse logistics network for construction solid waste disclosed in an embodiment of this application; Figure 4 This is the fourth flowchart of a hybrid adaptive swarm intelligence optimization method for designing a reverse logistics network for construction solid waste disclosed in this application. Detailed Implementation
[0017] To make the objectives, technical solutions, and advantages of this application clearer, the technical solutions of this application will be clearly and completely described below in conjunction with specific embodiments and corresponding drawings. Obviously, the described embodiments are only a part of the embodiments of this application, and not all of them. All other embodiments obtained by those skilled in the art based on the embodiments of this application without creative effort are within the scope of protection of this application.
[0018] The technical solutions disclosed in the various embodiments of this application are described in detail below with reference to the accompanying drawings.
[0019] Existing reverse logistics network design technologies have significant shortcomings in handling multiple objectives and social impacts. On the one hand, traditional models often prioritize minimizing economic costs, failing to effectively integrate social factors such as the psychological impact of transportation routes on residents along the routes and the environmental impact of collection center locations. This results in optimized solutions, while economically optimal, facing significant social resistance in practical implementation. On the other hand, existing technologies often employ stochastic programming or scenario analysis to address the uncertainty of construction waste generation, requiring extensive historical data and exhibiting poor applicability when data is scarce. Alternatively, fuzzy programming may be used, but it remains at the theoretical modeling level, lacking effective integration with metaheuristic search frameworks and failing to form an executable solution process. Furthermore, existing algorithms exhibit rigid mechanisms for balancing population diversity and convergence speed during iteration. Key parameters such as crossover probability and mutation probability typically use fixed values or simple linear decay, failing to adaptively adjust according to the real-time state of the solution space, easily leading to premature convergence or low search efficiency. Therefore, there is an urgent need for a design method for reverse logistics networks of construction solid waste that can systematically integrate multi-level decision-making, effectively handle uncertainty, balance economic and social benefits, and have efficient solution capabilities.
[0020] According to a first embodiment of the present invention, the present invention claims protection for a hybrid adaptive swarm intelligence optimization method for the design of a reverse logistics network for construction solid waste, referring to... Figure 1 This includes the following steps: S1. Obtain basic data on the reverse logistics network of construction solid waste in the area to be optimized, including the location of multiple waste generation points and their solid waste generation range, the location of multiple candidate collection centers and their construction costs and processing capacity, the location of multiple recycling companies and their processing capacity, and the load limit and start-up cost of transport vehicles. S2, based on basic data, constructs a mixed-integer linear programming model that integrates collection center location decisions, waste generation point allocation decisions, recycling company allocation decisions, and vehicle routing decisions; S3 executes a hybrid adaptive swarm intelligence optimization process, maintaining a population containing multiple food sources. Each food source is represented by a three-vector encoding structure, which includes a first binary vector representing the activation state of a candidate collection center, a second integer vector representing the allocation relationship between waste generation points and activated collection centers, and a third integer vector sequence representing the order in which transport vehicles access waste generation points. S4 generates an initial three-vector code for each food source in the population that satisfies all constraints in the mixed-integer linear programming model through a hierarchical heuristic initialization strategy. S5, in the hired bee stage, for the current food source, another food source is randomly selected from the population, and the three-vector encodings of the two food sources are cross-operated based on the adaptive cross-probability to generate the first candidate food source; S6. During the observation bee phase, based on the fitness value of each food source, two food sources are selected through a roulette wheel selection mechanism, and the three-vector codes of these two food sources are cross-operated based on the dynamically adjusted cross-probability to generate a second candidate food source. S7, during the scout bee phase, if a food source is not updated within a preset number of iterations, it is discarded and a new food source is generated to replace it through a random perturbation mechanism; S8 iterates through S5 to S7 until the preset termination condition is met, and decodes the three-vector encoding of the food source with the best fitness value in the current population into an optimized design scheme for the reverse logistics network and outputs it.
[0021] In this embodiment, a basic data set for the area to be optimized is received within an urban planning project. This data includes: the latitude and longitude coordinates of 20 waste generation points, such as Area A and Area B, and the estimated range of daily solid waste generation for each point, for example, 5 to 7 tons for Area A and 8 to 12 tons for Area B; the coordinates, construction costs (e.g., 1800 yuan per day for Area B), and maximum processing capacity (e.g., 50 tons per day for Area B) of 5 candidate collection centers, such as Area North and Area South; the coordinates and processing capacity (e.g., 100 tons per day for Area North); and the maximum load capacity of transport vehicles (55 tons) and the startup cost (100 yuan per start-up).
[0022] Next, a mixed-integer linear programming model is constructed based on the above data. This model includes a series of decision variables and constraints, such as: variables to determine whether the North Collection Center should be established; variables to determine whether waste from Area A should be allocated to the North or South Area; and variables to determine which vehicle should visit which generation points in what order. The constraints ensure that the total amount of waste allocated to each collection center does not exceed its processing capacity, the total amount of waste on each path does not exceed the vehicle's load capacity, and each generation point is visited only once by a vehicle, etc.
[0023] Subsequently, a hybrid adaptive swarm intelligence optimization process is initiated. This process maintains a population containing 50 food sources, each representing a potential reverse logistics network design scheme. Each design scheme is represented by a three-vector encoding structure: the first vector is a binary string of length 5, such as [1,0,0,1,0], indicating that the North Zone and the 4th candidate center are activated; the second vector is an integer string of length 20, such as [0,0,1,1,...], indicating that the first waste generation point is assigned to the collection center with index 0, i.e., the North Zone, the second generation point is also assigned to the North Zone, the third generation point is assigned to the collection center with index 1, i.e., the 4th candidate center, and so on; the third vector is a list, for example, for the activated North Zone collection center, its corresponding path sequence is [[A,C,E],[B,D]], indicating two vehicles, the first vehicle visits the three generation points A, C, and E in sequence and then returns, and the second vehicle visits B and D in sequence and then returns.
[0024] A hierarchical heuristic initialization strategy is used to generate initial feasible codes for these 50 food sources. For example, it first converts the waste generation range into expected values based on a risk preference parameter α=0.5, then randomly activates a subset of collection centers to ensure that the total capacity is greater than the total expected generation. Next, it iterates through each waste generation point and assigns a suitable center based on the remaining capacity of the collection centers. Finally, for each activated center, a greedy algorithm is used to generate vehicle paths.
[0025] In the subsequent hired bee phase, the first food source in the population is designated as source A, and another food source is randomly selected and designated as source B. Then, based on an adaptive crossover probability that varies with the number of iterations (for example, in the early stages of iteration, this probability is relatively high, approximately 0.8), a crossover operation is performed on the codes of source A and source B. Specifically, for binary vectors, a mask [1,0,1,0,0] is randomly generated, and the genes in source B with corresponding positions of 1 (i.e., the 1st and 3rd bits) are replaced in source A to form a new binary vector. For integer vectors and path sequences, the corresponding crossover strategy is executed to generate a new candidate food source.
[0026] During the observation phase, the total cost, or fitness value, of each food source is calculated; the lower the cost, the higher the fitness. Then, based on the fitness values, two food sources are selected using a roulette wheel approach, for example, source C with the highest fitness and source D with medium fitness. Next, a crossover probability is dynamically calculated. This probability considers not only the current iteration number (e.g., 200 iterations, total 500 iterations) but also the degree of difference among all solutions in the current population (e.g., the average Hamming distance of all binary vectors). If the population difference is small, the crossover probability is increased to increase exploration. Based on this dynamic probability, a crossover operation is performed on sources C and D to generate another candidate food source.
[0027] During the scout bee phase, the number of consecutive times each food source remains unimproved is recorded. If a food source, such as source E, fails to reduce its total cost after 100 consecutive iterations, it is discarded, and a new food source is generated to replace it through a random perturbation mechanism. For example, one bit in its binary vector is randomly reversed, the allocation center of a certain generation point in its integer vector is randomly changed, and the order of nodes in a certain path is randomly shuffled.
[0028] After any of the above operations that generate a new food source, a multi-stage repair mechanism is immediately invoked. For example, if a waste generation point is assigned to an inactive collection center in the new plan, the repair mechanism will reassign it to an active collection center with sufficient capacity. If a collection center allocates more recyclable waste to a recycling company than the recycling company can process, the repair mechanism will reassign it to a recycling company with a lower load. Finally, due to the change in allocation relationships, the original path may no longer cover all generation points, and the repair mechanism will re-execute greedy path planning for each active collection center to generate new feasible paths.
[0029] Repeat the steps of hiring bees, observing bees, scouting bees, and repairing until a preset number of iterations, such as 1000, is reached. Finally, output the code corresponding to the food source with the lowest total cost in the current population. Decoding this code yields a specific reverse logistics network design scheme: for example, activating two collection centers in the north and south; waste from points A, C, and E is collected in the north and transported by two vehicles along a specific route; waste from points B and D is collected in the south; the two collection centers transport the sorted recyclables to a recycling company in the eastern suburbs; this scheme is the optimized result.
[0030] Furthermore, the length of the first binary vector in the three-vector coding structure is equal to the number of candidate collection centers, and the value of each bit is used to uniquely determine whether the corresponding candidate collection center is activated. The length of the second integer vector is equal to the number of waste generation points, and the value of each bit is used to uniquely assign the corresponding waste generation point to an activated collection center. The third integer vector sequence is a list with the same number of elements as the number of collection centers activated in the first binary vector. Each element in the list is an integer vector representing the order in which one or more transport vehicles serving the corresponding collection center visit their assigned waste generation points.
[0031] In this embodiment, each food source corresponds to a structure, which contains three independent but interconnected data components.
[0032] The first component is the collection center activation vector, which is a binary array whose length equals the total number of candidate collection centers. Assume the city has 5 candidate collection centers, labeled J1, J2, J3, J4, and J5. This array then has 5 elements, each with a value of either 0 or 1. A value of 1 indicates that the corresponding collection center has been selected and included in the final design, requiring payment for its construction costs. For example, an array of [1,0,0,1,0] means that J1 and J4 are activated, while J2, J3, and J5 are deactivated. This array is the foundation of the entire three-vector encoding; the validity of the other two vectors depends on it.
[0033] The second component is the waste point allocation vector, which is an integer array with a length equal to the total number of waste points; assuming there are 20 waste points, labeled W1 to W20. The array index represents the waste point number, while the value of each element indicates which activated collection center that point is assigned to. It's important to note that the element's value does not directly correspond to the original candidate collection center number, but rather to the index of the activated collection center in the collection center activation vector. For example, based on an activation vector of [1,0,0,1,0], the activated collection centers are J1 and J4, which would be mapped to internal indices 0 and 1. Therefore, an element in the allocation vector with a value of 0 means the waste from that point is transported to J1; a value of 1 means it's transported to J4. This mapping method ensures the validity of the allocation; waste points are only assigned to actual existing collection centers. It must be ensured that for each waste point, the corresponding value in the allocation vector points to a collection center whose corresponding bit in the activation vector is 1.
[0034] The third component is the vehicle path sequence, which is a list structure. The length of this list is equal to the number of elements with a value of 1 in the activation vector, i.e., the number of activated collection centers. For the activated J1 and J4 in the example above, this list contains two elements. Each element in the list is itself a list of vectors, representing the driving route of the vehicle serving the corresponding collection center. For example, the first element of the list corresponds to J1, which is a list containing multiple integer vectors, such as [[3,5,8],[2,7]]. Here, [3,5,8] represents the driving route of the first vehicle, which starts from collection center J1, visits waste generation points W3, W5, and W8 in sequence, and then returns to J1; similarly, [2,7] represents the second vehicle starting from J1, visiting W2 and W7 in sequence, and then returning. The numbers in these integer vectors, such as 3, 5, and 8, directly correspond to the original numbers of the waste generation points. When constructing this sequence, it must be ensured that all the generation points assigned to J1, i.e., those points with a value of 0 in the allocation vector, appear exactly once and only once in the path vectors corresponding to J1. Similarly, the second element of the list corresponds to J4, and the path vectors it contains must cover all generation points with a value of 1 in the allocation vector.
[0035] These three components are logically tightly coupled: the first component determines which collection centers are available, the second component determines which available collection center each waste point belongs to, and the third component specifically plans how to connect all waste points belonging to the same collection center via vehicles. Changes to any one component can affect the feasibility of the others, thus requiring subsequent remediation mechanisms to maintain consistency among the three.
[0036] Furthermore, the adaptive crossover probability in S5 is dynamically adjusted nonlinearly based on the current iteration number to balance global exploration and local exploitation; Reference Figure 2 Cross operations further include: S51, determine the current food source and another randomly selected food source, and obtain the first binary vector, second integer vector and third integer vector sequence of the two respectively; S52, perform multi-point crossover on the first binary vector, randomly generate a binary mask of the same length as the first binary vector, and replace the gene fragment at the corresponding position in another food source with the current food source according to the mask to generate a new first binary vector; S53, perform sequential crossover on the second integer vector, randomly determine two crossover points, retain the gene segments in the second integer vector of the current food source that are located between the two crossover points, and fill in the genes in the second integer vector of the other food source that do not appear in the retained segments according to their order in the other food source, to generate a new second integer vector; S54, perform path-based crossover on each sub-vector in the third integer vector sequence. For each activated collection center, obtain the sub-vector in the current food source and the sub-vector in another food source, randomly select sub-path segments for exchange, and make local adjustments to the duplicate and missing nodes generated after the exchange to generate a new third integer vector sequence. S55, combine the new first binary vector, the new second integer vector, and the new third integer vector sequence to form the first candidate food source.
[0037] In this embodiment, it is assumed that in the t-th iteration, the current food source is A, and another randomly selected food source is B. First, the adaptive crossover probability Pc for this operation is calculated based on the current iteration number t and the total number of iterations T. For example, in the early stages of iteration, t is small, and the Pc value is high, aiming to promote widespread mixing of solutions; in the later stages of iteration, t is close to T, and the Pc value is low, aiming to protect the genetic structure of excellent solutions. The calculation formula itself is a pre-defined nonlinear function, but only its application logic is described here.
[0038] Then, the complete three-vector codes of food source A and food source B are obtained. The crossover operation will be performed independently in three parts, but will eventually be combined into a new code.
[0039] First, the activation vector at the collection center is subjected to multi-point cross-intersection to generate a binary mask of the same length as the activation vector. Each bit of the mask is determined by a random number to determine whether it is 1. Assuming the activation vector length is 5, the generated mask is [1,0,1,0,1]. Then, the new activation vector will be constructed as follows: for the bits that are 1 in the mask, the corresponding bit value is taken from the activation vector of food source B; for the bits that are 0 in the mask, the corresponding bit value is retained from the activation vector of food source A. For example, if the activation vector of A is [1,0,0,1,0] and the activation vector of B is [0,1,1,0,1], after this operation, the first bit of the new vector takes 0 from B, the second bit takes 0 from A, the third bit takes 1 from B, the fourth bit takes 1 from A, and the fifth bit takes 1 from B, finally resulting in [0,0,1,1,1].
[0040] Next, perform sequential cross-intersection on the waste point allocation vectors. Assume the allocation vector has a length of 8 (8 waste generation points), and randomly generate two cross-intersection points, such as positions 3 and 6. The allocation vector for food source A is [0,1,2,0,1,2,0,1]. Assume there are two active collection centers, indices 0 and 1. The allocation vector for food source B is [1,0,1,1,0,0,1,0]. First, create a new empty vector. Copy the segments from A located between the cross-intersection points (positions 3 to 6), with values [2,0,1,2], directly to their corresponding positions in the new vector. Then, starting from the first position in B's allocation vector, sequentially extract the values that did not appear in the copied segments (i.e., after excluding 2, 0, 1, 2, the remaining values in B are [1,0,1,0]), and fill these values into the other positions in the new vector (positions 1,2,7,8, excluding the copied segments). The final new vector is [1,0,2,0,1,2,1,0].
[0041] Finally, path-based cross-referencing is performed on the vehicle path sequences. Since the path sequences are associated with the allocation and activation vectors, the allocation schemes of the two food sources must be comparable before the operation. This process is performed separately for each activated collection center. Assume that food sources A and B both have activated collection centers X, and their corresponding path sub-vectors are Path_A and Path_B, respectively. A continuous path segment is randomly selected from Path_A, for example, [W2, W3] from the path [W1, W2, W3] of the first vehicle as a sub-path. Then, a path containing the same node sequence W2, W3 is found in Path_B, and the order of this path segment in Path_B is replaced with the order in Path_A. After the replacement, Path_B may contain duplicate or missing nodes. A local adjustment process is then performed: all duplicate nodes are removed, and missing nodes are inserted into the appropriate positions of the current path according to their original order in Path_B, such as the end, thereby generating a new, feasible path sequence Path_New. This process is performed for each activated collection center, and finally, a new third vector sequence is formed.
[0042] The new vectors generated from these three parts are combined to form the first candidate food source.
[0043] Furthermore, the dynamically adjusted crossover probability in S6 is calculated based on a combination of the current iteration number and the diversity index of the current population; The roulette wheel selection mechanism allocates selection probabilities based on the fitness value of the food source; Reference Figure 3 The specific steps for generating a second candidate food source include: S61, calculate the fitness value of each food source in the population. The higher the fitness value, the greater the probability that it will be selected. S62, based on the calculated probability, select the first and second parent food sources by roulette wheel; S63, obtain the average Hamming distance between the current iteration number and the three-vector codes of all food sources in the current population as a population diversity index; S64. Based on the preset time decay factor and population diversity index, dynamically calculate the crossover probability value used for this crossover operation. The crossover probability value is positively correlated with the population diversity index and negatively correlated with the current iteration number. S65, using the dynamically calculated crossover probability value, performs a crossover operation on the three-vector codes of the first parent food source and the second parent food source to generate the second candidate food source.
[0044] In this embodiment, at the start of the observation bee phase, the fitness value of each of the 50 food sources in the population is calculated. The fitness value is calculated based on an objective function, where the total cost includes construction, transportation, startup, identification, and other costs; the lower the cost, the higher the fitness value. Each food source is assigned a probability value proportional to its fitness value; for example, the probability of selecting a food source is obtained by taking the reciprocal of its cost and normalizing it.
[0045] Then, the selection operation begins, which uses a simulated roulette mechanism: a random number between 0 and 1 is generated, and the probabilities of food sources are accumulated sequentially. When the accumulated sum is greater than the random number for the first time, the food source is selected. Through two independent selections, the first parent food source P1 and the second parent food source P2 are obtained.
[0046] After the selection is completed, the crossover probability used in this crossover operation needs to be determined. This probability is dynamically adjusted, and its calculation process is as follows: First, obtain the current iteration number t. For example, the current iteration is 300, and the total iteration number is T=1000. Then, calculate a time decay factor, which decreases linearly as t increases, such as 1-t / T.
[0047] Simultaneously, it is necessary to assess the diversity of the current population. Diversity metrics are quantified by calculating the differences in the three-vector codes among all food sources in the population. Specifically, the Hamming distance between each pair of the first binary vectors of all food sources—that is, the number of different bits—can be calculated, and the average of these distances can be taken. Assuming all 50 binary vectors have a length of 5, the average Hamming distance is 2.0.
[0048] The population diversity index is normalized, for example by dividing it by the vector length of 5, resulting in 0.4. Ultimately, the dynamic crossover probability is calculated as a value negatively correlated with the time decay factor and positively correlated with population diversity. For example, a base crossover probability of 0.6 can be set, and then the dynamic probability = base probability. (1-Time decay factor) Population diversity coefficient. This ensures that the crossover probability is high in the early stages of iteration or when the population diversity is high, so as to fully explore the solution space; while in the later stages of iteration or when the population tends to be homogeneous, the crossover probability decreases, so as to protect existing excellent solutions.
[0049] After determining the dynamic crossover probability Pc_dynamic, a random number R between 0 and 1 is generated. If R ≤ Pc_dynamic, the crossover operation is performed, and multi-point crossover, sequential crossover, and path-based crossover are performed on the three-vector codes of P1 and P2 respectively to generate a new food source as the second candidate food source.
[0050] If R > Pc_dynamic, then crossover will not be performed; instead, one of P1 or P2 will be cloned directly as a second candidate food source, or the mutation operation will proceed directly.
[0051] Furthermore, the hierarchical heuristic initialization strategy in S4, used to generate initial three-vector codes that meet the constraints, includes: S41, initialize the first binary vector, calculate the expected capacity of each candidate collection center by using the fuzzy triangular number transformation method according to the solid waste generation range of the waste generation point and the maximum capacity of the candidate collection center, and randomly activate some candidate collection centers in a manner not lower than the preset activation rate based on the preset risk preference parameter, so as to ensure that the total generation of all waste generation points does not exceed the total expected capacity of the activated collection centers. S42, initialize the second integer vector, and sequentially allocate waste generation points to the activated collection centers. For each waste generation point, based on its solid waste generation range and the remaining capacity of the currently activated collection centers, select a collection center that meets the capacity constraints for allocation using a fuzzy comparison method, and update the remaining capacity of the collection center. If none of the currently activated collection centers can meet the capacity constraints, activate the candidate collection centers and perform the allocation. S43, Initialize the third integer vector sequence. For each activated collection center, obtain all the assigned waste generation points. Using a greedy path construction algorithm, with the upper limit of the transport vehicle's load capacity as a constraint, generate vehicle paths covering all assigned points in sequence to obtain the corresponding integer vectors, and combine them to form the third integer vector sequence. S44. Combine the initialized first binary vector, second integer vector, and third integer vector sequence to form the initial feasible food source.
[0052] In this embodiment, the maximum capacity of all candidate collection centers and the solid waste generation range of each waste generation point are first obtained. For example, the generation range of generation point W1 is [4 tons, 8 tons].
[0053] In the initial activation of the first-layer collection center, a fuzzy triangular number transformation method is used to process these intervals, treating each interval as a triangular fuzzy number a, b, c, where a is the lower bound, b is the mean, and c is the upper bound. Then, a preset risk preference parameter α is received, for example, α = 0.6. For each candidate collection center, its expected capacity is calculated based on α. The formula logic is that when α is high, the capacity is believed to be close to the upper bound, and when α is low, the capacity is believed to be close to the lower bound. Next, the total expected production of all waste generation points is calculated. Then, collection centers are randomly activated, but it is ensured that the sum of the total expected capacities of the activated centers is greater than or equal to the total expected production. If the randomly generated binary vector results in insufficient capacity, the unactivated center with the largest capacity is automatically activated until the capacity condition is met.
[0054] In the second-level waste point allocation initialization, all waste generation points are traversed. For each generation point, such as W1, its generation range is obtained. Simultaneously, the list of currently activated collection centers, such as J1 and J3, and their respective remaining capacities are examined. Remaining capacities are also in range form. A fuzzy comparison function is used to determine whether the generation range of W1 can be accommodated by the remaining capacity range of J1. The logic of this comparison function is: if the upper limit of W1's range is less than the lower limit of J1's range, it can definitely be accommodated; if the lower limit of W1's range is greater than the upper limit of J1's range, it definitely cannot be accommodated; otherwise, a confidence level is calculated based on the α value. The activated collection centers with the highest confidence levels are prioritized for allocation. If all activated centers cannot accommodate W1 (for example, if the lower limit of W1's range is greater than the remaining capacity upper limit of all centers), a currently inactive candidate collection center whose total capacity range can accommodate W1 is activated and added to the activation list, and then allocation is performed. After each allocation, the remaining capacity of the collection center is updated by subtracting the generation range of W1.
[0055] After initializing the vehicle path in the third layer and completing all assignments, a series of waste-generating points that each active collection center needs to serve are obtained. For each active collection center, such as J1, it is assigned four points: W1, W3, W5, and W7. A greedy path construction algorithm is initiated: starting from J1, the distance to all unvisited points is calculated, and the nearest point is selected as the first station, such as W5. Then, starting from W5, the distance to all remaining unvisited points is calculated again, and the nearest point is selected, and so on, until all points are visited. During this process, the waste generation of visited points is accumulated in real time, and the average value of the interval is taken. Once the accumulated amount exceeds 90% of the vehicle's load limit of 55 tons with a margin, the current path ends, the vehicle returns to J1, and the construction of the next new path begins, starting from J1 again to select the remaining points. Finally, J1 may generate two paths, such as [[W5,W1,W3],[W7]], which are converted into an integer vector sequence [[5,1,3],[7]]. All active collection centers perform this operation to obtain their respective path sequences.
[0056] Finally, the activation vectors generated in the first layer, the allocation vectors generated in the second layer, and all the path sequences generated in the third layer are combined to form a complete initial feasible food source that satisfies all capacity and vehicle load constraints.
[0057] Furthermore, after performing any of the operations S5 to S7, a multi-stage repair mechanism is used to perform feasibility repair on the three-vector encoding of the generated new food source to ensure that all constraints in the mixed-integer linear programming model are met. A multi-stage repair mechanism is used to correct violations of constraints in newly generated food sources, including: Phase 1: Perform waste point allocation repair. Traverse the second integer vector and check whether the collection center assigned to each waste point is active in the first binary vector and whether the current cumulative allocation of the collection center exceeds its processing capacity. If either condition is not met, the waste point is reassigned to another active collection center that meets the capacity constraint. If there is no active collection center that meets the condition, the currently inactive candidate collection center is activated and assigned to the waste point. Phase Two: Perform recycling enterprise allocation and repair. Based on the allocation result of the second integer vector, calculate the amount of recyclable waste for each activated collection center and check whether the recycling enterprise allocated to each activated collection center meets its processing capacity constraints. If not, the collection center is reassigned to another recycling enterprise that meets the capacity constraints. If none of the available recycling enterprises meet the constraints, the recycling enterprise with the lowest current load is selected for allocation. Phase 3 involves vehicle path repair. Based on the correspondence between collection centers and waste generation points determined by the repaired second integer vector, for each activated collection center, the greedy path construction algorithm is re-executed to generate new vehicle paths with the upper limit of the transport vehicle's load capacity as a constraint, thereby updating the corresponding sub-vectors in the third integer vector sequence.
[0058] In this embodiment, the multi-stage repair mechanism corrects the specific operational process of the constraint violation in the newly generated food source. This mechanism is invoked every time a new food source is generated, whether through crossover, mutation, or random perturbation.
[0059] Phase 1: Waste point allocation and repair; Suppose a newly generated candidate food source has activation vectors [1,0,0,1,0] with J1 and J4 activations, and an allocation vector of [0,2,0,1,0,0,1,1] with 8 generation points, where indices 0-1 represent activation centers. Begin traversing each position of the allocation vector.
[0060] For example, at position 2, the third generating point has an allocation value of 2. Checking the third candidate center at index 2 in the activation vector reveals a value of 0, meaning this generating point was assigned to an inactive center. Immediate repair is initiated: it queries the cumulative allocated waste amount of all currently active centers J1 and J4. Assume J1 has currently allocated W14 tons and W35 tons, with a remaining capacity of 50-9=41 tons; J4 has currently allocated W46 tons, with a remaining capacity of 40-6=34 tons. The average generation amount of W2 is 7 tons. Determining that the remaining capacity of both active centers can accommodate W2, a random center is selected, for example J1, and the value at position 2 of the allocation vector is changed to 0.
[0061] Continuing the iteration, suppose all allocations point to an active center, but the cumulative allocation to an active center J1 exceeds its maximum capacity (e.g., J1's capacity is 50 tons, but the cumulative allocation has reached 52 tons). We will identify all generation points allocated to J1 and attempt to reallocate one or more of them to other active centers with remaining capacity, such as J4, until J1's total allocation does not exceed its capacity.
[0062] Phase Two: Recycling companies distribute and repair waste; This repair process occurs after the allocation vector is corrected. First, the total waste volume of each activated collection center is calculated based on the allocation vector, then multiplied by a preset recognition rate, such as 0.6, to obtain its recyclable waste volume. Assume J1 has 30 tons of recyclable waste and J4 has 20 tons. The preset capacity of recycling companies RE1 is 40 tons, and RE2's capacity is 30 tons.
[0063] Iterate through each active collection center and check if its currently assigned recycling companies meet the capacity constraint. Assume J1 is currently assigned to RE1, and J4 is also assigned to RE1. At this point, RE1's cumulative recyclable waste has reached 50 tons, exceeding its 40-ton capacity. Initiate a fix: For J4, find other recycling companies with sufficient remaining capacity. Check RE2; its current load is 0, and its capacity is 30 tons, sufficient to accommodate J4's 20 tons. Therefore, change J4's allocation target to RE2 and update RE2's load to 20 tons. If all recycling companies cannot individually accommodate all the recyclable waste from a collection center, select the recycling company with the lowest current load, allowing it temporary overload, and record a high penalty, but still within the feasible solution range.
[0064] Phase 3: Vehicle route restoration; Because the allocation vectors may have been changed in the first two stages (e.g., W2 was reassigned from J4 to J1), the set of waste-generating points served by each active collection center has changed. Therefore, the original third-vector sequence path planning is completely invalid. A new path needs to be generated for each active collection center.
[0065] For J1, its new service point set becomes {W1, W2, W3, W5}. The greedy path construction algorithm is called again, using vehicle load as a constraint, to generate a new vehicle path sequence starting from J1. For example, the new path might be [[W1, W5, W2], [W3]]. This newly generated path sequence is then updated to the position corresponding to J1 in the third vector sequence of the food source.
[0066] For J4, its service point set becomes {W4,W6,W7,W8}, and its path is regenerated accordingly.
[0067] Through the sequential execution of these three stages, a new food source that may contain multiple constraint violations is reformulated into a fully viable design, ensuring that it can be used for subsequent fitness assessments and population competition.
[0068] Furthermore, the greedy path construction algorithm in stage three includes a 2-opt local optimization process after generating the vehicle path. This process involves iteratively swapping two non-adjacent edges in the current path to shorten the total path length until no better path can be obtained.
[0069] In this embodiment, it is assumed that when regenerating the initial path for collection center J1, a greedy algorithm generates the following path: the vehicle starts from J1, visits points P1, P2, P3, P4, and P5 in sequence, and then returns to J1. The total distance of this path is 100 kilometers.
[0070] The 2-opt optimization process is initiated, with the goal of checking if a better path order exists. The core of the optimization process is to iteratively swap two edges in the path. The specific steps are as follows: First, consider all vertices on the path, including the starting point J1 and the ending point J1. But usually, the optimization is the order between the customer points, which lists all customer points on the path in order: [P1, P2, P3, P4, P5].
[0071] In the first iteration, the first and third positions are chosen as split points. This corresponds to two edges: (P1→P2) and (P3→P4). Then, these two edges are deleted, and two new edges are created: (P1→P3) and (P2→P4). This means reversing the subpath between P2 and P3. The order of the new path becomes: [P1,P3,P2,P4,P5].
[0072] Calculate the total distance of this new path, assuming it to be 95 kilometers. Since 95 < 100, accept this improvement, update the current path to [P1, P3, P2, P4, P5], and update the total distance to 95 kilometers.
[0073] Next, starting with the new path, continue trying all other possible combinations of edge swaps. For example, next, try swapping the edges corresponding to (P1→P3) and (P4→P5) to generate a new path [P1,P4,P2,P3,P5] and calculate the distance. If the distance increases, abandon this swap and continue trying the next combination.
[0074] This process is an iterative search. It continuously traverses all possible swap pairs until, in a single complete traversal, no edge swap operation that can shorten the total distance is found. At this point, the path is considered to have reached a local optimum, and the optimization process ends.
[0075] Suppose the final optimized path is [P1, P4, P3, P2, P5], with a total distance of 92 kilometers. This 2-opt optimized path sequence will be used as the final path scheme and updated in the third vector sequence of the food sources. This local optimization step significantly improves the path quality without introducing a complex global path planning algorithm.
[0076] Furthermore, in the mixed-integer linear programming model in S2, the objective function, based on representing construction costs, transportation costs, vehicle start-up costs, and waste identification costs, integrates the cost of residents' emotional compensation. The cost of residents’ emotional compensation is quantified by a nonlinear influence function, taking the population density of the areas through which the transportation route passes, the transportation time period, and the population density around the collection center as input variables to characterize the differentiated psychological impact of different transportation routes and facility site selection schemes on the surrounding residents. In the mixed-integer linear programming model, the solid waste generation range of waste generation points is transformed into clear equivalent constraints with confidence levels through fuzzy programming. Differentiated network design schemes are generated based on the decision-maker's risk preferences.
[0077] In this embodiment, when constructing the model, in addition to the conventional construction cost, transportation cost, vehicle start-up cost, and waste identification cost, the objective function also includes a special resident emotional compensation cost. This cost aims to quantify the psychological and emotional impact on surrounding residents caused by the existence of solid waste transport vehicles and collection centers.
[0078] First, two new parameter sets were introduced to the model: Transportation route influence weight: For any two nodes i and j, an influence weight value is preset based on whether the road segment passes through a residential area, commercial area or industrial area, and the population density data on both sides of the road segment; for example, the weight value of a road segment passing through a bustling residential area in the city center is set to 100; while the weight value of a road segment located on the edge of an industrial area is only 10.
[0079] Collection Center Influence Weight: For each candidate collection center j, an influence weight value is preset based on its surroundings, such as population density within a 500-meter radius, and the presence of sensitive facilities like schools or hospitals. For example, a collection center near a school has a weight value of 150, while a collection center located in the suburbs has a weight value of 20.
[0080] Secondly, a nonlinear impact function is defined. This function is not a simple linear addition, but rather considers the diminishing marginal returns of cumulative impact. For example, for a path, the total emotional cost is not simply the sum of the weights of each segment, but is processed through a threshold function. If the total weight of a path exceeds a preset impact threshold, such as 500, the excess weight will be calculated with a lower coefficient to reflect the gradual decrease in residents' sensitivity to ongoing impacts.
[0081] Specifically, in model building, the cost of emotional compensation is broken down into two parts: The first part concerns the emotional cost of transportation. The model calculates the cost for each vehicle on each route. For example, for a route starting from the collection center and passing through nodes A, B, and C in sequence, the weight values of each segment center (A, AB, BC, C) are found. These weight values are then summed and a nonlinear influence function is applied to obtain a comprehensive influence value. This comprehensive influence value is then multiplied by a time influence factor. This factor distinguishes between daytime and nighttime transportation; for example, the factor is 1.5 for daytime and 0.8 for nighttime, because residents are more sensitive to noise and interference at night. Finally, this result is multiplied by a unit emotional compensation cost coefficient to obtain the monetized emotional cost of the route.
[0082] The second part addresses the emotional cost of collection centers. For each activated collection center, the model directly uses its pre-defined influence weight as a base influence value. Then, a non-linear influence function is applied to account for the cumulative effect of multiple facilities and a time-independent factor to obtain the monetized emotional cost of that collection center.
[0083] These two cost components are incorporated into the overall objective function and minimized along with construction and transportation costs. This means that when selecting a collection center location and planning transportation routes, the model automatically weighs economic costs against the potential impact on residents' quality of life. For example, when the optimization algorithm evaluates a solution, if the solution has low construction costs but requires vehicles to pass through densely populated areas, leading to a sharp increase in emotional compensation costs, then its total cost may be higher than another solution with slightly higher construction costs but a more remote route. This guides the optimization process to choose a solution with less social impact.
[0084] Furthermore, referring to Figure 4 The random perturbation mechanism in S7, used to generate new food sources to replace discarded food sources, includes: S71, obtain the three-vector code of the discarded food source; S72, perturb the first binary vector, randomly select one or more bits to perform an inversion operation, and check whether the condition that at least one collection center is activated is met after the inversion. If not, restore the operation or forcibly activate a collection center. S73, Perturb the second integer vector: Randomly select waste generation points and change the currently assigned collection center to another randomly selected collection center that is active and has not yet reached its capacity limit; S74, perturb the third integer vector sequence, randomly select the path sub-vector corresponding to the activated collection center, randomly shuffle the order of the nodes in the sub-vector, or randomly swap some nodes in two different paths; S75 combines the perturbed first binary vector, second integer vector, and third integer vector sequences to form a new food source.
[0085] In this embodiment, it is assumed that food source X has not been updated for 100 consecutive iterations and its total cost has remained unchanged. Therefore, it is decided to discard it and activate the scout bee phase to generate a new food source Y.
[0086] First, obtain the three-vector encoding of the discarded food source X. Assume its encoding is: activation vector [1,0,0,1,0]; allocation vector [0,0,1,1,0,0,1,1]; path sequence: for J1 index 0 it is [[1,3,5],[2,4]], and for J4 index 1 it is [[6,7,8]].
[0087] Then, the code is subjected to layer-by-layer random perturbation.
[0088] The first step is to perturb the activation vector by randomly selecting one bit and inverting it. For example, the third candidate center at index 2 is randomly selected. Since this bit was 0 in the original vector, it becomes 1 after inversion. The new activation vector becomes [1,0,1,1,0]. Then, it is checked whether the condition that at least one collection center is activated is met after this operation. Currently, three centers, J1, J3, and J4, are activated, so the condition is met and this perturbation is retained.
[0089] The second step involves perturbing the allocation vector by randomly selecting a waste generation point, such as the first generation point at index 0. Its current allocation value is 0, pointing to J1, and it needs to be reassigned. It first checks the list of activation centers mapped to the current activation vector [1,0,1,1,0], namely J1 at index 0, J3 at index 2, and J4 at index 3, and randomly selects one of these three centers as the new allocation, for example, selecting index 2J3; therefore, the value of index 0 in the allocation vector changes from 0 to 2. The updated allocation vector is [2,0,1,1,0,0,1,1].
[0090] The third step is to perturb the path sequence. Since both the activation vector and the allocation vector have changed, the path sequence also needs to be adjusted accordingly. First, the impact of the change in the activation vector is addressed: J3 is newly activated, so an entry for J3 needs to be added to the third vector sequence. Since J3 is newly activated and a generation point W1 has already been assigned to it in the allocation vector, an initial path will be generated for this purpose, such as directly generating a simple path containing W1 [[1]]. At the same time, since the allocation set of J1 has changed due to the removal of W1, its original path [[1,3,5],[2,4]] has become invalid because it contains a node W1 that no longer belongs to it. The path sequences of J1 and J4 are also perturbed, but not completely regenerated. For example, for J1, a path can be randomly selected and its node order can be shuffled, such as randomly merging and splitting [3,5] and [2,4]. A simple perturbation is to randomly swap two nodes in two paths. For example, take node 3 from the first path and swap it with node 2 in the second path to get the new path [[2,5],[3,4]]. For J4, its allocation set remains unchanged W6, W7, W8, but the path can be randomly shuffled, for example, the original path [6,7,8] can be shuffled into [7,8,6].
[0091] Finally, the perturbed activation vector, allocation vector, and new path sequence are combined to form a new food source Y. This Y differs significantly from the original X; it activates different centers, alters the allocation of waste points, and randomizes the path order. In this way, the scout bee stage introduces entirely new genes into the population, preventing the algorithm from prematurely falling into local optima and maintaining population diversity.
[0092] Furthermore, the hybrid adaptive swarm intelligence optimization process iterates between the hired bee stage, the observation bee stage, and the scout bee stage. After each iteration, all candidate food sources generated in the current iteration are compared with the food sources in the original population, and individuals with better fitness values are retained to update the population. The fitness value is obtained by calculating the objective function value of the three-vector encoding under the mixed-integer linear programming model. For solutions that violate any constraint in the model, the fitness value is reduced by introducing a dynamically adjusted penalty coefficient to guide the search process to converge toward the feasible solution space. In this embodiment, the entire optimization process is an iterative loop. In each iteration, the hired bee phase, the observation bee phase, and the scout bee phase are executed in sequence. These three phases work together to generate a batch of candidate food sources, i.e., new network design schemes.
[0093] At the start of each iteration, a population of 50 food sources is established. During the mercenary bee phase, each mercenary bee generates a candidate food source corresponding to one food source in the population. Therefore, after this phase, a first candidate set of 50 candidate food sources is obtained. In the observer bee phase, the observer bees select their parents based on probability, similarly generating a second candidate set of 50 candidate food sources. The scout bee phase may generate a few new food sources, such as 1-3, through perturbation.
[0094] After a new candidate food source is generated at each stage, it is not immediately added to the population. Instead, all newly generated candidate food sources are temporarily stored in a candidate pool. After all stages of this iteration are completed, an update mechanism is initiated: the 50 food sources in the current population are compared with all candidate food sources in the candidate pool, for example, 100.
[0095] The comparison is based on the fitness value of each food source. The fitness is obtained by calculating the total cost of the objective function corresponding to each food source. The key here is handling infeasible solutions. If the three-vector encoding of a food source still cannot fully satisfy all constraints after the repair mechanism, for example, if the violation of some constraints cannot be repaired, or if the repair causes other problems, a dynamically adjusted penalty coefficient will be introduced for it.
[0096] This penalty coefficient is not fixed, but rather related to the current iteration number and the degree of constraint violation of the solution. For example, in the early stages of iteration, the penalty coefficient is small, allowing the algorithm to explore some boundary regions with minor constraint violations; in the later stages of iteration, the penalty coefficient increases, forcing the algorithm to focus on fully feasible solutions. Specifically, when calculating the total cost of a food source, first calculate its actual construction, transportation, and other costs, C_actual. Then, assess the severity of each constraint violation, such as exceeding the vehicle's load capacity by a certain number of tons, or the number of uncovered generation points, and multiply each by a corresponding penalty factor. Summing all penalties yields P_total. Finally, the fitness value of the food source, i.e., the total cost used for comparison, is C_actual + (current iteration coefficient). P_total). The current iteration coefficient increases linearly with the number of iterations.
[0097] Sort all food source populations and candidate pools according to the total cost with penalty, and select the 50 food sources with the lowest total cost and the highest fitness as the new population for the next iteration. This means that a solution with low cost but severe penalty for violating constraints may be replaced by a solution with slightly higher cost but is completely feasible with zero penalty in the later stages.
[0098] This iterative process of hiring, observing, scouting, comparing, and selecting is repeated continuously until a preset termination condition is reached, such as reaching the maximum number of iterations, like 1000, or the average fitness value of the population no longer improves after multiple consecutive iterations. Ultimately, the food source with the lowest total cost in the population is the optimal or near-optimal reverse logistics network design scheme found by the algorithm.
[0099] The embodiments of this application have been described above with reference to the accompanying drawings. However, this application is not limited to the specific embodiments described above. The specific embodiments described above are merely illustrative and not restrictive. Those skilled in the art can make many other forms under the guidance of this application without departing from the scope of protection of this application, and all of these forms are within the protection scope of this application.
Claims
1. A hybrid adaptive swarm intelligence optimization method for designing a reverse logistics network for construction solid waste, characterized in that, Includes the following steps: S1. Obtain basic data on the reverse logistics network of construction solid waste in the area to be optimized, including the location of multiple waste generation points and their solid waste generation range, the location of multiple candidate collection centers and their construction costs and processing capacity, the location of multiple recycling companies and their processing capacity, and the load limit and start-up cost of transport vehicles. S2. Based on the aforementioned basic data, construct a mixed-integer linear programming model that integrates collection center location decisions, waste generation point allocation decisions, recycling enterprise allocation decisions, and vehicle routing decisions. S3, execute the hybrid adaptive swarm intelligence optimization process, maintain a population containing multiple food sources, each food source is represented by a three-vector encoding structure, the three-vector encoding structure includes a first binary vector for characterizing the activation state of the candidate collection center, a second integer vector for characterizing the allocation relationship between the waste generation point and the activated collection center, and a third integer vector sequence for characterizing the order in which transport vehicles access the waste generation point; S4. Using a hierarchical heuristic initialization strategy, generate an initial three-vector code for each food source in the population that satisfies all constraints in the mixed-integer linear programming model. S5, In the hired bee stage, for the current food source, another food source is randomly selected from the population, and the three-vector encodings of the two food sources are cross-operated based on the adaptive cross-probability to generate the first candidate food source; S6. During the observation bee phase, based on the fitness value of each food source, two food sources are selected through a roulette wheel selection mechanism, and the three-vector codes of these two food sources are cross-operated based on the dynamically adjusted cross-probability to generate a second candidate food source. S7, during the scout bee phase, if a food source is not updated within a preset number of iterations, it is discarded and a new food source is generated to replace it through a random perturbation mechanism; S8, iteratively execute S5 to S7 until the preset termination condition is met, and decode the three-vector encoding of the food source with the best fitness value in the current population into the optimized design scheme of the reverse logistics network and output it.
2. The method according to claim 1, characterized in that, The length of the first binary vector in the three-vector encoding structure is equal to the number of candidate collection centers, and the value of each bit is used to uniquely determine whether the corresponding candidate collection center is activated. The length of the second integer vector is equal to the number of waste generation points, and the value of each bit is used to uniquely assign the corresponding waste generation point to an activated collection center. The third integer vector sequence is a list with the same number of elements as the number of collection centers activated in the first binary vector. Each element in the list is an integer vector representing the order in which one or more transport vehicles serving the corresponding collection center visit their assigned waste generation points.
3. The method according to claim 1, characterized in that, The adaptive crossover probability in S5 is dynamically adjusted nonlinearly based on the current iteration number to balance global exploration and local exploitation. The crossover operation further includes: S51, determine the current food source and the randomly selected other food source, and obtain the first binary vector, second integer vector and third integer vector sequence of the two respectively; S52, perform multi-point crossover on the first binary vector, randomly generate a binary mask of the same length as the first binary vector, and replace the gene fragment at the corresponding position in the other food source with the current food source according to the mask to generate a new first binary vector; S53, perform sequential crossover on the second integer vector, randomly determine two crossover points, retain the gene fragments in the second integer vector of the current food source located between the two crossover points, and fill in the genes in the second integer vector of the other food source that do not appear in the retained fragments in the order of their appearance in the other food source to generate a new second integer vector; S54, perform path-based crossover on each sub-vector in the third integer vector sequence. For each activated collection center, obtain the sub-vector in the current food source and the sub-vector in another food source, randomly select sub-path segments for exchange, and make local adjustments to the duplicate and missing nodes generated after the exchange to generate a new third integer vector sequence. S55, the new first binary vector, the new second integer vector, and the new third integer vector sequence are combined to form the first candidate food source.
4. The method according to claim 1, characterized in that, The dynamically adjusted crossover probability in S6 is calculated based on the current iteration number and the diversity index of the current population. The roulette wheel selection mechanism allocates selection probabilities based on the fitness value of the food source; The specific steps for generating the second candidate food source include: S61, calculate the fitness value of each food source in the population. The higher the fitness value, the greater the probability of it being selected. S62, Based on the calculated probabilities, the first parent food source and the second parent food source are selected by roulette wheel. S63, obtain the average Hamming distance between the current iteration number and the three-vector codes of all food sources in the current population as the population diversity index; S64. Based on the preset time decay factor and the population diversity index, dynamically calculate the crossover probability value for this crossover operation. The crossover probability value is positively correlated with the population diversity index and negatively correlated with the current iteration number. S65, using the dynamically calculated crossover probability value, perform a crossover operation on the three-vector codes of the first parent food source and the second parent food source to generate the second candidate food source.
5. The method according to claim 1, characterized in that, The hierarchical heuristic initialization strategy in S4, used to generate initial three-vector codes that meet the constraints, includes: S41, initialize the first binary vector, calculate the expected capacity of each candidate collection center by means of the fuzzy triangular number transformation method according to the solid waste generation range of the waste generation point and the maximum capacity of the candidate collection center, and randomly activate some candidate collection centers in a manner not lower than the preset activation rate based on the preset risk preference parameter, so as to ensure that the total generation of all waste generation points does not exceed the total expected capacity of the activated collection centers. S42, initialize the second integer vector, and sequentially allocate the waste generation points to the activated collection centers. For each waste generation point, according to its solid waste generation range and the remaining capacity of the currently activated collection centers, select a collection center that meets the capacity constraint through a fuzzy comparison method for allocation, and update the remaining capacity of the collection center. If none of the currently activated collection centers can meet the capacity constraint, activate the candidate collection center and perform the allocation. S43, initialize the third integer vector sequence. For each activated collection center, obtain all the allocated waste generation points. Using a greedy path construction algorithm, with the upper limit of the load capacity of the transport vehicle as a constraint, generate vehicle paths covering all allocated points in sequence to obtain the corresponding integer vectors, and combine them to form the third integer vector sequence. S44. Combine the initialized first binary vector, second integer vector, and third integer vector sequence to form the initial feasible food source.
6. The method according to claim 1, characterized in that, After performing any of the operations in S5 to S7, a multi-stage repair mechanism is used to perform feasibility repair on the three-vector encoding of the generated new food source to ensure that all constraints in the mixed integer linear programming model are met. The multi-stage repair mechanism is used to correct the parts of the newly generated food source that violate the constraints, including: Phase 1: Perform waste point allocation repair. Iterate through the second integer vector and check whether the collection center assigned to each waste point is active in the first binary vector and whether the current cumulative allocation of the collection center exceeds its processing capacity. If either condition is not met, the waste point is reassigned to another active collection center that meets the capacity constraint. If there is no active collection center that meets the condition, the currently inactive candidate collection center is activated and assigned to the waste point. Phase Two: Perform recycling enterprise allocation and repair. Based on the allocation result of the second integer vector, calculate the amount of recyclable waste for each activated collection center and check whether the recycling enterprise allocated to each activated collection center meets its processing capacity constraints. If not, the collection center is reassigned to another recycling enterprise that meets the capacity constraints. If none of the available recycling enterprises meet the constraints, the recycling enterprise with the lowest current load is selected for allocation. Phase 3 involves vehicle route repair. Based on the correspondence between collection centers and waste generation points determined by the repaired second integer vector, for each activated collection center, the greedy route construction algorithm is re-executed to generate new vehicle routes with the upper limit of the transport vehicle's load capacity as a constraint, thereby updating the corresponding sub-vectors in the third integer vector sequence.
7. The method according to claim 6, characterized in that, The greedy path construction algorithm in stage three includes a 2-opt local optimization process after generating the vehicle path. This process involves iteratively swapping two non-adjacent edges in the current path to shorten the total path length until no better path can be obtained.
8. The method according to claim 1, characterized in that, The mixed-integer linear programming model in S2 integrates the cost of residents' emotional compensation into the objective function, which represents the construction cost, transportation cost, vehicle start-up cost, and waste identification cost. The cost of residents' emotional compensation is quantified by a nonlinear influence function, taking the population density of the areas through which the transportation route passes, the transportation time period, and the population density around the collection center as input variables to characterize the differentiated psychological impact of different transportation routes and facility site selection schemes on surrounding residents. The mixed-integer linear programming model transforms the solid waste generation range of the waste generation point into a clear equivalent constraint with a confidence level through fuzzy programming, and generates differentiated network design schemes based on the decision-maker's risk preference.
9. The method according to claim 1, characterized in that, The random perturbation mechanism in S7, used to generate new food sources to replace discarded food sources, includes: S71, obtain the three-vector code of the discarded food source; S72, the first binary vector is perturbed, one or more bits are randomly selected for inversion, and it is checked whether the condition that at least one collection center is activated is met after inversion. If not, the operation is restored or a collection center is forcibly activated. S73, Perturb the second integer vector: Randomly select waste generation points and change the currently assigned collection center to another randomly selected collection center that is active and has not yet reached its capacity limit; S74, the third integer vector sequence is perturbed, and a path sub-vector corresponding to the activated collection center is randomly selected. The order of the nodes in the sub-vector is randomly shuffled, or some nodes in two different paths are randomly swapped. S75, the perturbed first binary vector, second integer vector and third integer vector sequence are combined to form the new food source.
10. The method according to claim 1, characterized in that, The hybrid adaptive swarm intelligent optimization process iterates between the hired bee stage, the observation bee stage, and the scout bee stage. After each iteration, all candidate food sources generated in the current iteration are compared with the food sources in the original population, and individuals with better fitness values are retained to update the population. The fitness value is obtained by calculating the objective function value of the three-vector encoding under the mixed-integer linear programming model. For solutions that violate any constraint in the model, the fitness value is reduced by introducing a dynamically adjusted penalty coefficient to guide the search process to converge toward the feasible solution space.