A resource planning method, device and storage medium

By constructing the parent population of decision variables and using non-dominant sorting and cross-mutation algorithms, the problem that the existing technology cannot take into account multiple water resource management goals is solved, and the efficient, rapid and economical decision-making process of resource planning is achieved.

CN114519446BActive Publication Date: 2025-05-23BEIJING YINGTELIWEI ENVIRONMENTAL TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202011298786.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-11-18
Publication Date
2025-05-23
Estimated Expiration
2040-11-18

Smart Images

  • Figure CN114519446B_ABST
    Figure CN114519446B_ABST
Patent Text Reader

Abstract

The present application relates to a method, device and storage medium for resource planning, and belongs to the technical field of data processing in engineering planning. The method includes: constructing a parent population of decision variables based on resource planning survey data; performing non-dominated sorting on the variable individuals in the parent population according to a preset objective function to obtain a non-inferior solution set; updating the non-inferior solution set according to a preset crossover operator and the variable individuals in the parent population; constructing a new parent population based on the non-inferior solution set whenever a population restart condition is met, and generating and updating a new non-inferior solution set based on the new parent population; and determining a candidate solution for resource planning based on the latest non-inferior solution set when an algorithm termination condition is met. The present application can improve the efficiency of resource planning, shorten the time consumption of resource planning, and reduce the labor cost of resource planning.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of data processing in engineering planning, and in particular to a method, device and storage medium for resource planning. Background Art

[0002] With the continuous development of social economy, water resources have become a key factor in achieving sustainable development to a large extent. In order to ensure the scientific management and optimal allocation of water resources, water resources management information systems are currently widely used to obtain, analyze, process and store water resources related information, thereby providing information support and decision-making basis for water resources management.

[0003] Technical personnel can enter water resource management objectives in advance in the water resource management information system, such as the lowest management cost, the highest environmental benefit, and the compliance with flood control requirements. At the same time, for each management objective, technical personnel can also give the corresponding decision variables (such as dispatching flow, facility site selection, equipment group scale, pool volume, etc.) and decision algorithms in the water resource management information system. Therefore, the water resource management information system can select the optimal decision plan that meets the corresponding management objectives by adjusting the values ​​of different decision variables based on the decision algorithm.

[0004] In the process of implementing this application, the inventors found that the above technology has at least the following problems:

[0005] The optimal decision-making scheme selected by the water resources management information system can only achieve the optimal management goal, but cannot take into account other management goals. However, since water resources management is a complex and multidimensional issue, the optimal realization of a single management goal often cannot meet the ultimate needs of water resources management. Therefore, after the water resources management information system gives the optimal decision-making scheme for each management goal, the technicians need to manually determine the final decision-making scheme based on the actual needs of water resources management and the decision variables in multiple optimal decision-making schemes. In this way, the labor cost of water resources management is too high, the time consumption is long, and the management efficiency is low. Summary of the invention

[0006] In order to improve the efficiency of resource planning, shorten the time consumption of resource planning, and reduce the labor cost of resource planning, the embodiment of the present application provides a method, device and storage medium for resource planning. The technical solution is as follows:

[0007] In a first aspect, an embodiment of the present application provides a method for resource planning, the method comprising:

[0008] Construct the parent population of decision variables based on resource planning survey data;

[0009] According to a preset objective function, the variable individuals in the parent population are non-dominatedly sorted to obtain a non-inferior solution set; according to a preset crossover operator and the variable individuals in the parent population, the non-inferior solution set is updated;

[0010] Whenever a population restart condition is met, a new parent population is constructed based on the non-inferior solution set, and a new non-inferior solution set is generated and updated based on the new parent population;

[0011] When the algorithm termination condition is met, the resource planning candidate solution is determined based on the latest non-inferior solution set.

[0012] Based on the above technical solution, the resource planning device can compare and recommend at least one resource planning candidate solution that better meets the target expectation value from a large number of resource planning solutions, so that technical personnel can quickly and efficiently determine the final resource planning solution from a small number of options, thereby improving the efficiency of resource planning.

[0013] Optionally, updating the non-inferior solution set according to a preset crossover operator and variable individuals in the parent population includes:

[0014] According to the preset crossover operator, crossover calculation is performed on the variable individuals in the non-inferior solution set and other variable individuals in the parent population to generate offspring individuals one by one;

[0015] Each time a child individual is generated, the non-inferior solution set is updated using the child individual.

[0016] Based on the above technical solution, offspring individuals are obtained through crossover calculation, and then the non-inferior solution set is updated by the offspring individuals, which can continuously improve the diversity and expected value of the variable individuals in the non-inferior solution set.

[0017] Optionally, after obtaining the non-inferior solution set, the method further includes:

[0018] The variable individuals in the non-inferior solution set are archived and screened using a preset archiving amplitude, and the archived non-inferior solutions in the non-inferior solution set are determined and retained.

[0019] Based on the above technical solution, retaining an archived non-inferior solution for calculation among multiple similar non-inferior solutions can greatly reduce the complexity of the calculation and improve the calculation efficiency of the algorithm.

[0020] Optionally, the updating the non-inferior solution set by using the offspring individuals includes:

[0021] Determine whether the distance between the offspring individual and any of the archived non-inferior solutions is greater than the preset archived amplitude; if so, use the offspring individual to update the non-inferior solution set, otherwise discard the offspring individual.

[0022] Based on the above technical solution, before using the offspring individuals to update the non-inferior solution set, the performance improvement brought by the offspring individuals is evaluated. When the offspring individuals are only slightly better than the existing non-inferior solutions, the non-inferior solution set is not updated, thereby improving the computational efficiency of the algorithm.

[0023] Optionally, performing crossover calculation on the variable individuals in the non-inferior solution set and other variable individuals in the parent population according to a preset crossover operator to generate offspring individuals one by one includes:

[0024] Determine the number of parents n required for the preset crossover operator;

[0025] Randomly select a non-inferior solution from the non-inferior solution set, and select n-1 variable individuals from the parent population;

[0026] Based on the preset crossover operator, a crossover operation is performed on the non-inferior solution and the n-1 variable individuals to generate an offspring individual.

[0027] Based on the above technical solution, the diversity of the newly generated offspring individuals can be improved by using non-inferior solutions and other variable individuals for crossover calculation, and it can be ensured that the offspring individuals meet the expected values ​​to a certain extent.

[0028] Optionally, the selecting n-1 variable individuals from the parent population includes:

[0029] Selecting n-1 variable individuals from the parent population using a tournament method;

[0030] After the non-inferior solution set is updated by using the offspring individuals, the method further includes:

[0031] Based on the update of the non-inferior solution set, the algorithm parameters of the tournament method are adjusted.

[0032] Based on the above technical solution, on the one hand, the variable individuals are selected from the parent population using the tournament method, which can speed up the selection efficiency of the variable individuals. On the other hand, more suitable algorithm parameters can be obtained by adjusting the algorithm parameters through the feedback mechanism.

[0033] Optionally, the method further includes:

[0034] After each population restart, the algorithm parameters of the tournament method are reset.

[0035] Optionally, before using the offspring individuals to update the non-inferior solution set, the method further includes:

[0036] A mutation operation is performed on the offspring individuals based on a preset mutation operator.

[0037] Based on the above technical solution, the diversity of offspring individuals can be improved by performing mutation processing on offspring individuals, thereby reducing the probability that the offspring individuals and the parent individuals have basically similar values.

