DVL error correction method, device and system based on BP neural network and particle swarm optimization

By combining BP neural network and particle swarm optimization algorithm in DVL error calibration, DVL speed measurement model and error loss function are established, which solves the problems of large calculation volume and slow convergence in traditional methods, and efficient and accurate error calibration is achieved.

CN119513446AActive Publication Date: 2025-02-25HUNAN UNIV
View PDF 8 Cites 0 Cited by

Patent Information

Application Number
CN202411413916.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2024-05-31
Filing Date
2024-10-11
Publication Date
2025-02-25
Estimated Expiration
2044-10-11

AI Technical Summary

Technical Problem

The traditional DVL error calibration method has huge calculations, slow convergence speed, and even inability to converge in complex multivariate systems, resulting in difficulty in improving calibration accuracy and ensuring stability.

Method used

Using the DVL error correction method based on BP neural network and particle swarm optimization, the DVL speed measurement model and error loss function are established, and the minimum value is iterated by using the BP neural network and particle swarm optimization algorithm to calibrate the DVL error.

Benefits of technology

It significantly improves the efficiency and accuracy of the error calibration process, solves the difficulties of traditional methods in complex environments or parameter diversity, and ensures the optimization speed and accuracy of the calibration process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119513446A_ABST
    Figure CN119513446A_ABST
Patent Text Reader

Abstract

The invention discloses a DVL error correction method and device based on a BP neural network and particle swarm optimization. The method comprises the following steps: step 1, establishing a DVL speed measurement model; step 2, establishing a DVL error loss function, replacing # imgabs 1 # with an equivalent quaternion # imgabs 0 #, and reorganizing each item; and step 3, iterating by using a BP neural network and a particle swarm optimization algorithm to obtain a minimum value, and calibrating the DVL error calibration by using the minimum value. According to the invention, the optimization speed and accuracy of the calibration process can be ensured.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of underwater autonomous navigation systems, and in particular to a DVL (Doppler Velocity Log) error correction method and device based on BP (Back Propagation) neural network and particle swarm optimization. Background Art

[0002] In the field of exploration and development of marine resources, with the continuous deepening of operations, the demand for navigation accuracy of underwater working platforms has gradually increased. Among them, DVL is a key equipment of AUV (Autonomous Underwater Vehicle), and its installation accuracy directly affects the measurement performance, especially the installation error of the acoustic array, including but not limited to the deviation of the array position and the deviation of the beam axis, which will have a significant impact on the speed measurement results. Furthermore, the precise calibration of parameters such as the arm vector, the positioning deflection angle of the acoustic array, and the speed measurement scale factor is of great importance to improving the accuracy of the navigation system.

[0003] However, traditional calibration methods, such as the least squares method, gradient descent method, or Gauss-Newton method, often face huge computational complexity, slow convergence, or even failure to converge when calibrating error parameters in multivariable complex system models, which is not conducive to improving calibration accuracy and ensuring stability. In view of this, researchers urgently need to develop a new calibration method to overcome the shortcomings of existing technologies. Summary of the invention

[0004] The object of the present invention is to provide a DVL error correction method and device based on BP neural network and particle swarm optimization, which can ensure the optimization speed and accuracy of the calibration process.

[0005] To achieve the above object, the present invention provides a DVL error correction method based on BP neural network and particle swarm optimization, which comprises:

[0006] Step 1: Establish a DVL speed measurement model.

[0007]

[0008] Among them, v d is the speed of the underwater vehicle provided by DVL; v n is the speed of the underwater vehicle provided by GPS; k d is the DVL scaling factor; Install the error angle direction cosine matrix from INS coordinate system to DVL coordinate system. Install the error angle direction cosine matrix from GPS coordinate system to INS coordinate system. is the angular velocity measured by the gyroscope in the INS coordinate system, l b is the negative arm vector from the origin of the DVL coordinate system to the origin of the INS coordinate system;

[0009] Step 2: Establish the DVL error loss function and use the equivalent quaternion replace And reorganize the items to get:

[0010]

[0011] in,

[0012]

[0013] Step three, using BP neural network and particle swarm optimization algorithm to iteratively obtain the minimum value, and calibrating the DVL error calibration with the minimum value.

[0014] Furthermore, the step before step 1 includes:

[0015] Model building unit, used to build the speed measurement model of DVL,

[0016] The DVL speed measurement model is established as:

[0017]

[0018] in, is the angular velocity of the INS coordinate system relative to the GPS coordinate system.

[0019] Further, the k is obtained by the following method d The value of

[0020]

