A short-term wind power forecasting method based on IJS-SVR model

By improving the artificial jellyfish algorithm to optimize the support vector regression model, using chaotic Tent mapping and sinusoidal dynamic adaptive factors, the problem of low wind power prediction accuracy in the existing technology is solved, high-precision wind power prediction is achieved, and grid stability and economic benefits of wind power generation are enhanced.

CN114707421BActive Publication Date: 2025-03-28HEBEI UNIV OF TECH

Patent Information

Application Number
CN202210455250.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-04-28
Publication Date
2025-03-28
Estimated Expiration
2042-04-28

AI Technical Summary

Technical Problem

In the prior art, it is difficult for a simple machine learning model to achieve high-precision prediction of wind power. Intelligent evolution algorithms have problems such as poor optimization ability and early maturity convergence when optimizing the model, resulting in the accuracy and accuracy of wind power prediction results still need to be improved.

Method used

The improved artificial jellyfish algorithm is used to optimize the support vector regression model (IJS-SVR), and the initialization of jellyfish populations is improved by introducing a chaotic Tent mapping method, and a sine dynamic adaptive factor is introduced into the jellyfish position update formula to enhance the algorithm's global search ability and overall optimization ability.

Benefits of technology

It improves the accuracy and performance of wind power power prediction, avoids the algorithm's early maturity convergence during the search process, enhances the model's prediction ability, helps the power grid to operate stably and improves the economic benefits of wind power generation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114707421B_ABST
    Figure CN114707421B_ABST
Patent Text Reader

Abstract

The present invention proposes a short-term wind power forecasting method based on the IJS‑SVR model. The steps are as follows: obtain a wind power generation related data set S, divide it into training data and test data, determine the input and output of the prediction model, and normalize the data; set the parameters of the improved artificial jellyfish (IJS) algorithm and the support vector regression (SVR) model; run the improved artificial jellyfish (IJS) algorithm to obtain the optimal penalty factor C and the optimal kernel function parameter g in the support vector regression (SVR) model; bring the optimized optimal parameter combination into the support vector regression (SVR) model, and train the support vector regression (IJS‑SVR) model optimized by the improved artificial jellyfish algorithm; input the test data into the IJS‑SVR model to obtain the prediction results, and denormalize the prediction results. The results show that in terms of MAE, MAPE, RMSE, R 2 Under the performance index, the prediction performance of the IJS-SVR model proposed in the present invention is better, which effectively makes up for the low prediction accuracy of the existing short-term wind power output power prediction method.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The technical solution of the present invention belongs to the technical field of wind power generation, and specifically is a short-term wind power prediction method. Background Art

[0002] In recent years, the introduction of the national new energy policy has led to the widespread application of wind power technology. However, with the continuous increase in wind power installed capacity, some shortcomings and limitations in the utilization process have also been exposed. As a clean energy source, wind energy has certain volatility and uncertainty. The output power of wind power generation is also affected by seasons, weather and other factors. When a large-scale wind power generation system with volatility is connected to the power grid, it will inevitably bring challenges to the safe and stable operation of the power system.

[0003] Predicting wind power is an important foundation for connecting large-scale wind power systems to the power grid. Short-term wind power forecasting refers to forecasting wind power output within the next 3 days (72 hours). The forecast results can not only provide decision-making basis for grid dispatchers and reduce the impact of wind power output fluctuations on the power grid, but also bring economic benefits to the power production sector. In the prior art, it is difficult for a simple machine learning model to achieve high-precision prediction of wind power. Therefore, intelligent evolutionary algorithms are often used to optimize machine learning models. By using intelligent evolutionary algorithms to find the optimal combination of key performance parameters of the model, it can save working time and improve the prediction accuracy of the model. However, these algorithms have problems such as poor optimization ability and premature convergence, resulting in the need to improve the accuracy and precision of the final wind power prediction results.

[0004] Therefore, seeking a short-term wind power forecasting method with high prediction accuracy and small prediction error can not only effectively reduce the impact of wind power output power fluctuations on the power grid and ensure the safe, reliable, green and efficient operation of the power grid, but also help the power department to formulate daily power generation arrangements and improve the economic benefits of wind power generation. Summary of the invention

[0005] In order to overcome the shortcomings of the prior art, the present invention proposes a short-term wind power prediction method; the method predicts the output power of wind power generation based on an improved artificial jellyfish algorithm-optimized support vector regression model (IJS-SVR), uses a chaotic tent mapping method to improve the initialization of the jellyfish population, introduces a sinusoidal dynamic adaptive factor into the jellyfish position update formula to improve the overall optimization ability of the algorithm, updates the positions of some jellyfish in the jellyfish population through population variation, improves the overall randomness of the population, enhances the global search ability of the algorithm, and avoids falling into a local optimal solution during the algorithm search process.

[0006] The present invention solves the technical problem by adopting the following technical solutions:

[0007] A short-term wind power forecasting method based on the IJS-SVR model, the steps are as follows:

[0008] Step 1, obtain a wind power generation related data set S, classify the wind power generation related data into training data and test data, determine the input and output of the prediction model, and normalize the data;

[0009] Step 2, setting parameters of the improved artificial jellyfish (IJS) algorithm and the support vector regression (SVR) model;

[0010] Step 3, run the improved artificial jellyfish (IJS) algorithm to obtain the optimal penalty factor C and the optimal kernel function parameter g in the support vector regression (SVR) model;

[0011] Step 4, bringing the optimized optimal penalty factor C and the optimal parameter g of the kernel function into the support vector regression (SVR) model and training the improved artificial jellyfish algorithm optimized support vector regression (IJS-SVR) model;

[0012] Step 5, input the test data into the IJS-SVR model to obtain the prediction results, and denormalize the prediction results;

[0013] Step 6: Display the output wind power prediction result.

[0014] Furthermore, the specific implementation method of step 1 includes the following steps:

[0015] Step 1.1, obtaining a wind power generation related data set S, specifically including wind speed, wind direction and wind power generation output power data;

[0016] Step 1.2, the acquired data set S is divided into training data and test data in proportion, and the wind speed and wind direction are used as the input of the model; the wind power output power is used as the output of the model;

[0017] Step 1.3, normalize the above data according to formula (1):

[0018]

[0019] Where A is the value of the variable to be normalized, such as wind speed, wind direction and wind power output, and A min is the minimum value of the variable, A max is the maximum value of the variable, A N is the normalized value of the variable;

[0020] Furthermore, the parameters set in step 2 include: the population size N, population dimension D and maximum number of iterations T in the improved artificial jellyfish algorithm, as well as the search range of the penalty factor C and the search range of the kernel function parameter g in the support vector regression model;

[0021] Furthermore, the specific implementation method of step 3 includes the following steps:

[0022] Step 3.1, using the improved initialization strategy to initialize the position of the jellyfish population;

[0023] Step 3.2, calculate the fitness values ​​of all individuals in the jellyfish population, and record the position of the jellyfish individual with the best fitness value;

[0024] Step 3.3, start iterative optimization, select the jellyfish movement mode through the time control mechanism, and use the position update formula corresponding to the selected movement mode to update the population position;

[0025] Step 3.4, calculate the fitness value of individuals in each generation, record and update the global optimal jellyfish individual;

[0026] Step 3.5, perform mutation operation on the jellyfish population, update the position of the jellyfish in the population, calculate the fitness function value, record and update the global optimal jellyfish individual position;

[0027] Step 3.6, determine whether the current number of iterations meets the maximum number of iterations. If so, the iteration ends and the global optimal jellyfish individual position X(x1, x2) is output (corresponding to the optimal penalty factor C and the optimal kernel function parameter g of the support vector regression (SVR) model, respectively). If not, return and continue to step 3.3;

[0028] Furthermore, the fitness value in step 3 is calculated by selecting mean square error (MSE) as the fitness function and using training data to optimize the internal parameters of the support vector regression (SVR) model;

[0029]

[0030] In the formula, F obj represents the fitness function, MSE represents the mean square error function, and its value is used as the fitness function value. m represents the number of output power data to be predicted, and y i and They represent the actual value and predicted value of wind power output respectively;

[0031] The specific implementation method of step 3.1 is:

[0032] When initializing the population position, if the population distribution is not uniform or even concentrated in a small range, the algorithm will not be able to search comprehensively in the specified search space. To this end, the present invention uses a chaotic tent mapping initialization method to generate the initial population.

[0033] The chaotic tent mapping method uses a chaotic mechanism to make the initialized jellyfish evenly distributed in the solution space; its function form is described as follows:

[0034]

[0035] In the formula, x t represents the jellyfish in the generated chaotic sequence, where t∈[1, 2, ..., n], n represents the number of jellyfish populations to be initialized, and α is a regulation parameter, whose value determines the distribution characteristics of the generated chaotic sequence;

[0036] Since the initialization population is preferably uniformly distributed, the adjustment parameter value α=0.5 corresponding to the uniform distribution is selected. At this time, formula (4) can be obtained;

[0037]

[0038] The mixed jellyfish population generated by the chaotic tent mapping method can enrich the population diversity while making the distribution of the population in the solution space more uniform, and can effectively avoid the situation where the algorithm falls into the local optimal solution due to the uneven distribution of the population initialization position.

[0039] The specific implementation method of step 3.3 is:

[0040] The jellyfish movement modes include following the ocean current and moving within the group. The movement within the group of jellyfish is divided into passive movement and active movement, which are represented by Class A movement and Class B movement. The switching of the jellyfish movement mode is determined by a time control mechanism.

[0041] (a) Following the movement of ocean currents

[0042] The direction of movement of the ocean current is defined as It represents the average value of all vector sums from the position of each jellyfish individual in the ocean current to the current optimal position; its mathematical model is shown in formula (5):

[0043]

