Hydrological simulation result fine-grained interpolation prediction method based on graph neural network

By using a hydrological simulation method based on graph neural networks, the problem of low computational efficiency of MDPM in geological disaster simulation during the flood season in mountainous areas was solved. This method achieves efficient fine-grained interpolation prediction, improving the response speed of the simulation model and the agility of early warning analysis.

CN121809294BActive Publication Date: 2026-06-02CHENGDU NORMAL UNIV

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
CHENGDU NORMAL UNIV
Filing Date
2026-03-09
Publication Date
2026-06-02

AI Technical Summary

Technical Problem

In existing technologies, the macroscopic dynamics propagation model (MDPM) has low computational efficiency and high computational complexity when used for simulating geological disasters during the flood season in mountainous areas, making it difficult to meet the requirements of efficient simulation time resolution.

Method used

A fine-grained interpolation prediction method based on graph neural networks for hydrological simulation results is adopted. By constructing a simulation network data carrier, organizing static and dynamic data, designing a graph neural network model, and training and enhancing it, fine-grained interpolation prediction of hydrological data can be achieved.

Benefits of technology

It improves computational efficiency and shortens simulation time, thereby enhancing the agility of emergency response and the accuracy of early warning analysis, and reducing the time required for disaster event risk assessment.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121809294B_ABST
    Figure CN121809294B_ABST
Patent Text Reader

Abstract

The application discloses a hydrological simulation result fine-grained interpolation prediction method based on a graph neural network, relates to the technical field of hydrological simulation, and comprises the following steps: S1, a simulation network data carrier is constructed through a data table; S2, open source data obtained is calculated item by item, column data is added, and a static data table is output; S3, based on the static data table, dynamic simulation results are obtained through modeling simulation; S4, the data table is converted into a graph structure network data set composed of node and edge relationship information; S5, an order division experiment and a random order division experiment are designed, and a training data division mode used is determined; S6, a graph neural network model is constructed and trained; S7, rolling prediction is performed; and S8, the constructed graph neural network model is enhanced in a targeted manner. According to the application, fine-grained interpolation prediction of simulation results in the time dimension is performed, the calculation efficiency of hydrological simulation is accelerated, the prediction period of potential risks is shortened, and the agility of emergency feedback of flood season mountain disaster risks is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of hydrological simulation technology, specifically to a fine-grained interpolation prediction method for hydrological simulation results based on graph neural networks. Background Technology

[0002] In recent years, the frequent occurrence of geological disasters during the flood season in mountainous areas has brought enormous challenges to local people and their related production and lives. Therefore, the simulation and prediction of geological disasters during the flood season is a cutting-edge research challenge and key focus in the industry, involving interdisciplinary fields such as hydrology, rock and soil mechanics, geocomputing science, and Geographic Information System (GIS). Among existing technologies, the novel simulation method of "Macroscopic Dynamic Propagation Model (MDPM)" has been applied to the simulation of geological disasters during the flood season on mountain highways and has achieved significant results. However, it involves network dynamics and network propagation models, resulting in high computational efficiency and complexity, and a large simulation time resolution. How to improve computational efficiency is a key technical challenge currently faced by existing technologies. Summary of the Invention

[0003] The purpose of this invention is to overcome the shortcomings of the prior art and provide a fine-grained interpolation prediction method for hydrological simulation results based on graph neural networks.

[0004] The objective of this invention is achieved through the following technical solution:

[0005] This application discloses a fine-grained interpolation prediction method for hydrological simulation results based on graph neural networks, including the following steps:

[0006] S1. Construct a simulation network data carrier using a data table, which includes index ID values ​​and spatial coordinate values;

[0007] S2. Calculate each item of the acquired open source data and add column data to output a static data table. The column data includes slope, normalized vegetation index NDVI, leaf area index LAI, number of runoff curves CN-SC considering slope correction, and soil shear strength.

[0008] S3. Dynamic data organization: Based on the static data table, dynamic simulation results are obtained through modeling and simulation.

[0009] S4. Based on the dynamic simulation results obtained in step S3, the data table is converted into a graph structure network dataset composed of node and edge relationship information.

[0010] S5. Design sequential partitioning experiments and random partitioning experiments, and determine the training data partitioning method to be used based on the experimental results;

[0011] S6. Construct a graph neural network model and train it;

[0012] S7. Use the trained graph neural network model to perform rolling prediction;

[0013] S8. Perform targeted enhancements on the constructed graph neural network model.

[0014] Furthermore, step S1 specifically includes:

[0015] DEM data is obtained through surveying or publicly available online data. The first planar text data is output through a tool script with specified additional parameters. A point matrix data table based on GIS digital elevation raster is constructed by appending an ID field and the corresponding auto-incrementing index ID value to the first planar text data.

[0016] Suppose that the simulation network data carrier constructed by the dot matrix data table has n edges, then the corresponding COO matrix has an dimension of n×2. Load the dot matrix data table and traverse each node, determine the edge status, and if the criterion formula is satisfied... Then, based on the two-dimensional array data, data rows [i,j] are appended until the traversal is complete, and a flat text file is output, thus completing the construction of the coo matrix; where x i Represents a node i The X-axis coordinate value, y i Represents a node i Y-axis coordinate value, x j For nodes j The X-axis coordinate value, y j For nodes j The Y-axis coordinate value, where R represents the spatial resolution of the DEM data.

[0017] Preferably, step S2 specifically includes:

[0018] S21. Download the raster data of the study area, including normalized vegetation index, leaf area index, soil type and soil composition percentage;

[0019] S22. Based on DEM data, a tool script is used to calculate the slope raster for each point in the dot matrix data table. The slope raster is converted into second planar text data containing slope values ​​at each point using the script. The slope field in the second planar text data is read, and the slope column is appended to the dot matrix data table using a function to obtain the first appended data table.

[0020] S23. Resample the raster of the normalized vegetation index to align its resolution with that of the DEM data. Convert the resampled raster of the normalized vegetation index into third-plane text data containing the point-by-point normalized vegetation index. Use a data append operation to append the normalized vegetation index value as column data to the first append data table to obtain the second append data table.

[0021] S24. Resample the raster of leaf area index to align its resolution with that of the DEM data. Convert the resampled raster of leaf area index into fourth-plane text data containing point-by-point leaf area index. Use a data appending operation to append the leaf area index as column data to the second appended data table to obtain the third appended data table.