[0021] Except for l on the right b can be directly calculated or measured, l b K d The effect of calibration only appears when the vehicle performs angular motion. Furthermore, if the vehicle performs angular motion in the opposite direction, its effect will be canceled. Since underwater robots mainly perform linear motion in practice and rarely perform angular motion, l b The influence of is weak. Therefore, there is no need to calibrate the precise negative arm vector. Artificially giving a coarser cross arm vector can meet the navigation accuracy requirements. Based on the above analysis, it can be seen that the k derived from this d The calibration accuracy is not affected by The influence of posture misalignment becomes higher as time n increases.

[0022] Furthermore, according to formula (1), Observation equation:

[0023]

[0024] make The observation equation is obtained:

[0025]

[0026] Furthermore, the BP neural network and particle swarm algorithm are used to search for the minimum value of the loss function:

[0027]

[0028] Among them, using the equivalent quaternion replace And reorganize the items to get

[0029]

[0030] Furthermore, the BP neural network predicts the current attitude calibration parameters based on the speed of the DVL, the speed of the GPS, and the angular velocity of the INS.

[0031] Design BP neural network NN to increase the speed of DVL GPS Speed Angular velocity of INS As the input of BP neural network. The hidden layer output is:

[0032]

[0033] The output of the output layer is:

[0034]

[0035] Furthermore, taking the prediction value of the BP neural network as the initial position of the particle swarm algorithm, the updating method of the particle velocity information and position information is as follows:

[0036]

[0037] Where kg = 1, 2, ..., G, i = 1, 2, ..., Size, r1 and r2 are random numbers between 0 and 1, c1 is the local learning factor, c2 is the global learning factor, and c2 is generally larger. and They represent the local optimal solution and the global optimal solution of particle i in the kg-th iteration respectively.

[0038] Furthermore, the DVL error correction method based on BP neural network and particle swarm optimization also includes defining the index ε:

[0039]

[0040] If the value of the loss function corresponding to the result of the kg-th iteration is less than the preset value ε, the BP neural network and particle swarm optimization algorithm are terminated, otherwise the optimization iteration continues.

[0041] The present invention also provides a DVL error calibration system, which includes:

[0042] Doppler Velocity Log (DVL);

[0043] Global Positioning System (GPS);

[0044] Inertial Navigation System (INS);

[0045] Data workstation;

[0046] app;

[0047] And one or more programs, wherein the one or more programs are stored in the data workstation memory, and when the one or more programs are executed by the application program on the data workstation, the DVL error correction device based on the BP neural network and particle swarm optimization performs the DVL error correction method based on the BP neural network and particle swarm optimization as described in any one of claims 1-8.

[0048] The present invention also provides a DVL error correction device based on BP neural network and particle swarm optimization, which comprises:

[0049] The DVL speed measurement model is described as formula (1):

[0050]

[0051] Among them, v d is the speed of the underwater vehicle provided by DVL; v n is the speed of the underwater vehicle provided by GPS; k d is the DVL scaling factor; Install the error angle direction cosine matrix from INS coordinate system to DVL coordinate system. Install the error angle direction cosine matrix from GPS coordinate system to INS coordinate system. is the angular velocity measured by the gyroscope in the INS coordinate system, l b is the negative arm vector from the origin of the DVL coordinate system to the origin of the INS coordinate system;

[0052] DVL error loss function, which uses the equivalent quaternion replace And reorganize each item and express it as formula (2):

[0053]

[0054] in,

[0055]

[0056] The DVL error calibration unit is used to iteratively obtain a minimum value by using a BP neural network and a particle swarm optimization algorithm, and calibrate the DVL error calibration by using the minimum value.

[0057] The present invention proposes a novel method for applying a particle swarm optimization (PSO) algorithm fused with a BP neural network to the calibration of DVL installation errors. The method is based on an advanced group intelligence algorithm, the particle swarm optimization algorithm, which is inspired by the foraging behavior of birds in nature and relies on information exchange between individuals in the group to promote rapid positioning to the global optimal solution. The main innovation of this method is that it adopts a particle swarm optimization algorithm fused with BP neural network technology, and significantly improves the efficiency and accuracy of the error calibration process by integrating the deep learning ability of the BP neural network and the excellent global search ability of the PSO. This not only effectively solves the difficulties faced by traditional error calibration strategies in dealing with complex environments or parameter diversity, but also utilizes the fast convergence characteristics of the particle swarm algorithm to ensure the optimization speed and accuracy of the calibration process. In addition, the introduction of this method provides a new solution for the field of DVL installation error calibration, which is of great significance for improving the positioning accuracy and reliability of underwater navigation systems.

[0058] In the field of underwater autonomous navigation system technology, the present invention relates to a DVL device, which uses the Doppler effect to measure and calculate the three-dimensional velocity of a vehicle relative to the water body and the seabed in the marine environment, which is essential for ensuring accurate navigation and position positioning for marine exploration and other underwater missions. In order to enhance the navigation accuracy and reliability of the underwater autonomous navigation system, the present invention proposes to systematically integrate the DVL and other navigation technologies such as the Global Positioning System (GPS) and the Inertial Navigation System (INS). This integrated navigation system uses GPS high-precision positioning to correct the position drift of the INS during surface navigation, and combines the speed data of the DVL and the internal data of the INS to maintain accurate navigation during underwater navigation. BRIEF DESCRIPTION OF THE DRAWINGS