[0044] Where n pop represents the number of jellyfish populations, i is the serial number of each jellyfish in the population, Represents the vector from the position of the i-th jellyfish to the current optimal position, X * represents the current optimal position, X irepresents the position of the i-th jellyfish, e c represents the factor that determines the attractiveness of food to jellyfish, μ represents the average position of all jellyfish in the current jellyfish population;

[0045] Define a DF as formula (6) to represent the difference between the jellyfish currently at the optimal position and the average position of all jellyfish. It can be expressed by formula (7):

[0046] DF=e c μ (6)

[0047]

[0048] Assuming that jellyfish have a normal spatial distribution in all dimensions, the distribution of jellyfish in the ocean is as follows: Figure 2 As shown, σ is the standard deviation of the normal distribution, β represents the distribution coefficient, which is set to 3 in the algorithm. The range of ±βσ around the average position μ contains the possibility of all jellyfish positions;

[0049] Depend on Figure 2 It can be seen that DF is within the range of βσ, which can be expressed by formula (8):

[0050] DF=βσrand a (0, 1) (8)

[0051] In the formula, rand a (0, 1) represents a random number between 0 and 1;

[0052] Let σ = rand b (0, 1)×μ, substituting it into formula (8), we can get formula (9):

[0053] DF=β×rand a (0, 1)×rand b (0, 1) × μ = β × rand (0, 1) × μ (9) where rand b (0, 1) and rand(0, 1) both represent random numbers between 0 and 1;

[0054] Comparing formula (9) with formula (6), we can get e c It can be expressed as:

[0055] e c =β×rand(0,1) (10)

[0056] Substituting formula (9) into formula (7), we can get the direction of ocean current as shown in formula (11):

[0057]

[0058] Therefore, the position update formula of the jellyfish following the ocean current can be obtained, as shown in formula (12):

[0059]

[0060] (b) In-group movement

[0061] Jellyfish performing Type A movements mostly occur in the early stages of jellyfish population formation. As time goes by, the movement type of jellyfish changes, and they perform more Type B movements.

[0062] Type A motion is the movement of the jellyfish near its current position, and its position update formula is shown in formula (13):

[0063] X i (t+1)=X i (t)+γ×rand(0,1)×(U b -L b ) (13)

[0064] Where U b , K b They represent the upper and lower bounds of the search space, γ represents the motion coefficient of the jellyfish and γ>0;

[0065] In order to improve the local search capability of the algorithm, the present invention adds a sinusoidal adaptive factor S to formula (13), and its expression is shown in formula (14):

[0066]

[0067] The improved position update formula is shown in formula (15):

[0068] X i (t+1)=X i (t)+S×γ×rand(0,1)×(U b -L b ) (15)

[0069] Where U b , L b They represent the upper and lower bounds of the search space respectively, γ represents the motion coefficient of the jellyfish and γ>0. In the algorithm, γ is usually taken as 0.1;

[0070] Type B motion is when a jellyfish moves toward or away from other jellyfish. Its position update formula is shown in formula (16):

[0071]

[0072] Where, X i(t) represents the position of jellyfish i before the B-type motion, represents the step length of jellyfish i with the moving direction, and its expression is shown in formula (17):

[0073]

[0074] In the formula, rand(0,1) is a random number between 0 and 1. represents the moving direction of jellyfish i. Specifically, the moving direction of jellyfish i can be determined according to formula (18);

[0075]

[0076] Where, X i (t) represents the current position of jellyfish i, and Xj(t) represents the current position of jellyfish j. Function f is the objective function about X, f(X i (t)) represents the food content at the current location of jellyfish i, f(X j (t)) represents the food content at the current location of jellyfish j;

[0077] (c) Time control mechanism

[0078] The time control mechanism is represented by the time control function c(t), which is expressed as shown in formula (19):

[0079]

[0080] In the formula, t and T represent the current iteration number and the maximum iteration number respectively, and the resulting c(t) is a random number between 0 and 1 related to the iteration number;

[0081] Furthermore, the specific implementation method of step 3.3 is as follows: calculate the time control function value c(t) according to formula (19), determine whether the time control function value c(t) is less than 0.5, if not satisfied, the jellyfish follows the ocean current and updates its position according to formula (12); if satisfied, the jellyfish moves within the group, and then uses the function 1-c(t) as a reference standard, and compares the function value with a number between 0 and 1 randomly obtained by rand(0, 1); if rand(0, 1) is greater than the value of 1-c(t), the jellyfish performs type A movement within the group, and updates its position according to the improved position update formula (15); if rand(0, 1) is less than the value of 1-c(t), the jellyfish performs type B movement within the group, and updates its position according to formula (16).

[0082] The specific implementation method of step 3.5 is:

[0083] Step 3.5.1, after the jellyfish has completed its movement according to the position update formula and has calculated its fitness value, select a jellyfish individual X from the current population k , and then randomly select three jellyfish individuals and sort their fitness values ​​from best to worst to get X a , X b and X c The fitness values ​​of the three are f a 、f b 、f c , and then use the positions of the three to calculate a new jellyfish position through formula (20) to update X k The current position of jellyfish X k mutation operation;