[0038] Optionally, the updating the non-inferior solution set by using the offspring individuals includes:

[0039] Comparing the offspring individuals with the non-inferior solutions in the non-inferior solution set one by one;

[0040] If the offspring individual dominates at least one non-inferior solution, use the offspring individual to replace at least one non-inferior solution dominated by it;

[0041] If the offspring individual is dominated by at least one non-inferior solution, discard the offspring individual;

[0042] If the offspring individual does not dominate all non-inferior solutions, the offspring individual is added to the non-inferior solution set.

[0043] Based on the above technical solution, only the dominant individual variables are retained in the non-inferior solution set, which can not only reduce the size of the non-inferior solution set and simplify the overall algorithm process, but also ensure that the individual variables in the non-inferior solution set always remain optimal.

[0044] Optionally, there are multiple preset crossover operators, and each preset crossover operator corresponds to a selection probability;

[0045] The method further includes: performing crossover calculations on the variable individuals in the non-inferior solution set and other variable individuals in the parent population according to a preset crossover operator, and before generating offspring individuals one by one:

[0046] Selecting a crossover operator based on the selection probability corresponding to each of the preset crossover operators;

[0047] After the non-inferior solution set is updated by using the offspring individuals, the method further includes:

[0048] If the non-inferior solution set changes, the selection probability of the crossover operator corresponding to the offspring individual is increased; otherwise, the selection probability of the crossover operator corresponding to the offspring individual is reduced.

[0049] Based on the above technical solution, on the one hand, different crossover operators can be set to generate offspring individuals with different characteristics. On the other hand, the selection probability of the crossover operator can be adjusted based on the dominant performance of the offspring individuals, so that the crossover operator that is more suitable for the current resource planning scenario can be selected more often, thereby continuously generating the optimal offspring individuals.

[0050] Optionally, the population restart condition includes:

[0051] The number of offspring individuals generated reaches the specified value; or,

[0052] Multiple consecutively generated offspring individuals do not trigger a change in the non-inferior solution set; or,

[0053] The number of non-inferior solutions in the non-inferior solution set is greater than a preset threshold.

[0054] Based on the above technical solution, different population restart conditions can be set according to different business needs, making the overall algorithm more suitable for actual resource planning scenarios.

[0055] Optionally, when the algorithm termination condition is met, determining a resource planning candidate solution according to the latest non-inferior solution set includes:

[0056] When the number of population restarts reaches the preset maximum number, the resource planning candidate solution is determined based on the latest non-inferior solution set.

[0057] Based on the above technical solution, the number of population restarts is set according to experience, so that better resource planning candidate solutions can be obtained as much as possible with as few population restart times as possible.

[0058] Optionally, constructing a new parent population based on the non-inferior solution set includes:

[0059] Obtaining a suboptimal solution set of the parent population;

[0060] For each suboptimal solution, a non-inferior solution having the smallest Euclidean distance to the suboptimal solution is set to correspond to the suboptimal solution;

[0061] For each non-inferior solution, among all suboptimal solutions corresponding to the non-inferior solution, the suboptimal solution having the largest Euclidean distance to the non-inferior solution is set as a subsidiary solution of the non-inferior solution;

[0062] A new parent population is constructed based on all non-inferior solutions and the subsidiary solutions of each non-inferior solution.

[0063] Based on the above technical solution, the suboptimal solution is introduced during the population restart process, which can improve the diversity and data coverage of the constructed new parent population.

[0064] Optionally, constructing a new parent population based on the non-inferior solution set includes:

[0065] By using a preset mutation operator and a preset crossover operator, the variable individuals in the non-inferior solution set are mutated and crossover processed to obtain multiple new non-inferior solutions;

[0066] A new parent population is constructed based on the non-inferior solution set and the multiple new non-inferior solutions.

[0067] Based on the above technical solution, a new non-inferior solution is obtained through crossover mutation operation during the population restart process, and then a new parent population is constructed in combination with the new non-inferior solution, which can improve the diversity and data coverage of the new parent population.

[0068] Optionally, performing non-dominated sorting on the variable individuals in the parent population according to a preset objective function to obtain a non-inferior solution set includes:

[0069] According to the preset objective function and the preset constraints, the variable individuals in the parent population are non-dominated and sorted to obtain a non-inferior solution set.

[0070] Based on the above technical solution, by introducing constraints during non-dominated sorting, the algorithm can automatically process the constraints without increasing the complexity of the algorithm, so that the algorithm can quickly focus on the feasible domain to search for the optimal solution, and finally evolve a solution set that meets the constraints.

[0071] Optionally, before performing non-dominated sorting on the variable individuals in the parent population according to a preset objective function, the method further includes:

[0072] A penalty factor is constructed in a preset objective function according to preset constraints, so that when the individual variable is far away from the preset constraints, the value of the preset objective function is far away from the expected value.

[0073] Based on the above technical solution, by constructing the penalty factors corresponding to the constraints in the objective function, the algorithm can automatically process the constraints without increasing the complexity of the algorithm, so that the algorithm can quickly focus on the feasible domain to search for the optimal solution, and finally evolve a solution set that satisfies the constraints.

[0074] Optionally, constructing a new parent population based on the non-inferior solution set includes:

[0075] When there is only one preset objective function, a new parent population is constructed based on the non-inferior solution set and the parent population.

[0076] Based on the above technical solution, in a single-target scenario, retaining some variable individuals in the parent population can effectively reduce the probability that the algorithm will eventually reach a local optimal solution.

[0077] Optionally, the method further includes:

[0078] When there is only one preset objective function, the population restart mechanism is turned off.

[0079] Based on the above technical solution, in a single-target scenario, setting not to restart the population can prevent the loss of too much population information during the population restart process, thereby effectively reducing the probability of the algorithm eventually reaching a local optimal solution.

[0080] In a second aspect, an embodiment of the present application further provides a resource planning device, the device comprising:

[0081] Population construction module, used to construct the parent population of decision variables based on resource planning survey data;

[0082] A dominance sorting module is used to perform non-dominated sorting on the variable individuals in the parent population according to a preset objective function to obtain a non-inferior solution set;

[0083] A solution set updating module, used for updating the non-inferior solution set according to a preset crossover operator and variable individuals in the parent population;

[0084] A population restart module, used for constructing a new parent population based on the non-inferior solution set whenever a population restart condition is met, and generating and updating a new non-inferior solution set based on the new parent population;

[0085] The result output module is used to determine the candidate resource planning scheme according to the latest non-inferior solution set when the algorithm termination condition is met.

[0086] Optionally, the solution set updating module is specifically used to:

[0087] According to the preset crossover operator, crossover calculation is performed on the variable individuals in the non-inferior solution set and other variable individuals in the parent population to generate offspring individuals one by one;

[0088] Each time a child individual is generated, the non-inferior solution set is updated using the child individual.

[0089] Optionally, the solution set updating module is further used to:

[0090] The variable individuals in the non-inferior solution set are archived and screened using a preset archiving amplitude, and the archived non-inferior solutions in the non-inferior solution set are determined and retained.

[0091] Optionally, the solution set updating module is specifically used to:

[0092] Determine whether the distance between the offspring individual and any of the archived non-inferior solutions is greater than the preset archived amplitude; if so, use the offspring individual to update the non-inferior solution set, otherwise discard the offspring individual.

[0093] Optionally, the solution set updating module is specifically used to:

[0094] Determine the number of parents n required for the preset crossover operator;