[0022] S25. Based on the soil type and soil component ratio, obtain the corresponding runoff curve number; construct a runoff curve number raster based on the runoff curve number; if the resolution of the runoff curve number raster is inconsistent with the resolution of the DEM data, perform resampling calculation to align the resolution of the runoff curve number raster with the resolution of the DEM data, output the resolution-aligned runoff curve number raster, then convert it to text, output the fifth plane text data, combine it with the second plane text data, and use the formula... Calculate the numerical values ​​of the runoff curve considering slope correction. CN represents the number of runoff curves. θ This represents the node slope value; the calculated value will then be... As column data, it is integrated into the third append data table through data append operations to obtain the fourth append data table;

[0023] S26. Based on the resolution of the DEM data, the soil component percentage raster is divided into sand, silt, and clay component percentage rasteres. Each of these rasteres is resampled to align its resolution with the DEM data resolution. The resolution-aligned sand, silt, and clay component percentage rasteres are then output. The resampled sand, silt, and clay component percentage rasteres are then converted to text, and the sixth-plane text data is output using the formula... Calculate soil shear strength The sixth plane text data is obtained, where sand represents the proportion of sand particles in the soil, SILT represents the proportion of silt particles in the soil, CLAY represents the proportion of clay particles in the soil, and tcadif represents the adjustment coefficient. The soil shear strength is added as column data to the fourth appended data table using a data appending operation to obtain the fifth appended data table, thus completing the organization of all static data.

[0024] Preferably, step S3 specifically includes:

[0025] S31. Based on the fifth supplementary data table, construct a hydrological MDPM model;

[0026] S32. Set dynamic parameter groups and iteration step size T1. The dynamic parameter groups include rainfall pattern and rainfall intensity. Simulate physical quantities through the hydrological MDPM model. The physical quantities include surface runoff, groundwater pore water and surface solids. Specifically, the hydrological MDPM model traverses all dynamic parameter groups, loads the time-varying sequence of physical quantities of each node, and obtains simulation results.

[0027] S33. The simulation results and dynamic parameter groups are appended as column data to the fifth appended data table.

[0028] Preferably, step S33 specifically includes the following steps:

[0029] S331. Use the data append operation to append the dynamic parameter group as column data to the fifth append data table to obtain the first dynamic data table;

[0030] S332. Use the data append operation to append the iterative point-by-point data as column data to the first dynamic data table to obtain the second dynamic data table. The iterative point-by-point data is the point-by-point data of the physical quantity changing with the iteration step size.

[0031] S333: Convert the second dynamic data table into a dynamic data file using a function;

[0032] S334. Perform steps S332-S333 on the simulation results to traverse all dynamic parameter groups and obtain several dynamic data files.

[0033] Preferably, in step S4, based on the dynamic simulation results obtained in step S3, the data table is converted into a graph structure network dataset composed of node and edge relationship information, specifically including the following steps:

[0034] S41. Based on the DGLDataset base class in the DGL graph neural network framework of Python, construct a custom graph dataset class MyGraphDataset;

[0035] S42. Read the point feature CSV file of the hydrological MDPM model and extract all source and sink node information; traverse the point feature CSV file, establish valid connection relationships between source nodes and the first to eighth sink nodes, and filter out invalid connection edges with sink node values ​​of -1; construct a list of source nodes and a list of target nodes, and convert them into PyTorch tensor format; based on the source node and target node tensors, create a basic graph structure using the DGL graph construction function dgl.graph();

[0036] S43. Read the CSV file containing static and dynamic features, convert the two-dimensional table data into a NumPy array, and specify the data type as float32; convert the two-dimensional array into a three-dimensional tensor through a data reshaping operation; then convert the NumPy array into a PyTorch tensor format; finally, copy the basic graph structure for each graph, and store the corresponding node feature tensor into the node data of the graph, using feat as the feature key name, to obtain the final graph structure network dataset.

[0037] S44. Use the os module to save the final graph structure network dataset in DGL binary format to the specified path.

[0038] Preferably, step S5 specifically includes the following steps:

[0039] S51. Based on any two adjacent graphs G(t) and G(t+1) in the graph structure network dataset, construct training samples, taking the node features and topology of G(t) as input and the dynamic feature columns of the corresponding nodes in G(t+1) as output; perform batch processing on T-1 sample pairs, where T represents the number of graphs in the graph structure network dataset; during batch processing, multiple graphs are concatenated using a function while maintaining label alignment;

[0040] S52. Sequential partitioning experiment: Maintain the time order, use the first 80% of the samples for training and the last 20% for validation.

[0041] S53. Random partitioning experiment: All samples are globally randomly shuffled according to the index, and then 80% of the samples are divided into training set and 20% of the samples are divided into validation set to eliminate the distribution bias caused by time order.

[0042] S54. Compare the experimental results of the sequential partitioning experiment and the random partitioning experiment to determine the training data partitioning method to be used.

[0043] Preferably, step S6 specifically includes:

[0044] The graph neural network model adopts a three-layer graph convolutional structure, namely two GraphConv convolutional layers and one GATConv convolutional layer. The input and output node feature dimensions of the three graph convolutional units are all set to 512. The specific structure is as follows:

[0045] The first GraphConv convolutional layer: GraphConv(in_feats=10, out_feats=512), with ReLU activation function and Dropout coefficient set to 0.5;

[0046] The second GraphConv convolutional layer: GraphConv(in_feats=512, out_feats=512), with ReLU activation function and Dropout coefficient set to 0.5;

[0047] GATConv convolutional layer: GATConv(in_feats=512, out_feats=512, num_heads=3), the output tensor is reshaped by view(-1,3,512) and then averaged along the head dimension to obtain the final 512-dimensional representation of the node;

[0048] The graph neural network model also includes a hidden layer dimension design, with all intermediate hidden feature spaces using hidden_size=512;

[0049] Experiments were conducted with the batch size of the graph neural network model set to 16, 32, 48, and 64 respectively to determine the training batch size of the model.

[0050] Preferably, in step S7, the trained model is used to predict the dynamic features of the nodes at five time points after time t, specifically including the following steps:

[0051] S71. Based on the determined training data partitioning method and training batch size, the constructed graph neural network model is trained to obtain the training model corresponding to the three arguments.

[0052] S72. Using the data at time t in the graph structure network dataset as input, read the three trained argument models and perform initial prediction on the dynamic feature data of the three nodes at time t+1.

[0053] S73. After obtaining the three dynamic feature data at time t+1 of the initial prediction, read the static feature data of the nodes in the dataset again, predict the three dynamic feature data of the nodes at time t+1, and then perform iterative prediction using the static feature data and the predicted three dynamic feature data of the nodes at time t+1 until all node data of the five images are obtained.