[0059] Figure 1 It is a flowchart of a DVL installation error calibration method according to an embodiment of the present invention.

[0060] Figure 2 Schematic diagram of sensor installation according to an embodiment of the present invention.

[0061] Figure 3 It is a BP neural network and particle swarm optimization flow chart of an embodiment of the present invention. DETAILED DESCRIPTION

[0062] In the drawings, the same or similar reference numerals are used to represent the same or similar elements or elements with the same or similar functions. The embodiments of the present invention are described in detail below in conjunction with the drawings.

[0063] In view of the high sensitivity of DVL to installation errors in practical applications, the present invention particularly proposes an innovative error correction method based on the fusion of BP neural network and particle swarm optimization algorithm. This method effectively combines the excellent performance and fast convergence characteristics of the PSO algorithm in group search, and the powerful ability of the BP neural network in processing complex data patterns and recognition. Through this algorithm fusion, the error correction process is endowed with higher data processing capabilities, adaptability, and the correction speed and accuracy are accelerated. The algorithm embodiment of the present invention points out a particle swarm optimization framework that integrates BP neural network, especially for iterative correction of DVL errors, which has better performance than existing calculation methods, brings significant improvement to the accuracy of underwater autonomous navigation, and may be extended to deeper ocean exploration tasks.

[0064] Figure 1 An AUV device equipped with a GPS receiver, an INS (Inertial Navigation System) and a DVL is shown. The GPS receiver, the INS and the DVL provide navigation information respectively. The AUV device performs the DVL error correction method described in the following embodiment and any implementation thereof according to the received GPS information, INS information and DVL information.

[0065] Example 1

[0066] This embodiment provides a DVL error correction method based on BP neural network and particle swarm optimization. Figure 2 A schematic flow chart of the method is shown in FIG. Figure 2 As shown, the method includes:

[0067] Step 21, establish a DVL speed measurement model,

[0068]

[0069] Among them, vd is the speed of the underwater vehicle provided by DVL, v n is the speed of the underwater vehicle provided by GPS, k d is the DVL scaling factor, Install the error angle direction cosine matrix from INS coordinate system to DVL coordinate system. Install the error angle direction cosine matrix from GPS coordinate system to INS coordinate system. is the angular velocity measured by the gyroscope in the INS coordinate system, l b is the negative arm vector from the origin of the DVL coordinate system to the origin of the INS coordinate system;

[0070] Step 22, establishing a DVL error loss function; including:

[0071] According to formula (1), Observation equation:

[0072]

[0073] make The observation equation is obtained:

[0074]

[0075] Using the equivalent quaternion replace And reorganize each term to obtain formula (23):

[0076]

[0077] Among them, κ is a quaternion The quadratic function of yes The conjugate matrix of ;

[0078] The DVL error loss function is established as:

[0079]

[0080] Among them, norm(·) is the operator for calculating the norm;

[0081] Step 23, using BP neural network and particle swarm optimization algorithm to solve the minimum value of DVL error loss function, and obtain the corresponding quaternion The solved quaternion Perform DVL error correction.

[0082] Wherein, step 23 may include:

[0083] Predict the initial quaternion through BP neural network;

[0084] The particle swarm optimization algorithm is used to optimize the initial quaternion, and the final optimized quaternion is used as the solved quaternion.

[0085] In one embodiment, the BP neural network includes an input layer, a hidden layer and an output layer; wherein the input of the input layer includes DVL speed readings, GPS speed readings and INS angular velocity readings; and the output layer outputs quaternions.

[0086] Before predicting the initial quaternion through the BP neural network, it also includes:

[0087] Use the training data to pre-train the BP neural network.

[0088] In one embodiment, optimizing quaternions using a particle swarm optimization algorithm includes:

[0089] Randomly generate the initial value of each particle in the particle swarm, each particle represents a quaternion

[0090] Substitute the quaternion of each particle into the DVL error loss function and use the calculated result as the fitness value of each particle;

[0091] Select the particle position information with the smallest fitness value as the local optimal solution;

[0092] Compare the fitness values ​​corresponding to the local optimal solution and the current quaternion, and take the smaller fitness value;

[0093] If the smaller fitness value meets the threshold condition, the quaternion corresponding to the smaller fitness value is used as the optimization result;

[0094] If the smaller fitness value does not meet the threshold condition, the training data set of the BP neural network is updated;

[0095] Train the BP neural network using the updated training data set;