[0095] Randomly select a non-inferior solution from the non-inferior solution set, and select n-1 variable individuals from the parent population;

[0096] Based on the preset crossover operator, a crossover operation is performed on the non-inferior solution and the n-1 variable individuals to generate an offspring individual.

[0097] Optionally, the solution set updating module is specifically used to:

[0098] Selecting n-1 variable individuals from the parent population using a tournament method;

[0099] Based on the update of the non-inferior solution set, the algorithm parameters of the tournament method are adjusted.

[0100] Optionally, the population restart module is further used to:

[0101] After each population restart, the algorithm parameters of the tournament method are reset.

[0102] Optionally, the solution set updating module is further used to:

[0103] A mutation operation is performed on the offspring individuals based on a preset mutation operator.

[0104] Optionally, the solution set updating module is specifically used to:

[0105] Comparing the offspring individuals with the non-inferior solutions in the non-inferior solution set one by one;

[0106] If the offspring individual dominates at least one non-inferior solution, use the offspring individual to replace at least one non-inferior solution dominated by it;

[0107] If the offspring individual is dominated by at least one non-inferior solution, discard the offspring individual;

[0108] If the offspring individual does not dominate all non-inferior solutions, the offspring individual is added to the non-inferior solution set.

[0109] Optionally, there are multiple preset crossover operators, and each preset crossover operator corresponds to a selection probability;

[0110] The solution set updating module is also used for:

[0111] Selecting a crossover operator based on the selection probability corresponding to each of the preset crossover operators;

[0112] If the non-inferior solution set changes, the selection probability of the crossover operator corresponding to the offspring individual is increased; otherwise, the selection probability of the crossover operator corresponding to the offspring individual is reduced.

[0113] Optionally, the preset population restart condition includes:

[0114] The number of offspring individuals generated reaches the specified value; or,

[0115] Multiple consecutively generated offspring individuals do not trigger a change in the non-inferior solution set; or,

[0116] The number of non-inferior solutions in the non-inferior solution set is greater than a preset threshold.

[0117] Optionally, the result output module is specifically used to:

[0118] When the number of population restarts reaches the preset maximum number, the resource planning candidate solution is determined based on the latest non-inferior solution set.

[0119] Optionally, the population restart module is specifically used to:

[0120] Obtaining a suboptimal solution set of the parent population;

[0121] For each suboptimal solution, a non-inferior solution having the smallest Euclidean distance to the suboptimal solution is set to correspond to the suboptimal solution;

[0122] For each non-inferior solution, among all suboptimal solutions corresponding to the non-inferior solution, the suboptimal solution having the largest Euclidean distance to the non-inferior solution is set as a subsidiary solution of the non-inferior solution;

[0123] A new parent population is constructed based on all non-inferior solutions and the subsidiary solutions of each non-inferior solution.

[0124] Optionally, the population restart module is specifically used to:

[0125] By using a preset mutation operator and a preset crossover operator, the variable individuals in the non-inferior solution set are mutated and crossover processed to obtain multiple new non-inferior solutions;

[0126] A new parent population is constructed based on the non-inferior solution set and the multiple new non-inferior solutions.

[0127] Optionally, the control sorting module is specifically used to:

[0128] According to the preset objective function and the preset constraints, the variable individuals in the parent population are non-dominated and sorted to obtain a non-inferior solution set.

[0129] Optionally, the control sorting module is further used to:

[0130] A penalty factor is constructed in a preset objective function according to preset constraints, so that when the individual variable is far away from the preset constraints, the value of the preset objective function is far away from the expected value.

[0131] Optionally, the population restart module is specifically used to:

[0132] When there is only one preset objective function, a new parent population is constructed based on the non-inferior solution set and the parent population.

[0133] Optionally, the population restart module is further used to:

[0134] When there is only one preset objective function, the population restart mechanism is turned off.

[0135] In a third aspect, a computer-readable storage medium is provided, wherein the storage medium stores at least one instruction, at least one program, a code set or an instruction set, and the at least one instruction, the at least one program, the code set or the instruction set is loaded and executed by a processor to implement the resource planning method as described in the first aspect.

[0136] In summary, this application has the following beneficial effects:

[0137] By adopting the resource planning method disclosed in the present application, the resource planning device constructs the parent population of the decision variables, and non-dominated sorts the decision variables based on the objective function, and then continuously updates the non-inferior solution set through operations such as crossover mutation, and then cyclically executes a series of operations such as population restart, non-dominated sorting, and non-inferior solution set update. In this way, through the above algorithm flow, the resource planning device can compare and recommend at least one resource planning candidate solution that better meets the target expectation value among a large number of resource planning solutions, so that technical personnel can quickly and efficiently determine the final resource planning solution from a small number of choices, thereby improving the efficiency of resource planning. BRIEF DESCRIPTION OF THE DRAWINGS

[0138] Figure 1 A flow chart of a method for resource planning in one embodiment of the present application;

[0139] Figure 2 A schematic diagram of generating an offspring individual according to one embodiment of the present application;

[0140] Figure 3 This is a schematic diagram of the overall process of a resource planning algorithm in one embodiment of the present application;

[0141] Figure 4 This is a schematic diagram of the structure of a resource planning device according to one embodiment of the present application. DETAILED DESCRIPTION

[0142] In order to make the purpose, technical solutions and advantages of this application more clear, the following Figure 1-4 It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.

[0143] The embodiment of the present application provides a method for resource planning, which can be applied to resource planning equipment. The resource planning equipment can be a network device configured with a water resource management information system and applied to environmental planning such as water resource planning, water pollution control, or water environment engineering design. The resource planning equipment can be used to comprehensively consider the impact of multi-dimensional decision variables on resource planning goals on the basis of given multiple resource planning goals, so as to screen out at least one feasible resource planning candidate within a given decision range. Here, the resource planning goal can be the goal expected to be achieved when performing resource planning, such as the lowest planning cost, the smallest environmental impact, the shortest total time consumption, etc.; the decision variable can be a specific decision parameter group in resource planning, and each decision variable can be composed of a group of multi-dimensional decision parameters. The decision parameters can be planning locations, project scales, facility procurement plans, resource allocation plans, etc. The dimensions corresponding to the decision parameters contained in different decision variables are the same, and there are different values ​​of decision parameters in at least one dimension. Of course, according to the needs of actual business scenarios, the functions of the above-mentioned resource planning equipment can be completed by a device cluster of multiple network device components.

[0144] The following will be combined with specific implementation methods. Figure 1 The processing flow shown is described in detail, and the content can be as follows:

[0145] 101. Construct the parent population of decision variables based on resource planning survey data.

[0146] In practice, when conducting resource planning, technical personnel can obtain the actual scenarios and requirements corresponding to resource planning through field research, so as to determine the preliminary resource planning research data. The resource planning research data can be the aforementioned decision range, that is, the selectable value range of the decision parameter under each dimension, for example, the volume of the pool is "1000m 3 -1500m 3 ", the water scheduling rate is "50L / min-70L / min", and the equipment procurement manufacturers include "manufacturer A, manufacturer B and manufacturer C". Afterwards, the resource planning device can construct a parent population containing a certain number of decision variables based on the resource planning survey data, where the value of the decision parameter of any dimension in each decision variable satisfies the above resource planning survey data.

[0147] 102. According to the preset objective function, the variable individuals in the parent population are non-dominated and sorted to obtain a non-inferior solution set.