[0054] S74. After obtaining all node data from the 5 graphs, compare them with the original data in the graph structure network dataset to obtain the error analysis graph.

[0055] Preferably, step S8 specifically includes: based on the random partitioning experiment, randomly repeating data whose data distribution is less than a preset threshold to increase the data volume until the proportion of data statistics of each mode is balanced, thereby obtaining an enhanced training dataset, and training the constructed graph neural network model through the enhanced training dataset to obtain an enhanced graph neural network model.

[0056] The beneficial effects of this invention are:

[0057] 1) This application starts with the adaptability of the underlying data structure, fully utilizes the characteristics of existing technologies to produce simulation data, and performs fine-grained interpolation in the time dimension. Experiments have shown that interpolation with an interpolation error of 2-3 frames between each iteration yields the best results. That is, in the time dimension, the interpolation error is reduced from 6-7s / iter of the original algorithm to approach the theoretical time cycle granularity of the original algorithm (i.e., 1.5s / iter). The refinement of the iteration time granularity directly affects the response speed of the simulation model, thereby improving the agility of early warning analysis, shortening the emergency response time to a certain extent, and accelerating the assessment of risks of related disaster events.

[0058] 2) This application proposes a targeted data augmentation scheme for simulation training data in this field through data augmentation steps. It uses the natural segmentation method to perform hierarchical statistics on the entire sample and then randomly enumerates to supplement data in intervals with small distributions, thereby scientifically and reasonably improving the distribution balance of the training sample data in the time dimension. Based on the more balanced training dataset, the model is retrained, improving its generalization performance for relevant interpolation problems in this field, thus enhancing the accuracy of data interpolation.

[0059] 3) The training data in this application are all taken from the simulation results of existing technologies. The simulation calculations are all based on open-source GIS data, and most of the technical operation processes are automated through program code. Therefore, the difficulty of obtaining AI training data in this field is relatively low. Only simple data download and simulation based on the existing MDPM model are required to obtain training data for a specific area.

[0060] 4) Examples based on MDPM or related network dynamics can be reasonably modified and migrated based on this application to adapt to time dimension interpolation operations in different scenarios, thereby improving the agility of the model. Attached Figure Description

[0061] Figure 1 This is a schematic diagram illustrating the steps of the fine-grained interpolation prediction method for hydrological simulation results based on graph neural networks, according to an embodiment of the present invention.

[0062] Figure 2 This is a flowchart illustrating the output of a static data table according to an embodiment of the present invention.

[0063] Figure 3 This is a schematic diagram of the architecture of the graph neural network model according to an embodiment of the present invention;

[0064] Figure 4 This is a schematic diagram illustrating the combination method and code of the dynamic parameter group in an embodiment of the present invention. Detailed Implementation

[0065] The technical solution of the present invention will be clearly and completely described below with reference to the embodiments. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0066] This application discloses a fine-grained interpolation prediction method for hydrological simulation results based on graph neural networks. Utilizing artificial intelligence technologies such as graph convolutional neural networks and graph attention networks, combined with digital elevation models and the Python programming language, it performs fine-grained interpolation prediction of simulation results in the time dimension. This accelerates the computational efficiency of hydrological simulation, thereby shortening the prediction time and further reducing the prediction cycle for potential risks. It also improves the agility of emergency response to flood season disaster risks in mountainous areas. A schematic diagram of the method's steps is shown below. Figure 1 As shown, the specific steps include:

[0067] S1. Construct a simulation network data carrier through a data table, wherein the data table includes index ID values ​​and spatial coordinate values; this application loads and operates on data based on a network data structure, therefore it is necessary to organize a network-form data structure as an operation carrier. The index ID represents the index of a network node, and the spatial coordinate values ​​contain the coordinate position of this point in the real geographic coordinate system. The data format of the simulation network data carrier is CSV.

[0068] S2. Calculate each item of the acquired open-source data and add column data to output a static data table. The integrated hydrological model involved in this application requires adding data columns to the constructed matrix data table. Therefore, the static data is stored in the form of planar text for subsequent model construction and calculation. The static data includes the following for each network node: slope, normalized difference vegetation index (NDVI), leaf area index (LAI), number of runoff curves with slope correction (CN-SC), and soil shear strength.

[0069] S3. Dynamic data organization: Based on the static data table, dynamic simulation results are obtained through modeling and simulation. Using the hydrological MDPM model simulation method from the paper Zheng W, Wang H, Luo J, et al. Integrated hydrological model based on undirected MDPM: A case study of rainfall process simulation for mountainhighways[J]. Journal of Hydrology, 2025, 660: 133130, a simulation experimental environment is constructed. Based on the fifth supplementary data table, simulation calculations are performed with different rainfall patterns and intensities. The output data with the same iteration step size is the dynamic data.

[0070] S4. Based on the dynamic simulation results obtained in step S3, the data table is converted into a graph structure network dataset composed of node and edge relationship information. The graph structure network dataset is the basis for building training data for graph neural network models. The construction process is divided into custom class construction, data loading, graph structure conversion, and tensor output.

[0071] S5. To ensure that the graph neural network model can obtain a stable and representative feature distribution during training, this invention systematically designed experiments on the temporal organization of data when constructing training samples. Given that each time-series graph G(t) and its next time-series graph G(t+1) in the dataset constitute natural supervised learning samples, to verify the impact of different partitioning schemes on the model's convergence performance and generalization ability, this invention designed two sets of comparative experiments: sequential partitioning experiments and random partitioning experiments, and determined the final training data partitioning method based on the experimental results.

[0072] S6. Construct a graph neural network model and train it; The graph neural network model constructed in this application adopts a three-layer graph convolutional structure to realize a deep feature representation of the topological relationships and node attributes in graph structure data. The model structure takes an undirected graph as input, and each node carries an attribute vector containing multi-source static and dynamic features. First, global feature extraction is performed through two layers of GraphConv convolutional layers based on the adjacency matrix weighted aggregation mechanism. Then, GATConv convolutional layers based on the attention mechanism are introduced to improve the recognition ability of key nodes and local feature patterns. Through the layered design, the model enhances the ability to differentiate the importance of neighboring nodes while maintaining the complete expression of structural features.

[0073] S7. Use the trained graph neural network model to perform rolling prediction;

[0074] The S8 hydrological MDPM model, based on simulation results of groundwater, surface runoff, solids, and vegetation interception under different rainfall patterns, shows that the distribution of the rates of change (i.e., the derivatives of these data with respect to time) over time is not uniform. Student models trained using simulation results with such non-uniformly distributed rates of change exhibit poor generalization ability. Therefore, it is necessary to ensure that the distribution of the rates of change of various simulation data is balanced over time. This data augmentation process to ensure distribution balance is called targeted data augmentation. The method involves randomly repeating data with small distributions based on random partitioning experiments to increase the data volume until the statistical proportions of each pattern are balanced.

