A method for constructing an underwater obstacle profile for a UUV
By combining support vector clustering and RBF neural network, and utilizing the forward-looking sonar and inertial navigation system of the UUV, an accurate outline of underwater obstacles was constructed, solving the problem of inaccurate obstacle outline construction in existing technologies and ensuring the normal navigation of the UUV.
Patent Information
- Application Number
- CN202210792672.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-07-05
- Publication Date
- 2026-02-10
- Estimated Expiration
- 2042-07-05
AI Technical Summary
Existing technologies are insufficient to effectively construct the outline of underwater obstacles for UUVs, thus affecting their normal navigation.
A method combining support vector clustering and RBF neural network is adopted. By using forward-looking sonar detection data and inertial navigation positioning system to obtain obstacle coordinates, the dataset is divided and outlier points are removed to construct obstacle contours.
It achieves effective clustering of obstacle data, removes noise points and scattered data, and constructs accurate obstacle contours to support UUV navigation.
Smart Images

Figure CN115170937B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of machine learning technology and relates to a method for constructing the contours of underwater obstacles in UUVs, particularly a method for constructing the contours of underwater obstacles in UUVs based on Support Vector Clustering and Radial Basis Function (RBF) neural networks. Background Technology
[0002] With increasing human demand for resources and the depletion of terrestrial resources, the development and utilization of marine resources has become a hot topic. To better explore and develop marine resources, scholars from various countries have developed a series of intelligent devices, among which unmanned underwater vehicles (UUVs) are one. However, the ocean may contain obstacles such as reefs and shipwrecks, affecting the normal navigation of UUVs. Therefore, a feasible method is needed to enable UUVs to accurately detect obstacles and construct their general outlines, thereby achieving obstacle avoidance. Summary of the Invention
[0003] In view of the above-mentioned prior art, the technical problem to be solved by the present invention is to provide a method for constructing the contour of underwater obstacles in UUV using data detected by forward-looking sonar of UUV. The method adopts a combination of support vector clustering and RBF neural network, which can effectively cluster the data of a certain obstacle together, thereby obtaining the overall contour of the obstacle.
[0004] To solve the above-mentioned technical problems, the present invention provides a method for constructing the contour of underwater obstacles for UUVs, comprising the following steps:
[0005] Step 1: The UUV uses forward-looking sonar to detect the distance and azimuth angle between itself and obstacles. The UUV then uses an inertial navigation and positioning system to obtain its current position. After coordinate transformation, the coordinates of each point on the obstacle in the global coordinate system are obtained, forming a dataset {x1, x2, ..., x...}. n}, x j j = 1, ..., n is a two-dimensional vector, including the x-axis coordinates and y-axis coordinates of the data points;
[0006] Step 2: Use support vector clustering to cluster the dataset {x1,x2,…,x} obtained in Step 1. n The data is divided into several clusters, and support vectors describing the profile of each data cluster are obtained.
[0007] Step 3: Use the adjacency matrix to divide the dataset {x1,x2,…,x} n}The clusters are categorized according to the clusters in step 2, and category labels are assigned to the categorized clusters;
[0008] Step 4: Remove outlier data points from any clusters after classifying them in Step 3, and then determine the cluster centers for each cluster category;
[0009] Step 5: Construct the RBF neural network, set the RBF neural network parameters, train the RBF neural network, and obtain the trained neural network;
[0010] Step 6: Input the clustered data after removing outlier data points in Step 4 into the trained RBF neural network to obtain the obstacle contour boundary points.
[0011] Furthermore, in step 2, support vector clustering is used to cluster the dataset {x1,x2,…,x} obtained in step 1. n The data is divided into several clusters, and the support vectors describing the profile of each data cluster include:
[0012] Given the dataset {x1, x2, ..., x... n}Through nonlinear transformation H={Φ(x j Mapping |1≤j≤n} to a higher-dimensional space, then finding the enclosing hypersphere with the smallest radius R, i.e., finding the function minR. 2 The optimal solution;
[0013] The relationship between the distance from each data point to the center a of the sphere and the radius R is as follows:
[0014]
[0015] In the formula: ξ j ≥0 represents the slack variable that adjusts the size of the sphere's radius, and ||·|| represents the Euclidean norm;
[0016] Introducing the Lagrange function:
[0017]
[0018] Where: β j ≥0,μ j ≥0 represents a Lagrange multiplier, C∑ξ j C is the penalty term, and C is a hyperparameter set to adjust the cluster partitioning.
[0019] The Lagrangian function is expressed in terms of R,a,ξ j Taking the derivative and setting it to zero, we get:
[0020]
[0021]
[0022] β j =C-μj
[0023] From the KKT conditions:
[0024] ξ j μ j =0
[0025] (R 2 +ξ j -||Φ(x j )-a|| 2 )β j =0
[0026] Then, for the dataset {x1,x2,…,x} n Determine the data points in the data:
[0027] If ξ j >0,β j =C, this point is located outside the hypersphere and is an outlier;
[0028] If ξ j =0, 0 < β j <C, this point is located on the surface of the hypersphere and belongs to the support vector;
[0029] If ξ j =0,β j =0, this point is located inside the hypersphere and belongs to the cluster;
[0030] Transform the Lagrangian function into its Wolfe dual form:
[0031]
[0032] st0 < β j <C,j=1,…,n
[0033] In the formula: K(x) i ,x j )=exp(-q·||x i -x j || 2 ), where q is the set scale parameter for adjusting the cluster partitioning;
[0034] The distance from the image of any point x in the feature space to the center of the sphere is:
[0035]
[0036] The minimum radius of the hypersphere is:
[0037]
[0038] In the formula: x iHere, N represents the number of support vectors.
[0039] Furthermore, in step 3, the adjacency matrix is used to divide the dataset {x1,x2,…,x} into groups. n The cluster partitioning according to step 2 includes:
[0040] The adjacency matrix is represented as A = (A ij ) n×n Defined as:
[0041]
[0042] In the formula: seg(x i ,x j (x) is any point x i and x j The connecting lines between them;
[0043] In seg(x) i ,x j Randomly select a points on the graph, and substitute each of the a points into the function R. 2 If all function values are less than the minimum radius of the hypersphere, then determine seg(x). i ,x j When x is entirely located inside a hypersphere, then x is considered to be... i and x j For data belonging to the same cluster, the outline boundary of the data cluster is represented by support vectors.
[0044] Furthermore, in step 4, outlier data points from any clusters after the categorization in step 3 are removed, and then the cluster centers for each cluster category are determined, including:
[0045] Identify ξ in the cluster j >0,β j Points with the value C are outlier data points and should be discarded; ξ in the cluster j =0, 0 < β j <C and ξ j =0,β j Points with a value of 0 are identified as edge points and interior points of the category. Their mean is calculated and used as the cluster center of the category.
[0046] Furthermore, a neural network consists of three layers: the first layer is the input layer, which receives input data; the second layer is the hidden layer, which performs nonlinear transformations on the input data, and the function used in the transformation is called the radial basis function; the third layer is the output layer, which outputs the data processed by the hidden layer.
[0047] Furthermore, the parameters of the RBF neural network are set as follows:
[0048] The parameters include the center and width of the radial basis functions, and the connection weights between hidden layer neurons and output layer neurons;
[0049] The radial basis functions are Gaussian functions:
[0050]
[0051] In the formula: c is the center of the function, and σ is the width of the function; the cluster centers of each category obtained in step 4 are used as the centers of each radial basis function of the RBF neural network. i The width of the radial basis functions satisfies:
[0052] σ i =λd i
[0053] In the formula: σ i d is the width of the center of the i-th basis function. i It is the minimum distance from the i-th class center to the other class centers, and λ is the overlap coefficient;
[0054] Then, the pseudo-inverse method is used to solve for the weight matrix between the hidden layer neurons and the output layer neurons.
[0055] Furthermore, the pseudo-inverse method is used to solve for the weight matrix between the hidden layer neurons and the output layer neurons as follows:
[0056] The matrix of the RBF neural network is:
[0057] Y=GW
[0058] In the formula: Y is the actual output of the neural network; G = {g ki} represents the output matrix of the hidden layer neurons. k=1,2,…,N; i=1,2,…,I,X k For the k-th input sample, c i The center of the i-th radial basis function; W = (w ij ) I×J w is the weight matrix between hidden layer neurons and output layer neurons. ij The connection weights between the i-th hidden layer neuron and the j-th output layer neuron are denoted as .
[0059] The formula for calculating the weight matrix using the pseudo-inverse method is as follows:
[0060] W=G + D
[0061] Where: G + G is the pseudo-inverse of the matrix; D is the target output of the neural network.
[0062] Compared with the prior art, the beneficial effects of the present invention are:
[0063] 1. Applying support vector clustering to RBF neural networks improves the problem that the original RBF neural networks need to pre-set cluster centers based on experience.
[0064] 2. By analyzing the results of support vector clustering, noise points and scattered data can be effectively removed, while retaining obstacle data that has a significant impact on UUV navigation.
[0065] 3. The clustering method combining support vector clustering and RBF neural network is applied to UUV sonar data processing to realize the construction of underwater acoustic images. Attached Figure Description
[0066] Figure 1 This is a schematic diagram of forward-looking sonar detection;
[0067] Figure 2 It refers to all the data points detected;
[0068] Figure 3 It is the result of support vector clustering;
[0069] Figure 4 This is a histogram of the clustering results;
[0070] Figure 5 This is the data after removing outliers;
[0071] Figure 6 It is the final obstacle outline. Detailed Implementation
[0072] The present invention will be further described below with reference to the accompanying drawings and embodiments.
[0073] The objective of this invention is achieved as follows:
[0074] Step 1: The UUV uses its onboard multi-beam forward-looking sonar to detect the surrounding environment via sound waves. This sonar has 90 beams in the horizontal direction, which can obtain the distance and orientation information of each obstacle detected by each beam relative to the UUV. Simultaneously, the UUV uses inertial navigation positioning to obtain its own position coordinates. Then, a coordinate system transformation is performed to obtain the coordinates of each point on the obstacle in the global coordinate system.
[0075] The coordinates of the obstacle points obtained in Step 1 and Step 2 are the basic information we need to process. Using this basic information as input, we perform support vector clustering. During support vector clustering, the original data is mapped to a high-dimensional feature space, and a hypersphere with the smallest radius is searched within this feature space. After resolving the hypersphere into its constituent units back into space, each unit represents a data cluster, and the outline of the sphere is mapped to the outline of the data cluster.
[0076] Step 3: After data clustering is completed, the adjacency matrix is used to describe the data class attributes and assign a class label to each data cluster.
[0077] Step 4: Discard the data outside the hypersphere in each data cluster from Step 3 (which can be understood as outliers), and then calculate the cluster center for each data category. This cluster center serves as the center of the radial basis function.
[0078] Step 5: Determine the width of the radial basis function and use the pseudo-inverse method to determine the weight matrix between the hidden layer and the output layer. After determining the parameters of the RBF neural network, input the clustered data (after discarding data in Step 4) into the pre-trained RBF neural network to obtain the final constructed obstacle contour boundary points.
[0079] Combination Figures 1-6 The embodiments of the present invention include the following steps:
[0080] Step 1, as follows Figure 1 and Figure 2 As shown, the UUV uses forward-looking sonar to detect the underwater environment. The distance and azimuth angle between detected obstacles and the UUV can be obtained from the sonar echo. Simultaneously, the UUV uses an inertial navigation and positioning system to obtain its current position. After coordinate transformation, the coordinates {x1, x2, ..., x...} of each point on the detected obstacles in the global coordinate system can be obtained. n}, x j j = 1, ..., n is a two-dimensional vector, that is, the horizontal and vertical coordinates of the data points.
[0081] The formulas for converting between polar coordinates and global coordinates are as follows:
[0082]
[0083] In the formula: (ξ0,η0) are the UUV's own position coordinates, ψ0 is the UUV's heading angle, (d obs ,α e () represents the polar coordinates of the obstacle information detected by the forward-looking sonar.
[0084] Step 2: Perform support vector clustering. The purpose is to divide the dataset from Step 1 into multiple clusters and obtain support vectors describing the profile of each cluster. The dataset from Step 1... Through nonlinear transformation H={Φ(x) j Mapping |1≤j≤n} to a higher-dimensional space, then finding the enclosing hypersphere with the smallest radius R, i.e., finding the function minR. 2 The optimal solution.
[0085] The relationship between the distance from each data point to the center a of the sphere and the radius R is as follows:
[0086]
[0087] In the formula: ξ j Values ≥ 0 represent slack variables used to adjust the size of the sphere's radius, handling outliers and preventing data loss due to an excessively small radius or the introduction of too many outliers due to an excessively large radius. ||·|| represents the Euclidean norm.
[0088] To solve the problem in equation (2), the corresponding Lagrange function is introduced, namely:
[0089]
[0090] Where: β j ≥0,μ j ≥0 represents a Lagrange multiplier, C∑ξ j This is a penalty term. Changing the value of C will produce different aggregation effects.
[0091] Apply equation (3) to R,a,ξ j Taking the derivative and setting it to zero, we get:
[0092]
[0093]
[0094] β j =C-μ j (6)
[0095] From the KKT (Karush-Kuhn-Tucker) conditions, we can obtain:
[0096] ξ j μ j =0 (7)
[0097] (R 2 +ξ j -||Φ(x j )-a|| 2 )β j =0 (8)
[0098] From equation (8), it can be seen that when ξ j >0,β j When >0, ||Φ(x) j )-a|| 2 -R 2 >0 indicates that point x j Located outside the hypersphere. Furthermore, from equation (7), we can see that μ j =0, therefore, from equation (6), we can obtain β j=C, such points are called bounded support vectors or BSVs.
[0099] From equation (8), it can be seen that when ξ j When = 0, ||Φ(x) j )-a|| 2 -R 2 =0, indicating that the point x j Located on the surface of the hypersphere. Furthermore, from equation (7), we can see that μ... j >0, therefore, from equation (6) we can obtain 0 < β j Points with a value less than C are called support vectors or SVs.
[0100] The remaining points are β j When the value is 0, they are all located inside the hypersphere.
[0101] In summary, we can arrive at the following three results:
[0102] If ξ j >0,β j =C, this point is located outside the hypersphere and is an outlier;
[0103] If ξ j =0, 0 < β j <C, this point is located on the surface of the hypersphere and belongs to the support vector;
[0104] If ξ j =0,β j =0, this point is located inside the hypersphere and belongs to the cluster.
[0105] Furthermore, the Lagrangian function is transformed into the Wolfe dual form:
[0106]
[0107] Φ(x) i )·Φ(x j Using Mercer kernel K(x) i ,x j By substituting ), the dual problem is thus transformed into:
[0108]
[0109] In the formula: K(x) i ,x j )=exp(-q·||x i -x j || 2 ), where q is the scale parameter.
[0110] Therefore, the distance from the image of any point x in the feature space to the center of the sphere is:
[0111]
[0112] The radius of the hypersphere is:
[0113] R = {R(x)} i )|x i For support vectors} (12)
[0114] The final result for the minimum radius of the hypersphere is:
[0115]
[0116] In the formula: x i Here, N represents the number of support vectors.
[0117] In the Support Vector Clustering (SVC) algorithm, q is used to control the properties of the data contours. As q gradually increases from its initial value, the original data clusters gradually split, and the contours of the data clusters gradually change from relaxed to compact. The value of C controls the number of bounded support vectors, reflecting the degree of overlap in the data clusters. q and C are two hyperparameters, and their constant values are given empirically and through prior experiments to meet the requirements of the problem. The SVC clustering results are as follows: Figure 3 and Figure 4 As shown.
[0118] Step 3: Partition the data using the adjacency matrix. Since the support vector clustering algorithm cannot distinguish points belonging to different clusters, the adjacency matrix is used to assign category labels to the multiple clusters obtained in Step 2.
[0119] The adjacency matrix is represented as A = (A ij ) n×n The definition is as follows:
[0120]
[0121] In the formula: seg(x i ,x j (x) is any point x i and x j The connecting lines between them.
[0122] When this connection line seg(x) i ,x j When x is entirely located inside a hypersphere, then x is considered to be... i and x j Belonging to the same cluster. Determine the connection line seg(x) i ,x j Whether all components are located inside the hypersphere can be determined by randomly sampling 20 points along the connecting lines and substituting them into the calculation. A corresponds to the connectivity graph of the dataset, where each connected component represents a cluster.
[0123] This step divides all clusters into several different categories, and the outline boundary of a certain data cluster is represented by support vectors.
[0124] Step 4: For each data cluster after being categorized in Step 3, where ξ j >0,β j Points equal to C can be considered outliers and discarded. Figure 5 As shown. For each class ξ j =0, 0 < β j <C and ξ j =0,β j Points with a value of 0 are considered to be on the edge or inside of the category. Their mean is calculated and used as the cluster center of the category.
[0125] Step 5: Select the parameters for the RBF neural network, train the RBF neural network, and finally obtain the outline of the obstacle. The RBF neural network consists of three layers: the first layer is the input layer, which receives input data; the second layer is the hidden layer, which performs nonlinear transformations on the input data using a function called the radial basis function; the third layer is the output layer, which outputs the data processed by the hidden layer. The RBF neural network requires pre-setting parameters such as the center and width (spread constant) of the radial basis function, and the connection weights between the hidden layer neurons and the output layer neurons.
[0126] First, the centers and number of radial basis functions can be obtained from step 4. The cluster centers of each category obtained in step 4 are used as the centers c of each radial basis function in the RBF neural network. i Here, the radial basis function can be chosen as the Gaussian function, i.e.:
[0127]
[0128] In the formula: c is the center of the function, and σ is the width of the function.
[0129] Secondly, the width of the radial basis functions can be obtained from this formula:
[0130] σ i =λd i (16)
[0131] In the formula: σ i d is the width (spread constant) of the center of the i-th basis function. i λ is the minimum distance from the i-th class center to the other class centers, and λ is the overlap coefficient.
[0132] Finally, the pseudo-inverse method is used to solve for the weight matrix between the hidden layer neurons and the output layer neurons. The matrix representation of the RBF neural network is as follows:
[0133] Y = GW (17)
[0134] In the formula: Y is the actual output of the neural network; G = {g ki} represents the output matrix of the hidden layer neurons. k=1,2,…,N; i=1,2,…,I,X k For the k-th input sample, c i The center of the i-th radial basis function; W = (w ij ) I×J w is the weight matrix between hidden layer neurons and output layer neurons. ij denoted as the connection weight between the i-th hidden layer neuron and the j-th output layer neuron.
[0135] The formula for calculating the weight matrix using the pseudo-inverse method is as follows:
[0136] W=G + D (18)
[0137] Where: G + G is the pseudo-inverse of the matrix; D is the target output of the neural network.
[0138] After configuring all the parameters of the RBF neural network according to the above steps, and then inputting the data into the pre-trained neural network, the final obstacle contour boundary points can be obtained, such as... Figure 6 .
Claims
1. A method for constructing the contours of underwater obstacles using a UUV, characterized in that, Includes the following steps: Step 1: The UUV uses forward-looking sonar to detect the distance and azimuth angle between itself and the obstacle. The UUV then uses an inertial navigation and positioning system to obtain its current position. After coordinate transformation, the coordinates of each point on the obstacle in the global coordinate system are obtained, forming a dataset. , , is a two-dimensional vector, including the horizontal and vertical coordinates of the data points; Step 2: Use support vector clustering to process the dataset obtained in Step 1. The data is divided into several clusters, and support vectors describing the profile of each data cluster are obtained. Step 3: Use the adjacency matrix to divide the dataset The clusters in step 2 are classified into categories, and category labels are assigned to the classified clusters. Step 4: Remove outlier data points from any clusters after classifying them in Step 3, and then determine the cluster centers for each cluster category; Step 5: Construct the RBF neural network, set the RBF neural network parameters, train the RBF neural network, and obtain the trained neural network; The parameters include the center and width of the radial basis function, and the connection weights between hidden layer neurons and output layer neurons; The radial basis function is the Gaussian function: ; In the formula: The center of the function, The function width is used; the cluster centers of each category obtained in step 4 are used as the centers of each radial basis function of the RBF neural network. The width of the radial basis functions satisfies: ; In the formula: It is the first The width of the center of each basis function It is the first The minimum distance from each class center to the centers of other classes. It is the overlap coefficient; Then, the pseudo-inverse method is used to solve for the weight matrix between the hidden layer neurons and the output layer neurons; Step 6: Input the clustered data after removing outlier data points in Step 4 into the trained RBF neural network to obtain the obstacle contour boundary points.
2. The method for constructing the contour of an underwater obstacle using a UUV according to claim 1, characterized in that: Step 2 describes using support vector clustering to analyze the dataset obtained in Step 1. Dividing the data into several clusters, the support vectors describing the profile of each data cluster include: Dataset Through nonlinear transformation Map to a higher-dimensional space, then find the radius. The smallest enclosing hypersphere, i.e., finding the function The optimal solution; Data points to the center of the ball Distance and radius The relationship between them is: ; In the formula: A slack variable to adjust the size of the sphere's radius. It is the Euclidean norm; Introducing the Lagrange function: ; In the formula: For Lagrange multipliers, As a penalty item, The hyperparameters set to adjust the cluster partitioning; The Lagrange function pair Taking the derivative and setting it to zero, we get: ; ; ; From the KKT conditions: ; ; Then the dataset Determine the data points: like This point is located outside the hypersphere and is considered an outlier. like This point is located on the surface of the hypersphere and belongs to the support vector; like This point is located inside the hypersphere and belongs to the cluster. Transform the Lagrangian function into its Wolfe dual form: In the formula: , The set scale parameter for adjusting the cluster partitioning; any point The distance from the image to the center of the sphere in the feature space is: ; The minimum radius of the hypersphere is: ; In the formula: For support vectors, This represents the number of support vectors.
3. The method for constructing the contour of an underwater obstacle in a UUV according to claim 2, characterized in that: Step 3 describes using an adjacency matrix to divide the dataset. The cluster partitioning based on step 2 includes: The adjacency matrix is represented as Defined as: ; In the formula: It is any point and The connecting lines between them; exist Randomly select 'a' points and substitute each of the 'a' points into the function. If all function values are less than the minimum radius of the hypersphere, then it is determined that... When the entire interior is located within the hypersphere, it is considered that... and For data belonging to the same cluster, the outline boundary of the data cluster is represented by support vectors.
4. The method for constructing the contour of an underwater obstacle in a UUV according to claim 3, characterized in that: Step 4 involves removing outlier data points from any clusters after the categorization in Step 3, and then determining the cluster centers for each cluster category, including: In the cluster of identification The points are abnormal data points and should be discarded; in the cluster and The points are identified as edge points and interior points of the category, and their mean is calculated as the cluster center of the category.
5. The method for constructing the contour of an underwater obstacle using a UUV according to claim 1, characterized in that: The neural network consists of three layers: the first layer is the input layer, which receives input data; the second layer is the hidden layer, which performs nonlinear transformations on the input data, and the function used in the transformation is called the radial basis function; the third layer is the output layer, which outputs the data processed by the hidden layer.
6. The method for constructing the contour of an underwater obstacle in a UUV according to claim 1, characterized in that: The specific steps for solving the weight matrix between hidden layer neurons and output layer neurons using the pseudo-inverse method are as follows: The matrix of the RBF neural network is: ; In the formula: This is the actual output of the neural network; This represents the output matrix of the hidden layer neurons. , For the first One input sample, For the first One radial basis function center; This is the weight matrix between the hidden layer neurons and the output layer neurons. For the first The hidden layer neurons and the first The connection weights between each output layer neuron; The formula for calculating the weight matrix using the pseudo-inverse method is as follows: ; In the formula: for The pseudo-inverse of a matrix; This is the target output of the neural network.
Citation Information
Patent Citations
Aircraft actuator fault detection and diagnosis method based on depth random forest algorithm
CN108594788A
Clustering method based on iterations of neural networks
US20170161606A1