[0084] X k =X a +δ(X b -X c ) (20)

[0085] In the formula, δ is the mutation operator, and its expression is shown in formula (21):

[0086]

[0087] In the formula, δ l and δ u are the upper and lower bounds of the mutation rate, which are 0.1 and 0.9 respectively in the present invention;

[0088] Step 3.5.2: As the mutation in step 3.5.1 continues, a mutant population is eventually formed; the mutant population is cross-exchanged with the population before the mutation, and a random number R between 0 and 1 is randomly generated and then compared with the random crossover parameter CR. The calculation method of CR is shown in formula (22):

[0089]

[0090] In each calculation, if the randomly generated R value is greater than CR, the jellyfish individual before mutation is used to replace the jellyfish individual corresponding to the mutation population; if the randomly generated R value is less than CR, the position of the jellyfish individual in the mutation population remains unchanged; thus, the crossover operation between the mutation population and the population before mutation is completed;

[0091] Step 3.5.3, calculate the fitness value of each jellyfish in the population after the mutation and crossover operations, and then compare it with the fitness value of the corresponding individual in the population before the mutation. Keep the jellyfish individuals with higher fitness values ​​in the population after the mutation and crossover, and replace the corresponding jellyfish in the population before the mutation, complete the update of the jellyfish position of the entire population, calculate the fitness function value, and record and update the global optimal individual;

[0092] Furthermore, the specific implementation method of step 4 is: input the optimal penalty factor C and the optimal parameter g of the kernel function obtained in step 3 into a support vector regression (SVR) model to form an improved artificial jellyfish algorithm optimized support vector regression (IJS-SVR) model, and use the optimized optimal penalty factor C and the optimal parameter g of the kernel function to train the support vector regression model.

[0093] Furthermore, the step 5 performs denormalization processing as shown in formula (23):

[0094]

[0095] In the formula, is the predicted value of wind power output after denormalization, y′ scale,i is the normalized wind power output power forecast value obtained in step 4, y max ,y min are the maximum and minimum values ​​of the wind power output variable in step 1.3.

[0096] Furthermore, the specific implementation method of step 6 is: outputting the prediction curve graph and relative error curve graph of wind power output power obtained by the IJS-SVR model in step 5 on the display screen of the computer. The calculation method of relative error (Relative Error, RE) is shown in formula (24):

[0097]

[0098] In the formula, and i are the predicted value and actual value of wind power output power respectively.

[0099] The method of inputting data into a computer in the above steps is a well-known method; the computer, display and MATLAB computer software used are all commercially available.

[0100] Compared with the prior art, the present invention has the following beneficial effects:

[0101] (1) The present invention improves the initialization of the jellyfish population by introducing a chaotic tent mapping method, introduces a sinusoidal dynamic adaptive factor into the jellyfish position update formula, improves the overall randomness of the population through population variation, enhances the global search capability and overall optimization capability of the optimization algorithm, and avoids the problems of premature convergence in the search process when using the improved artificial jellyfish algorithm.

[0102] (2) The present invention adopts the method of optimizing the machine learning model by using the intelligent evolutionary algorithm, and constructs the support vector regression (IJS-SVR) model optimized by the improved artificial jellyfish algorithm to predict the output power of wind power generation. The results show that the short-term wind power prediction method based on the IJS-SVR model proposed in the present invention has high prediction accuracy and good prediction performance, which is helpful to improve the stability of the power grid and has important significance for the safe access of wind power generation systems to the power grid and the reliable and economical operation of the power system.

[0103] (3) The present invention can not only be used for short-term wind power output prediction, but can also be extended to predictions in other fields. BRIEF DESCRIPTION OF THE DRAWINGS

[0104] The present invention is further described below in conjunction with the accompanying drawings and embodiments.

[0105] Figure 1 It is a schematic diagram of the steps of the method of the present invention;

[0106] Figure 2 is a distribution map of the jellyfish described in the method of the present invention in the ocean;

[0107] Figure 3 It is a prediction curve diagram of wind power output power by the IJS-SVR model, SVR model, extreme learning machine (ELM) model and back propagation neural network (BPNN) model provided in the implementation case of the present invention;

[0108] Figure 4 It is a relative error curve diagram of wind power output power prediction using the IJS-SVR model, SVR model, ELM model and BPNN model provided in the implementation case of the present invention. DETAILED DESCRIPTION