[0075] Specifically, the simulation network data carrier construction method in step S1 is as follows: first, a point matrix data table based on GIS digital elevation raster is constructed; then, an output COO matrix is ​​constructed, which is the simulation network data carrier, specifically including:

[0076] GIS digital elevation raster, also known as DEM data, is a raster image with the suffix ".tif". It is generally obtained through surveying or publicly available online data. Based on DEM data, a first planar text data is output by using a tool script and specifying additional parameters. By appending an ID field and the corresponding auto-incrementing index ID value to the first planar text data, a point matrix data table based on GIS digital elevation raster is constructed.

[0077] Suppose the simulation network data carrier constructed by the dot matrix data table has n edges, then the corresponding COO matrix has an dimension of n×2. Load the dot matrix data table and traverse each node, determine the edge status, and if the criterion formula is satisfied:

[0078]

[0079] Then, based on the two-dimensional array data, data rows [i,j] are appended until the traversal is complete, and a flat text file is output, thus completing the construction of the coo matrix; where x i Represents a node i The X-axis coordinate value, y i Represents a node i Y-axis coordinate value, x j For nodes j The X-axis coordinate value, y j For nodes j The Y-axis coordinate value, where R represents the spatial resolution of the DEM data.

[0080] For example, the tool script "gdal2xyz.py" of the GDAL open-source library based on the Python programming language is used. DEM data is input and additional parameters "-skipnodata" and "-csv" are specified. The output is a first planar text data with the format suffix ".csv". Then, based on the pandas library of Python, the "insert()" method of the file object is called to append the ID field and the corresponding auto-incrementing index ID value to the first planar text data. Then, the planar text file with the format suffix ".csv" is output through the ".to_csv()" method. This planar text file is a dot matrix data table. The dot matrix data table is characterized by carrying the index ID and X, Y, and Z coordinate values.

[0081] For example, the construction of the COO matrix is ​​achieved by loading the dot matrix data table using the pandas library, writing a nested for loop to iterate through each node pairwise using Equation (1) as the criterion, and judging the connection status. If the criterion of Equation (1) is satisfied, then based on the two-dimensional array data, the append method is used to append data rows [i,j] until the traversal ends. The two-dimensional array is then output as a flat text file with the format suffix ".csv" using the ".to_csv()" method, thus completing the construction and output of the COO matrix.

[0082] Specifically, the flowchart for outputting a static data table is as follows: Figure 2 As shown, step S2 includes:

[0083] S21. Download the raster data of the study area, including normalized vegetation index, leaf area index, soil type and soil composition percentage;

[0084] For example, download four types of raster data of the study area from websites such as www.gscloud.cn, www.gis5g.com, and www.geodata.cn: Normalized Differential Vegetation Index (NDVI), Leaf Area Index (LAI), Soil Type, and Soil Component Ratio. All of these raster data have the file extension ".tif".

[0085] S22. Based on DEM data, a tool script is used to calculate the slope raster for each point in the dot matrix data table. The slope raster is converted into second planar text data containing slope values ​​at each point using the script. The slope field in the second planar text data is read, and the slope column is appended to the dot matrix data table using a function to obtain the first appended data table.

[0086] For example, using the command-line tool "gdaldem" from the GDAL library and specifying the parameter "slope," while specifying the input raster as DEM data, a slope raster corresponding to each pixel of the DEM data is calculated. Then, using the tool script "gdal2xyz.py" from the GDAL library, the slope raster is input, and the additional parameters "-skipnodata" and "-csv" are specified. The output is second-plane text data with a ".csv" extension containing point-by-point slope information. The process of converting arbitrary raster data into planar text data using the tool script "gdal2xyz.py" from the GDAL library is called the "raster-to-text" operation, and is not limited to slope raster data conversion. The slope field of the second-plane text data is read using the pandas library, using the function ".concact([source_data, append], axis=1, ignore_index=False)". This function appends the slope column to a raster data table. In the function, `source_data` represents the original data of the raster data table loaded by the pandas library into a two-dimensional array. `append` represents the slope column data to be appended. Setting the parameter `axis=1` indicates appending data from the column dimension, and setting the parameter `ignore_index=False` ensures index alignment. The resulting raster data table after appending the slope column data is denoted as the first appended data table. The process of appending column data to any data table using the `.concact()` function is called the "data append" operation, and it is not limited to appending slope data.

[0087] S23. Resample the raster of the normalized vegetation index to align its resolution with that of the DEM data. Convert the resampled raster of the normalized vegetation index into third-plane text data containing point-by-point normalized vegetation index. Use a data append operation to append the normalized vegetation index value as column data to the first append data table to obtain the second append data table.

[0088] For example, use the command-line tool "gdalwarp" from the GDAL library and set the parameters "-tr X_RES Y_RES and -r bilinear". Resampling calculations are performed to align the resolution of the NDVI data with that of the DEM data. The parameter "-tr" specifies the pixel resolutions in the X and Y directions as "X_RES" and "Y_RES", respectively, and the parameter "-r" specifies the sampling algorithm as "bilinear", i.e., bilinear interpolation algorithm, to obtain the resampled NDVI raster. The process of resampling the NDVI raster using the command-line tool "gdalwarp" of the GDAL library to align the NDVI raster resolution with the DEM data resolution is called "resampling calculation," and its application is not limited to NDVI rasters. The resampled NDVI raster is then converted from raster to text, outputting third-plane text data with the suffix ".csv" and containing point-by-point NDVI values. Subsequently, based on the third-plane text data, a data appending operation is used to append the NDVI values ​​as column data to the first appended data table, resulting in the first appended data table after NDVI column data appending, which is denoted as the second appended data table.

[0089] S24. Resample the raster of leaf area index to align its resolution with that of the DEM data. Convert the resampled raster of leaf area index into fourth-plane text data containing point-by-point leaf area index. Use a data appending operation to append the leaf area index as column data to the second appended data table to obtain the third appended data table.

[0090] For example, since the LAI data and NDVI data are organized in the same way, a second appended data table with additional LAI data columns can be obtained, which is referred to as the third appended data table.