[0096] And use the latest trained BP neural network to predict quaternion.

[0097] Among them, if the smaller fitness value does not meet the threshold condition,

[0098] Determine whether the update times of BP neural network reaches the maximum times;

[0099] If yes, the quaternion corresponding to the smaller fitness value is used as the optimization result;

[0100] Otherwise, the operation of updating the training data set of the BP neural network is performed.

[0101] In one embodiment, each particle of the random initial value generation particle swarm includes:

[0102] Assign initial values ​​to the position coordinates and velocity vectors of individual particles in the particle swarm; wherein the velocity vector is a vector composed of the quaternions of the particles, and the position coordinates are set as candidate values ​​of the installation error angle of the inertial navigation system.

[0103] In one embodiment, updating the training data set of the BP neural network based on the quaternion corresponding to the smaller fitness value includes:

[0104] The quaternion corresponding to the smaller fitness value is used as the initial position of the particle swarm. The updating method of the particle velocity information and position information is as follows:

[0105]

[0106] Where kg = 1, 2, ..., G, i = 1, 2, ..., Size, r1 and r2 are random numbers between 0 and 1, c1 is the local learning factor, and c2 is the global learning factor; and They represent the local optimal solution and the global optimal solution of particle i in the kg-th iteration respectively.

[0107] Example 2

[0108] This embodiment provides a DVL error correction method based on BP neural network and particle swarm optimization. Figure 3 A schematic flow chart of the method is shown in FIG. Figure 3 As shown, the method includes:

[0109] Step 31, establish a DVL speed measurement model:

[0110]

[0111] Among them, v d is the speed of the underwater vehicle provided by DVL; v n is the speed of the underwater vehicle provided by GPS; k d is the DVL scaling factor; Install the error angle direction cosine matrix from INS coordinate system to DVL coordinate system. Install the error angle direction cosine matrix from GPS coordinate system to INS coordinate system. is the angular velocity measured by the gyroscope in the INS coordinate system, l b is the negative arm vector from the origin of the DVL coordinate system to the origin of the INS coordinate system.

[0112] The establishment process of the model (1) is as follows:

[0113] During the calibration process, the GPS speed is used as the reference speed. For ease of explanation, the INS body coordinate system coincides with the vehicle body coordinate system. The relationship between the DVL speed and the GPScss speed can be expressed as follows:

[0114]

[0115] Among them, v d is the speed of the underwater vehicle provided by DVL; v n is the speed of the underwater vehicle provided by GPS; k d is the DVL scaling factor; Install the error angle direction cosine matrix from INS coordinate system to DVL coordinate system. Install the error angle direction cosine matrix from GPS coordinate system to INS coordinate system. is the angular velocity of the INS coordinate system relative to the GPS coordinate system, l b is the negative arm vector from the origin of the DVL coordinate system to the origin of the INS coordinate system.

[0116] k d , and l b is an unknown parameter, and v d The value of is known, and it can be calculated by formula (12) Values:

[0117]

[0118] is the angular velocity measured by the gyroscope in the INS coordinate system, ε b is the gyroscope bias, which can be ignored because its magnitude is small enough. is the Earth's rotation rate, about 7.3×10 -5 rad / s, can also be ignored. Formula (13) is obtained from the following formula:

[0119]

[0120] v N and v E are the north and east vectors of velocity, R M is the meridian radius of the Earth; R N is the radius of the vertical circle of the earth; h and L represent the altitude and latitude of the vehicle's stop position, respectively. In equation (13), the speed of the underwater vehicle is much smaller than the radius of the earth, so The elements in are close to 0. Based on the above analysis, this embodiment can be considered because The other variables of are very small, and in this embodiment, formula (11) is written as formula (1):

[0121]

[0122] Step 32, establish the DVL error loss function:

[0123] According to formula (1), Observation equation:

[0124]

[0125] make The observation equation is obtained:

[0126]

[0127] The most common use of quaternions in physics is to represent rotations in three-dimensional space. Compared with traditional rotation matrices or Euler angles, quaternions are more efficient and stable when processing rotations. Instead of installing the error angle direction cosine array And reorganize each term to get formula (4):

[0128]

[0129] in, yes The conjugate matrix of ;

[0130] The DVL error loss function is established as:

[0131]

[0132] Here, norm(·) is an operator for calculating the norm.

[0133] Among them, the iterative calibration method based on the particle swarm algorithm can calibrate all the error terms in formula 1. According to formula (1), The process of observing equation (2) includes:

[0134] Since the direction cosine matrix The modulus of the vector will not be changed, and equation (6) can be obtained:

[0135]

[0136] Scale factor k d It can be obtained by the following formula:

[0137]

[0138] In the formula, v n , v dand The noise will reduce k d To improve the accuracy of calibration, in order to eliminate this negative impact, this embodiment integrates over the time period [0, T] to obtain:

[0139]

[0140] Discretize equation (8) to get equation (9):

[0141]

[0142] In formula (9), b is a preset value, which can be an empirical value. b , the remaining parameters can be directly calculated or measured, l b K d The effect of calibration only appears when the vehicle performs angular motion. Furthermore, if the vehicle performs angular motion in the opposite direction, its effect will be canceled. Since underwater robots mainly perform linear motion in practice and rarely perform angular motion, l b The influence of is weak. Therefore, there is no need to calibrate the precise negative arm vector. Artificially giving a coarser cross arm vector can meet the navigation accuracy requirements. Based on the above analysis, it can be seen that k derived from formula (9) d The calibration accuracy is not affected by The influence of posture misalignment becomes higher as time n increases.

[0143] Attitude misalignment calibration is the solution k d has been solved, l b A rough value is also given, and is the only remaining unknown matrix. Therefore, this embodiment will construct the observation equation according to equation (9). Similarly, the integral of the velocity will be used to calibrate the posture misalignment instead of the velocity containing noise. The discrete form of equation (9) directly gives the above equation (2).

[0144] Step 33, solving the minimum value of the DVL error loss function, and calibrating the DVL error with the quaternion corresponding to the minimum value.

[0145] The goal of this step is to improve the DVL attitude calibration parameters (i.e., quaternion) by alternating optimization strategies. ) Prediction accuracy. While pursuing high-precision solutions, we can use the fast prediction ability of BP neural network and the global search ability of PSO to complement each other.

[0146] In this step, we combine the above formula (5) to solve a quaternion To minimize the value of the loss function, we get the following formula:

[0147]

[0148] in, R 4*1 Represents a set of real numbers with 1 row and 4 columns.

[0149] In addition, let α = [α x α y α z ] T , β=[β x β y β z ] T , substituting into equation (10) we get k as

[0150]

[0151] In formula (11), k is a quaternion is a quadratic function, and its modulus norm(k) is also a quadratic function. The optimal solution of .

[0152] If we use a first-order optimization algorithm, such as gradient descent, to search The optimal solution of , the optimization efficiency will not be very high. The embodiment of the present invention uses a particle swarm optimization algorithm to search for the optimal solution.

[0153] This step may include:

[0154] (1) Predicting initial posture calibration parameters through BP neural network

[0155] Design a 3-layer BP neural network NN:

[0156] Let j represent the number of layers of the neural network:

[0157] j=1 is the input layer. The input features include 3 DVL speed readings, 3 GPS speed readings and 3 INS angular velocity readings. The input layer will contain 9 neurons.

[0158] j=2 is the hidden layer, a single hidden layer is selected, the number of neurons in the hidden layer is 10, and the activation function is the Sigmoid function to introduce nonlinear characteristics.

[0159] j = 3 is the output layer, and the number of neurons in the output layer should match the target output. If the goal is to predict a quaternion, the output layer should contain 4 neurons, each corresponding to a component of the quaternion (w, x, y, z).

[0160] First, the BP neural network is trained until the difference between the output prediction value and the preset optimal value meets the preset conditions.

[0161] The training process may include:

[0162] Perform a forward pass: Feed the input data into the neural network and calculate the output of each layer until the final prediction. Use the neural network's loss function to calculate the difference between the predicted value and the optimal value.

[0163] Perform backpropagation: Calculate the gradient of the loss function with respect to each weight and use the gradient descent algorithm to update the weights to gradually reduce the prediction error.

[0164] Iterative training: The forward propagation and back propagation processes are iterated multiple times until the network converges, that is, the prediction error reaches the set threshold or no longer decreases significantly.

[0165] The trained neural network can be used to predict new pose data, including:

[0166] Inputting new data: The input layer receives new sensor readings.

[0167] Predicting the initial value of the quaternion: The neural network processes the input data, and after calculation in the hidden layer, gives a prediction of the initial value of the quaternion in the output layer. At this time, the output quaternion represents the estimated value of the current posture.

[0168] For example, the speed of DVL GPS Speed and the angular velocity of the INS As the input of the BP neural network, the output of the hidden layer is expressed as formula (12):

[0169]

[0170] In the formula, j represents the number of layers of the neural network, i represents the number of the j-th layer of the neural network, and h ij represents the output value of the i-th neuron in the j-th layer, f j represents the activation function of the i-th neuron in the j-th layer, W ij represents the weight matrix from the j-1th layer to the jth layer, X ij represents the value of the i-th neuron in the j-1th layer to the j-th layer, b1 represents the bias from the 1st layer to the 2nd layer, and the Sigmoid function is used as the activation function, and we get:

[0171]

[0172] For attitude calibration, the output is usually one or a set of parameters that describe the attitude of the device. The quaternion representing the posture, the output of the output layer is the predicted posture calibration parameter, which is described as formula (14):

