A basin rainfall runoff prediction method, device and program product integrating mechanism model and machine learning model
By combining the seasonal Markov chain model and Gamma distribution to generate simulated rainfall sequences, combined with the weighted integration of the basin mechanism model and multiple machine learning submodels, the problems of long calculation time and low accuracy in the prediction of rainfall production in the basin are solved, and efficient and real-time prediction results are achieved.
Patent Information
- Application Number
- CN202510037939.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-10
- Publication Date
- 2025-08-08
- Estimated Expiration
- 2045-01-10
AI Technical Summary
In the prior art, the calculation time of the basin rainfall production flow prediction model is long, which is difficult to meet the real-time prediction needs. The lack of training data of the machine learning model leads to poor generalization ability and lack of physical explanation, and low prediction accuracy.
Combining the seasonal Markov chain model and Gamma distribution to generate simulated rainfall sequences of long time series, input the basin mechanism model for hydrological process simulation, enrich training samples, and build a machine learning ensemble model, integrating weighted ensemble of multiple machine learning submodels.
Improve prediction efficiency and accuracy, provide real-time prediction capabilities, enhance the credibility and adaptability of the model, and support rapid decision-making.
Smart Images

Figure CN119474881B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a watershed rainfall runoff prediction technology, and in particular to a watershed rainfall runoff prediction method, device and program product that integrates a mechanism model and a machine learning model. Background Art
[0002] Basin-wide rainfall runoff prediction refers to the prediction of runoff volume based on a single rainfall event within a basin. Traditional basin-wide rainfall runoff prediction relies primarily on mechanistic models, such as the semi-distributed hydrological models HSPF (Hydrological Simulation Program Fortran) and LSPC (Loading Simulation Program C). These models, based on physical process simulations, require extensive and complex numerical calculations, resulting in long computation times and making it difficult to meet the demands of real-time prediction and rapid response. The demand for computing resources is even more significant when simulating large-scale data or long time series. Furthermore, when rapid simulations are required, the computational time required for on-site simulations using mechanistic models is long, making them inadequate for decision-making.
[0003] With the widespread application of machine learning models, some researchers have begun employing them for basin-wide rainfall forecasting, as exemplified by patents 202210642420, 202011375784.8, and 202310968062.0. While machine learning models offer advantages in pattern recognition and nonlinear mapping, they require a large amount of high-quality training data. However, in the field of hydrology and water environment, measured data is often limited, especially data on extreme events. This limits the ability of machine learning models to learn complex hydrological processes, reduces their generalization ability, and lowers their prediction accuracy. Furthermore, machine learning models are often viewed as "black boxes" lacking the ability to explain physical processes. This makes their predictions difficult for hydrological experts and decision makers to trust, reducing their credibility in practical applications. Furthermore, the incomplete characterization of existing machine learning models prevents them from capturing the influence of factors other than rainfall on rainfall-related runoff generation, thus reducing prediction accuracy. Summary of the Invention
[0004] In response to the problems existing in the prior art, the purpose of the present invention is to provide a basin rainfall runoff prediction method, device and program product that integrates a fusion mechanism model and a machine learning model with high prediction efficiency and high prediction accuracy.
[0005] In order to achieve the above-mentioned object of the invention, the present invention provides the following technical solutions:
[0006] A basin rainfall runoff prediction method integrating a mechanism model and a machine learning model includes the following steps:
[0007] (1) Obtain historical rainfall data of the basin and perform preprocessing;
[0008] (2) Divide a year into several seasonal characteristic time periods and calculate the seasonal rainfall state transition probability of each seasonal characteristic time period based on historical rainfall data, as well as the distribution of rainfall in each seasonal characteristic time period;
[0009] (3) The seasonal rainfall state transition probability is used as the conditional transition probability to construct a seasonal Markov chain model, and the rainfall state of each day within the preset simulation period is simulated according to the seasonal Markov chain model;
[0010] (4) According to the distribution of rainfall in each seasonal characteristic time period and the daily rainfall state within the preset simulation period, the daily rainfall state and the corresponding rainfall in the rainfall state sequence are combined as the seasonal simulated rainfall sequence;
[0011] (5) Based on the seasonal simulated rainfall sequence, the basin mechanism model is used to simulate the basin rainfall runoff and obtain the simulated runoff value for each day in the simulation period;
[0012] (6) Extract the cumulative rainfall and seasonal characteristics of the first few days of each day within the preset simulation period and integrate them with the rainfall of the day as the input features for runoff prediction;
[0013] (7) Using the input features of all runoff predictions in a preset simulation period and the corresponding runoff simulation values as a data set, training a machine learning ensemble model, wherein the machine learning ensemble model is a weighted integration of several machine learning sub-models;
[0014] (8) Input the input features of the target basin runoff prediction into the trained machine learning ensemble model to predict future runoff.
[0015] Furthermore, step (1) specifically includes:
[0016] (1-1) Obtain historical rainfall data for the basin;
[0017] (1-2) Identify whether there are abnormal rainfall values in the historical rainfall data. If so, delete the abnormal rainfall values;
[0018] (1-3) Check whether there are missing values in the historical rainfall data. If so, interpolate the missing values;
[0019] (1-4) Check whether the historical rainfall data is in a unified time format and unit. If not, unify them.
[0020] Furthermore, step (2) specifically includes:
[0021] (2-1) Based on historical rainfall data, the daily rainfall status is determined according to the following formula:
[0022] ,
[0023] Where S t Indicates the rainfall status of the t-th day in the historical rainfall data. Rainfall status 1 indicates rainfall, and rainfall status 0 indicates no rainfall. threshold represents the rainfall threshold, P t represents the rainfall on day t in the historical rainfall data;
[0024] (2-2) Divide a year into several seasonal characteristic time periods and count the number of rainfall state transitions in each seasonal characteristic time period in the basin:
[0025] ,
[0026] ,
[0027] Where, The rainfall state transition indicator variable indicates whether the rainfall state i transitions to the rainfall state j on day t. Indicates yes, Indicates no, represents the number of rainfall state transitions from rainfall state i to rainfall state j within the seasonal characteristic time period s, represents the seasonal characteristic time period s;
[0028] (2-3) Calculate the seasonal rainfall state transition probability for each seasonal characteristic time period based on the number of rainfall state transitions:
[0029] ,
[0030] Where, represents the rainfall state transition probability from rainfall state i to rainfall state j in seasonal characteristic time period s, represents the number of times rainfall state i occurs within the seasonal characteristic time period s;
[0031] (2-4) For each seasonal characteristic time period, the rainfall on all dates with rainfall is obtained, and the distribution of the rainfall in the seasonal characteristic time period is obtained by fitting based on the rainfall, wherein the distribution is specifically a Gamma distribution.
[0032] Furthermore, step (3) specifically includes:
[0033] (3-1) The set of all possible rainfall states {0,1} is used as the state space, and the set of all seasonal rainfall state transition probabilities is used as the conditional probability set to construct a seasonal Markov chain model;
[0034] (3-2) According to the rainfall frequency corresponding to the first day of the preset simulation cycle, the simulated rainfall state on the first day is randomly set ;
[0035] (3-3) Based on the seasonal Markov chain model, the rainfall state of the next day is calculated according to the corresponding seasonal transition probability based on the rainfall state of the previous day, thereby simulating a simulated rainfall state sequence of a preset simulation period. ,in, represents the simulated rainfall state on the τth day in the simulated rainfall state sequence, and N represents the total number of days in the preset simulation cycle.
[0036] Furthermore, step (4) specifically includes:
[0037] (4-1) Extracting the dates with rainfall from the simulated rainfall state sequence, and simulating the corresponding rainfall according to the distribution of rainfall in the corresponding seasonal characteristic time period;
[0038] (4-2) Set the rainfall amount on the date when the rainfall status is no rainfall to 0;
[0039] (4-3) The simulated rainfall state and corresponding rainfall amount for each day within the preset simulation period are combined as a seasonal simulated rainfall sequence.
[0040] Furthermore, step (5) specifically includes:
[0041] (5-1) Obtain the basin's meteorological data, elevation data, soil parameters, land use data, and vegetation cover data;
[0042] (5-2) Input seasonal simulated rainfall series, meteorological data, elevation data, soil parameters, land use data, and vegetation cover data into the watershed mechanism model to simulate the rainfall-runoff process in the watershed and obtain daily runoff simulation values;
[0043] (5-3) The simulated flow values are formatted uniformly and then output as a flow time series.
[0044] Furthermore, step (6) specifically includes:
[0045] (6-1) Calculate the cumulative rainfall of the previous days based on the daily rainfall within the preset simulation period;
[0046] (6-2) Determine seasonal characteristics based on the seasonal characteristic time period of each day within the preset simulation cycle;
[0047] (6-3) Standardize daily rainfall, cumulative rainfall, and seasonal characteristics;
[0048] (6-4) The standardized rainfall, cumulative rainfall, and seasonal characteristics are combined to form the input features for runoff prediction.
[0049] Furthermore, step (7) specifically includes:
[0050] (7-1) Construct several machine learning sub-models based on different machine learning algorithms;
[0051] (7-2) All input features of runoff prediction within a preset simulation period and the corresponding runoff simulation values are formed into a data set, and the data set is divided into a first training set, a second training set, a first validation set, a second validation set, a first test set, and a second test set;
[0052] (7-3) Use the first training set to train each machine learning sub-model, use the first validation set to tune the hyperparameters of all machine learning sub-models, and use the first test set to test the capabilities of the machine learning sub-models;
[0053] (7-4) establishing a machine learning ensemble model, wherein the machine learning ensemble model is a weighted set of all machine learning sub-models;
[0054] (7-5) Using the second training set to train the machine learning ensemble model, using the second validation set to tune the weights in the machine learning ensemble model to obtain an optimized machine learning ensemble model, and using the second test set to test the capabilities of the optimized machine learning ensemble model.
[0055] A basin rainfall runoff prediction device integrating a mechanism model and a machine learning model, comprising:
[0056] The historical rainfall data preprocessing module is used to obtain the historical rainfall data of the basin and perform preprocessing;
[0057] The transition probability and distribution calculation module is used to calculate the seasonal rainfall state transition probability of each seasonal characteristic time period and the distribution of rainfall in each seasonal characteristic time period based on historical rainfall data;
[0058] A rainfall state generation module is used to construct a seasonal Markov chain model using the seasonal rainfall state transition probability as the conditional transition probability, and simulate the rainfall state of each day within a preset simulation period according to the seasonal Markov chain model;
[0059] A rainfall sequence generation module is used to simulate the daily rainfall according to the distribution of rainfall in each seasonal characteristic time period and the daily rainfall status within a preset simulation period, and combine the daily rainfall status and corresponding rainfall within the preset simulation period as a seasonal simulated rainfall sequence;
[0060] The runoff simulation module is used to simulate the runoff generation of the basin using the basin mechanism model according to the seasonal simulated rainfall sequence, and obtain the simulated runoff value for each day in the simulation period;
[0061] The runoff prediction input feature extraction module is used to extract the cumulative rainfall and seasonal characteristics of the previous several days within the preset simulation period, and integrate them with the rainfall of the current day as the input features for runoff prediction;
[0062] A machine learning model integration module is used to train and optimize a machine learning integration model using the input features and corresponding runoff simulation values of all runoff predictions in a preset simulation period as a data set, wherein the machine learning integration model is a weighted integration of several machine learning sub-models;
[0063] The future runoff prediction module is used to input the input features of the runoff prediction of the target basin into the trained machine learning model to predict the future runoff.
[0064] A computer program product comprises a computer program / instruction, wherein the computer program / instruction implements the above method when executed by a processor.
[0065] Compared with the prior art, the present invention has the following beneficial effects:
[0066] 1. This paper uses Markov chains and Gamma distribution models, combined with seasonal characteristics, to generate long-term seasonal simulated rainfall sequences. This seasonal simulated rainfall sequence is used as the basic data for training the machine learning model. This breaks through the limitation of historical data length, enriches the model's training samples, and enhances the model's adaptability to different rainfall scenarios. It overcomes the defect of poor model generalization ability caused by insufficient samples in the existing technology, and improves the prediction accuracy.
[0067] 2. This method inputs the generated virtual rainfall data into the watershed mechanism model to perform large-scale hydrological process simulation and obtain the corresponding daily flow data. This provides a large amount of high-precision flow simulation data, providing sufficient samples for training machine learning models, making up for the shortage of measured flow data and further improving prediction accuracy.
[0068] 3. The model input features of the present invention include previous cumulative rainfall and seasonal characteristics, taking into account multiple factors affecting runoff generation. The rich features improve the model's sensitivity to factors affecting runoff generation and enhance the model's predictive ability. This solves the problem of low model accuracy caused by a single feature in the existing technology and further improves the prediction accuracy.
[0069] 4. This invention uses multiple machine learning sub-models for training and optimizes the weights of each sub-model to construct a machine learning ensemble model that integrates multiple machine learning sub-models. This fully leverages the advantages of different models, reduces the bias and variance of a single model, improves the accuracy and robustness of predictions, and overcomes the performance limitations of a single model in existing technologies.
[0070] 5. By integrating the physical mechanism of the mechanism model and the nonlinear mapping capability of the machine learning model, the present invention makes the prediction results not only highly accurate but also physically meaningful, thus enhancing the credibility of the model.
[0071] 6. The present invention applies the trained model to actual rainfall runoff prediction, provides real-time prediction capabilities, supports rapid response of decision-making departments, improves the efficiency of flood prevention warning and water resource scheduling, and fills the gap in the existing technology of poor prediction timeliness. BRIEF DESCRIPTION OF THE DRAWINGS
[0072] Figure 1 It is a flow chart of a method for predicting rainfall and runoff in a watershed by integrating a mechanism model and a machine learning model provided by the present invention;
[0073] Figure 2 It is a structural schematic diagram of a basin rainfall runoff prediction device that integrates a mechanism model and a machine learning model provided by the present invention. DETAILED DESCRIPTION
[0074] The technical solutions in the embodiments of the present invention will be described clearly and completely below with reference to the accompanying drawings in the embodiments of the present invention.
[0075] Example 1.
[0076] The embodiment of the present invention provides a basin rainfall runoff prediction method that integrates a mechanism model and a machine learning model. Figure 1 As shown, the following steps are included:
[0077] S101. Obtain historical rainfall data of the basin and perform preprocessing.
[0078] In specific implementation, this step specifically includes:
[0079] S101-1. Obtain historical rainfall data for the basin. Sources of historical rainfall data include weather station observations, radar estimates, and satellite remote sensing data. Ensure that the data covers a sufficiently long period of time and encompasses various climate conditions and rainfall patterns, thereby providing a comprehensive data foundation for subsequent analysis.
[0080] S101-2. Identify whether there are abnormal rainfall values in the historical rainfall data, such as using the interquartile range (IQR) method. If so, delete the abnormal rainfall values to ensure data accuracy;
[0081] S101-3. Check whether there are missing values in the historical rainfall data. If so, interpolate the missing values. For example, use the similarity interpolation method. Based on the similarity between stations, the data of stations in adjacent or similar basins are analyzed through linear regression to fill in the missing values and ensure the continuity of the time series.
[0082] S101-4. Check whether the historical rainfall data is in a unified time format and unit. If not, unify the data to ensure that data from different sources are comparable.
[0083] It should be noted that in other embodiments, other methods may also be used for preprocessing.
[0084] S102. Divide a year into several seasonal characteristic time periods, and calculate the seasonal rainfall state transition probability of each seasonal characteristic time period and the distribution of rainfall in each seasonal characteristic time period based on historical rainfall data.
[0085] In specific implementation, this step specifically includes:
[0086] S102-1. Determine the daily rainfall status based on historical rainfall data using the following formula:
[0087]
[0088] Where, Indicates the rainfall status of the t-th day in the historical rainfall data. Rainfall status 1 indicates rainfall, and rainfall status 0 indicates no rainfall. threshold Indicates the rainfall threshold, which is usually 0.1 mm. t Represents the rainfall on day t in the historical rainfall data.
[0089] S102-2. Divide a year into several seasonal characteristic time periods and count the number of rainfall state transitions within each seasonal characteristic time period in the basin:
[0090] ,
[0091]
[0092] Where, The rainfall state transition indicator variable indicates whether the rainfall state i transitions to the rainfall state j on day t. Indicates yes, Indicates no, represents the number of rainfall state transitions from rainfall state i to rainfall state j within the seasonal characteristic time period s, represents the seasonal characteristic time period s;
[0093] It should be noted that the seasonal characteristic time periods can be divided in various ways. For example, in this embodiment, a year is divided into four seasons: spring, summer, autumn, and winter. Each season is a seasonal characteristic time period, resulting in a total of four seasonal characteristic time periods and four seasonal rainfall state transition probabilities. In other embodiments, a year can also be divided into 12 months, with each month being a seasonal characteristic time period, resulting in a total of 12 seasonal characteristic time periods and 12 seasonal rainfall state transition probabilities.
[0094] It should be noted that the rainfall state can be divided in many ways. In this embodiment, it is divided into two states: rainfall and no rainfall. In other embodiments, the rainfall state can also be divided into no rain, light rain, moderate rain, heavy rain, etc.
[0095] S102-3. Calculate the seasonal rainfall state transition probability for each seasonal characteristic time period based on the number of rainfall state transitions:
[0096]
[0097] Where, represents the rainfall state transition probability from rainfall state i to rainfall state j in seasonal characteristic time period s, It represents the number of times rainfall state i occurs within the seasonal characteristic time period s.
[0098] S102-4. For each seasonal characteristic time period, obtain the rainfall on all dates with rainfall, and obtain a distribution of the rainfall in the seasonal characteristic time period according to the rainfall fitting, wherein the distribution is specifically a Gamma distribution.
[0099] Among them, the distribution of rainfall in the seasonal characteristic time period is fitted, specifically the shape parameter α and scale parameter β of the Gamma distribution. Commonly used methods include moment estimation and maximum likelihood estimation, thereby obtaining the probability density function of the Gamma distribution based on the shape parameter α and scale parameter β:
[0100] ,
[0101] ,
[0102] Where, f(x;α,β) represents the probability density function of the Gamma distribution, x represents the rainfall (the amount of rainfall on rainy days), the shape parameter α controls the shape of the rainfall distribution, and the scale parameter β controls the range and average value of the rainfall. is the Gamma function, which is a function of the shape parameter α, with subscripts α−1 and β α It is directly derived from the definition of Gamma distribution and is used to describe the distribution pattern of rainfall.
[0103] It should be noted that here it is necessary to fit the rainfall distribution corresponding to different rainfall states. For example, in this embodiment, the rainfall distribution of the rainfall state is fitted. In other embodiments, if the rainfall state is divided into light rain, moderate rain, heavy rain, etc., then it is necessary to fit the rainfall distribution of different rainfall levels respectively.
[0104] S103: constructing a seasonal Markov chain model using the seasonal rainfall state transition probability as a conditional transition probability, and simulating the rainfall state of each day within a preset simulation period according to the seasonal Markov chain model.
[0105] In specific implementation, this step includes:
[0106] S103-1. Take the set of all possible rainfall states {0,1} as the state space and the set of all seasonal rainfall state transition probabilities as the conditional probability set to construct a seasonal Markov chain model.
[0107] S103-2. Randomly set the simulated rainfall state on the first day according to the rainfall frequency corresponding to the first day of the preset simulation cycle. The probability of rainfall can be obtained by dividing the number of days with rainfall by the total number of days in the corresponding seasonal characteristic period.
[0108] S103-3. Based on the seasonal Markov chain model, the rainfall state of the next day is calculated according to the rainfall state of the previous day according to the corresponding seasonal transition probability, thereby simulating a simulated rainfall state sequence of a preset simulation period. ,in, represents the simulated rainfall state on day τ in the simulated rainfall state sequence, and N represents the total number of days in the preset simulation cycle. For example, if the preset simulation cycle is 2 years, the total number of days is 2*365 days.
[0109] S104. Simulate the daily rainfall according to the distribution of rainfall in each seasonal characteristic time period and the daily rainfall state within the preset simulation period, and combine the daily rainfall state and corresponding rainfall in the rainfall state sequence as a seasonal simulated rainfall sequence.
[0110] In specific implementation, this step includes:
[0111] S104-1, extracting the rainfall state from the simulated rainfall state sequence as rainfall ( =1) and simulate the corresponding rainfall according to the distribution of rainfall in the corresponding seasonal characteristic time period;
[0112] S104-2, set the rainfall status to no rainfall ( =0) is set to 0;
[0113] S104-3. Combining the simulated rainfall state and corresponding rainfall amount for each day within a preset simulation period as a seasonal simulated rainfall sequence.
[0114] S105. Based on the seasonal simulated rainfall sequence, the basin mechanism model is used to simulate the rainfall runoff in the basin, and the simulated runoff value for each day in the simulation period is obtained.
[0115] In specific implementation, this step includes:
[0116] S105-1. Obtain watershed meteorological data, elevation data, soil parameters, land use data, and vegetation cover data. Meteorological data include temperature and wind speed. Soil parameters include infiltration rate, saturated hydraulic conductivity, and field capacity, reflecting soil hydrological characteristics. Vegetation cover data includes vegetation type and canopy interception, which influence rainfall interception and evapotranspiration.
[0117] S105-2. Input seasonal simulated rainfall sequences, meteorological data, elevation data, soil parameters, land use data, and vegetation cover data into a watershed mechanism model to simulate rainfall-runoff processes within the watershed, including rainfall interception, infiltration, evapotranspiration, and runoff, to obtain daily simulated runoff values. The watershed mechanism model may be any suitable traditional mechanism model.
[0118] S105-3. The flow generation simulation values are formatted and then output as a flow generation time series.
[0119] Compared to measured data, the seasonal simulated rainfall series and corresponding simulated runoff values are much larger, which can compensate for the generalization issues inherent in pure machine learning models due to limited training data. Through machine learning model training, the ability to learn complex hydrological processes is enhanced.
[0120] S106: extracting the cumulative rainfall and seasonal characteristics of the preceding several days of each day within a preset simulation period, and integrating them with the rainfall of the current day as input features for runoff prediction.
[0121] In specific implementation, this step includes:
[0122] S106-1. Calculate the cumulative rainfall of the previous days based on the daily rainfall within a preset simulation period. Multiple time windows can be selected to achieve cumulative rainfall. For example, the cumulative rainfall of the previous day, the previous three days, and the previous five days can be set to reflect the impact of short-term rainfall. The cumulative rainfall of the previous seven days and the previous fifteen days can also be added to reflect the impact of medium-term rainfall. The cumulative rainfall of the previous 30 days and the previous 60 days can also be added to reflect the impact of long-term rainfall.
[0123] S106-2. Determine the seasonal characteristics based on the seasonal characteristic time period of each day in the preset simulation period. For example, assuming that a date in the preset simulation period is November 11, when the seasonal characteristic time period is divided by month, the seasonal characteristic corresponding to November 11 is November. When the seasonal characteristic time period is divided by season, the seasonal characteristic corresponding to November 11 is winter.
[0124] S106-3. Standardize daily rainfall, cumulative rainfall, and seasonal characteristics, such as coding and scaling;
[0125] S106-4. Combine the standardized rainfall, accumulated rainfall, and seasonal characteristics to form input features for runoff prediction.
[0126] The input features of runoff prediction take into account various factors affecting runoff, capture the impact of seasonal and previous rainfall conditions on runoff, and improve the model's adaptability and prediction accuracy to different rainfall processes.
[0127] S107: Using the input features of all runoff predictions in the preset simulation period and the corresponding runoff simulation values as a data set, the machine learning model is trained.
[0128] In specific implementation, this step includes:
[0129] S107-1. Construct several machine learning sub-models based on different machine learning algorithms;
[0130] Among them, the machine learning sub-models are the following models:
[0131] Convolutional Neural Networks (CNNs): excel at processing spatiotemporal data, capturing local features and temporal patterns;
[0132] XGBoost: A gradient-based tree model with efficient feature processing capabilities.
[0133] LightGBM: An improved gradient boosting framework with fast training speed and excellent performance;
[0134] Random Forest: Improves the generalization ability of the model by integrating multiple decision trees.
[0135] The machine learning sub-model can also be other types of network models.
[0136] S107-2. Form a data set with the input features of all runoff predictions and the corresponding runoff simulation values within a preset simulation period, and divide it into a first training set, a second training set, a first validation set, a second validation set, a first test set, and a second test set.
[0137] S107-3. Use the first training set to train each machine learning sub-model, use the first validation set to tune the hyperparameters of all machine learning sub-models, and use the first test set to test the capabilities of the machine learning sub-models.
[0138] During training, the mean squared error (MSE) is used as a loss function to measure the difference between the predicted value and the true value, guiding the update of model parameters. During training, each machine learning sub-model learns based on input features (such as month information, rainfall for the next m days, and cumulative rainfall for the previous n days) and the corresponding daily flow target, and continuously adjusts its internal parameters to gradually reduce the error from the true value.
[0139] After completing the initial training of each model, the first validation set is used to fine-tune the hyperparameters (non-directly learnable parameters) of all machine learning sub-models to prevent overfitting and maximize the model's predictive ability. The following describes the key points in hyperparameter tuning for each machine learning sub-model:
[0140] A. Convolutional Neural Network (CNN)
[0141] Convolution kernel size: This determines the network's receptive field (RF) for local features, such as 3×3, 5×5, etc. By comparing the effects of different convolution kernel sizes on the first validation set, the configuration that best captures rainfall-runoff time series characteristics is selected.
[0142] The number of convolution kernels (channels) reflects the richness of the extracted features. Insufficient convolution kernels limit the network's expressiveness; excessive convolution kernels can lead to overfitting and increase computational overhead.
[0143] Number of network layers: The deeper the number of layers, the better the model's ability to capture complex features, but the network is difficult to train and prone to overfitting.
[0144] Learning rate and regularization coefficient: By adjusting the learning rate (such as 0.001, 0.0005, etc.) and L2 regularization, a balance between error convergence speed and stability is sought in the first verification set.
[0145] B. XGBoost
[0146] Learning rate (eta): controls the contribution of each weak learner to the overall model. If it is too large, it will easily overfit, while if it is too small, the training will be slow.
[0147] Maximum depth (max_depth): determines the complexity of a single tree. Too deep will lead to overfitting, while too shallow will lead to insufficient model expression.
[0148] Subsample and colsample_bytree: Used to randomly select samples or features to improve model generalization. Try different combinations in the first validation set.
[0149] Regularization parameters (lambda, alpha): limit the complexity of the tree, adjust the penalty for highly complex tree structures, and avoid overfitting of the tree.
[0150] C. LightGBM
[0151] Learning rate (learning_rate): Similar to eta in XGBoost, it determines the single update step size, affecting the convergence speed and overfitting risk.
[0152] Maximum depth (max_depth) and number of leaf nodes (num_leaves): Control the complexity and refinement of the tree. If num_leaves is too large, the model will easily capture noise and cause overfitting; if it is too small, the model will lack expressive power.
[0153] Histogram width (max_bin): LightGBM uses a histogram-based algorithm to discretize features. The larger the max_bin, the finer the feature division, but it increases the amount of calculation.
[0154] Early stopping rounds (early_stopping_rounds): Set early stopping conditions in the first validation set, and stop training when the validation error does not improve after several rounds to prevent overfitting.
[0155] D. Random Forest
[0156] Number of trees (n_estimators): A larger number of trees can reduce variance but increase training and prediction overhead; insufficient number of trees affects stability.
[0157] Maximum number of features (max_features): The number of features that can be selected when each node splits. If it is too large, it is easy to overfit, and if it is too small, it may be underfitting.
[0158] Maximum depth (max_depth): Limits the depth of a single tree. Too deep will cause the model to memorize details in the training set and lose generalization ability.
[0159] Minimum number of sample leaves (min_samples_leaf): controls the minimum number of samples in a leaf node. A larger value reduces the risk of overfitting and smoothes the prediction results.
[0160] Finally, the generalization ability of each machine learning sub-model is tested on the first test set to evaluate its performance on unseen data. Specifically, evaluation metrics can be calculated using the first test set to measure the final performance of each sub-model. If the sub-model's performance on the first test set is similar to that on the first validation set, it indicates that the model has robust generalization performance.
[0161] The evaluation indicators include:
[0162] Mean Squared Error (MSE): measures the average squared difference between the predicted value and the true value;
[0163] Root mean square error (RMSE): The square root of MSE, which more intuitively reflects the magnitude of the error;
[0164] Mean Absolute Error (MAE): the average absolute difference between the predicted value and the true value;
[0165] Coefficient of determination (R 2 ): reflects the degree to which the model explains the variation of the true value.
[0166] S107-4. Establish a machine learning ensemble model, where the machine learning ensemble model is a weighted set of all machine learning sub-models.
[0167] The machine learning ensemble model is specifically:
[0168] ,
[0169] st ,
[0170]
[0171] Where J(w) is the optimization objective function, The weight matrix formed by the weights of all machine learning sub-models, w k represents the weight of the kth machine learning sub-model, K is the number of machine learning sub-models, Y i represents the true value of the i-th sample, is the predicted value of the k-th machine learning sub-model for sample i, and N is the number of samples.
[0172] S107-5. Use the second training set to train the machine learning ensemble model, use the second validation set to tune the weights in the machine learning ensemble model to obtain the optimized machine learning ensemble model, and use the second test set to test the capabilities of the optimized machine learning ensemble model.
[0173] In this invention, the machine learning ensemble model is not a simple integration of individual machine learning sub-models. Instead, it is independently trained and evaluated using a second training set, a second validation set, and a second test set. This ensures that the machine learning ensemble model learns the optimal combination weights on unused independent data, further improving overall prediction performance.
[0174] Initial training of the machine learning ensemble model is performed using the second training set. Instead of training the machine learning sub-models themselves, the model performs preliminary learning based on the combinations of predictions from the pre-trained machine learning sub-models, resulting in a preliminary weighted ensemble model. Specifically, for each sample, each pre-trained machine learning sub-model generates a prediction. These predictions are then paired with the true values to form training features and targets. The difference between the combined output and the true flow rate is measured using a loss such as mean squared error, and the initial weights of each machine learning sub-model in the machine learning ensemble model are iteratively updated.
[0175] The second validation set is then used to fine-tune the weights of the machine learning ensemble model, assigning optimal weights to each sub-model so that the combined prediction achieves the minimum error on the second validation set. Specifically, the optimal weight vector can be found using non-negative least squares (NNLS) or convex optimization methods, with the goal of minimizing the combined error. The output of the machine learning ensemble model is assumed to be the weighted sum of the predictions of each sub-model. The weights are then continuously adjusted on the second validation set until the combined prediction error is optimal.
[0176] Finally, the second test set is used to perform a final generalization test on the machine learning ensemble model, testing its performance on completely independent, unseen data and evaluating its adaptability to real-world scenarios. Specifically, the second test set can be input into each machine learning sub-model to obtain the prediction value of each machine learning sub-model. Then, the weighted combination obtained by tuning is used to generate the ensemble model output, as shown in the following formula:
[0177]
[0178] The flow rate predicted by the machine learning ensemble model was compared with the corresponding flow rate in the second test set, and the capabilities of the machine learning ensemble model were tested, including performance evaluation, error analysis, model robustness verification, and performance analysis under different scenarios.
[0179] Performance evaluation specifically evaluates the prediction performance of the integrated model on the test set and calculates various evaluation indicators.
[0180] Error analysis includes residual analysis and outlier detection. Residual analysis calculates the forecast error and analyzes its distribution to check for systematic bias or heteroskedasticity, providing a basis for model improvement. Outlier detection identifies samples with large forecast errors and analyzes possible causes, such as abnormal input features and the model's applicability under specific conditions.
[0181] Model robustness verification involves repeated experiments and cross-validation. Repeated experiments involve repeating model training and evaluation under different random seeds or data partitions to observe the consistency of model performance and verify model stability. Cross-validation uses K-fold cross-validation to comprehensively evaluate the model's generalization ability and reduce the randomness of the evaluation results.
[0182] Performance analysis under different scenarios includes rainfall magnitude evaluation and seasonal analysis. Rainfall magnitude evaluation classifies the test set by rainfall intensity and evaluates the model's predictive performance under different rainfall scenarios to ensure the model's comprehensive adaptability. Seasonal analysis evaluates model performance by season or month, analyzing the impact of seasonal changes on the model and ensuring that the model captures seasonal characteristics.
[0183] Finally, based on the evaluation results, it is determined whether the model meets the expected performance requirements, providing a basis for model improvement and practical application.
[0184] S108. Input the input features of the runoff prediction of the target watershed into the trained machine learning ensemble model to predict future runoff.
[0185] The input features for runoff prediction of the target watershed are obtained in the following ways:
[0186] Obtain future rainfall forecast: obtain rainfall forecast data for each day in the next m days from the meteorological department or manually set;
[0187] Calculate the cumulative rainfall in the previous period: use real-time data to calculate the cumulative rainfall in the previous n days;
[0188] Extract seasonal characteristics: Extract the month from the date and perform periodic encoding when necessary to capture seasonal characteristics.
[0189] The input features of runoff prediction are then processed according to the standardization method used during training to ensure that the scale of the feature values is consistent with that during training.
[0190] Load the trained machine learning ensemble model, input the input features for runoff prediction, perform prediction, and obtain the simulated runoff values for the next m days.
[0191] Example 2.
[0192] The embodiment of the present invention provides a basin rainfall runoff simulation device that integrates a mechanism model and a machine learning model. The device can be implemented in software and / or hardware and can be configured in a terminal device. Figure 2 As shown, the device includes:
[0193] The historical rainfall data preprocessing module 201 is used to obtain the historical rainfall data of the basin and perform preprocessing;
[0194] The transition probability and distribution calculation module 202 is used to calculate the seasonal rainfall state transition probability of each seasonal characteristic time period and the distribution of rainfall in each seasonal characteristic time period based on historical rainfall data;
[0195] The rainfall state generation module 203 is used to construct a seasonal Markov chain model using the seasonal rainfall state transition probability as a conditional transition probability, and simulate the rainfall state of each day within a preset simulation period according to the seasonal Markov chain model;
[0196] The rainfall sequence generation module 204 is configured to simulate the daily rainfall according to the distribution of rainfall in each seasonal characteristic time period and the daily rainfall state within a preset simulation period, and combine the daily rainfall state and corresponding rainfall within the preset simulation period as a seasonal simulated rainfall sequence;
[0197] The runoff simulation module 205 is used to simulate runoff generation based on the seasonal simulated rainfall sequence using the basin mechanism model to obtain the simulated runoff value for each day in the simulation period.
[0198] The runoff prediction input feature extraction module 206 is used to extract the cumulative rainfall and seasonal characteristics of the previous several days in a preset simulation period, and integrate them with the rainfall of the current day as the input features for runoff prediction;
[0199] A machine learning model integration module 207 is configured to use the input features of all runoff predictions and the corresponding runoff simulation values for a preset simulation period as a data set to train a machine learning integration model, wherein the machine learning integration model is a weighted integration of several machine learning sub-models;
[0200] The future runoff prediction module 208 is used to input the input features of the runoff prediction of the target basin into the trained machine learning model to predict the future runoff.
[0201] The historical rainfall data preprocessing module 201 specifically includes:
[0202] A data acquisition unit, used to obtain historical rainfall data of the basin;
[0203] an outlier processing unit, for identifying whether there are abnormal rainfall values in the historical rainfall data, and if so, deleting the abnormal rainfall values;
[0204] Missing value processing unit, detects whether there are missing values in the historical rainfall data, and if so, interpolates the missing values;
[0205] The detection unit is used to detect whether the historical rainfall data is in a unified time format and unit. If not, it is unified.
[0206] The transition probability and distribution calculation module 202 specifically includes:
[0207] The rainfall status acquisition unit is used to determine the daily rainfall status based on historical rainfall data according to the following formula:
[0208]
[0209] Where, Indicates the rainfall status of the t-th day in the historical rainfall data. Rainfall status 1 indicates rainfall, and rainfall status 0 indicates no rainfall. threshold represents the rainfall threshold, P t represents the rainfall on day t in the historical rainfall data;
[0210] The state transition count calculation unit is used to divide a year into several seasonal characteristic time periods and count the number of rainfall state transitions in each seasonal characteristic time period of the basin:
[0211]
[0212]
[0213] Where, The rainfall state transition indicator variable indicates whether the rainfall state i transitions to the rainfall state j on day t. Indicates yes, Indicates no, represents the number of rainfall state transitions from rainfall state i to rainfall state j within the seasonal characteristic time period s, represents the seasonal characteristic time period s;
[0214] The state transition probability calculation unit is used to calculate the seasonal rainfall state transition probability of each seasonal characteristic time period according to the number of rainfall state transitions:
[0215]
[0216] Where, represents the rainfall state transition probability from rainfall state i to rainfall state j in seasonal characteristic time period s, represents the number of times rainfall state i occurs within the seasonal characteristic time period s;
[0217] The rainfall distribution fitting unit is used to obtain the rainfall of all dates with rainfall status for each seasonal characteristic time period, and obtain the distribution obeyed by the rainfall in the seasonal characteristic time period based on the rainfall fitting, wherein the distribution is specifically a Gamma distribution.
[0218] The rainfall status generating module 203 specifically includes:
[0219] A seasonal Markov chain model construction unit is used to construct a seasonal Markov chain model by taking the set of all possible rainfall states {0,1} as the state space and the set of all seasonal rainfall state transition probabilities as the conditional probability set;
[0220] The initial state setting unit is used to randomly set the simulated rainfall state on the first day according to the rainfall frequency corresponding to the first day. ;
[0221] The rainfall state simulation unit is used to calculate the rainfall state of the next day according to the rainfall state of the previous day according to the corresponding seasonal transition probability based on the seasonal Markov chain model, thereby simulating a simulated rainfall state sequence of a preset simulation period. ,in, represents the simulated rainfall state on the τth day in the simulated rainfall state sequence, and N represents the total number of days in the preset simulation cycle.
[0222] The rainfall sequence generation module 204 specifically includes:
[0223] The rainfall day simulation unit is used to extract the days with rainfall from the simulated rainfall state sequence and simulate the corresponding rainfall according to the distribution of rainfall in the corresponding seasonal characteristic time period;
[0224] The no-rainfall day simulation unit is used to set the rainfall on the day with no rainfall to 0;
[0225] The simulated rainfall sequence acquisition unit is used to combine the simulated rainfall state and corresponding rainfall amount of each day in a preset simulation period as a seasonal simulated rainfall sequence.
[0226] The flow rate simulation module 205 specifically includes:
[0227] A data acquisition unit, used to obtain the basin's meteorological data, elevation data, soil parameters, land use data, and vegetation cover data;
[0228] The hydrological simulation unit is used to input seasonal simulated rainfall series, meteorological data, elevation data, soil parameters, land use data and vegetation cover data into the watershed mechanism model to simulate the rainfall-runoff process in the watershed and obtain daily runoff simulation values;
[0229] The format unification unit is used to unify the format of the runoff simulation value and output the runoff time series.
[0230] The runoff prediction input feature extraction module 206 specifically includes:
[0231] The accumulated rainfall extraction unit is used to calculate the accumulated rainfall of the previous days based on the daily rainfall in the preset simulation period;
[0232] A seasonal characteristic determination unit, configured to determine seasonal characteristics according to the seasonal characteristic time period of each day within a preset simulation period;
[0233] Normalization unit, used to standardize daily rainfall, cumulative rainfall, and seasonal characteristics;
[0234] The feature generation unit is used to combine the standardized rainfall, accumulated rainfall, and seasonal characteristics to form the input features for runoff prediction.
[0235] The machine learning model integration module 207 specifically includes:
[0236] A sub-model construction unit, used to construct several machine learning sub-models based on different machine learning algorithms;
[0237] a data set acquisition unit, configured to form a data set from all input features of runoff prediction and corresponding runoff simulation values within a preset simulation period, and divide the data set into a first training set, a second training set, a first validation set, a second validation set, a first test set, and a second test set;
[0238] a sub-model training unit, configured to train each machine learning sub-model using the first training set, optimize hyperparameters of all machine learning sub-models using the first validation set, and test the capabilities of the machine learning sub-models using the first test set;
[0239] A machine learning ensemble model establishing unit, configured to establish a machine learning ensemble model, wherein the machine learning ensemble model is a weighted set of all machine learning sub-models;
[0240] The weight optimization unit is used to train the machine learning ensemble model using the second training set, to tune the weights in the machine learning ensemble model using the second validation set to obtain the optimized machine learning ensemble model, and to test the capability of the optimized machine learning ensemble model using the second test set.
[0241] The device provided in the embodiment of the present invention can be used to execute the method provided in the first embodiment of the present invention, and has the corresponding functions and beneficial effects of executing the method. For any details not fully described, please refer to the method description and will not be repeated here.
[0242] It is worth noting that in the embodiment of the above-mentioned device, the various units and modules included are only divided according to functional logic, but are not limited to the above-mentioned division, as long as the corresponding functions can be achieved; in addition, the specific names of the functional units are only for the convenience of distinguishing each other, and are not used to limit the scope of protection of the present invention.
[0243] The embodiments described above are merely illustrative, wherein the modules described as separate components may or may not be physically separate, and the components shown as modules may or may not be physical modules, i.e., they may be located in one place or distributed across multiple network modules. Some or all of the modules may be selected based on actual needs to achieve the objectives of the present embodiment. Those skilled in the art will readily appreciate that each embodiment may be implemented using software plus a necessary general-purpose hardware platform, or may be implemented solely through hardware, as long as the functionality or effect can be achieved.
[0244] Example 3.
[0245] Embodiments of the present invention also provide a computer program product, such as an app on a mobile phone or tablet, or an installation program on a computer, comprising a computer program / instructions that, when executed by a processor, implement the method described in Embodiment 1. The code for the computer-executable program for performing the operations of the present invention can be written in one or more programming languages, or a combination thereof, including object-oriented programming languages such as Java, Smalltalk, C++, and Python, as well as conventional procedural programming languages such as "C" or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer can be connected to the user's computer via any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computer (e.g., via the Internet using an Internet service provider).
Claims
1. A basin rainfall runoff prediction method integrating a mechanism model and a machine learning model, characterized in that: The steps include: (1) Obtain historical rainfall data of the basin and perform preprocessing; (2) Divide a year into several seasonal characteristic time periods and calculate the seasonal rainfall state transition probability of each seasonal characteristic time period based on historical rainfall data, as well as the distribution of rainfall in each seasonal characteristic time period; (3) The seasonal rainfall state transition probability is used as the conditional transition probability to construct a seasonal Markov chain model, and the rainfall state of each day within the preset simulation period is simulated according to the seasonal Markov chain model; (4) According to the distribution of rainfall in each seasonal characteristic time period and the daily rainfall status within the preset simulation period, simulate the daily rainfall. Specifically, extract the date with rainfall status, and simulate the corresponding rainfall according to the distribution of rainfall in the corresponding seasonal characteristic time period. Combine the rainfall status and corresponding rainfall of each day in the rainfall status sequence as the seasonal simulated rainfall sequence. (5) Based on the seasonal simulated rainfall sequence, the basin mechanism model is used to simulate the basin rainfall runoff and obtain the simulated runoff value for each day in the simulation period; (6) Extract the cumulative rainfall and seasonal characteristics of the first few days of each day within the preset simulation period and integrate them with the rainfall of the day as the input features for runoff prediction; (7) Using the input features of all runoff predictions in a preset simulation period and the corresponding runoff simulation values as a data set, training a machine learning ensemble model, wherein the machine learning ensemble model is a weighted integration of several machine learning sub-models; (8) Input the input features of the target basin runoff prediction into the trained machine learning ensemble model to predict future runoff.
2. The method for predicting rainfall and runoff in a watershed by integrating a mechanism model and a machine learning model according to claim 1 is characterized in that: Step (1) specifically includes: (1-1) Obtain historical rainfall data for the basin; (1-2) Identify whether there are abnormal rainfall values in the historical rainfall data. If so, delete the abnormal rainfall values; (1-3) Check whether there are missing values in the historical rainfall data. If so, interpolate the missing values. (1-4) Check whether the historical rainfall data is in a unified time format and unit. If not, unify them.
3. The method for predicting rainfall and runoff in a watershed by integrating a mechanism model and a machine learning model according to claim 1 is characterized in that: Step (2) specifically includes: (2-1) Based on historical rainfall data, the daily rainfall status is determined according to the following formula: , Where, Indicates the rainfall status of the t-th day in the historical rainfall data. Rainfall status 1 indicates rainfall, and rainfall status 0 indicates no rainfall. threshold represents the rainfall threshold, P t represents the rainfall on day t in the historical rainfall data; (2-2) Divide a year into several seasonal characteristic time periods and count the number of rainfall state transitions in each seasonal characteristic time period in the basin: , , Where, The rainfall state transition indicator variable indicates whether the rainfall state i transitions to the rainfall state j on day t. Indicates yes, Indicates no, represents the number of rainfall state transitions from rainfall state i to rainfall state j within the seasonal characteristic time period s, represents the seasonal characteristic time period s; (2-3) Calculate the seasonal rainfall state transition probability for each seasonal characteristic time period based on the number of rainfall state transitions: , Where, represents the rainfall state transition probability from rainfall state i to rainfall state j in seasonal characteristic time period s, represents the number of times rainfall state i occurs within the seasonal characteristic time period s; (2-4) For each seasonal characteristic time period, the rainfall on all dates with rainfall is obtained, and the distribution of the rainfall in the seasonal characteristic time period is obtained by fitting based on the rainfall, wherein the distribution is specifically a Gamma distribution.
4. The method for predicting rainfall and runoff in a watershed by integrating a mechanism model and a machine learning model according to claim 1 is characterized in that: Step (3) specifically includes: (3-1) The set of all possible rainfall states {0,1} is used as the state space, and the set of all seasonal rainfall state transition probabilities is used as the conditional probability set to construct a seasonal Markov chain model; (3-2) According to the rainfall frequency corresponding to the first day of the preset simulation period, the simulated rainfall state of the first day is randomly set ; (3-3) Based on the seasonal Markov chain model, the rainfall state of the next day is calculated according to the corresponding seasonal transition probability based on the rainfall state of the previous day, thereby simulating a simulated rainfall state sequence of a preset simulation period. ,in, Indicates the first The simulated rainfall state of the day, N represents the total number of days in the preset simulation cycle.
5. The method for predicting rainfall and runoff in a watershed by integrating a mechanism model and a machine learning model according to claim 1 is characterized in that: Step (4) specifically includes: (4-1) Extracting the dates with rainfall from the simulated rainfall state sequence, and simulating the corresponding rainfall according to the distribution of rainfall in the corresponding seasonal characteristic time period; (4-2) Set the rainfall amount on the date when the rainfall status is no rainfall to 0; (4-3) The simulated rainfall state and corresponding rainfall amount for each day within the preset simulation period are combined as a seasonal simulated rainfall sequence.
6. The method for predicting rainfall and runoff in a watershed by integrating a mechanism model and a machine learning model according to claim 1, characterized in that: Step (5) specifically includes: (5-1) Obtain the basin's meteorological data, elevation data, soil parameters, land use data, and vegetation cover data; (5-2) Input seasonal simulated rainfall series, meteorological data, elevation data, soil parameters, land use data, and vegetation cover data into the watershed mechanism model to simulate the rainfall-runoff process in the watershed and obtain daily runoff simulation values; (5-3) The simulated flow values are formatted uniformly and then output as a flow time series.
7. The method for predicting rainfall and runoff in a watershed by integrating a mechanism model and a machine learning model according to claim 1, characterized in that: Step (6) specifically includes: (6-1) Calculate the cumulative rainfall of the previous days based on the daily rainfall within the preset simulation period; (6-2) Determine seasonal characteristics based on the seasonal characteristic time period of each day within the preset simulation cycle; (6-3) Standardize daily rainfall, cumulative rainfall, and seasonal characteristics; (6-4) The standardized rainfall, cumulative rainfall, and seasonal characteristics are combined to form the input features for runoff prediction.
8. The method for predicting rainfall and runoff in a watershed by integrating a mechanism model and a machine learning model according to claim 1, characterized in that: Step (7) specifically includes: (7-1) Construct several machine learning sub-models based on different machine learning algorithms; (7-2) All input features of runoff prediction within a preset simulation period and the corresponding runoff simulation values are formed into a data set, and the data set is divided into a first training set, a second training set, a first validation set, a second validation set, a first test set, and a second test set; (7-3) Use the first training set to train each machine learning sub-model, use the first validation set to tune the hyperparameters of all machine learning sub-models, and use the first test set to test the capabilities of the machine learning sub-models; (7-4) establishing a machine learning ensemble model, wherein the machine learning ensemble model is a weighted set of all machine learning sub-models; (7-5) Using the second training set to train the machine learning ensemble model, using the second validation set to tune the weights in the machine learning ensemble model to obtain an optimized machine learning ensemble model, and using the second test set to test the capabilities of the optimized machine learning ensemble model.
9. A basin rainfall runoff prediction device integrating a mechanism model and a machine learning model, characterized in that: include: The historical rainfall data preprocessing module is used to obtain the historical rainfall data of the basin and perform preprocessing; The transition probability and distribution calculation module is used to calculate the seasonal rainfall state transition probability of each seasonal characteristic time period and the distribution of rainfall in each seasonal characteristic time period based on historical rainfall data; A rainfall state generation module is used to construct a seasonal Markov chain model using the seasonal rainfall state transition probability as the conditional transition probability, and simulate the rainfall state of each day within a preset simulation period according to the seasonal Markov chain model; A rainfall sequence generation module is used to simulate the daily rainfall according to the distribution of rainfall in each seasonal characteristic time period and the daily rainfall status within a preset simulation period, and combine the daily rainfall status and corresponding rainfall within the preset simulation period as a seasonal simulated rainfall sequence; The runoff simulation module is used to simulate the runoff generation of the basin using the basin mechanism model according to the seasonal simulated rainfall sequence, and obtain the simulated runoff value for each day in the simulation period; The runoff prediction input feature extraction module is used to extract the cumulative rainfall and seasonal characteristics of the previous several days within the preset simulation period, and integrate them with the rainfall of the current day as the input features for runoff prediction; A machine learning model integration module is used to train and optimize a machine learning integration model using the input features and corresponding runoff simulation values of all runoff predictions in a preset simulation period as a data set, wherein the machine learning integration model is a weighted integration of several machine learning sub-models; The future runoff prediction module is used to input the input features of the runoff prediction of the target basin into the trained machine learning model to predict the future runoff.
10. A computer program product comprising a computer program / instructions, characterized in that When the computer program / instructions are executed by a processor, the method according to any one of claims 1 to 8 is implemented.
Citation Information
Patent Citations
Water flow prediction system and method based on machine learning
CN112541619A
Model system for water affairs data perception and mechanism analysis based on watershed subsystem
CN116842851B
Improved photovoltaic power sequence prediction method based on Markov chain
CN105139080A
Model system for water affair data perception and mechanism analysis of subsystem based on drainage basin
CN116842851A