[0148] In implementation, a plurality of resource planning objectives may be set in the resource planning device, and a corresponding objective function f may exist for each resource planning objective. i (x), where the variable individual x= {x 1 , x2 , x 3 , …, x n} T , x n is the decision parameter of each dimension. For the variable individual x in the parent population a and x b , if for any objective function f i (x), all satisfy f i (x a ) is not inferior to f i (x b ), and there exists an objective function f j (x), so that f j (x a ) is better than f j (x b ), then it can be called variable individual x a Dominant variable individual x b Based on this rule, the resource planning device can perform non-dominated sorting on the variable individuals in the parent population, that is, determine the dominance relationship between each variable individual and other variable individuals, and further select variable individuals that are not dominated by any other variable individuals as non-inferior solutions, thereby obtaining a non-inferior solution set.

[0149] 103. Update the non-inferior solution set according to the preset crossover operator and the variable individuals in the parent population.

[0150] In implementation, the resource planning device may be pre-set with a crossover operator (hereinafter referred to as a preset crossover operator) for performing variable crossover processing, and a new variable individual may be generated by the preset crossover operator. In this way, the resource planning device may perform a crossover operation on the variable individuals in the parent population according to the preset crossover operator, so that the non-inferior solution set obtained in step 102 may be further updated using the new variable individuals generated by the crossover.

[0151] 104. Whenever a population restart condition is met, a new parent population is constructed based on the non-inferior solution set, and a new non-inferior solution set is generated and updated based on the new parent population.

[0152] The population restart condition may be a condition pre-set by a technician in the resource planning device to trigger the population restart.

[0153] In implementation, in the process of updating the non-inferior solution set, whenever it is detected that the population restart condition is met, the resource planning device can start the population restart process, that is, build a new parent population based on the latest non-inferior solution set, and refer to steps 102 and 103, and perform non-dominated sorting of the variable individuals in the new parent population according to the preset objective function to generate a new non-inferior solution set, and then update the new non-inferior solution set according to the preset crossover operator and the variable individuals in the new parent population. Similarly, in the process of updating the new non-inferior solution set, the resource planning device can also detect whether the population restart condition is met again. If so, the population restart process is triggered again, and the subsequent steps are executed in a loop. It is worth mentioning that the scale of the new parent population (that is, the number of variable individuals included) can be a specified multiple of the scale of the non-inferior solution set, and the variable individuals in the new parent population can include all non-inferior solutions in the non-inferior solution set, as well as variable individuals derived from non-inferior solutions. The scale of the parent population can be set by the technician.

[0154] 105. When the algorithm termination condition is met, the resource planning candidate solution is determined according to the latest non-inferior solution set.

[0155] The algorithm termination condition may be a condition pre-set by a technician in the resource planning device to terminate the entire algorithm process.

[0156] In implementation, during the cycle of executing non-inferior solution set update and population restart, if it is detected that the preset algorithm termination condition is met, the resource planning device can stop the processing of steps 102-104, and use the variable individuals in the latest non-inferior solution set as the standard to determine the resource planning candidate solution, that is, each variable individual can be set with a corresponding resource planning candidate solution.

[0157] For step 103, specifically, the parent individuals can be crossovered to generate offspring individuals, and the offspring individuals can be used to update the non-inferior solution set. The corresponding processing can be as follows: according to the preset crossover operator, crossover calculations are performed on the variable individuals in the non-inferior solution set and other variable individuals in the parent population to generate offspring individuals one by one; each time an offspring individual is generated, the non-inferior solution set is updated using the offspring individual.

[0158] In implementation, the resource planning device can divide the variable individuals in the parent population into the variable individuals in the non-inferior solution set and other variable individuals, and then perform crossover calculations on the variable individuals in the non-inferior solution set and other variable individuals according to the calculation method specified by the preset crossover operator, so as to generate offspring individuals. In this way, each time the resource planning device generates a offspring individual through crossover calculation, the non-inferior solution set can be updated using the newly generated offspring individual.

[0159] Specifically, the process of cross-generating offspring individuals may include the following processes: determining the number n of parents required by a preset crossover operator; randomly selecting a non-dominated solution from the non-dominated solution set and selecting n-1 variable individuals from the parent population; based on the preset crossover operator, performing a crossover operation on the non-dominated solution and the n-1 variable individuals to generate an offspring individual.

[0160] In implementation, during the process of generating each offspring individual, the number n of parents required by the preset crossover operator can be determined first, then a non-dominated solution is randomly selected from the non-dominated solution set, and at the same time, n-1 variable individuals are selected from all the variable individuals in the parent population according to the preset selection function. Of course, n-1 variable individuals can also be selected from other variable individuals except the non-dominated solution set. Subsequently, the preset crossover operator can be used to perform a crossover operation on the selected one non-dominated solution and the n-1 variable individuals to generate an offspring individual.

[0161] Optionally, the tournament method can be used to select n-1 variable individuals, and after updating the non-dominated solution set, the algorithm parameters of the tournament method can be adjusted based on the update situation of the non-dominated solution set.

[0162] In implementation, the tournament method is a method for selection operation. Assuming that the population contains m variable individuals, first k (k < n) variable individuals are randomly selected from the m variable individuals, and then the most desirable one variable individual is selected from these k variable individuals. It should be noted that the "expectation" or "expected value" in the embodiments of the present application can be understood as "the value desired to be achieved during resource planning", rather than the "mathematical expectation" in probability theory and statistics. In this way, on the one hand, the selection process of n-1 variable individuals can be completed based on the above tournament method; on the other hand, after updating the non-dominated solution set with the offspring individual, it can be determined whether the non-dominated solution set has changed. If it has changed, the algorithm parameters of the tournament method can be adjusted, that is, the value of "k" is increased, otherwise the value of "k" is decreased.

[0163] In addition, the algorithm parameters of the tournament method can be reset after each population restart, that is, the value of the above "k" is adjusted to the initial value.

[0164] Optionally, the resource planning device can perform a mutation operation on the offspring individual based on a preset mutation operator after each offspring individual is generated, so as to change the decision parameters in the offspring individual.

[0165] For ease of understanding, Figure 2 A schematic diagram of the generation process of an offspring individual is shown, which may mainly include processes such as non-dominated sorting, parent selection, crossover operation, and mutation operation.

[0166] Furthermore, only one non-inferior solution can be retained from multiple non-inferior solutions with similar objective function values. Accordingly, the following processing can be performed: archive screening is performed on individual variables in the non-inferior solution set using a preset archive amplitude, and the archived non-inferior solutions in the non-inferior solution set are determined and retained.

[0167] In implementation, a multidimensional vector space can be constructed according to the number of objective functions, each dimension corresponds to an objective function, and each variable individual corresponds to a vector in the multidimensional vector space. Afterwards, the variable individuals in the non-inferior solution set can be archived and screened using the preset archiving amplitude, that is, the multidimensional vector space is first divided into a large number of continuous spatial units with a side length of ε using the preset archiving amplitude ε, and then each variable individual in the non-inferior solution set is archived into the corresponding spatial unit. Next, for multiple variable individuals in the same spatial unit, the non-inferior solution closest to the center point of the spatial unit can be determined as the archived non-inferior solution, and then the archived non-inferior solution in each spatial unit is retained, and other non-inferior solutions in each spatial unit except the archived non-inferior solution are deleted. It should be noted that the center point of the spatial unit is not equivalent to the physical center point of the spatial unit. The center point can be determined according to the expected value of the objective function in each dimension, that is, compared with other points in the spatial unit, the values ​​of each objective function corresponding to the center point can be more in line with expectations.

