An Ocean Drifting Buoy Trajectory Prediction Method Based on the FGGNN Model
Through graph structure characterization based on the FGGNN model and improved gated cycle unit, the problem of difficult to consider complex marine environmental factors in the prior art is solved, and a more accurate and adaptive prediction of marine drift float trajectory is achieved.
Patent Information
- Application Number
- CN202510272401.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-10
- Publication Date
- 2025-06-10
- Estimated Expiration
- 2045-03-10
AI Technical Summary
The existing marine drift float trajectory prediction methods are difficult to consider complex marine environmental factors such as wind, flow, and tide at the same time, resulting in limited accuracy of the prediction results. When traditional neural network models process multimodal marine environment data, it is difficult to model complex relationships between feature dimensions.
A method for prediction of marine drift float trajectory based on the FGGNN model is proposed. The trajectory trajectory and marine environmental elements are mapped into the graph structure through graph structure characterization. The interaction between time series features and feature dimensions is modeled using improved gated cyclic units and directed graph aggregation mechanism.
It improves the accuracy and adaptability of the prediction of the trajectory of the marine drift float, can more comprehensively and accurately reflect the dynamic changes of the marine environment, and significantly improves the prediction effect.
Smart Images

Figure CN119783553B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of ocean drifting buoy trajectory prediction, and specifically to an ocean drifting buoy trajectory prediction method based on the FGGNN model. Background Technique
[0002] Currently, the methods for predicting the trajectory of drifting buoys are mainly divided into methods based on physical models and data-driven methods. The methods based on physical models usually simulate the movement trajectory of the buoy by establishing hydrodynamic equations and combining ocean environmental data. However, such methods are limited by the acquisition accuracy of ocean environmental data and the ability of physical models to depict various ocean environmental elements. It is difficult to consider complex factors such as wind, current, and tide simultaneously, and there is still a certain deviation from the real ocean environment, resulting in limited accuracy of the prediction results. In addition, physical models usually require parameter adjustment for different regions, and their applicability is limited.
[0003] With the development of deep learning technology, researchers have gradually applied data-driven neural network models to trajectory prediction tasks. Since buoy trajectory data exhibits typical time series characteristics, recurrent neural networks (RNNs) and their improved models, such as long short-term memory networks (LSTMs) and gated recurrent units (GRUs), have been widely used in time series data prediction tasks. These models can effectively capture the time dependence of trajectory data, but there are still certain limitations. For example, RNNs are prone to the problems of gradient vanishing or gradient explosion when dealing with long sequence data, making it difficult for the model to capture long-term dependence information; although LSTM alleviates this problem to a certain extent, its computational complexity is relatively high, and it is difficult to model the complex relationships between feature dimensions. In addition, most traditional neural network models are based on fully connected operations and cannot effectively model the non-Euclidean relationship between the buoy trajectory and ocean environmental elements, restricting the prediction ability of the model.
[0004] In recent years, graph neural networks (GNNs) have gradually been applied to trajectory prediction tasks due to their advantages in modeling complex relational networks. GNNs can effectively utilize graph structures to represent the dependencies between different features, enabling the model to learn both spatial and temporal information simultaneously. However, existing GNNs are mainly applied to the modeling of spatial relationships between nodes and rarely consider the interaction between feature dimensions, resulting in limitations in dealing with multi-modal ocean environmental data. Therefore, for the ocean drifting buoy trajectory prediction task, it is necessary to design a neural network model that can simultaneously model time series features and the interaction between feature dimensions to improve the accuracy of trajectory prediction. Summary of the Invention
[0005] In order to solve the above technical problems, the present invention proposes an ocean drifting buoy trajectory prediction method based on the FGGNN model, including the following steps:
[0006] Step S1: Obtain time-series data from an ocean drifting buoy, and calculate the features in the time series data through interpolation.
[0007] Step S2: Analyze the interaction relationship between features in the time-series data, generate a directed adjacency matrix of the feature graph, and perform normalization processing.
[0008] Step S3: Perform a convolution operation on the feature graph using the weighted adjacency matrix to obtain time-series data.
[0009] Step S4: Use an improved gated recurrent unit to extract the time features of the time-series data.
[0010] Step S5: Construct an FGGNN model, and predict the trajectory of the ocean drifting buoy based on the time features obtained in Step S4.
[0011] In a preferred embodiment, Step S2 includes:
[0012] Step S201: Analyze the interaction relationship between features in the time-series data, and generate a directed adjacency matrix through an edge set.
[0013] Step S202: Add self-loops to the directed adjacency matrix so that each node is at least connected to itself. ;
[0014] Among them, is the identity matrix, is the original directed adjacency matrix, is the adjacency matrix after adding self-loops;
[0015] Step S203: Calculate the degree matrix D to obtain the degree-normalized directed adjacency matrix :
[0016] .
[0017] In a preferred embodiment, Step S3 includes:
[0018] Step S301: Perform a weighting operation on the normalized adjacency matrix through the adjacency matrix weight to obtain a weighted adjacency matrix :
[0019] ;
[0020] Among them, represents element-wise multiplication;
[0021] Step S302: Based on the weighted adjacency matrix, perform a convolution operation on the structure of the feature map, and output the feature data after graph convolution for each node;
[0022] ;
[0023] where represents the i-th feature data after the feature map has undergone convolution, is the j-th feature of the input data X, is an element in the weighted adjacency matrix, representing the connection weight between node i and node j;
[0024] Step S303: Overall scale the feature data after graph convolution to obtain the intermediate representation T2 of the time series data:
[0025] ;
[0026] where, is a learnable parameter, and ReLU is the activation function;
[0027] Step S304: Perform batch normalization on the intermediate representation of the time series data to obtain the time series data after batch normalization :
[0028] ;
[0029] In the formula, BatchNorm represents batch normalization.
[0030] In a preferred embodiment, the step S4 includes:
[0031] Step S401: Use a graph convolution operation to replace the fully connected operation in the gated recurrent unit to form an improved gated recurrent unit, and extract the relationship between the features of the time series data while learning the time relationship;
[0032] Step S402: In the improved gated recurrent unit, perform graph convolution on the hidden state of the previous moment at each moment to obtain the influence of the state of the previous moment on the state of the current moment, and form time series information;
[0033] Step S403: Use the improved gated recurrent unit to process the time series information, and output the feature dynamics changing with time and the hidden state representing the final moment of the time series information.
[0034] In a preferred embodiment, in the step S401, a graph convolution operation is performed on the input data X:
[0035] ;
[0036] where, Indicates the result after the graph convolution operation, is the learnable weight, is the normalized directed adjacency matrix, is the non-linear activation function;
[0037] The is split into three parts along the last dimension:
[0038] ;
[0039] which respectively correspond to the input received information of the update gate, reset gate and new memory cell in the gated recurrent unit.
[0040] In the preferred embodiment, in step S402, in the improved gated recurrent unit, at each moment, the hidden state of the previous moment is subjected to graph convolution to obtain the influence of the previous moment state on the current moment state:
[0041] ;
[0042] Among them, is the learnable weight, is the non-linear activation function, h2h represents the current state information received from the previous moment state, and h2h is split into three parts along the last dimension:
[0043] ;
[0044] which respectively correspond to the information of the previous moment state received by the update gate, reset gate and new memory cell.
[0045] In the preferred embodiment, in step S403, first calculate the update gate z t :
[0046] ;
[0047] Among them, is the bias term of the update gate;
[0048] Then calculate the reset gate r t :
[0049] ;
[0050] Among them, is the bias term of the reset gate;
[0051] Then calculate the new candidate memory :
[0052] ;
[0053] Among them, represents element-wise multiplication, is the calculation result of the new memory unit in graph convolution, represents the new memory unit generated from the hidden state at the previous moment, which is calculated by graph convolution from the hidden state at the previous moment, is the bias term of the new memory unit;
[0054] Calculate the hidden state at the current moment :
[0055] ;
[0056] Among them, is the hidden state obtained by graph convolution processing the data at the previous moment.
[0057] In a preferred embodiment, in the step S5, the FGGNN model adopts an encoder-decoder architecture. The encoder includes three layers of improved gated recurrent units, and the decoder includes three layers of improved gated recurrent units. The three layers of improved gated recurrent units in the decoder correspond to the three layers of improved gated recurrent units in the encoder, and each improved gated recurrent unit in the decoder receives the hidden state generated by the corresponding improved gated recurrent unit in the encoder.
[0058] In a preferred embodiment, the encoder and decoder are combined into an end-to-end system. The encoder is composed of multiple GCN and RNN layers, which is used to extract the spatio-temporal features of the input time-series data X and generate a list of hidden states :
[0059] ;
[0060] Among them, the number of final states is the number of GRU units in the encoder;
[0061] The decoder accepts the list of hidden states from the encoder as input, performs time-series prediction, and generates the final predicted future time series :
[0062] .
[0063] In a preferred embodiment, in the step S1, each buoy record is traversed, and the timestamp, longitude, and latitude are queried to merge the wind speed and ocean current data with the buoy trajectory longitude and latitude data into time-series data;
[0064] Calculate the longitude and latitude time-step displacement of each buoy as the displacement feature:
[0065] ;
[0066] ;
[0067] Among them, lng_diff represents the time-step displacement in the longitude direction, and lat_diff represents the time-step displacement in the latitude direction. represents the longitude at time t, represents the longitude at time t - 1, represents the latitude at time t, represents the latitude at time t - 1.
[0068] Compared with the prior art, the present invention has the following beneficial technical effects:
[0069] (1) Graph-structure-based temporal data representation method for buoy trajectories:
[0070] The present invention proposes a graph-structure representation method. By leveraging the advantages of graph neural networks, it maps buoy trajectories and marine environmental factors (such as longitude, latitude, ocean currents, wind speed, etc.) at the buoy's location into a graph structure and performs efficient representation in the Encoder part. Each marine environmental factor (such as ocean current, wind speed, temperature, etc.) serves as a node in the graph, and the interactions between nodes are represented by a directed adjacency matrix. These connection relationships between nodes reflect the mutual influences and interactions between environmental factors (such as the relationship between wind speed and ocean current). The construction of the adjacency matrix is based on physical backgrounds, such as the influence of ocean currents on wind speed or the coupling relationship between wind speed and buoy trajectories, thus more accurately describing the interaction laws of environmental factors.
[0071] On the one hand, this representation method effectively expresses the physical interaction relationships between different marine environmental factors by introducing a graph structure, enhancing the interpretability of the model; on the other hand, the graph structure can effectively reduce redundant connections between features, thereby significantly improving computational efficiency and reducing unnecessary computational overhead. Compared with traditional data representation methods based on single features, the graph structure can capture complex interaction effects between environmental factors, enabling the model to more comprehensively and accurately reflect the dynamic changes of the marine environment, thus improving the accuracy and reliability of predictions.
[0072] (2) Learning of relationships between feature dimensions based on directed graph aggregation:
[0073] The method for learning the relationship between feature dimensions based on directed graph aggregation of the present invention can effectively simulate the complex dynamic relationship between marine environmental factors and buoy trajectories. By normalizing the degrees and adjusting the size of the adjacency matrix, the adjacency matrix can more accurately reflect the mutual influence between different marine environmental factors and how these influences act on the changes of buoy trajectories in the time series process. The adjusted adjacency matrix can not only represent the relationship between marine environmental factors, but also effectively control the influence intensity of these factors on buoy trajectory prediction. During the model training process, through the dynamic adjustment of the weights of the learnable adjacency matrix, the model can flexibly optimize the influence paths between different features, avoid the overfitting problem that may occur in traditional methods, and at the same time enhance the generalization ability of the model.
[0074] This method for learning the relationship between feature dimensions based on directed graph aggregation can better handle the highly complex and non-linear feature interactions in the marine environment, effectively improving the prediction accuracy of buoy trajectories. Especially when dealing with complex marine environments, the model has stronger adaptability and prediction stability.
[0075] (3) Improved gated recurrent unit:
[0076] To solve the deficiencies of traditional gated recurrent units in processing graph-structured data, the present invention proposes an improved GRU structure. Traditional GRUs use fully connected layers to learn the feature dependency relationships in time series, but for graph-structured data, traditional fully connected layers cannot fully consider the complex dependency relationships between nodes. Therefore, the present invention introduces graph convolution operations into the GRU to replace the traditional fully connected layer. Graph convolution operations can capture the mutual dependency relationships between nodes when processing multi-feature graph-structured data at each time step, thereby more effectively extracting the spatial and temporal features in graph-structured data.
[0077] This improvement enables the model to better model the correlation between different features in time series prediction tasks, especially suitable for the processing of multi-modal data (such as the correlation between buoy trajectory data and environmental factors such as ocean currents and wind speeds). In addition, after introducing graph convolution, the model can reduce redundant connections, thereby reducing the computational complexity and improving the efficiency. In the buoy trajectory prediction task, the improved GRU can not only enhance the model's ability to learn temporal features, but also effectively improve the accuracy of feature relationship modeling, significantly improving the prediction effect.
[0078] (4) FGGNN model based on improved GRU and directed graph aggregation mechanism:
[0079] The present invention proposes a novel graph neural network model (FGGNN) based on improved GRU and directed graph aggregation mechanism. This model adopts an encoder-decoder architecture and realizes efficient temporal feature learning through a three-layer improved GRU structure. Compared with traditional buoy trajectory prediction methods, the FGGNN model of the present invention can simultaneously process the longitude and latitude data of buoys and various marine environmental factors (such as wind speed, ocean current, etc.). By fusing these multi-dimensional features, the model can capture more complex environmental change laws, thereby improving the accuracy and adaptability of trajectory prediction.
[0080] The three-layer improved GRU structure in the model has powerful temporal learning ability and can accurately model the time dependence of buoy trajectories. In addition, the FGGNN model also models the complex relationships between feature dimensions through a directed graph aggregation mechanism, further enhancing the adaptability of the model in complex marine environments. In the context of multi-modal data fusion, the FGGNN of the present invention can not only process features from different sources, but also effectively learn the interactions between these features, providing more accurate buoy trajectory predictions.
[0081] Compared with traditional methods, the FGGNN model of the present invention can better cope with dynamic and complex marine environments, while improving the accuracy of trajectory prediction. It has strong application value and is particularly suitable for complex temporal prediction tasks that require multi-modal feature fusion. Brief Description of the Drawings
[0082] Figure 1 It is a directed graph structure representing the features of multiple marine environmental elements of the present invention;
[0083] Figure 2 It is a structural diagram of the improved gated recurrent unit of the present invention;
[0084] Figure 3 It is a general encoder-decoder architecture diagram of the model of the present invention;
[0085] Figure 4 It is a graph of the longitude change of a drifting buoy;
[0086] Figure 5 It is a graph of the dimension change of a drifting buoy;
[0087] Figure 6 It is a graph of the hourly moving distance change of a drifting buoy;
[0088] Figure 7 It is a comparison graph of the actual and predicted longitudes;
[0089] Figure 8 It is a comparison graph of the actual and predicted latitudes. Detailed Embodiment
[0090] The following will clearly and completely describe the technical solutions in the embodiments of the present invention with reference to the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only a part of the embodiments of the present invention, rather than all the embodiments. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present invention without creative efforts shall fall within the protection scope of the present invention.
[0091] Embodiment 1
[0092] The following will further describe the present invention in detail in conjunction with Figures 1 - 6 , and the specific implementation steps are as follows:
[0093] Step S1. Obtain time series data from an ocean drifting buoy, and calculate the features in the time series data through interpolation.
[0094] Obtaining time series data from an ocean drifting buoy includes the longitude and latitude information of the buoy. At the same time, interpolate the corresponding sea current velocity and wind speed at the corresponding position in the ocean environmental field grid data according to the longitude and latitude coordinates of the buoy trajectory points. The sea current velocity and wind speed at the trajectory points are interpolated. The ocean environmental field data can be obtained from the European Copernicus Marine Data Sharing Center or through remote sensing reanalysis data.
[0095] Step S101. First, traverse each buoy record, and interpolate the corresponding wind speed and sea current data from the Copernicus ocean environmental field grid data according to the timestamp, longitude, and latitude of each record data, and merge this data with the buoy trajectory longitude and latitude data into time series data.
[0096] Step S102. Calculate the longitude and latitude time step displacements of each buoy as displacement features:
[0097] ;
[0098] ;
[0099] where lng_diff represents the time step displacement in the longitude direction, lat_diff represents the time step displacement in the latitude direction, represents the longitude at time t, represents the longitude at time t - 1, represents the latitude at time t, represents the latitude at time t - 1. After calculation, the time step displacements of longitude and latitude are also used as features in the time series data.
[0100] Step S2. Analyze the interaction relationships between the features in the time series data, generate a directed adjacency matrix of the feature map accordingly, and perform normalization processing.
[0101] Step S201. Analyze the interaction relationships between features in the time-series data, and generate a directed adjacency matrix through the edge set.
[0102] Analyze the interaction relationships between features in the time-series data, such as Figure 1 shown by the connection edge arrows between nodes. If an edge has only one arrow, it represents a unidirectional interaction relationship; if it has two arrows, it represents a bidirectional interaction relationship. Use a set of two-dimensional arrays to represent this connection relationship, and the shape of the array is 2×L:
[0103] ;
[0104] where L represents the number of nodes in each row, represents the starting node, represents the ending node. Therefore, , , ,..., are all directed edges. Based on this two-dimensional array, an adjacency matrix can be created. Create an all-zero adjacency matrix with a size of: ; where n represents the number of features, and then set the positions corresponding to each directed edge to 1, indicating that there is a directed connection relationship between these node pairs, as Figure 1 shown, where wind_u represents the wind speed in the longitude direction, wind_v represents the wind speed in the latitude direction, longitude represents longitude, latitude represents latitude, current_u represents the ocean current speed in the longitude direction, and current_v represents the ocean current speed in the latitude direction.
[0105] Step S202. Add self-loops to the directed adjacency matrix so that each node is at least connected to itself.
[0106] To avoid some nodes losing all information completely because they have no neighbor node information in subsequent graph convolution operations, self-loops are added to the directed adjacency matrix so that each node is at least connected to itself.
[0107] ;
[0108] where is the identity matrix, is the original directed adjacency matrix, is the adjacency matrix after adding self-loops.
[0109] Step S203. Obtain the degree-normalized directed adjacency matrix by calculating the degree matrix .
[0110] Its element represents the degree of node (i.e., the node (out-degree). The degree matrix is a diagonal matrix, and its diagonal elements are the degrees of the nodes.
[0111] To perform degree normalization, the square root of the reciprocal of the degree is used for normalization. The formula for degree normalization is as follows:
[0112] ;
[0113] where, represents the square root of the reciprocal of the degree matrix , that is, the square root of the reciprocal of the degree of each node. Through this operation, the influence of the degree on the adjacency matrix can be reduced, so that nodes with high degrees will not have too much influence on the model. The finally returned directed adjacency matrix is the matrix after degree normalization, which will be used as the input in the graph neural network to improve the robustness of the model to the graph.
[0114] Improve the representation of the feature map through normalization processing to avoid the influence of the degree on the final model performance.
[0115] Step S3. Perform a convolution operation on the feature map structure using the weighted adjacency matrix to obtain time series data.
[0116] Adjust the structure of the graph through a learnable weighted adjacency matrix, then apply the graph convolution operation, and finally obtain the output through a fully connected layer (linear transformation).
[0117] Step S301. Perform a weighting operation on the normalized directed adjacency matrix through the adjacency matrix weight to obtain the weighted adjacency matrix.
[0118] First, perform a weighting operation on the normalized adjacency matrix through the learnable adjacency matrix weight to obtain the weighted adjacency matrix :
[0119] ;
[0120] where, represents the element-wise product.
[0121] where, is a matrix, where n is the number of features, and it adjusts the relationship strength between nodes in the adjacency matrix through the learning rate; is the normalized adjacency matrix (the matrix after degree normalization mentioned above). Through the weighted adjacency matrix, the model can dynamically adjust the adjacency relationship of each node according to the graph structure information in the data.
[0122] Step S302. Based on the weighted adjacency matrix, perform a convolution operation on the structure of the feature map, and output the feature data of each node after graph convolution.
[0123] After calculating the weighted adjacency matrix, apply a graph convolution operation to the input data at a single moment to perform a convolution operation on the graph structure, so as to obtain the graph convolution output of each node:
[0124] ;
[0125] where represents the i-th feature data after the feature map passes through the convolution, is the j-th feature of the input data X, is the element in the weighted adjacency matrix, representing the connection weight between node i and node j.
[0126] Step S303. Use a trainable parameter to globally scale the feature data after graph convolution to obtain the intermediate representation T2 of the time series data:
[0127] ;
[0128] where, is a learnable parameter that can globally scale the feature data of the graph structure after graph convolution. Then use the ReLU activation function to introduce non-linearity, thereby increasing the expressive power of the model.
[0129] Step S304. Perform batch normalization on the intermediate representation of the time series data to obtain the time series data after batch normalization :
[0130] ;
[0131] In the formula, BatchNorm represents batch normalization. Batch normalization accelerates the gradient descent process and prevents gradient vanishing or explosion by normalizing each mini-batch of data to have zero mean and unit variance. The result after graph convolution, fully connected layer and batch normalization is the output of this step and has the following shape:
[0132] ;
[0133] where OutputShape represents the shape of the output after the input passes through the above processing, batch_size represents the batch size of the data, num_nodes represents the number of nodes, that is, the number of features of the input data, and num_timesteps represents the number of time steps of the input data.
[0134] Step S4. Use an improved gated recurrent unit to extract the time features of the time series data.
[0135] The previous step is to use a graph structure to receive the time-series feature data of the buoy trajectory. The time-series task also requires the model to be able to extract time-series features. Therefore, a gated recurrent unit is used next to extract the time-series features therein, and then the trajectory for a period of time in the future is predicted. In particular, the present invention improves the gated recurrent unit and uses graph convolution operations to replace the fully connected operations therein.
[0136] Step S401. Use graph convolution operations, i.e., GCNBlock, to replace the fully connected operations in the gated recurrent unit to form an improved gated recurrent unit GCNGRU, so as to further extract the relationship between time-series data features while learning the time relationship. As Figure 2 shown in the improved gated recurrent unit, where G represents graph convolution operations, σ represents the sigma activation function, tanh represents the hyperbolic tangent activation function, X represents the Hadamard product, + represents matrix addition, H[t-1] represents the state output at the previous moment, H[t] represents the state output at the current moment, y[t] represents the output at the current moment, and x[t] represents the input at the current moment.
[0137] Assume that the output data shape of the above step is B × N × S × C, where B is the batch size, N is the number of nodes, S is the number of time steps, and C is the number of features per node. Pass it into the GCNGRU module, and use the GCNBlock therein to extract the relationship between features again, that is, first perform graph convolution operations on the input data:
[0138] ;
[0139] Among them, (input-to-hidden) represents the result after the current input X is processed by GCN. X is the current input, is the learnable weight calculated by GCN, is the normalized adjacency matrix, is the non-linear activation function.
[0140] Then split along the last dimension into three parts:
[0141] ;
[0142] Correspond to the input reception information of the update gate, reset gate, and new memory unit in the gated recurrent unit respectively. The update gate controls how much information in the current hidden state comes from the hidden state at the previous moment and how much information comes from the newly calculated state. The reset gate controls how much information of the hidden state at the previous moment needs to be forgotten in order to calculate the new memory. The new memory unit calculates a new candidate state based on the current input and the result of the reset gate.
[0143] Step S402. In the gated recurrent unit, at each moment, perform a graph convolution on the hidden state at the previous moment to obtain the influence of the previous moment state on the current moment state:
[0144] ;
[0145] where is the hidden state at the previous moment, is the normalized adjacency matrix, is the learnable weight calculated by GCN, is the non-linear activation function, and h2h represents the current state information received from the previous moment state. Similarly, split h2h into three parts along the last dimension:
[0146] ;
[0147] Correspond to the information of the previous moment state received by the update gate, reset gate, and new memory unit respectively.
[0148] Step S403. Use GRU to process the time series information and output the dynamic features changing with time and the hidden state representing the final moment of the entire time series information.
[0149] After having i2h and h2h, the three core parts of GRU can be calculated: the update gate, the reset gate, and calculate the new candidate memory.
[0150] First, calculate the update gate, which determines to what extent h t-1 is retained:
[0151] ;
[0152] where is the update gate component part after the current input is transformed by graph convolution, representing the contribution of the input feature to the current update gate. is the update gate component after the hidden state at the previous moment is transformed by graph convolution, representing the contribution of the past information to the current update gate. is the bias term of the update gate.
[0153] Then perform the calculation of the reset gate:
[0154] ;
[0155] Among them, is the part related to the reset gate after the current input is transformed by graph convolution, representing the contribution of the input feature to the current reset gate. is the part related to the reset gate after the hidden state at the previous moment is transformed by graph convolution, representing the contribution of past information to the current reset gate. is the bias term of the reset gate.
[0156] Next, calculate the new candidate memory:
[0157] ;
[0158] Among them, represents the element-wise product, that is, the Hadamard product ⊙, is the calculation result of the new memory unit in the GRU network. It is obtained after the current input passes through graph convolution (GCN) and is used to determine the updated part of the new memory at the current moment. represents the new memory unit generated from the hidden state at the previous moment. It is calculated by graph convolution of the hidden state at the previous moment and is used to determine the memory update at the current moment. is the bias term of the new memory unit.
[0159] After that, the hidden state at the current moment can be calculated:
[0160] ;
[0161] Among them, is the aforementioned update gate, is the hidden state obtained by the GRU processing the data at the previous moment, is the aforementioned candidate memory. The GRU gated recurrent unit improved by graph convolution outputs two main parts. First, it outputs a sequence composed of the hidden states after multiple time steps of the entire input sequence, representing the dynamic features changing with time. In addition, it also outputs the hidden state at the last time step, that is, the final hidden state, representing the model state at the last moment of the entire sequence.
[0162] Step S5. Construct the FGGNN model and predict the trajectory of the ocean drifting buoy based on the time features obtained in step S4.
[0163] The FGGNN model adopts an encoder-decoder architecture, where the encoder contains three layers of improved gated recurrent units, and the decoder includes three layers of improved gated recurrent units. The three layers of improved gated recurrent units in the decoder correspond to the three layers of improved gated recurrent units in the encoder. Each gated recurrent unit in the decoder receives the hidden state generated by the corresponding gated recurrent unit in the encoder; a feature dimension relationship learning module based on graph aggregation is used to receive buoy trajectory time series data.
[0164] The overall framework adopted in the present invention is an encoder-decoder framework, that is, an Encoder-Decoder framework, where Encoder represents the encoder and Decoder represents the decoder. The GRU units in the Encoder will output two parts of content. One part is a list of hidden states of the entire time series, and this part will be used as the input of the GCNBlock in other Encoders. The other part is the hidden state at the final moment, and this part will be input into the GRU unit in the Decoder framework.
[0165] Step S501. Construct an encoder, and perform graph convolution on the input features through GCNBlock:
[0166] ;
[0167] Among them, the specific operation of the GCN is as described above. It is to model the relationship between features of the input features through the graph convolution module GCNBlock, use the weighted adjacency matrix to transfer the relationships between nodes, and obtain the graph aggregation operation output GCNOutput.
[0168] Step S502. Perform time series modeling on the output GCNOutput of the graph aggregation operation through GRU.
[0169] Step S503. Construct a decoder. As Figure 3 shown, there are 3 GRU units in the decoder. Each GRU unit in the decoder receives the hidden state output by the corresponding layer GRU unit in the encoder as the state input, and at the same time receives the output of the upper GCNBlock as the regular input, that is, each GRU unit receives two paths of information, one path is to receive state information, and the other path is to receive regular input information. In particular, there is no GCNBlock module above the first GRU unit at the top of the decoder, so it receives None as the regular input. Immediately below each GRU unit in the decoder is a GCNBlock, and the output of each GRU unit will be used as the input of the subsequent GCNBlock
[0170] Step S504. The GCNBlock module in the decoder receives the output of the GRU unit in the decoder, performs feature relationship modeling, and outputs the predicted buoy drift trajectory data.
[0171] The GCNBlock module in the decoder receives the output of the GRU unit in the decoder and models the relationship between features. The last GCNBlock module in the decoder outputs the predicted time series data as the output of the entire framework.
[0172] In the overall model, the Encoder and Decoder are combined into an end-to-end system. The Encoder consists of multiple GCN and RNN layers to extract the spatiotemporal features of the input time series data X and generate a hidden state list:
[0173] ;
[0174] The number of final states is the number of GRU units in the encoder. The encoder maps the input time series data to a new representation space, which usually contains rich representations of spatiotemporal features.
[0175] The decoder accepts the hidden states from the encoder as input. It makes time series predictions based on these states and generates the final output:
[0176] ;
[0177] in Represents the hidden state list output by Encoder, Represents the output of the decoder (that is, the entire overall model), that is, the predicted future time series.
[0178] Based on the processed data set, the present invention uses the FGGNN (Flow Graph Neural Network) model to train and test the ocean drifting buoy trajectory. The data set is divided into training set, validation set and test set in a ratio of 8:1:1, and the model is implemented using the Pytorch framework. In the main experiments, the architecture of the encoder and decoder are both 3 layers. The time interval of the data is set to 1 hour, and the appropriate time step is selected from 12 hours and 24 hours. Finally, the input historical trajectory data length T is defined as 24 hours, and the predicted time range is also 24 hours, considering that a longer prediction time may reduce the prediction accuracy.
[0179] During the training process, considering the GPU memory limitation, the batch size was set to 32. The Adam optimizer was used as the optimizer, the initial learning rate was set to 1e-4, and the learning rate was gradually adjusted during the training process through the learning rate scheduler. The total training rounds (epochs) were set to 5000 and adjusted in time according to the training speed.
[0180] Example 2
[0181] In the present invention, the mean square error (MSE) between the predicted value of the change in longitude and latitude and the true change value of the longitude and latitude of the trajectory is calculated as an evaluation index to compare the prediction accuracy.
[0182] The present invention selects to compare FGGNN with five trajectory prediction methods, and tests the performance of the models of the comparative methods on the drifting buoy trajectory dataset, using the hyperparameters recommended in the original methods, including the number of layers, batch size, etc., to approach the optimal performance of the models. The input length and output length of all models are the same.
[0183] The models used for comparison and their structures are as follows:
[0184] (1) CNN-LSTM: This model combines a convolutional neural network (CNN) and a long short-term memory network (LSTM). The CNN part consists of three convolutional layers, a batch normalization (BatchNorm) layer, a Dropout layer, an expansion layer, and a fully connected layer, which is responsible for extracting spatial features. The LSTM part contains two LSTM layers, which process the time series data output from the CNN layer and capture the temporal features.
[0185] (2) BiLSTM: This model is composed of two bidirectional LSTM (BiLSTM) layers, with a total of four LSTM units. The input of the model consists of multiple features, which are processed by the BiLSTM layers to obtain temporal information. The output is processed by a fully connected layer to generate the final prediction result.
[0186] (3) TRFM-LS: This model is improved on the basis of the traditional Transformer architecture. By introducing an LSTM layer to preprocess the sequence data and using the output of the LSTM layer as the input of the decoder, the ability to model time series data is enhanced, and long-term dependencies can be better captured.
[0187] (4) RGA: This model combines a residual network (ResNet) and a gated recurrent unit (GRU). First, the input data is processed through the ResNet layer to extract high-level features, then passed through two GRU layers to capture temporal dependencies, and finally the output is weighted by an attention mechanism. This structure can efficiently perform time series prediction and is particularly suitable for processing complex temporal patterns.
[0188] (5) TrAISformer: This model adopts a Transformer architecture similar to GPT. The Transformer consists of multiple stacked self-attention layers, and each layer acts as an autoregressive model. Through the dot-product multi-head attention mechanism, the model can process multiple subspaces in parallel, thereby improving the model's efficiency and prediction accuracy in time series prediction tasks.
[0189] To verify the effectiveness of the FGGNN model in trajectory prediction, the model was trained and tested using the actual ocean drifter buoy trajectory data in the Northwest Pacific region.
[0190] By comparing the fitting degree between the model prediction results and the actual trajectory, the closer it is to the real trajectory, the higher the prediction accuracy of the model. The experimental results show that FGGNN performs excellently in predicting trajectory sequences and has strong application value. By comparing the predicted values and the actual values in the same time period, the prediction effect can be intuitively observed. The predicted trajectory curve is an important indicator for evaluating the prediction accuracy of the model.
[0191] Figure 7 and Figure 8 Shows the comparison results between the predicted trajectory of the FGGNN model proposed in the present invention and the real trajectory. It can be seen from the figure that FGGNN shows higher prediction accuracy compared to other comparison models. At the same time, Table 1 shows the prediction results of the mean square error (MSE) of FGGNN and other comparison models on the same dataset.
[0192] Table 1 Errors of different models in predicting the drifter buoy trajectory
[0193]
[0194] The FGGNN proposed in the present invention significantly improves the prediction accuracy of the trajectory sequence. It can be seen from the data in Table 1 that the error value of FGGNN is lower than that of all other comparison models. The mean square error of the predicted longitude displacement value of the ocean drifter buoy trajectory is 0.000231, and the mean square error of the latitude displacement value is 0.000256. The experimental results show that FGGNN can effectively capture the relationships between various features in the buoy trajectory data and extract time-dependent features through time series data, thereby significantly improving the accuracy of trajectory prediction.
[0195] It is obvious to those skilled in the art that the present invention is not limited to the details of the above-described exemplary embodiments, and that the present invention can be implemented in other specific forms without departing from the spirit or essential characteristics of the present invention. Therefore, the embodiments should be regarded as exemplary and non-limiting, and the scope of the present invention is defined by the appended claims rather than the above description. Accordingly, all changes that fall within the meaning and scope of the equivalent elements of the claims are intended to be embraced within the present invention. Any reference signs in the claims should not be construed as limiting the claims involved.
Claims
1. A method for predicting ocean drifting buoy trajectory based on FGGNN model, characterized in that: The steps include: Step S1, obtaining time series data from an ocean drifting buoy, and obtaining features in the time series data through interpolation calculation; Step S2, analyzing the interaction relationship between features in the time series data, generating a directed adjacency matrix of the feature graph, and performing normalization processing; Step S3, using the weighted adjacency matrix to perform a convolution operation on the feature graph to obtain time series data; Step S4: extracting the time features of the time series data using an improved gated recurrent unit, including: Step S401: Use graph convolution operation to replace the fully connected operation in the gated recurrent unit to form an improved gated recurrent unit, and extract the relationship between time series data features while learning the time relationship; Step S402: In the improved gated recurrent unit, at each moment, graph convolution is performed on the hidden state of the previous moment to obtain the influence of the state of the previous moment on the state of the current moment, thereby forming time series information; Step S403: Use the improved gated recurrent unit to process the time series information, output the feature dynamics that change over time and the hidden state representing the final moment of the time series information; Step S5, constructing a FGGNN model to predict the trajectory of the ocean drifting buoy based on the time characteristics obtained in step S4; The FGGNN model adopts an encoder-decoder architecture. The encoder includes three layers of improved gated recurrent units, and the decoder includes three layers of improved gated recurrent units. The three layers of improved gated recurrent units in the decoder correspond to the three layers of improved gated recurrent units in the encoder. Each improved gated recurrent unit in the decoder receives the hidden state generated by the corresponding improved gated recurrent unit in the encoder.
2. The method for predicting the trajectory of an ocean drifting buoy based on the FGGNN model according to claim 1, characterized in that: The step S2 comprises: Step S201, analyzing the interaction relationship between features in the time series data, and generating a directed adjacency matrix through an edge set; Step S202, adding self-loops to the directed adjacency matrix so that each node is at least connected to itself; A'=A+I n Among them, I n is the identity matrix, A is the original directed adjacency matrix, and A' is the adjacency matrix after adding self-loops; Step S203: By calculating the degree matrix D, the degree-normalized directed adjacency matrix A is obtained. normalized :
3. The method for predicting the trajectory of an ocean drifting buoy based on the FGGNN model according to claim 2, characterized in that: The step S3 comprises: Step S301: Adjacency matrix weight A weights For the normalized adjacency matrix A normalized Perform weighted operation to obtain the weighted adjacency matrix A weighted : in, represents element-wise product; Step S302: Based on the weighted adjacency matrix, a convolution operation is performed on the structure of the feature graph, and feature data after convolution of each node graph is output; Among them LFS i represents the i-th feature data of the feature map after convolution, X j is the jth feature of the input data X, A weighted [i,j] is an element in the weighted adjacency matrix, which represents the connection weight between node i and node j; Step S303: Overall scale the feature data after graph convolution to obtain the intermediate representation T2 of the time series data: T2=ReLU(LFS·θ1) Among them, θ1 is a learnable parameter and ReLU is the activation function; Step S304: perform batch normalization on the intermediate representation of the time series data to obtain the batch normalized time series data T2 BN : T2 BN =BatchNorm(T2) In the formula, BatchNorm means batch normalization.
4. The method for predicting the trajectory of an ocean drifting buoy based on the FGGNN model according to claim 1, characterized in that: In step S401, a graph convolution operation is performed on the input data X: i2h=σ(A hat XW i ) Among them, i2h represents the result after graph convolution operation, W i is the learnable weight, A hat is the normalized directed adjacency matrix, σ is the nonlinear activation function; Split i2h into 3 parts along the last dimension: i2h update ,i2h reset ,i2h new_mem They correspond to the input receiving information of the update gate, reset gate and new memory unit in the gated recurrent unit respectively.
5. The method for predicting the trajectory of an ocean drifting buoy based on the FGGNN model according to claim 4, characterized in that: In step S402, in the improved gated recurrent unit, each moment is a hidden state h of the previous moment. t-1 Perform graph convolution to obtain the impact of the previous state on the current state: h2h=σ(A hat h t-1 IN h ) Among them, W h is a learnable weight, σ is a nonlinear activation function, h2h represents the current state information received from the previous state, and h2h is split into 3 parts along the last dimension: <h2 style=";text-align:left;direction:ltr">h2h<h2 style=";text-align:left;direction:ltr"> update <h2 style=";text-align:left;direction:ltr"> ,h2h<h2 style=";text-align:left;direction:ltr"> reset <h2 style=";text-align:left;direction:ltr"> ,h2h<h2 style=";text-align:left;direction:ltr"> new_mem They correspond to the information of the previous state received by the update gate, reset gate and new memory unit respectively.
6. The method for predicting the trajectory of an ocean drifting buoy based on the FGGNN model according to claim 5, characterized in that: In step S403, the update gate z is first calculated. t : With t =σ(i2h update +h2h update +b z ) Among them, b z is the bias term of the update gate; Then calculate the reset gate r t : r t =σ(i2h reset +h2h reset +b r ) Among them, b r is the bias term for the reset gate; Then calculate the new candidate memory in, Represents element-by-element product, i2h new_mem is the computation result of the new memory unit in the graph convolution, h2h new_mem represents the new memory unit generated by the hidden state of the previous moment, which is calculated by graph convolution of the hidden state of the previous moment, b h is the bias term of the new memory unit; Calculate the hidden state h at the current moment t : Among them, h t-1 It is the hidden state obtained by graph convolution processing the data at the previous moment.
7. The method for predicting the trajectory of an ocean drifting buoy based on the FGGNN model according to claim 4, characterized in that: The encoder and decoder are combined into an end-to-end system. The encoder consists of multiple GCN and RNN layers to extract the spatiotemporal features of the input time series data X and generate a hidden state list h_list: h_list=Encoder(X) Among them, the number of final states is the number of GRU units in the encoder; The decoder accepts the hidden state list from the encoder as input, performs time series prediction, and generates the final predicted future time series.
8. The method for predicting the trajectory of an ocean drifting buoy based on the FGGNN model according to claim 1, characterized in that: In the step S1, each buoy record is traversed, and the timestamp, longitude and latitude query wind speed and current data are merged with the buoy track longitude and latitude data into time series data; Calculate the latitude and longitude time step displacement of each buoy as the displacement feature: lng_diff=lng t -lng t-1 lat_diff=lat t -years t-1 Among them, lng_diff represents the time step displacement in the longitude direction, lat_diff represents the time step displacement in the latitude direction, lng t Represents the longitude at time t, lng t-1 Represents the longitude at time t-1, lat t Represents the latitude at time t, lat t-1 Represents the latitude at time t-1.
Citation Information
Patent Citations
Track prediction method under scene fusion based on space-time structure causal model
CN117933397A
GAT-ABiGRU network-based AUV (Autonomous Underwater Vehicle) drift trajectory prediction method
CN118535899A