[0109] Figure 1It shows that the general steps of the short-term wind power prediction method provided by the present invention are: start → obtain wind power data set → classify wind power data → determine the input and output of the prediction model → normalize the data → set the IJS algorithm parameters and the search range for the SVR model parameters → use the improved initialization strategy to initialize the jellyfish population position → use the training data to calculate the fitness value and retain the current optimal individual → calculate the time control function value c(t) → determine whether c(t) is less than 0.5. If not, the jellyfish follows the ocean current and updates its position according to formula (12); if satisfied, the jellyfish moves within the group → compare 1-c(t) with rand(0, 1); if rand(0, 1) is greater than the value of 1-c(t), the jellyfish moves within the group. The jellyfish performs the A-type motion of the movement, and updates its position according to the improved position update formula (15); if rand(0, 1) is less than the value of 1-c(t), the jellyfish performs the B-type motion of the movement within the group, and updates its position according to formula (16) → calculate the fitness value, and update the global optimal individual → the jellyfish population performs mutation operation → calculate the fitness value, and update the global optimal individual again → determine whether the maximum number of iterations has been reached. If it is satisfied, the optimal parameters of the model are obtained, and the global optimal individual position X(x1, x2) is output (corresponding to the optimal penalty factor C of the SVR model and the optimal parameter g of the kernel function, respectively) → the optimal parameter combination is input into the SVR model to obtain the IJS-SVR model → predict the test data and output the wind power prediction result → end.

[0110] In order to illustrate the technical solution of the present invention, a specific implementation case is used for illustration below;

[0111] Step 1, obtain a wind power generation related data set S, classify the wind power generation related data into training data and test data, determine the input and output of the prediction model, and normalize the data;

[0112] Step 1.1, obtaining a wind power generation related data set S, specifically including wind speed, wind direction and wind power generation output power data;

[0113] Step 1.2, the acquired data set S is divided into training data and test data in proportion, and the wind speed and wind direction are used as the input of the model; the wind power output power is used as the output of the model;

[0114] Step 1.3, normalize the above data;

[0115] In order to facilitate the construction of the prediction model without loss of generality, the data used in the implementation case of the present invention is derived from the public data of the La Haute Borne wind farm in France. The farm samples data once every 1 hour, and the sampled data includes wind power output power, wind direction, wind speed, ambient temperature, relative humidity and other data; the data from 2017.5.4 to 2017.5.11 are selected as model verification data, the data from 2017.5.4 to 2017.5.10 are used as training data, and the data from 2017.5.11 are used as test data; the time period of the above daily data is 0:00-24:00, with a total of 144 data; the present invention sets wind speed and wind direction as the input part of the model, and wind power output power as the output part of the model; the above data are normalized according to formula (1);

[0116] Step 2, setting parameters of the improved artificial jellyfish (IJS) algorithm and the support vector regression (SVR) model;

[0117] Set the population size N, population dimension D and maximum number of iterations T in the improved artificial jellyfish algorithm, as well as the search range of the penalty factor C and the range of the kernel function parameter g in the support vector regression model;

[0118] In this embodiment, the population size N in the improved artificial jellyfish algorithm is 30, the population dimension D is 2, the maximum number of iterations T is 500, the search range of the penalty factor C in the support vector regression model is [0.1, 1200], the range of the kernel function parameter g is [0.01, 100], and the remaining parameters are all default values;

[0119] Step 3, run the improved artificial jellyfish (IJS) algorithm to obtain the optimal penalty factor C and the optimal kernel function parameter g in the support vector regression (SVR) model;

[0120] Step 3.1, using the improved initialization strategy to initialize the position of the jellyfish population;

[0121] When initializing the population position, if the population distribution is not uniform or even concentrated in a small range, the algorithm will not be able to search comprehensively in the specified search space. To this end, the present invention uses a chaotic tent mapping initialization method to generate the initial population.

[0122] Step 3.2, calculate the fitness values ​​of all individuals in the jellyfish population according to formula (2), and record the position of the jellyfish individual with the best fitness value;

[0123] Step 3.3, start iterative optimization, select the jellyfish movement mode through the time control mechanism, and use the position update formula corresponding to the selected movement mode to update the population position;

[0124] The time control function value c(t) is calculated according to formula (19), and it is determined whether the time control function value c(t) is less than 0.5. If not, the jellyfish follows the ocean current and updates its position according to formula (12); if satisfied, the jellyfish moves within the group, and then uses the function 1-c(t) as a reference standard, and compares the function value with a number between 0 and 1 randomly obtained by rand(0, 1); if rand(0, 1) is greater than the value of 1-c(t), the jellyfish performs a type A movement within the group, and updates its position according to the improved position update formula (15); if rand(0, 1) is less than the value of 1-c(t), the jellyfish performs a type B movement within the group, and updates its position according to formula (16);

[0125] Step 3.4, calculate the fitness value of individuals in each generation according to formula (2), record and update the global optimal jellyfish individual;

[0126] Step 3.5, perform mutation operation on the jellyfish population, update the position of the jellyfish in the population, calculate the fitness function value, record and update the global optimal jellyfish individual position;

[0127] Step 3.5.1, after the jellyfish has completed its movement according to the position update formula and has calculated its fitness value, select a jellyfish individual X from the current population k , and then randomly select three jellyfish individuals and sort their fitness values ​​from best to worst to get X a , X b and X c The fitness values ​​of the three are fx, f b 、f c , and then use the positions of the three to calculate a new jellyfish position through formula (20) to update X k The current position of jellyfish X k mutation operation;