[0168] Optionally, based on the above-mentioned process of retaining only archived non-inferior solutions, the process of updating the non-inferior solution set using offspring individuals can be as follows: determine whether the distance between the offspring individual and any archived non-inferior solution is greater than a preset archive amplitude; if so, use the offspring individual to update the non-inferior solution set, otherwise discard the offspring individual.

[0169] In implementation, after the archived non-inferior solution is determined by using the preset archive amplitude, each time a descendant individual is generated, the distance between the descendant individual and each archived non-inferior solution can be calculated first. Here, the distance calculation can be performed by dimension, that is, it refers to the difference between the two in each dimension. When the distance between the descendant individual and any archived non-inferior solution is greater than the preset archive amplitude, the descendant individual can be used to update the non-inferior solution set, otherwise the descendant individual can be directly discarded. In this way, only the descendant individuals whose performance improvement exceeds the preset archive amplitude can be retained, which effectively reduces the update frequency of the non-inferior solution set, thereby improving the computational efficiency of the overall algorithm.

[0170] Optionally, the dominance relationship can be used to determine whether the non-inferior solution set is actually updated, and the corresponding processing can be as follows: compare the offspring individuals with the non-inferior solutions in the non-inferior solution set one by one; if the offspring individual dominates at least one non-inferior solution, use the offspring individual to replace at least one non-inferior solution it dominates; if the offspring individual is dominated by at least one non-inferior solution, discard the offspring individual; if the offspring individual does not dominate all non-inferior solutions, add the offspring individual to the non-inferior solution set.

[0171] In implementation, after each offspring individual is generated by the resource planning device, the offspring individual can be compared with the non-inferior solutions in the non-inferior solution set one by one to determine the dominance relationship between the two. If the offspring individual dominates at least one non-inferior solution in the non-inferior solution set, the offspring individual can be used to replace all the non-inferior solutions it dominates. If the offspring individual is dominated by at least one non-inferior solution in the non-inferior solution set, the offspring individual can be directly discarded, and the non-inferior solution set remains unchanged. If the offspring individual and all the non-inferior solutions in the non-inferior solution set do not dominate each other, the offspring individual can be directly added to the non-inferior solution set.

[0172] In another embodiment, there may be multiple preset crossover operators, each preset crossover operator corresponds to a selection probability, so the following processing may exist before step 103: based on the selection probability corresponding to each preset crossover operator, a crossover operator is selected; after step 103, the following processing exists: if the non-inferior solution set changes, the selection probability of the crossover operator corresponding to the offspring individual is increased, otherwise the selection probability of the crossover operator corresponding to the offspring individual is reduced.

[0173] In implementation, multiple crossover operators may be pre-set in the resource planning device, such as SBX (Simulation Binary Crossover) operator, DE (Differential Evolution) operator, PCX (Parent-Centric Crossover) operator, UNDX (Unimodal Normal Distribution Crossover) operator, SPX (Simplex Crossover) operator, and UM (Uniform Mutation) operator. Each preset crossover operator may correspond to a selection probability, which is used to reflect the probability that the corresponding crossover operator can be selected when randomly selecting from all preset crossover operators. At the beginning of the algorithm, the selection probability corresponding to each crossover operator is equal. In this way, before generating offspring individuals, a preset crossover operator used this time can be selected according to the selection probability corresponding to each preset crossover operator.

[0174] Furthermore, after the non-inferior solution set is updated using the offspring individuals, the selection probability of the preset crossover operator can be adjusted based on the change of the non-inferior solution set. Specifically, after the update process is performed, if the non-inferior solution set changes, it means that the crossover operator used this time is likely to obtain high-performance offspring individuals, so the selection probability of the crossover operator can be increased; if the non-inferior solution does not change, it means that the crossover operator used this time is likely to fail to obtain high-performance offspring individuals, so the selection probability of the crossover operator can be reduced.

[0175] For step 104, the population restart condition can be set by the technician according to specific needs. Several feasible solutions are given below:

[0176] First: The number of offspring individuals generated reaches the specified value.

[0177] In implementation, the resource planning device can record the number of offspring individuals generated while generating offspring individuals through crossover operations. When the number of offspring individuals reaches a specified value, a population restart mechanism can be triggered, and the number of offspring individuals generated can be cleared when the population is restarted.

[0178] Second, the multiple consecutively generated offspring individuals did not trigger changes in the non-inferior solution set.

[0179] In implementation, the resource planning device can record the changes in the non-inferior solution set after updating the non-inferior solution set using the offspring individuals generated by crossover. When the non-inferior solution set has not changed, counting can be started. If the next offspring individual does not trigger the change of the non-inferior solution set again, the count is increased by 1. When an offspring individual triggers a change in the non-inferior solution set, the above count is cleared. In this way, when the count reaches a preset value, it indicates that multiple offspring individuals generated continuously have not triggered a change in the non-inferior solution set, so that the population can be restarted and the above count can be cleared at the same time.

[0180] Third, the number of non-inferior solutions in the non-inferior solution set is greater than a preset threshold.

[0181] In implementation, while using offspring individuals to update the non-inferior solution set, the number of non-inferior solutions in the non-inferior solution set can be monitored in real time. When the number of non-inferior solutions is greater than a preset threshold, the population restart can be triggered, and the size of the restarted population can be set to a specified multiple of the size of the non-inferior solution set.

[0182] For step 105, the algorithm flow can be terminated after a certain number of population restarts. The corresponding processing can be as follows: when the number of population restarts reaches a preset maximum number, a resource planning candidate solution is determined based on the latest non-inferior solution set.

[0183] In implementation, during the execution of the algorithm, the population can be restarted multiple times, and the maximum number of population restarts can be set in the resource planning device. In this way, when the number of population restarts reaches the preset maximum number, the algorithm process can be terminated, and the resource planning candidate solution can be determined based on the latest non-inferior solution set. For example, if the maximum number is set to 10 times, the population restart can be canceled at the beginning of the 10th population restart, and the non-inferior solution set before the population restart can be retained as the latest non-inferior solution set.

[0184] For step 104, some non-optimal individuals can be retained when the population is restarted, and the corresponding processing can be as follows: obtain the suboptimal solution set of the parent population; for each suboptimal solution, set the non-inferior solution with the smallest Euclidean distance to the suboptimal solution to correspond to the suboptimal solution; for each non-inferior solution, among all suboptimal solutions corresponding to the non-inferior solution, set the suboptimal solution with the largest Euclidean distance to the non-inferior solution as the subsidiary solution of the non-inferior solution; construct a new parent population based on all non-inferior solutions and the subsidiary solutions of each non-inferior solution.

[0185] In implementation, when the resource planning device restarts the population, it can first obtain the suboptimal solution set of the parent population before the restart. Here, referring to the dominance sorting in step 102, after obtaining the non-inferior solution set of the parent population, all non-inferior solutions can be removed from the parent population, and then non-dominated sorting is performed again among all the remaining variable individuals, and the variable individuals that are not dominated by any other variable individuals in the remaining variable individuals are selected as suboptimal solutions, so that the suboptimal solution set can be obtained. Next, for each suboptimal solution, the Euclidean distance between each non-inferior solution and the suboptimal solution can be calculated, and the non-inferior solution with the smallest Euclidean distance is selected to be paired with the suboptimal solution, so that each non-inferior solution may have zero, one or more suboptimal solutions corresponding to it. Afterwards, for each non-inferior solution, a suboptimal solution with the largest Euclidean distance to the non-inferior solution can be determined among all the corresponding suboptimal solutions, and the suboptimal solution is set as the subsidiary solution of the non-inferior solution. In this way, during the process of population restart, a new parent population can be constructed based on all non-inferior solutions and the subsidiary solutions of each non-inferior solution.