[0173]

[0174] The following is an example to illustrate the prediction process of the initial posture calibration parameters.

[0175] Assume the following input data:

[0176] DVL speed reading GPS Speed and the angular velocity of the INS The 9 neurons in the input layer are

[0177] The prediction process of the initial attitude calibration parameters includes:

[0178] Step 1: Feed these input data into the input layer of the neural network. The input layer neurons will read the above 9 data points.

[0179] Step 2: During the forward propagation process, the input data is processed by the hidden layer and the output of each layer is calculated until the final output layer.

[0180] Initial weights and biases: W i1(0) =rand(10,1), b1=rand(1,1)

[0181]

[0182] Where k represents the number of neurons in the second layer when j=2, k=10.

[0183] The hidden layer output is [h 1,2 h 2,2 h 3,2 h 4,2 h 5,2 h 6,2 h 7,2 h 8,2 h 9,2 h 10,2 ]

[0184] Step 3: The 4 neurons in the output layer give the initial value prediction of the quaternion.

[0185] Initial output layer weights and biases: V i2(0) =rand(10,1), b2=rand(1,1)

[0186]

[0187] Where l represents the number of neurons in the third layer when j=3, and l=4.

[0188] The output layer output is [h 1,3 h2,3 h 3,3 h 4,3 ]

[0189] The predicted attitude calibration parameters are

[0190] (2) Use PSO (particle swarm optimization) algorithm to optimize posture calibration parameters

[0191] Initialize the mathematical model of the particle swarm optimization (PSO) algorithm. This stage involves assigning initial values ​​to the velocity vector and position coordinates of individual particles in the swarm. The position coordinates of individual particles are directly mapped to the candidate values ​​of the inertial navigation system installation error angle, while the velocity vector reflects the update intensity and directionality of the inertial navigation system installation error angle value in the subsequent iterative optimization process.

[0192] This step specifically includes:

[0193] a. Initialize the particle swarm

[0194] Use quaternions to represent attitude calibration parameters, and each particle represents a quaternion Generate the initial particle swarm, and generate each particle with a random initial value. Make sure that each quaternion satisfies the unit length constraint, that is, Assign each particle an initial position and random initial velocity The initial velocity is also a vector composed of quaternions, which determines the direction and step length of the particle in the next iteration.

[0195] b. Calculate the fitness value

[0196] Loss Function It is expressed as formula (17):

[0197]

[0198] For each particle, substitute its quaternion into the loss function to calculate and obtain the fitness value, that is, the function value. The smaller the fitness value, the better the current solution.

[0199] c. Update individual and global optimal solutions

[0200] The position information of the particle with the smallest fitness value is selected as the local optimal solution. As shown in formula (18):

[0201]

[0202] in, represents the optimal solution of the i-th particle in the kg-th iteration, that is, the optimal position of the i-th particle;

[0203] Represents the current global optimal solution of the particles in the particle swarm in the kg-th iteration.

[0204] and They represent the fitness value of particle i in the kg-th iteration and the current optimal fitness value respectively.

[0205] d. Update particle position and velocity

[0206] Update the speed and position of the particles, generate a new population, and perform out-of-bounds checks on the speed and position of the particles. In order to prevent the algorithm from falling into a local optimal solution, a local adaptive mutation operator is added for adjustment.

[0207] The particle position and velocity are updated as follows:

[0208]

[0209] Where kg = 1, 2, ..., G, represents the number of iterations (updates), G is the maximum number of iterations; i = 1, 2, ..., Size, represents the i-th particle in the particle swarm, Size is the number of particles in the particle swarm;

[0210] represents the velocity vector of the ith particle at the kgth iteration. This is the velocity of the particle in that iteration, and determines how the particle moves based on its current position; represents the velocity vector of the i-th particle at the kg+1th iteration, that is, the new velocity of the particle updated after the current iteration, which is used to update the position in the next iteration. w(t) represents the inertia weight, which is usually a function of the number of iterations. The inertia weight is used in PSO to control the ability of particles to retain their current velocity. The larger the inertia weight, the greater the tendency of the particle to retain its current velocity, allowing it to explore a wider search space; conversely, a smaller inertia weight will help particles converge to a local area. Represents the position vector of the i-th particle at the kg-th iteration. This is the specific position of the particle in the current iteration and is used to represent the attitude calibration parameters.

[0211] c1 is a preset local learning factor, c2 is a preset global learning factor, and preferably c2 is greater than c1;

[0212] r1 and r2 are random numbers between 0 and 1.

[0213] e. Update the fitness value of the particle

[0214] Compare the current fitness value of the particle F(X i ) and its own historical optimal value p i , if F(X i ) is better than p i , then set pi is the current value F(X i ) and update the particle position.