[0128] Step 3.5.2: As the mutation in step 3.5.1 continues, a mutant population is eventually formed; the mutant population is cross-exchanged with the population before the mutation, and a random number R between 0 and 1 is randomly generated and then compared with the random crossover parameter CR. The calculation method of CR is shown in formula (22):

[0129] Step 3.5.3, calculate the fitness value of each jellyfish in the population after the mutation and crossover operations, and then compare it with the fitness value of the corresponding individual in the population before the mutation. Keep the jellyfish individuals with higher fitness values ​​in the population after the mutation and crossover, and replace the corresponding jellyfish in the population before the mutation, complete the update of the jellyfish position of the entire population, calculate the fitness function value, and record and update the global optimal individual;

[0130] Step 3.6, determine whether the current number of iterations meets the maximum number of iterations. If so, the iteration ends and the global optimal jellyfish individual position X(x1, x2) is output (corresponding to the optimal penalty factor C and the optimal kernel function parameter g of the support vector regression (SVR) model, respectively). If not, return and continue to step 3.3;

[0131] Step 4, bring the optimal penalty factor C and the optimal kernel function parameter g obtained in step 3 into the support vector regression (SVR) model, and train the improved artificial jellyfish algorithm optimized support vector regression (IJS-SVR) model;

[0132] Step 5, input the test data into the IJS-SVR model to obtain the prediction results, and perform denormalization on the prediction results; wherein the denormalization process is shown in formula (23);

[0133] Step 6, displaying the output wind power prediction result;

[0134] The prediction curve graph and relative error curve graph of wind power output power obtained by the IJS-SVR model in step 5 are output on the display screen of the computer; wherein the calculation method of the relative error is shown in formula (24).

[0135] In addition, in the embodiment of the present invention, in order to better demonstrate the good performance of the proposed prediction model, the present invention selects the SVR model, the ELM model and the BPNN model for comparison under the same conditions and parameters, and selects the mean absolute error (MAE), the root mean square error (RMSE), the mean absolute percentage error (MAPE) and the coefficient of determination (R 2 ) is used as the evaluation index of the model; the evaluation index values ​​of wind power output power prediction under different models are shown in Table 1;

[0136]

[0137]

[0138]

[0139]

[0140] In the formula, m is the number of test samples; y i and They represent the predicted value, actual value and average value of the wind power output respectively.

[0141] Table 1 Analysis table of evaluation indexes of prediction model prediction results

[0142]

[0143] As can be seen from Table 1, the MAE value, RMSE value, and MAPE value of the IJS-SVR model are all minimum values. 2 The smaller the values ​​of MAE, MAPE and RMSE, the smaller the prediction error of the model. 2 The closer the value is to 1, the closer the predicted value of the model is to the true value. In summary, compared with other models, the IJS-SVR model has higher prediction accuracy and better prediction performance.

[0144] In the above-mentioned short-term wind power forecasting method based on the IJS-SVR model, the method of inputting data into the computer is a well-known method; the computer, display and MATLAB computer software used are all commercially available.

[0145] The above is only a specific implementation method of the method introduced in the present invention, but the protection scope of the present invention is not limited thereto. Any technician familiar with the technical field can make equivalent replacements or changes according to the technical scheme and inventive concept of the present invention within the technical scope disclosed in the present invention, which should be covered by the protection scope of the present invention.

Claims