[0091] S25. Based on the soil type and soil component ratio, obtain the corresponding runoff curve number; construct a runoff curve number raster based on the runoff curve number; if the resolution of the runoff curve number raster is inconsistent with the resolution of the DEM data, perform resampling calculation to align the resolution of the runoff curve number raster with the resolution of the DEM data, output the resolution-aligned runoff curve number raster, then convert it to text, output the fifth plane text data, combine it with the second plane text data, and use the formula: Calculate the numerical values ​​of the runoff curve considering slope correction. CN represents the number of runoff curves. θ This represents the node slope value; the calculated value will then be... As column data, it is integrated into the third append data table through data append operations to obtain the fourth append data table;

[0092] For example, based on the obtained soil type and soil component percentage data, the CN value of the corresponding study area can be obtained by looking up the table in the paper Andrews R G. The use of relative infiltration indices in computing runoff[J]. Unpublished. Soil Conservation Service, Fort Worth, Texas, 1954, 6. (compare with reference 1);

[0093] S26. Based on the resolution of the DEM data, the soil component percentage raster is divided into sand, silt, and clay component percentage rasteres. Each of these rasteres is resampled to align its resolution with the DEM data resolution. The resolution-aligned sand, silt, and clay component percentage rasteres are then output. Finally, a raster-to-text operation is performed on the resampled sand, silt, and clay component percentage rasteres to output the sixth-plane text data, using the formula:

[0094] Calculate soil shear strength The unit is kilopascal (kPa). The sixth plane text data is obtained, where sand represents the proportion of sand particles in the soil (dimensionless); SILT represents the proportion of silt particles in the soil (dimensionless); CLAY represents the proportion of clay particles in the soil (dimensionless); and tcadif represents the adjustment coefficient (dimensionless). The soil shear strength is added as column data to the fourth appended data table using a data appending operation to obtain the fifth appended data table, thus completing the organization of all static data.

[0095] Specifically, step S3 includes:

[0096] S31. Based on the fifth supplementary data table, construct a hydrological MDPM model;

[0097] For example, following the specific algorithm construction process described in the paper Zheng W, Wang H, Luo J, et al. Integratedhydrological model based on undirected MDPM: A case study of rainfall process simulation for mountain highways[J]. Journal of Hydrology, 2025, 660: 133130., based on the fifth additional data table, the Python programming language, and the DGL graph neural network modeling library (hereinafter referred to as the dgl library), simulation program code is written to complete the construction of the hydrological MDPM model and obtain the hydrological MDPM model;

[0098] S32. Set the dynamic parameter group and iteration step size T1. The iteration step size is a fixed value set for each round of simulation. The dynamic parameter group includes rainfall pattern and rainfall intensity. The physical quantities are simulated by the hydrological MDPM model. The physical quantities include surface runoff, groundwater and surface solids. Specifically, the hydrological MDPM model traverses all dynamic parameter groups, loads the time-varying sequence of the physical quantities of each node, and obtains the simulation results.

[0099] For example, simulations with different parameters are performed. The simulation parameters that change are combinations of two parameters: rainfall pattern and rainfall intensity, denoted as a dynamic parameter group. The dynamic parameter group has fixed set values ​​for each simulation and does not change with the simulation iteration step size. A schematic diagram of the combination method and code of the dynamic parameter group is provided below. Figure 4 .

[0100] In this embodiment, the iteration step size T1 = 10,000 steps, with each step representing a theoretical duration of 1.5 seconds. The three physical quantities, surface runoff, groundwater, and surface solids, are calculated synchronously in the simulation and change with the simulation iteration step size. The MDPM dynamic simulation process under each set of dynamic parameter groups is executed traversally. The simulation results are reflected as the time-varying sequences of the three physical quantities, surface runoff, groundwater, and surface solids, loaded onto each node. The simulation result data under each set of dynamic parameter groups is obtained. For example, if the setting is "peak rainfall of 70 mm / h for early-stage rainfall", it is denoted as the Q-70 dynamic simulation dataset.

[0101] S33. The simulation results and dynamic parameter groups are appended as column data to the fifth appended data table.

[0102] Specifically, step S33 includes the following steps:

[0103] S331. Use the data append operation to append the dynamic parameter group as column data to the fifth append data table to obtain the first dynamic data table;

[0104] S332. Use the data append operation to append the iterative point-by-point data as column data to the first dynamic data table to obtain the second dynamic data table. The iterative point-by-point data is the point-by-point data of the physical quantity changing with the iteration step size.

[0105] S333: Convert the second dynamic data table into a dynamic data file using a function;

[0106] S334. Perform steps S332-S333 on the simulation results to traverse all dynamic parameter groups and obtain several dynamic data files.

[0107] For example, the result obtained under the condition of "peak rainfall of 70 mm / h for early-stage rainfall" is denoted as "Q-70 First Dynamic Data Table", which is generally referred to as "First Dynamic Data Table".

[0108] For example, if the appended data relies on the "Q-70 First Dynamic Data Table", then the second dynamic data table at this time is denoted as the "Q-70 Second Dynamic Data Table". Other cases follow the same principle and will not be elaborated further. Within the second dynamic data table, the appended data columns include point-by-point column data showing the changes in three physical quantities—surface runoff, groundwater, and surface solids—with the iteration step size. Each type has 10,000 columns, corresponding to 10,000 iteration steps, for a total of 30,000 columns. In some embodiments, those skilled in the art can, based on the data appending operation in step S22, overlay nested loop programming logic to achieve batch appending of data column by column. In this embodiment, the efficient batch appending of 30,000 columns of data is achieved through the multi-column index assignment method of the DataFrame class in the Pandas library.

[0109] For example, the second dynamic data table can be exported as a dynamic data file with the format extension ".csv" using the "to_csv()" function of the Pandas library. If its dynamic parameter group is set to "peak rainfall of 70 mm / h for early-stage rainfall", it can be denoted as "Q-70 first dynamic data file". In general, it is referred to as "dynamic data file".

[0110] Specifically, in step S4, based on the dynamic simulation results obtained in step S3, the data table is converted into a graph structure network dataset composed of node and edge relationship information, including the following steps:

[0111] S41. Based on the DGLDataset base class in the DGL graph neural network framework of Python, construct a custom graph dataset class MyGraphDataset; the initialization parameters of this class include: the number of graphs (num_graphs), which is set to 10,000 graphs by default; the number of nodes in the graphs (num_nodes), which is fixed at 4,706 nodes in this embodiment; and the dataset save path (save_path).

[0112] S42. Read the point feature CSV file (edge.csv) of the hydrological MDPM model and extract all source and sink node information; traverse the point feature CSV file, establish valid connection relationships between source nodes and the first to eighth sink nodes, and filter out invalid connection edges with sink node values ​​of -1; construct a source node list and a target node list, and convert them to PyTorch tensor format; based on the source node and target node tensors, create a basic graph structure using the DGL graph construction function dgl.graph().