[0215] Compare the current fitness value of the particle F(x i ) and the population optimal value BestS, if F(X i ) is better than BestS, then BestS is set to the current value F(X i ), update the global optimal value of the population.

[0216] In one embodiment, it may also include:

[0217] (3) Error Back Propagation

[0218] Use the calibration data corresponding to the global optimum in the PSO process Calculate the error of the neural network prediction and update the parameters of the neural network prediction. is the optimal calibration data.

[0219] The error of the neural network prediction is calculated as:

[0220]

[0221] Given historical data D:

[0222]

[0223] According to the neural network loss function Calculate the error term of the output unit and the error term of the hidden unit. The gradient value of the loss function with respect to the hidden unit: The output unit gradient value is:

[0224] The weights between nodes in each layer will also be continuously updated iteratively, and the hidden unit parameters will be updated:

[0225]

[0226] η(t)=2 λ η(t-1) (24)

[0227]

[0228] Output unit parameter update:

[0229]

[0230] η(t)=2λη(t-1) (28)

[0231]

[0232] Among them, η>1, which is the learning rate; α is the momentum factor, 0<α<1.

[0233] (4) Alternating cycles

[0234] Repeat the process from (2) to (3). Each time, use the estimated value of the BP neural network to initialize the PSO process, and use the posture calibration parameters output by the PSO to update the training data set and the BP neural network, such as updating the "hidden unit parameters" and "output unit parameters" mentioned above. Check the end condition. If the maximum number of iterations is reached or the fitness function is less than the predetermined threshold, stop the iteration. Otherwise, go to the iteration of the BP neural network. The end condition is that the optimization reaches the maximum evolutionary generation, or the evaluation value is less than the given accuracy.

[0235] Experimental data show that BP neural network and particle swarm optimization have many advantages over traditional methods:

[0236] In the field of optimization algorithms, gradient descent and Newton iteration are two widely used traditional methods. Although they are effective in most scenarios, they are still limited by certain difficulties: first, the potential slow convergence rate, second, the possibility of falling into local minima or saddle points, third, the dependence on gradient information, and fourth, the uncertainty of convergence. In the face of the above limitations, it is crucial to choose the right algorithm for a specific problem, and for some specific problems, modern algorithms such as particle swarm optimization (PSO) may provide better performance.

[0237] The particle swarm optimization algorithm combined with BP neural network is a modern optimization strategy that integrates the advantages of deep learning and global search, and is particularly suitable for dealing with complex problems. This method draws on the unique strengths of both algorithms, which are specifically manifested in the following aspects:

[0238] 1. Combining the high-precision data pattern learning ability of BP neural network with the global optimization ability of PSO, this synergistic effect enhances the search efficiency and the accuracy of parameter optimization while maintaining the accuracy of prediction ability.

[0239] 2. The particle swarm optimization algorithm can effectively search for the global optimal solution under conditions with more data restrictions. Combined with the data-driven BP neural network, it can provide satisfactory performance even when the amount of data is insufficient.

[0240] 3. Through PSO global optimization search, the parameters of the BP neural network can be adjusted with higher precision, which not only enhances the performance on the training set, but also improves the model's generalization ability for unseen samples.

[0241] 4. The PSO algorithm, with its fewer parameters, relatively simple adjustment and easy implementation, provides a flexible and stable way to adjust and optimize the BP neural network model structure.

[0242] In summary, the particle swarm optimization algorithm integrated with BP neural network, as an innovative strategy, shows excellent performance and results when dealing with highly complex optimization problems and multi-parameter space problems, expands the application scope of traditional technologies, and provides new perspectives and methods for solving complex problems in the real world. With this strategy, the advanced mapping function of BP neural network and the global search mechanism of PSO can be effectively utilized to achieve accurate performance improvement, which is especially suitable for those scenarios that require high-precision prediction and highly complex problem-solving space.

[0243] Similar calibration effects can be achieved by appropriately modifying the error calibration algorithm in the present invention, or introducing other types of data processing methods to replace it, fine-tuning the key parameters and calibration standards in the algorithm, and reordering or optimizing the steps of the processing flow, but these methods are all within the basic framework and core principles of the present invention.