[0186] For step 104, when constructing a new parent population, crossover and mutation operations can be performed on the non-inferior solutions at the same time, and the corresponding processing can be as follows: through the preset mutation operator and the preset crossover operator, the variable individuals in the non-inferior solution set are mutated and crossover processed to obtain multiple new non-inferior solutions; based on the non-inferior solution set and the multiple new non-inferior solutions, a new parent population is constructed.

[0187] In implementation, when constructing a new parent population based on a non-inferior solution set, new variable individuals can be generated through crossover operations and mutation operations while copying the non-inferior solution set. Specifically, a mutation operator and a crossover operator for restarting the population can be preset in the resource planning device. When the population is restarted, the variable individuals in the non-inferior solution set can be mutated and crossover processed by the above-mentioned preset mutation operator and preset crossover operator to obtain multiple new non-inferior solutions, and then a new parent population can be constructed based on the non-inferior solution set and the obtained multiple new non-inferior solutions. Among them, in order to improve the diversity of the population, a crossover operator such as the AMS operator can be selected to assist in the crossover operation.

[0188] For step 102, constraints may be introduced when performing non-dominated sorting, and the corresponding processing may be as follows: according to the preset objective function and preset constraints, non-dominated sorting is performed on the variable individuals in the parent population to obtain a non-inferior solution set.

[0189] In implementation, the resource planning device may set at least one constraint in each resource planning service. The constraint may be for the value of a single or multiple decision parameters, or for the value of a single or multiple objective functions. For example, the constraint may be that the water dispatch rate is greater than 60L / min, and / or the total cost is less than 10 million yuan. In this way, when performing non-dominated sorting, the variable individuals in the parent population may be non-dominated sorted according to the preset objective function and the preset constraint to obtain a non-inferior solution set. Specifically, for any two variable individuals: if both variable individuals satisfy all constraints, then the dominance order between the two variable individuals can be determined by non-dominated sorting, that is, comparing the values ​​of the two variable individuals on the objective functions of each dimension; if both variable individuals do not satisfy all constraints, then the variable individual with a higher degree of satisfaction of the constraints can be set to dominate the other variable individual without comparing the values ​​of any objective function. For example, there are 10 constraints, variable individual A satisfies 8 constraints, and variable individual B satisfies 5 constraints, then it can be considered that variable individual A dominates variable individual B. For another example, if the constraint is that the total cost is less than 10 million yuan, the total cost of variable individual A is 11 million yuan, and the total cost of variable individual B is 12 million yuan, then it can be considered that variable individual A satisfies the constraints more highly; if one variable individual satisfies all constraints and the other variable individual does not satisfy all constraints, then it can be determined that the variable individual that satisfies the constraints dominates the other variable individual.

[0190] Optionally, constraints may be introduced during non-dominated sorting. Accordingly, the following processing may be performed before step 102: a penalty factor is constructed in a preset objective function according to the preset constraints, so that when the individual variables are far away from the preset constraints, the value of the preset objective function is far away from the expected value.

[0191] In implementation, the resource planning device may be provided with at least one constraint in each resource planning service. The constraint may be for the value of a single or multiple decision parameters, or for the value of a single or multiple objective functions. For example, the constraint may be that the water dispatch rate is greater than 60L / min, and / or the total cost is less than 10 million yuan. In this way, before performing non-dominated sorting, the constraint may be converted into a part of the objective function, that is, the degree of violation of the constraint is added to the objective function. When the individual variable is far away from the preset constraint, the value of the preset objective function is also far away from the expected value, which increases the possibility of the individual variable being eliminated during the calculation process. Specifically, a penalty factor may be constructed in the preset objective function based on the preset constraint. For example, when the preset constraint is that the water dispatch rate is greater than 60L / min, the preset objective function f i The smaller the value of (x), the more it meets the expectation. Then we can construct a penalty factor δ (δ < 0), so we can get the new objective function Among them, x a is the water dispatch rate.

[0192] For step 104, for the single-objective problem, in order to prevent the population information from being discarded too much due to restart, a new parent population can be constructed in the following way: when there is only one preset objective function, a new parent population is constructed based on the non-inferior solution set and the parent population.

[0193] In implementation, when there is only one preset objective function, the resource planning device can simultaneously obtain the latest non-inferior solution set and the parent population corresponding to the non-inferior solution set during the population restart process, and then merge all the variable individuals contained in the two. Afterwards, the resource planning device can select N variable individuals from all the merged variable individuals according to the value of the preset objective function, starting from the variable individual that best meets the expectations, to construct a new parent population. Among them, N is the number of variable individuals required to construct a new parent population. It is not difficult to understand that in order to prevent too much current population information from being discarded during the population restart process, it can also be set that when there is only one preset objective function, the population restart mechanism is not triggered to avoid problems caused by population restart.

[0194] refer to Figure 3 The overall algorithm flow chart shown mainly shows the steps of restarting the population cycle and generating offspring individuals. For specific details, please refer to the text description in this embodiment.

[0195] By adopting the resource planning method disclosed in the present application, the resource planning device constructs the parent population of the decision variables, and non-dominated sorts the decision variables based on the objective function, and then continuously updates the non-inferior solution set through operations such as crossover mutation, and then cyclically executes a series of operations such as population restart, non-dominated sorting, and non-inferior solution set update. In this way, through the above algorithm flow, the resource planning device can compare and recommend at least one resource planning candidate solution that is more in line with the target expectation value among a large number of resource planning solutions, so that technical personnel can quickly and efficiently determine the final resource planning solution from a small number of choices, thereby improving the efficiency of resource planning.

[0196] Based on the same technical concept, the embodiment of the present application also provides a resource planning device, such as Figure 4 As shown, the device comprises:

[0197] The population construction module 401 is used to construct the parent population of decision variables based on the resource planning survey data; the dominance sorting module 402 is used to perform non-dominated sorting on the variable individuals in the parent population according to the preset objective function to obtain a non-inferior solution set;

[0198] A solution set updating module 403, used to update the non-inferior solution set according to a preset crossover operator and variable individuals in the parent population;

[0199] A population restart module 404, configured to construct a new parent population based on the non-inferior solution set whenever a population restart condition is met, and to generate and update a new non-inferior solution set based on the new parent population;

[0200] The result output module 405 is used to determine a candidate resource planning solution according to the latest non-inferior solution set when the algorithm termination condition is met.

[0201] Optionally, the solution set updating module 403 is specifically used to:

[0202] According to the preset crossover operator, crossover calculation is performed on the variable individuals in the non-inferior solution set and other variable individuals in the parent population to generate offspring individuals one by one;

[0203] Each time a child individual is generated, the non-inferior solution set is updated using the child individual.

[0204] Optionally, the solution set updating module 403 is further used to:

[0205] The variable individuals in the non-inferior solution set are archived and screened using a preset archiving amplitude, and the archived non-inferior solutions in the non-inferior solution set are determined and retained.

[0206] Optionally, the solution set updating module 403 is specifically used to:

[0207] Determine whether the distance between the offspring individual and any of the archived non-inferior solutions is greater than the preset archived amplitude; if so, use the offspring individual to update the non-inferior solution set, otherwise discard the offspring individual.