[0113] S43. Read the CSV file containing static and dynamic features, convert the two-dimensional table data into a NumPy array, and specify the data type as float32; convert the two-dimensional array into a three-dimensional tensor with dimensions (10000, 4706, 10) through a data reshaping operation, corresponding to 10000 graphs, 4706 nodes, and 10-dimensional features; then convert the NumPy array into PyTorch tensor format; finally, copy the basic graph structure for each graph, and store the corresponding node feature tensor into the node data of the graph, using feat as the feature key name, to obtain the final graph structure network dataset;

[0114] S44. Use the os module to save the final graph structure network dataset in DGL binary format to the specified path.

[0115] Specifically, step S5 includes the following steps:

[0116] S51. Define training samples. Based on any two adjacent graphs G(t) and G(t+1) in the graph structure network dataset, construct training samples. Take the node features and topology of G(t) as input, and the dynamic feature column (feature index 0, 1, 2) of the corresponding node in G(t+1) as output (label). Perform batch processing on T-1 sample pairs, where T represents the number of graphs in the graph structure network dataset. During batch processing, multiple graphs are concatenated using a function while maintaining label alignment.

[0117] S52. Sequential partitioning experiment: Maintaining the time order, the first 80% of the samples are used for training and the last 20% for validation. This method is consistent with forward prediction of actual time, but because the model in the training set has not learned the physical patterns of the later stages of rainfall, the validation error fluctuates greatly.

[0118] S53. Random partitioning experiment: All samples are globally randomly shuffled according to the index, and then 80% of the samples are divided into training set and 20% of the samples are divided into validation set to eliminate the distribution bias caused by time order; random partitioning can significantly improve the stability of validation metrics and overall generalization performance.

[0119] S54. Compare the experimental results of sequential partitioning and random partitioning to determine the training data partitioning method to be used. Random partitioning achieves lower validation loss, a smoother convergence curve, and better generalization ability than sequential partitioning. Therefore, this invention ultimately determines random partitioning as the standard training data organization method for subsequent model structure construction experiments and rolling prediction processes.

[0120] Specifically, the schematic diagram of the graph neural network model is as follows: Figure 3 As shown, W1-W512 Indicating input and output nodes, step S6 specifically includes:

[0121] To ensure the model possesses sufficient spatial feature extraction capabilities while avoiding the gradient vanishing problem and the sharp increase in training parameters caused by excessively deep networks, the graph neural network model adopts a three-layer graph convolutional structure, namely two GraphConv convolutional layers and one GATConv convolutional layer. This three-layer structure maintains a stable feature propagation depth even with a large graph data scale (4706 nodes), enabling progressive encoding from raw features to high-dimensional latent features and then to attention-enhanced features. The input and output node feature dimensions of the three graph convolutional units are both set to 512, with the specific structure as follows:

[0122] The first GraphConv convolutional layer: GraphConv(in_feats=10, out_feats=512), with ReLU activation function and Dropout coefficient set to 0.5; is used to map the original node features to a high-dimensional semantic space;

[0123] The second GraphConv convolutional layer: GraphConv(in_feats=512, out_feats=512), with ReLU activation function and Dropout coefficient set to 0.5; is used to further aggregate neighborhood structure and enhance node representation capabilities;

[0124] GATConv convolutional layer: GATConv(in_feats=512, out_feats=512, num_heads=3), the output tensor is reshaped by view(-1,3,512) and then averaged along the head dimension to obtain the final 512-dimensional representation of the node; used to enhance the feature weight allocation of key nodes based on the attention mechanism;

[0125] The convolutional structure can be represented as: GraphConv(10, 512) → GraphConv(512, 512) → GATConv(512, 512, heads=3)

[0126] The graph neural network model also includes a hidden layer dimension design, with all intermediate hidden feature spaces using `hidden_size=512`. This dimension controls the node feature capacity, ensuring the ability to model the nonlinear coupling relationships of multi-source geographic and hydrological features such as elevation, slope, soil characteristics, and vegetation indices, and perfectly matches the GAT three-head attention output structure. Furthermore, this dimension achieves good generalization performance while maintaining controllable GPU resources, balancing computational overhead and expressive power. The final output layer uses `Linear(512,1)` to predict the single dynamic feature value at the next time step.

[0127] Experiments were conducted with the batch size of the graph neural network model set to 16, 32, 48, and 64 respectively to determine the training batch size of the model.

[0128] Specifically, in step S7, the trained model is used to predict the dynamic features of the nodes at five time points after time t, which includes the following steps:

[0129] S71. Based on the determined training data partitioning method and training batch size, the constructed graph neural network model is trained to obtain the training model corresponding to the three arguments.

[0130] S72. Using the data at time t in the graph structure network dataset as input, read the three trained argument models and perform initial prediction on the dynamic feature data of the three nodes at time t+1.

[0131] S73. After obtaining the three dynamic feature data at time t+1 of the initial prediction, read the static feature data of the nodes in the dataset again, predict the three dynamic feature data of the nodes at time t+1, and then perform iterative prediction using the static feature data and the predicted three dynamic feature data of the nodes at time t+1 until all node data of the five images are obtained.

[0132] S74. After obtaining all node data from the 5 graphs, compare them with the original data in the graph structure network dataset to obtain the error analysis graph.

[0133] Specifically, step S8 includes: based on the random partitioning experiment, randomly repeating data with a data distribution less than a preset threshold to increase the data volume until the data statistics of each pattern are balanced, thereby obtaining an enhanced training dataset; and training the constructed graph neural network model using the enhanced training dataset to obtain an enhanced graph neural network model.

[0134] For example, groundwater data enhancement follows a consistent operational method for various data types. Therefore, this implementation plan only describes the groundwater data enhancement process; the methods for other types, such as surface runoff and groundwater volume, are similar and will not be elaborated upon. The specific data enhancement operation process includes the following steps:

[0135] S801. Based on the ".read_csv()" function of the Pandas library, several loaded data tables are obtained from the tabular data of the dynamic data file. The essence of the data tables is the same as that of the second dynamic data table. Therefore, the name is retained and referred to as the second dynamic data table. The data tables contain the simulation results of the MDPM model under the condition of traversing all dynamic parameter groups, which are reflected in the 30,000 columns of node-by-node time-varying sequence data of each table.