1. A short-term wind power forecasting method based on the IJS-SVR model, characterized in that: This method predicts the output power of wind power generation by constructing a support vector regression model IJS-SVR based on the improved artificial jellyfish algorithm optimization. The specific steps are: Step 1, obtain a wind power generation related data set S, classify the wind power generation related data into training data and test data, determine the input and output of the prediction model, and normalize the data; Step 2, setting the parameters of the improved artificial jellyfish IJS algorithm and support vector regression SVR model; Step 3, run the improved artificial jellyfish IJS algorithm to obtain the optimal penalty factor C and the optimal kernel function parameter g in the support vector regression SVR model; Step 4, bringing the optimized optimal penalty factor C and the optimal parameter g of the kernel function into the support vector regression SVR model and training the support vector regression IJS-SVR model optimized by the improved artificial jellyfish algorithm; Step 5, input the test data into the IJS-SVR model to obtain the prediction results, and denormalize the prediction results; Step 6, displaying the output wind power prediction result; Furthermore, the specific implementation method of step 1 includes the following steps: Step 1.1, obtaining a wind power generation related data set S, specifically including wind speed, wind direction and wind power generation output power data; Step 1.2, divide the acquired data set S into training data and test data in proportion, take wind speed and wind direction as the input of the model; and take wind power output power as the output of the model: Step 1.3, normalize the above data according to formula (1): Where A is the value of the variable to be normalized, such as wind speed, wind direction and wind power output, and A min is the minimum value of the variable, A max is the maximum value of the variable, A N is the normalized value of the variable; Furthermore, the parameters set in step 2 include: the population size N, population dimension D and maximum number of iterations T in the improved artificial jellyfish algorithm, as well as the search range of the penalty factor C and the search range of the kernel function parameter g in the support vector regression model; Furthermore, the specific implementation method of step 3 includes the following steps: Step 3.1, using the improved initialization strategy to initialize the position of the jellyfish population; Step 3.2, calculate the fitness values ​​of all individuals in the jellyfish population, and record the position of the jellyfish individual with the best fitness value; Step 3.3, start iterative optimization, select the jellyfish movement mode through the time control mechanism, and use the position update formula corresponding to the selected movement mode to update the population position; Step 3.4, calculate the fitness value of individuals in each generation, record and update the global optimal jellyfish individual; Step 3.5, perform mutation operation on the jellyfish population, update the position of the jellyfish in the population, calculate the fitness function value, record and update the global optimal jellyfish individual position; Step 3.6, determine whether the current number of iterations meets the maximum number of iterations. If so, the iteration ends and the global optimal jellyfish individual position X(x1, x2) is output, where x1 and x2 correspond to the optimal penalty factor C and the optimal kernel function parameter g of the support vector regression SVR model respectively; if not, return and continue to step 3.3; Furthermore, the fitness value in step 3 is calculated by selecting mean square error (MSE) as the fitness function and using training data to optimize the internal parameters of the support vector regression (SVR) model; In the formula, F obj represents the fitness function, MSE represents the mean square error function, and its value is used as the fitness function value. m represents the number of output power data to be predicted, and y i and They represent the actual value and predicted value of wind power output power respectively; The specific implementation method of step 3.1 is: When initializing the population position, if the population distribution is not uniform or even concentrated in a small range, the algorithm will not be able to search comprehensively in the specified search space. Therefore, the chaotic tent mapping initialization method is used to generate the initial population. The chaotic tent mapping method uses a chaotic mechanism to make the initialized jellyfish evenly distributed in the solution space; its function form is described as follows: In the formula, x t represents the jellyfish in the generated chaotic sequence, where t∈[1, 2, ..., n], n represents the number of jellyfish populations to be initialized, and α is a regulation parameter, whose value determines the distribution characteristics of the generated chaotic sequence; Since the initialization population is preferably uniformly distributed, the adjustment parameter value α=0.5 corresponding to the uniform distribution is selected; at this time, formula (4) can be obtained; The mixed jellyfish population generated by the chaotic tent mapping method can enrich the population diversity while making the distribution of the population in the solution space more uniform, which can effectively avoid the situation where the algorithm falls into the local optimal solution due to the uneven distribution of the population initialization position; The specific implementation method of step 3.3 is: The jellyfish movement modes include following the ocean current and moving within the group. The movement within the group of jellyfish is divided into passive movement and active movement, which are represented by Class A movement and Class B movement. The switching of the jellyfish movement mode is determined by the time control mechanism. (a) Following the movement of ocean currents The direction of movement of the ocean current is defined as Its mathematical model is shown in formula (5): Where n pop represents the number of jellyfish populations, i is the serial number of each jellyfish in the population, Represents the vector from the position of the i-th jellyfish to the current optimal position, X * represents the current optimal position, X i represents the position of the i-th jellyfish, e c represents the factor that determines the attractiveness of food to jellyfish, μ represents the average position of all jellyfish in the current jellyfish population; Define a DF as formula (6) to represent the difference between the jellyfish currently at the optimal position and the average position of all jellyfish. It can be expressed by formula (7): DF=e c μ (6) Assume that jellyfish conform to normal spatial distribution in all dimensions, where σ is the standard deviation of the normal distribution, β represents the distribution coefficient, which is set to 3 in the algorithm, and the range of ±βσ around the average position μ contains the possibility of all jellyfish positions; DF is within the range of βσ and can be expressed by formula (8): DF=βσrand a (0,1) (8) In the formula, rand a (0, 1) represents a random number between 0 and 1; Let σ = rand b (0, 1)×μ, substituting it into formula (8), we can get formula (9): DF=β×rand a (0,1)×rand b (0,1)×μ=β×rand(0,1)×μ (9) In the formula, rand b (0, 1) and rand(0, 1) both represent random numbers between 0 and 1; Comparing formula (9) with formula (6), we can get e c It can be expressed as: and c =β×rand(0,1) (10) Substituting formula (9) into formula (7), we can get the direction of ocean current as shown in formula (11): Therefore, the position update formula of the jellyfish following the ocean current can be obtained, as shown in formula (12): (b) In-group movement Jellyfish performing Type A movements mostly occur in the early stages of jellyfish population formation. As time goes by, the movement type of jellyfish changes, and they perform more Type B movements. Type A motion is the movement of the jellyfish near its current position, and its position update formula is shown in formula (13): X i (t+1)=X i (t)+γ×rand(0,1)×(U b -L b ) (13) Where U b , L b They represent the upper and lower bounds of the search space, γ represents the motion coefficient of the jellyfish and γ>0; In order to improve the local search capability of the algorithm, a sinusoidal adaptive factor S is added to formula (13), and its expression is shown in formula (14): The improved position update formula is shown in formula (15): X i (t+1)=X i (t)+S×γ×rand(0,1)×(U b -L b ) (15) Where U b , L b They represent the upper and lower bounds of the search space respectively, γ represents the motion coefficient of the jellyfish and γ>0. In the algorithm, γ is usually taken as 0.1; Type B motion is when a jellyfish moves toward or away from other jellyfish. Its position update formula is shown in formula (16): Where, X i (t) represents the position of jellyfish i before the B-type motion, represents the step length of jellyfish i with the moving direction, and its expression is shown in formula (17): In the formula, rand(0,1) is a random number between 0 and 1. represents the moving direction of jellyfish i, which can be determined according to formula (18); Where, X i (t) represents the current position of jellyfish i, X j (t) represents the current position of jellyfish j; function f is the objective function about X, f(X i (t)) represents the food content at the current location of jellyfish i, f(X j (t)) represents the food content at the current location of jellyfish j; (c) Time control mechanism The time control mechanism is represented by the time control function c(t), which is expressed as shown in formula (19): In the formula, t and T represent the current iteration number and the maximum iteration number respectively, and the resulting c(t) is a random number between 0 and 1 related to the iteration number; Further, the specific implementation method of step 3.3 is as follows: calculate the time control function value c(t) according to formula (19), determine whether the time control function value c(t) is less than 0.5, if not satisfied, the jellyfish follows the ocean current and updates its position according to formula (12); if satisfied, the jellyfish moves within the group, and then uses the function 1-c(t) as a reference standard, and compares the function value with a number between 0 and 1 randomly obtained by rand(0, 1); if rand(0, 1) is greater than the value of 1-c(t), the jellyfish performs a type A movement within the group, and updates its position according to the improved position update formula (15); if rand(0, 1) is less than the value of 1-c(t), the jellyfish performs a type B movement within the group, and updates its position according to formula (16); The specific implementation method of step 3.5 is: Step 3.5.1, after the jellyfish has completed its movement according to the position update formula and calculated its fitness value, select a jellyfish individual X from the current population k , and then randomly select three jellyfish individuals and sort their fitness values ​​from best to worst to get X a , X b and X c The fitness values ​​of the three are f a 、f b 、f c , and then use the positions of the three to calculate a new jellyfish position through formula (20) to update X k The current position of jellyfish X k mutation operation; X k =X a +δ(X b -X c ) (20) In the formula, δ is the mutation operator, and its expression is shown in formula (21): In the formula, δ l and δ u are the upper and lower bounds of the mutation rate, which are 0.1 and 0.9 respectively; Step 3.5.2: As the mutation in step 3.5.1 continues, a mutant population is eventually formed; the mutant population is cross-exchanged with the population before the mutation, and a random number R between 0 and 1 is randomly generated and then compared with the random crossover parameter CR. The calculation method of CR is shown in formula (22): In each calculation, if the randomly generated R value is greater than CR, the jellyfish individual before mutation is used to replace the jellyfish individual corresponding to the mutation population; if the randomly generated R value is less than CR, the position of the jellyfish individual in the mutation population remains unchanged; thus, the crossover operation between the mutation population and the population before mutation is completed; Step 3.5.3, calculate the fitness value of each jellyfish in the population after the mutation and crossover operations, and then compare it with the fitness value of the corresponding individual in the population before the mutation. Keep the jellyfish individuals with higher fitness values ​​in the population after the mutation and crossover, and replace the corresponding jellyfish in the population before the mutation, complete the update of the jellyfish position of the entire population, calculate the fitness function value, and record and update the global optimal individual; Furthermore, the specific implementation method of step 4 is: inputting the optimal penalty factor C and the optimal parameter g of the kernel function obtained in step 3 into the support vector regression SVR model to form the support vector regression IJS-SVR model optimized by the improved artificial jellyfish algorithm, and using the optimized optimal penalty factor C and the optimal parameter g of the kernel function to train the support vector regression model; Furthermore, the step 5 performs denormalization processing as shown in formula (23): In the formula, is the predicted value of wind power output after denormalization, y′ scale,i is the normalized wind power output prediction value, y max ,y min are the maximum and minimum values ​​of the wind power output variable in step 1.3; Further, the specific implementation method of step 6 is: outputting the prediction curve graph and relative error curve graph of wind power output power obtained by the IJS-SVR model in step 5 on the display screen of the computer; wherein the calculation method of the relative error RE is shown in formula (24): In the formula, and i are the predicted value and actual value of wind power output power respectively.

2. According to claim 1, a short-term wind power forecasting method based on the IJS-SVR model is characterized by: The wind power mentioned is the wind power output power of the wind farm.

Citation Information

Patent Citations

  • Wind power forecast method and device based on self-adaptation bee colony algorithm

    CN103871002A

  • SVM wind power prediction method

    CN106295908A

Cited By

  • Short-term wind power prediction method and system considering regional and meteorological characteristics

    CN121683872A