[0244] Finally, it should be pointed out that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit them. Those skilled in the art should understand that the technical solutions described in the above embodiments may be modified, or some of the technical features thereof may be replaced by equivalents; these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. A Doppler velocity meter DVL error correction method based on BP neural network and particle swarm optimization, characterized in that: include: Step 1: Establish a DVL speed measurement model. Among them, v d is the speed of the underwater vehicle provided by DVL, v n is the speed of the underwater vehicle provided by GPS, k d is the DVL scaling factor, Install the error angle direction cosine matrix from INS coordinate system to DVL coordinate system. Install the error angle direction cosine matrix from GPS coordinate system to INS coordinate system. is the angular velocity measured by the gyroscope in the INS coordinate system, l b is the negative arm vector from the origin of the DVL coordinate system to the origin of the INS coordinate system; Step 2: Establish the DVL error loss function; including: According to formula (1), Observation equation: make The observation equation is obtained: Using the equivalent quaternion replace And reorganize each term to obtain formula (23): Where k is a quaternion The quadratic function of yes The conjugate matrix of ; The DVL error loss function is established as: Among them, norm(·) is the operator for calculating the norm; Step 3: Use BP neural network and particle swarm optimization algorithm to solve the minimum value of DVL error loss function and obtain the corresponding quaternion The solved quaternion Perform DVL error correction.

2. The DVL error correction method based on BP neural network and particle swarm optimization according to claim 1, characterized in that: Step three includes: Predict the initial quaternion through BP neural network; The particle swarm optimization algorithm is used to optimize the initial quaternion, and the final optimized quaternion is used as the solved quaternion.

3. The DVL error correction method based on BP neural network and particle swarm optimization according to claim 2 is characterized in that: The BP neural network includes an input layer, a hidden layer and an output layer; wherein the input of the input layer includes DVL speed readings, GPS speed readings and INS angular velocity readings; and the output layer outputs quaternions.

4. The DVL error correction method based on BP neural network and particle swarm optimization according to claim 3 is characterized in that: Before predicting the initial quaternion through the BP neural network, it also includes: Use the training data to pre-train the BP neural network.

5. The DVL error correction method based on BP neural network and particle swarm optimization according to claim 2, characterized in that: Optimizing quaternions using particle swarm optimization includes: Randomly generate the initial value of each particle in the particle swarm. Each particle is randomly assigned an initial value of speed and position. Each particle corresponds to a quaternion. and Substitute the quaternion of each particle into the DVL error loss function and use the calculated result as the fitness value of each particle; If the minimum fitness value of the particle swarm meets the threshold condition, the quaternion corresponding to the minimum fitness value is taken as the optimization result; If the minimum fitness value of the particle swarm does not meet the threshold condition, the velocity and position values ​​of the particles in the particle swarm are updated, and the quaternion corresponding to the minimum fitness value of the current particle swarm is used to calculate the error of the BP neural network prediction, and the parameters predicted by the BP neural network are updated.

6. The DVL error correction method based on BP neural network and particle swarm optimization according to claim 5, characterized in that: If the smaller fitness value does not meet the threshold condition, it also includes: Determine whether the update times of BP neural network reaches the maximum times; If yes, the quaternion corresponding to the minimum fitness value of the current particle swarm is taken as the optimization result; Otherwise, the operation of updating the velocity and position values ​​of the particles in the particle swarm is performed.

7. A DVL error correction device based on BP neural network and particle swarm optimization, used to execute the method according to any one of claims 1 to 6, characterized in that: include: DVL speed measurement model processing module, used for: Establish a DVL speed measurement model, Among them, v d is the speed of the underwater vehicle provided by DVL, v n is the speed of the underwater vehicle provided by GPS, k d is the DVL scaling factor, Install the error angle direction cosine matrix from INS coordinate system to DVL coordinate system. Install the error angle direction cosine matrix from GPS coordinate system to INS coordinate system. is the angular velocity measured by the gyroscope in the INS coordinate system, l b is the negative arm vector from the origin of the DVL coordinate system to the origin of the INS coordinate system; Establish DVL error loss function; including: According to formula (14), Observation equation: make The observation equation is obtained: Using the equivalent quaternion replace And reorganize each term to obtain formula (23): Where k is a quaternion The quadratic function of yes The conjugate matrix of ; The DVL error loss function is established as: Among them, norm(·) is the operator for calculating the norm; The correction module is used to solve the minimum value of the DVL error loss function using the BP neural network and particle swarm optimization algorithm to obtain the corresponding quaternion The solved quaternion Perform DVL error correction.

8. A DVL error correction system based on BP neural network and particle swarm optimization, characterized in that: It includes a Doppler velocity meter DVL, a global positioning system GPS, an inertial navigation system INS, and a controller; The controller is used to: Receive positioning information transmitted by Doppler DVL speedometer, global positioning system GPS, and inertial navigation system INS; The method according to any one of claims 1 to 6 is performed according to the received positioning information.

Citation Information

Patent Citations

  • Wavelet neural network model ship rolling real-time prediction method based on particle swarm optimization algorithm

    CN106022471A

  • SINSDVL alignment correction method and system, medium and equipment

    CN113503891A

  • Equipment lifetime prediction method and system based on PSO-BP neural network

    CN113743011A

  • DVL installation error calibration method, device and system

    CN114459507A

  • DVL error parameter estimation method based on particle swarm optimization

    CN116337111A