[0136] S802. Based on the second dynamic data table in step S801, calculate the mean of all 30,000 columns of point-by-point time-varying sequence data to obtain the mean for each simulation step for each type of physical quantity, generally referred to as the "frame mean". The calculation method is to automatically calculate using the ".mean()" method of the DataFrame class in the Pandas library by passing in a specific column index name, output the corresponding mean and store it as a new data row in the last row of the second dynamic data table, which is recorded as the dynamic mean row. In particular, if the physical quantity is underground pore water and the frame mean is at the 100th step, it is recorded as "underground pore water 100-frame mean", and other cases are deduced in the same way without further explanation.

[0137] S803. For a specific set of dynamic parameters and a specific physical quantity, such as groundwater with a peak rainfall of 70 mm / h in the early rain type, the derivative of the time series with respect to step length t is obtained for each frame mean with reference to the formula x at iteration step t and t+1. In the formula: The derivative of groundwater in the "pre-rainy type with peak rainfall of 70 mm / h" at time step t; The frame mean value of groundwater in the "pre-rain pattern with peak rainfall of 70 mm / h" at time step t+1; The frame mean of groundwater at time step t represents the "pre-rain pattern with peak rainfall of 70 mm / h". The actual duration represented by a single iteration is generally =1.5 seconds; The difference value is calculated based on the Pandas library. First, the dynamic mean row is extracted by the DataFrame class ".iloc[-1]" method. Then, the row difference is calculated and the data of this row is extracted and stored by ".diff(axis=1).iloc[0]". Then, all its values ​​are divided by 1.5 at the same time and the final result row is output. This row of data is also stored in the last row of the second dynamic data table in step S801 and is recorded as the mean difference row. The value of each column is the mean difference at each time. ".diff(axis=1).iloc[0]" represents the syntax in Pandas used to calculate the difference of each row element of a DataFrame.

[0138] S804. Based on the mean difference at each time point, perform hierarchical statistics on the mean difference rows according to Jenks' natural breakpoint method, calculate the breakpoint value and the sample size of each two breakpoint intervals; using the sample size of the breakpoint interval with the largest statistical value as the benchmark, randomly enumerate the column indices corresponding to any sample (i.e., difference value) in other intervals, so that the sample size of other intervals is the same as the sum of the number of times the column indices of that interval are randomly enumerated, and record these randomly enumerated column indices i and the corresponding number of enumerations n; match the enumerated column index i with the stored training sample index I, copy the matched training samples n times and assign different indices, store them in the training sample dataset, and obtain the augmented training dataset.

[0139] Based on the augmented training dataset and the original model structure, repeat the model training process in step S71 to obtain a model trained on the augmented dataset.

[0140] The above description is merely a preferred embodiment of the present invention. It should be understood that the present invention is not limited to the forms disclosed herein and should not be construed as excluding other embodiments. It can be used in various other combinations, modifications, and environments, and can be altered within the scope of the concept described herein through the above teachings or related technologies or knowledge. Modifications and variations made by those skilled in the art that do not depart from the spirit and scope of the present invention should be within the protection scope of the appended claims.

Claims

1. A fine-grained interpolation prediction method based on hydrological simulation results using graph neural networks, characterized in that: Includes the following steps: S1. Construct a simulation network data carrier using a data table, which includes index ID values ​​and spatial coordinate values; S2. Calculate each item of the acquired open source data and add column data to output a static data table. The column data includes slope, normalized vegetation index NDVI, leaf area index LAI, number of runoff curves CN-SC considering slope correction, and soil shear strength. S3. Dynamic data organization: Based on the static data table, dynamic simulation results are obtained through modeling and simulation. S4. Based on the dynamic simulation results obtained in step S3, the data table is converted into a graph structure network dataset composed of node and edge relationship information. S5. Design sequential partitioning experiments and random partitioning experiments, and determine the training data partitioning method to be used based on the experimental results; S6. Construct a graph neural network model and train it; S7. Use the trained graph neural network model to perform rolling prediction; S8. Perform targeted enhancements on the constructed graph neural network model; Step S6 specifically includes: the graph neural network model adopts a three-layer graph convolutional structure, namely two GraphConv convolutional layers and one GATConv convolutional layer. The input and output node feature dimensions of the three graph convolutional units are all set to 512. The specific structure is as follows: First GraphConv convolutional layer: GraphConv, in_feats=10, out_feats=512, activation function is ReLU, and Dropout coefficient is set to 0.5; The second GraphConv convolutional layer: GraphConv, in_feats=512, out_feats=512, activation function is ReLU, and the Dropout coefficient is set to 0.5; GATConv convolutional layer: GATConv, in_feats=512, out_feats=512, num_heads=3. The output tensor is reshaped by view(-1,3,512) and then averaged along the head dimension to obtain the final 512-dimensional representation of the node. The graph neural network model also includes a hidden layer dimension design, with all intermediate hidden feature spaces using hidden_size=512; Experiments were conducted with the batch size of the graph neural network model set to 16, 32, 48, and 64 respectively to determine the training batch size of the model. In step S7, the trained model is used to predict the dynamic features of the nodes at five time points after time t, specifically including the following steps: S71. Based on the determined training data partitioning method and training batch size, the constructed graph neural network model is trained to obtain the training model corresponding to the three arguments. S72. Using the data at time t in the graph structure network dataset as input, read the three trained argument models and perform initial prediction on the dynamic feature data of the three nodes at time t+1. S73. After obtaining the three dynamic feature data at time t+1 of the initial prediction, read the static feature data of the nodes in the dataset again, predict the three dynamic feature data of the nodes at time t+1, and then perform iterative prediction using the static feature data and the predicted three dynamic feature data of the nodes at time t+1 until all node data of the five images are obtained. S74. After obtaining all node data from the 5 graphs, compare them with the original data in the graph structure network dataset to obtain the error analysis graph.

2. The fine-grained interpolation prediction method for hydrological simulation results based on graph neural networks according to claim 1, characterized in that, Step S1 specifically includes: DEM data is obtained through surveying or publicly available online data. The first planar text data is output through a tool script with specified additional parameters. A point matrix data table based on GIS digital elevation raster is constructed by appending an ID field and the corresponding auto-incrementing index ID value to the first planar text data. Suppose that the simulation network data carrier constructed by the dot matrix data table has n edges, then the corresponding COO matrix has an dimension of n×2. Load the dot matrix data table and traverse each node, determine the edge status, and if the criterion formula is satisfied... Then, based on the two-dimensional array data, data rows [i,j] are appended until the traversal is complete, and a flat text file is output, thus completing the construction of the coo matrix; where x i Represents a node i The X-axis coordinate value, y i Represents a node i Y-axis coordinate value, x j For nodes j The X-axis coordinate value, y j For nodes j The Y-axis coordinate value, where R represents the spatial resolution of the DEM data.