[0208] Optionally, the solution set updating module 403 is specifically used to:

[0209] Determine the number of parents n required for the preset crossover operator;

[0210] Randomly select a non-inferior solution from the non-inferior solution set, and select n-1 variable individuals from the parent population;

[0211] Based on the preset crossover operator, a crossover operation is performed on the non-inferior solution and the n-1 variable individuals to generate an offspring individual.

[0212] Optionally, the solution set updating module 403 is specifically used to:

[0213] Selecting n-1 variable individuals from the parent population using a tournament method;

[0214] Based on the update of the non-inferior solution set, the algorithm parameters of the tournament method are adjusted.

[0215] Optionally, the population restart module 404 is further used to:

[0216] After each population restart, the algorithm parameters of the tournament method are reset.

[0217] Optionally, the solution set updating module 403 is further used to:

[0218] A mutation operation is performed on the offspring individuals based on a preset mutation operator.

[0219] Optionally, the solution set updating module 403 is specifically used to:

[0220] Comparing the offspring individuals with the non-inferior solutions in the non-inferior solution set one by one;

[0221] If the offspring individual dominates at least one non-inferior solution, use the offspring individual to replace at least one non-inferior solution dominated by it;

[0222] If the offspring individual is dominated by at least one non-inferior solution, discard the offspring individual;

[0223] If the offspring individual does not dominate all non-inferior solutions, the offspring individual is added to the non-inferior solution set.

[0224] Optionally, there are multiple preset crossover operators, and each preset crossover operator corresponds to a selection probability;

[0225] The solution set updating module 403 is further used for:

[0226] Selecting a crossover operator based on the selection probability corresponding to each of the preset crossover operators;

[0227] If the non-inferior solution set changes, the selection probability of the crossover operator corresponding to the offspring individual is increased; otherwise, the selection probability of the crossover operator corresponding to the offspring individual is reduced.

[0228] Optionally, the preset population restart condition includes:

[0229] The number of offspring individuals generated reaches the specified value; or,

[0230] Multiple consecutively generated offspring individuals do not trigger a change in the non-inferior solution set; or,

[0231] The number of non-inferior solutions in the non-inferior solution set is greater than a preset threshold.

[0232] Optionally, the result output module 405 is specifically used to:

[0233] When the number of population restarts reaches the preset maximum number, the resource planning candidate solution is determined based on the latest non-inferior solution set.

[0234] Optionally, the population restart module 404 is specifically configured to:

[0235] Obtaining a suboptimal solution set of the parent population;

[0236] For each suboptimal solution, a non-inferior solution having the smallest Euclidean distance to the suboptimal solution is set to correspond to the suboptimal solution;

[0237] For each non-inferior solution, among all suboptimal solutions corresponding to the non-inferior solution, the suboptimal solution having the largest Euclidean distance to the non-inferior solution is set as a subsidiary solution of the non-inferior solution;

[0238] A new parent population is constructed based on all non-inferior solutions and the subsidiary solutions of each non-inferior solution.

[0239] Optionally, the population restart module 404 is specifically configured to:

[0240] By using a preset mutation operator and a preset crossover operator, the variable individuals in the non-inferior solution set are mutated and crossover processed to obtain multiple new non-inferior solutions;

[0241] A new parent population is constructed based on the non-inferior solution set and the multiple new non-inferior solutions.

[0242] Optionally, the dominance ranking module 402 is specifically configured to:

[0243] According to the preset objective function and the preset constraints, the variable individuals in the parent population are non-dominated and sorted to obtain a non-inferior solution set.

[0244] Optionally, the dominance ranking module 402 is further configured to:

[0245] A penalty factor is constructed in a preset objective function according to preset constraints, so that when the individual variable is far away from the preset constraints, the value of the preset objective function is far away from the expected value.

[0246] Optionally, the population restart module 404 is specifically configured to:

[0247] When there is only one preset objective function, a new parent population is constructed based on the non-inferior solution set and the parent population.

[0248] Optionally, the population restart module 404 is further used to:

[0249] When there is only one preset objective function, the population restart mechanism is turned off.

[0250] An embodiment of the present application also provides a computer-readable storage medium, in which at least one instruction, at least one program, a code set or an instruction set is stored. The at least one instruction, the at least one program, the code set or the instruction set is loaded and executed by a processor to implement the resource planning method as described in steps 101 to 105.

[0251] The above are all preferred embodiments of the present application, and are not intended to limit the protection scope of the present application. Any feature disclosed in this specification (including the abstract and drawings), unless otherwise stated, can be replaced by other equivalent or alternative features with similar purposes. That is, unless otherwise stated, each feature is only an example of a series of equivalent or similar features.

Claims

1. A method of resource planning, It is characterized in that The method is applied to the field of water resources management, and comprises: Based on the resource planning survey data, a parent population of decision variables is constructed; the resource planning survey data includes the optional value range of the decision parameters under each dimension, and the decision parameters include: pool volume, water volume scheduling rate, equipment procurement manufacturer, and total cost. Each decision variable is composed of a set of multi-dimensional decision parameters, and the value of any dimensional decision parameter in each decision variable satisfies the resource planning scheduling data; According to a preset objective function, the variable individuals in the parent population are non-dominatedly sorted to obtain a non-inferior solution set; the objectives include minimum planning cost, minimum environmental impact and shortest total time consumption, and a corresponding objective function is set for each planning objective; The non-dominated sorting is combined with preset constraints to select feasible solutions that meet the water scheduling rate greater than 60L / min and / or the total cost less than 10 million yuan, and obtain a non-inferior solution set; The non-inferior solution set is updated according to a preset crossover operator and individual variables in the parent population; the non-inferior solution set is updated according to a preset crossover operator and individual variables in the parent population, including: According to a preset crossover operator, crossover calculations are performed on the variable individuals in the non-inferior solution set and other variable individuals in the parent population to generate offspring individuals one by one; Each time a descendant individual is generated, the non-inferior solution set is updated using the descendant individual; The method of performing crossover calculation on the variable individuals in the non-inferior solution set and other variable individuals in the parent population according to a preset crossover operator to generate offspring individuals one by one includes: Determine the number of parents n required for the preset crossover operator; Randomly select a non-inferior solution from the non-inferior solution set, and select n-1 variable individuals from the parent population; Based on the preset crossover operator, a crossover operation is performed on the non-inferior solution and the n-1 variable individuals to generate a descendant individual; The updating of the non-inferior solution set by using the offspring individuals comprises: Comparing the offspring individuals with the non-inferior solutions in the non-inferior solution set one by one; If the offspring individual dominates at least one non-inferior solution, use the offspring individual to replace at least one non-inferior solution dominated by it; If the offspring individual is dominated by at least one non-inferior solution, discard the offspring individual; If the offspring individual does not dominate all non-inferior solutions, then the offspring individual is added to the non-inferior solution set; Whenever a population restart condition is met, a new parent population is constructed based on the non-inferior solution set, and a new non-inferior solution set is generated and updated based on the new parent population; The population restart conditions include: The number of offspring individuals generated reaches the specified value; or, Multiple consecutively generated offspring individuals do not trigger a change in the non-inferior solution set; or, The number of non-inferior solutions in the non-inferior solution set is greater than a preset threshold; The constructing a new parent population based on the non-inferior solution set comprises: Obtaining a suboptimal solution set of the parent population; For each suboptimal solution, a non-inferior solution having the smallest Euclidean distance to the suboptimal solution is set to correspond to the suboptimal solution; For each non-inferior solution, among all suboptimal solutions corresponding to the non-inferior solution, the suboptimal solution having the largest Euclidean distance to the non-inferior solution is set as a subsidiary solution of the non-inferior solution; Constructing a new parent population based on all non-inferior solutions and the subsidiary solutions of each non-inferior solution; or performing mutation and crossover processing on variable individuals in the non-inferior solution set by using a preset mutation operator and a preset crossover operator to obtain multiple new non-inferior solutions; constructing a new parent population based on the non-inferior solution set and the multiple new non-inferior solutions; When the algorithm termination conditions are met, the candidate water resources planning solutions that meet the multidimensional constraints are determined based on the latest non-inferior solution set.

2. The method according to claim 1, It is characterized in that After obtaining the non-inferior solution set, the method further includes: The variable individuals in the non-inferior solution set are archived and screened using a preset archiving amplitude, and the archived non-inferior solutions in the non-inferior solution set are determined and retained.

3. The method according to claim 2, It is characterized in that The updating of the non-inferior solution set by using the offspring individuals comprises: Determine whether the distance between the offspring individual and any of the archived non-inferior solutions is greater than the preset archive amplitude; If so, the offspring individuals are used to update the non-inferior solution set, otherwise the offspring individuals are discarded.

4. The method according to claim 1, It is characterized in that The step of selecting n-1 variable individuals from the parent population includes: Selecting n-1 variable individuals from the parent population using a tournament method; After the non-inferior solution set is updated by using the offspring individuals, the method further includes: Based on the update of the non-inferior solution set, the algorithm parameters of the tournament method are adjusted.

5. The method according to claim 4, It is characterized in that The method further comprises: After each population restart, the algorithm parameters of the tournament method are reset.

6. The method according to claim 1, It is characterized in that Before the non-inferior solution set is updated by using the offspring individuals, the method further includes: A mutation operation is performed on the offspring individuals based on a preset mutation operator.

7. The method according to claim 1, It is characterized in that There are multiple preset crossover operators, and each preset crossover operator corresponds to a selection probability; The method further includes: performing crossover calculations on the variable individuals in the non-inferior solution set and other variable individuals in the parent population according to a preset crossover operator, and before generating offspring individuals one by one: Selecting a crossover operator based on the selection probability corresponding to each of the preset crossover operators; After the non-inferior solution set is updated by using the offspring individuals, the method further includes: If the non-inferior solution set changes, the selection probability of the crossover operator corresponding to the offspring individual is increased; otherwise, the selection probability of the crossover operator corresponding to the offspring individual is reduced.

8. The method according to claim 1, It is characterized in that When the algorithm termination condition is met, a resource planning candidate solution is determined according to the latest non-inferior solution set, including: When the number of population restarts reaches the preset maximum number, the resource planning candidate solution is determined based on the latest non-inferior solution set.

9. The method according to claim 1, It is characterized in that The non-dominated sorting of the variable individuals in the parent population is performed according to the preset objective function to obtain a non-inferior solution set, including: According to the preset objective function and the preset constraints, the variable individuals in the parent population are non-dominated and sorted to obtain a non-inferior solution set.

10. The method according to claim 1, It is characterized in that Before performing non-dominated sorting on the variable individuals in the parent population according to the preset objective function, the method further includes: A penalty factor is constructed in the preset objective function according to the preset constraint condition, so that when the individual value of the variable is far away from the preset constraint condition, the value of the preset objective function is far away from the expected value.

11. The method according to claim 1, It is characterized in that The constructing a new parent population based on the non-inferior solution set comprises: When there is only one preset objective function, a new parent population is constructed based on the non-inferior solution set and the parent population.

12. The method according to claim 1, It is characterized in that The method further comprises: When there is only one preset objective function, the population restart mechanism is turned off.

13. A resource planning device, It is characterized in that The device is applied to the field of water resources management, and comprises: A population construction module is used to construct a parent population of decision variables based on resource planning survey data; the resource planning survey data includes an optional value range of decision parameters under each dimension, and the decision parameters include: pool volume, water scheduling rate, equipment procurement manufacturer, and total cost. Each decision variable is composed of a set of multi-dimensional decision parameters, and the value of the decision parameter of any dimension in each decision variable satisfies the resource planning scheduling data; a dominance sorting module is used to perform non-dominated sorting on the variable individuals in the parent population according to a preset objective function to obtain a non-inferior solution set; the objectives include the lowest planning cost, the smallest environmental impact, and the shortest total time consumption, and a corresponding objective function is set for each planning objective; the non-dominated sorting is combined with preset constraints to screen out feasible solutions that meet the water scheduling rate greater than 60L / min and / or the total cost less than 10 million yuan to obtain a non-inferior solution set; A solution set updating module is used to update the non-inferior solution set according to a preset crossover operator and the variable individuals in the parent population; the solution set updating module is specifically used to: perform crossover calculations on the variable individuals in the non-inferior solution set and other variable individuals in the parent population according to the preset crossover operator, and generate offspring individuals one by one; each time a offspring individual is generated, the non-inferior solution set is updated using the offspring individual; The solution set updating module is specifically used to: determine the number of parents n required by the preset crossover operator; randomly select a non-inferior solution from the non-inferior solution set, and select n-1 variable individuals from the parent population; based on the preset crossover operator, perform a crossover operation on the non-inferior solution and the n-1 variable individuals to generate a child individual; The solution set updating module is specifically used to: compare the offspring individual with the non-inferior solutions in the non-inferior solution set one by one; if the offspring individual dominates at least one non-inferior solution, use the offspring individual to replace at least one non-inferior solution dominated by it; if the offspring individual is dominated by at least one non-inferior solution, discard the offspring individual; if the offspring individual and all non-inferior solutions do not dominate each other, add the offspring individual to the non-inferior solution set; A population restart module, used for constructing a new parent population based on the non-inferior solution set whenever a population restart condition is met, and generating and updating a new non-inferior solution set based on the new parent population; The preset population restart condition includes: the number of offspring individuals generated reaches a specified value; or, multiple offspring individuals generated continuously do not trigger a change in the non-inferior solution set; or, the number of non-inferior solutions in the non-inferior solution set is greater than a preset threshold; The population restart module is specifically used to: obtain the suboptimal solution set of the parent population, and for each suboptimal solution, set the non-inferior solution with the smallest Euclidean distance to the suboptimal solution to correspond to the suboptimal solution; for each non-inferior solution, among all suboptimal solutions corresponding to the non-inferior solution, set the suboptimal solution with the largest Euclidean distance to the non-inferior solution as the subsidiary solution of the non-inferior solution; construct a new parent population based on all non-inferior solutions and the subsidiary solution of each non-inferior solution; and a result output module is used to determine the candidate water resources planning scheme that meets the multi-dimensional constraint conditions according to the latest non-inferior solution set when the algorithm termination condition is met.

14. A computer-readable storage medium, It is characterized in that The storage medium stores at least one instruction, at least one program, a code set or an instruction set, and the at least one instruction, the at least one program, the code set or the instruction set is loaded and executed by the processor to implement the resource planning method as described in any one of claims 1 to 12.

Citation Information

Patent Citations

  • Water resource optimization scheduling method based on improved multi-target quantum genetic algorithm

    CN107527119A

  • A multi-objective evolutionary algorithm applied to reservoir group scheduling

    CN109948847A