3. The fine-grained interpolation prediction method for hydrological simulation results based on graph neural networks according to claim 2, characterized in that, Step S2 specifically includes: S21. Download the raster data of the study area, including normalized vegetation index, leaf area index, soil type and soil composition percentage; S22. Based on DEM data, a tool script is used to calculate the slope raster for each point in the dot matrix data table. The slope raster is converted into second planar text data containing slope values ​​at each point using the script. The slope field in the second planar text data is read, and the slope column is appended to the dot matrix data table using a function to obtain the first appended data table. S23. Resample the raster of the normalized vegetation index to align its resolution with that of the DEM data. Convert the resampled raster of the normalized vegetation index into third-plane text data containing the point-by-point normalized vegetation index. Use a data append operation to append the normalized vegetation index value as column data to the first append data table to obtain the second append data table. S24. Resample the raster of leaf area index to align its resolution with that of the DEM data. Convert the resampled raster of leaf area index into fourth-plane text data containing point-by-point leaf area index. Use a data appending operation to append the leaf area index as column data to the second appended data table to obtain the third appended data table. S25. Based on the soil type and soil component ratio, obtain the corresponding runoff curve number; construct a runoff curve number raster based on the runoff curve number; if the resolution of the runoff curve number raster is inconsistent with the resolution of the DEM data, perform resampling calculation to align the resolution of the runoff curve number raster with the resolution of the DEM data, output the resolution-aligned runoff curve number raster, then convert it to text, output the fifth plane text data, combine it with the second plane text data, and use the formula... Calculate the numerical values ​​of the runoff curve considering slope correction. CN represents the number of runoff curves. θ This represents the node slope value; the calculated value will then be... As column data, it is integrated into the third append data table through data append operations to obtain the fourth append data table; S26. Based on the resolution of the DEM data, the soil component percentage raster is divided into sand, silt, and clay component percentage rasteres. Each of these rasteres is resampled to align its resolution with the DEM data resolution. The resolution-aligned sand, silt, and clay component percentage rasteres are then output. The resampled sand, silt, and clay component percentage rasteres are then converted to text, and the sixth-plane text data is output using the formula... Calculate soil shear strength The sixth plane text data is obtained, where sand represents the proportion of sand particles in the soil, SILT represents the proportion of silt particles in the soil, CLAY represents the proportion of clay particles in the soil, and tcadif represents the adjustment coefficient. The soil shear strength is added as column data to the fourth appended data table using a data appending operation to obtain the fifth appended data table, thus completing the organization of all static data.

4. The fine-grained interpolation prediction method for hydrological simulation results based on graph neural networks according to claim 3, characterized in that, Step S3 specifically includes: S31. Based on the fifth supplementary data table, construct a hydrological MDPM model; S32. Set dynamic parameter groups and iteration step size T1. The dynamic parameter groups include rainfall pattern and rainfall intensity. Simulate physical quantities through the hydrological MDPM model. The physical quantities include surface runoff, groundwater pore water and surface solids. Specifically, the hydrological MDPM model traverses all dynamic parameter groups, loads the time-varying sequence of physical quantities of each node, and obtains simulation results. S33. The simulation results and dynamic parameter groups are appended as column data to the fifth appended data table.

5. The fine-grained interpolation prediction method for hydrological simulation results based on graph neural networks according to claim 4, characterized in that, Step S33 specifically includes the following steps: S331. Use the data append operation to append the dynamic parameter group as column data to the fifth append data table to obtain the first dynamic data table; S332. Use the data append operation to append the iterative point-by-point data as column data to the first dynamic data table to obtain the second dynamic data table. The iterative point-by-point data is the point-by-point data of the physical quantity changing with the iteration step size. S333: Convert the second dynamic data table into a dynamic data file using a function; S334. Perform steps S332-S333 on the simulation results to traverse all dynamic parameter groups and obtain several dynamic data files.

6. The fine-grained interpolation prediction method for hydrological simulation results based on graph neural networks according to claim 5, characterized in that, In step S4, based on the dynamic simulation results obtained in step S3, the data table is converted into a graph structure network dataset composed of node and edge relationship information, specifically including the following steps: S41. Based on the DGLDataset base class in the DGL graph neural network framework of Python, construct a custom graph dataset class MyGraphDataset; S42. Read the point feature CSV file of the hydrological MDPM model and extract all source and sink node information; traverse the point feature CSV file, establish valid connection relationships between source nodes and the first to eighth sink nodes, and filter out invalid connection edges with sink node values ​​of -1; construct a list of source nodes and a list of target nodes, and convert them into PyTorch tensor format; based on the source node and target node tensors, create a basic graph structure using the DGL graph construction function dgl.graph(); S43. Read the CSV file containing static and dynamic features, convert the two-dimensional table data into a NumPy array, and specify the data type as float32; convert the two-dimensional array into a three-dimensional tensor through a data reshaping operation; then convert the NumPy array into a PyTorch tensor format; finally, copy the basic graph structure for each graph, and store the corresponding node feature tensor into the node data of the graph, using feat as the feature key name, to obtain the final graph structure network dataset. S44. Use the os module to save the final graph structure network dataset in DGL binary format to the specified path.

7. The fine-grained interpolation prediction method for hydrological simulation results based on graph neural networks according to claim 6, characterized in that, Step S5 specifically includes the following steps: S51. Based on any two adjacent graphs G(t) and G(t+1) in the graph structure network dataset, construct training samples, taking the node features and topology of G(t) as input and the dynamic feature columns of the corresponding nodes in G(t+1) as output; perform batch processing on T-1 sample pairs, where T represents the number of graphs in the graph structure network dataset; during batch processing, multiple graphs are concatenated using a function while maintaining label alignment; S52. Sequential partitioning experiment: Maintain the time order, use the first 80% of the samples for training and the last 20% for validation. S53. Random partitioning experiment: All samples are globally randomly shuffled according to the index, and then 80% of the samples are divided into training set and 20% of the samples are divided into validation set to eliminate the distribution bias caused by time order. S54. Compare the experimental results of the sequential partitioning experiment and the random partitioning experiment to determine the training data partitioning method to be used.

8. The fine-grained interpolation prediction method for hydrological simulation results based on graph neural networks according to claim 7, characterized in that, Step S8 specifically includes: based on the random partitioning experiment, randomly repeating data with a data distribution less than a preset threshold to increase the data volume until the data statistics of each pattern are balanced, thereby obtaining an enhanced training dataset. The constructed graph neural network model is then trained using the enhanced training dataset to obtain an enhanced graph neural network model.