An autonomous obstacle avoidance method for an underwater robot and an underwater robot

By distinguishing between dynamic and static obstacles, and optimizing the obstacle avoidance path of the underwater robot using smoothness coefficient and repulsion field factor, the problem of insufficient obstacle avoidance accuracy in existing technologies is solved, and a more efficient obstacle avoidance effect is achieved.

CN120949811BActive Publication Date: 2026-05-05SHENZHEN TECH UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
SHENZHEN TECH UNIV
Filing Date
2025-10-14
Publication Date
2026-05-05

AI Technical Summary

Technical Problem

The existing artificial potential field method fails to effectively consider factors such as ocean currents and organisms when underwater robots avoid obstacles, resulting in unreasonable setting of obstacle potential field functions and reduced obstacle avoidance accuracy.

Method used

By acquiring real-time movement data of obstacles around the underwater robot, distinguishing between dynamic and static obstacles, and using the smoothing coefficient and repulsion field factor of dynamic obstacles for path planning, combined with the cubic exponential smoothing algorithm to predict obstacle positions, the obstacle avoidance path is optimized.

Benefits of technology

It improves the obstacle avoidance accuracy and operational efficiency of underwater robots, avoids ineffective obstacle avoidance, enhances the ability to predict dynamic obstacles, and improves the reliability of path planning.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120949811B_ABST
    Figure CN120949811B_ABST
Patent Text Reader

Abstract

This application relates to the field of obstacle avoidance control technology for underwater robots, specifically to an autonomous obstacle avoidance method for an underwater robot and an underwater robot. The method includes: analyzing the differences in the center position coordinates of obstacles between all adjacent moments within a preset time period prior to the current moment, classifying all obstacles into dynamic and static obstacles; analyzing the differences in the dispersion and average distribution of each type of movement data between different segments, determining a smoothing coefficient to predict the center position coordinates of each dynamic obstacle at the corresponding moment after the required movement time following the current moment; and combining the volume of the minimum circumscribed sphere of each static obstacle with the distance from the underwater robot to the surface of the minimum circumscribed sphere of each obstacle at the current moment to perform path planning for the underwater robot. This application aims to improve the obstacle avoidance accuracy of underwater robots.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of obstacle avoidance control technology for underwater robots, specifically to an autonomous obstacle avoidance method for an underwater robot and an underwater robot. Background Technology

[0002] With the continuous advancement of marine science and technology and the increasing emphasis on marine resources, the application of underwater robots in underwater environments has become increasingly important. However, due to the complexity of the marine environment, obstacles such as reefs, shipwrecks, and schools of fish exist, which may cause collisions and damage to robots, affecting operational safety. Precise obstacle avoidance capabilities not only ensure robot safety but also improve operational efficiency, reduce the time spent on path planning and motion control, and enable robots to complete tasks such as seabed topographic mapping and underwater pipeline inspection more efficiently. Therefore, high-precision autonomous obstacle avoidance is crucial for ensuring the operational safety of robots.

[0003] Artificial potential field methods have become the mainstream algorithm in the field of obstacle avoidance path planning for robots due to their simplicity, clarity, and fast response speed. In obstacle avoidance for UAVs and autonomous vehicles, artificial potential field methods have shown good results, effectively helping UAVs and vehicles avoid obstacles and achieve safe operation. However, in underwater robot obstacle avoidance scenarios, the artificial potential field methods used in existing technologies do not consider the influence of ocean currents, organisms, and other factors in the complex underwater environment on the judgment of obstacle motion states. This leads to unreasonable setting of the obstacle potential field function, which in turn reduces the obstacle avoidance accuracy of underwater robots. Summary of the Invention

[0004] To address the aforementioned technical problems, the purpose of this application is to provide an autonomous obstacle avoidance method for underwater robots and an underwater robot in general. The specific technical solution adopted is as follows:

[0005] In a first aspect, embodiments of this application provide an autonomous obstacle avoidance method for an underwater robot, the method comprising the following steps:

[0006] Real-time acquisition of all types of movement data of the underwater robot and all obstacles around it, as well as the center position coordinates. All types of movement data include movement speed and movement direction.

[0007] Analyze the differences in the center position coordinates of each obstacle between all adjacent moments within a preset time period before the current moment, determine the displacement correlation value of each obstacle at the current moment, and classify all obstacles into dynamic obstacles and static obstacles;

[0008] The movement data of each type of dynamic obstacle within the preset time period is divided into multiple segments. The differences in the dispersion of each type of movement data between different segments and the differences in the average distribution are analyzed to determine the smoothing coefficient of each type of movement data of each dynamic obstacle at the current time.

[0009] Obtain the minimum circumscribed ball of each obstacle, compare the difference between the distance from the underwater robot to each dynamic obstacle at the current moment and the radius of the corresponding minimum circumscribed ball, and combine the average distribution of each type of movement data of the underwater robot within the preset time period to determine the required movement time of the underwater robot, and combine the smoothing coefficient to predict the center position coordinates of each dynamic obstacle at the corresponding moment after the required movement time, and record them as obstacle coordinates;

[0010] By combining the volume of the smallest circumscribed sphere of each static obstacle, and the distances from the underwater robot's preset position coordinates to the obstacle coordinates of each dynamic obstacle after the required movement time, the maximum influence range of each obstacle is determined. Combined with the distance from the underwater robot to the surface of the smallest circumscribed sphere of each obstacle at the current moment, the repulsive force field factor of each obstacle at the current moment is determined, and path planning is performed for the underwater robot.

[0011] Preferably, the method for determining the displacement correlation values ​​of each obstacle at the current moment is as follows:

[0012] Within a preset time period before the current time, calculate the unit vector between the center position coordinates of obstacle j at time i and the center position coordinates of obstacle j at time i-1, and use it as the displacement vector of obstacle j at time i.

[0013] The variance of the distance between the displacement vectors of each obstacle at all adjacent times within the preset time period is used as the displacement correlation value of each obstacle at the current time.

[0014] Preferably, the step of classifying all obstacles into dynamic obstacles and static obstacles includes:

[0015] Based on the displacement correlation values, the dynamic confidence level of each obstacle at the current moment is determined, and the dynamic confidence level of obstacle j is... The expression is: In the formula, This represents the displacement-related value of obstacle j at the current moment; This represents the average moving speed of obstacle j within a preset time period prior to the current moment; This indicates a constant that is pre-defined as being greater than 0;

[0016] If the normalized value of the dynamic confidence of obstacle j at the current moment is greater than the preset threshold, then obstacle j is a dynamic obstacle; otherwise, it is a static obstacle.

[0017] Preferably, the method for determining the smoothing coefficient of each type of movement data of each dynamic obstacle at the current moment is as follows:

[0018] The algorithm takes the movement data of each type of dynamic obstacle within a preset time period before the current moment as input to the sequence segmentation algorithm, outputs multiple subsequences, calculates the variance and mean of all elements in each subsequence, and records the subsequence closest to the current moment as the recent subsequence.

[0019] Smoothing coefficient of the u-th type of movement data of dynamic obstacle a at the current time. The expression is: In the formula, The mean of the variance difference between the most recent subsequence and all other subsequences in the u-th type of movement data of dynamic obstacle a; The average result representing the difference between the mean of the most recent subsequence and all other subsequences in the u-th type of movement data of dynamic obstacle a; The expression represents the proportion of the number of all elements in the recent subsequence of the u-th type of movement data of dynamic obstacle a to the total number of each type of movement data within a preset time period; exp() represents the exponential function with the natural constant as the base; norm[] represents the normalization function.

[0020] Preferably, the method for determining the required movement time of the underwater robot is as follows:

[0021] Obtain the minimum distance between the underwater robot and the center coordinates of each obstacle, and take the difference between the minimum distance and the minimum circumscribed radius of the corresponding obstacle as the shortest distance between the underwater robot and each obstacle at the current moment;

[0022] The ratio of the nearest distance to the average moving speed of the underwater robot within a preset time period before the current moment is taken as the required moving time of the underwater robot.

[0023] Preferably, the prediction of the center position coordinates of each dynamic obstacle at the corresponding time after the required movement time following the current time includes:

[0024] The motion data of each type of dynamic obstacle within a preset time period before the current moment is used as the input of the smoothing algorithm, wherein the smoothing coefficient is used as the smoothing coefficient in the smoothing algorithm. The output is the motion data of each type of obstacle within the required motion period after the current moment. Combined with the motion data of each type of dynamic obstacle and the center position coordinates of each dynamic obstacle at the current moment, the center position coordinates of each dynamic obstacle at the corresponding moment after the required motion period after the current moment are calculated.

[0025] Preferably, the method for determining the maximum influence range of each obstacle is as follows:

[0026] If the obstacle is a static obstacle, then the volume of its smallest circumscribed sphere is taken as the maximum area of ​​influence.

[0027] If the obstacle is a dynamic obstacle, calculate the shortest distance from the underwater robot to the obstacle's coordinates at the corresponding time after the required movement time following the current time. This distance is recorded as the predicted distance. The difference between the minimum circumscribed radius of the dynamic obstacle and the predicted distance is taken as the maximum influence range of the obstacle.

[0028] Preferably, the expression for the repulsive force field factor of each obstacle at the current moment is: In the formula, This represents the repulsive force factor of the m-th obstacle; This represents the closest distance between the underwater robot and the m-th obstacle at the current moment; This represents the maximum range of influence of the m-th obstacle; This indicates a value that is greater than 0 by default.

[0029] Preferably, the path planning for the underwater robot includes:

[0030] The current position coordinates of the underwater robot, all types of movement data, the preset target position of the underwater robot, and the position coordinates and movement data of all obstacles are used as inputs to the artificial potential field method. The repulsive force field factors of all obstacles are used as the repulsive force gain coefficients in the artificial potential field method, and the optimal planned path is output.

[0031] Secondly, embodiments of this application also provide an underwater robot, including a memory, a processor, and a computer program stored in the memory and running on the processor, wherein the processor executes the computer program to implement the steps of any one of the above-described autonomous obstacle avoidance methods for an underwater robot.

[0032] This application has at least the following beneficial effects:

[0033] This application constructs a dynamic confidence level by comprehensively considering changes in the speed and direction of obstacles, significantly improving the autonomous obstacle avoidance capability and operational efficiency of underwater robots. Compared to directly distinguishing between static and dynamic obstacles based on their speed, it can more accurately distinguish pseudo-dynamic obstacles, thereby improving the obstacle avoidance accuracy of underwater robots. Furthermore, by analyzing the differences between recent and historical movement data of dynamic obstacles, as well as the duration of dynamic obstacles in their recent operating state, a smoothing coefficient is constructed, which more accurately predicts the future speed and direction of dynamic obstacles, thus providing a more reliable basis for subsequent path planning of underwater robots and helping to improve the obstacle avoidance accuracy of underwater robots. Furthermore, based on the smoothing coefficient, the coordinates of dynamic obstacles are predicted, and the obstacle coordinates can be obtained to predict whether the dynamic obstacle still exists when the underwater robot moves to it, thereby avoiding ineffective obstacle avoidance and improving operational efficiency. By comprehensively considering the characteristics of static and dynamic obstacles, this application can adaptively set different repulsion factors for different obstacles, thereby improving the obstacle avoidance accuracy of underwater robots. Attached Figure Description

[0034] To more clearly illustrate the technical solutions and advantages in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0035] Figure 1 A flowchart illustrating the steps of an autonomous obstacle avoidance method for an underwater robot, as provided in one embodiment of this application;

[0036] Figure 2 This is a schematic diagram of the division of dynamic and static obstacles provided in one embodiment of this application. Detailed Implementation

[0037] To further illustrate the technical means and effects adopted by this application to achieve the intended inventive objective, the following, in conjunction with the accompanying drawings and preferred embodiments, details the specific implementation, structure, features, and effects of an autonomous obstacle avoidance method for an underwater robot and the underwater robot proposed in this application. In the following description, different "one embodiment" or "another embodiment" do not necessarily refer to the same embodiment. Furthermore, specific features, structures, or characteristics in one or more embodiments can be combined in any suitable form.

[0038] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application pertains.

[0039] The following description, in conjunction with the accompanying drawings, details an autonomous obstacle avoidance method for an underwater robot and a specific scheme for the underwater robot provided in this application.

[0040] Please see Figure 1 The diagram illustrates a flowchart of an autonomous obstacle avoidance method for an underwater robot according to an embodiment of this application. The method includes the following steps:

[0041] Step S1: Real-time acquisition of all types of movement data and all position coordinates of the underwater robot and all obstacles around it, including movement speed and direction, and center position coordinates.

[0042] To describe the movement of the underwater robot in more detail, this embodiment uses a fixed detection station on the sea surface as the origin of the coordinate system to construct a coordinate system, in which the x-axis points to geographic east, the y-axis points to geographic north, and the z-axis points to the Earth's center.

[0043] The underwater robot employs a GPS positioning system, multibeam sonar, and differential tracking algorithm to acquire all position coordinates, center position coordinates, and all types of movement data of the underwater robot in real time. Simultaneously, it acquires all position coordinates, center coordinates, and all types of movement data of obstacles surrounding the underwater robot. All types of movement data for both the underwater robot and obstacles include movement direction and speed. The data acquisition frequency is set to f. In this embodiment, the value of f is manually set, specifically 1Hz. In practical applications, the implementer can set the frequency according to specific circumstances; this embodiment does not impose any special restrictions.

[0044] Step S2: Analyze the differences in the center position coordinates of each obstacle between all adjacent moments within the preset time period before the current moment, determine the displacement correlation value of each obstacle at the current moment, and classify all obstacles into dynamic obstacles and static obstacles.

[0045] In autonomous obstacle avoidance scenarios for underwater robots, static and dynamic obstacles require different handling strategies. For static obstacles, whose spatial position does not change over time, the underwater robot must replan its path to avoid them. In this case, the repulsive force factor in the potential field function of the static obstacle needs to be set relatively large to ensure that the underwater robot can change direction and achieve obstacle avoidance.

[0046] For dynamic obstacles such as schools of fish and drifting objects affected by ocean currents, their spatial positions are constantly changing. Therefore, it is necessary to further analyze whether the dynamic obstacle still exists when the underwater robot moves to it, and calculate whether obstacle avoidance is still required. This would allow for adaptively setting different repulsion factors for different dynamic obstacles to avoid ineffective obstacle avoidance and maintain operational efficiency. Therefore, it is first necessary to distinguish the categories of obstacles, specifically:

[0047] Considering that pseudo-dynamic obstacles such as kelp and coral, although their fundamental position is fixed, their shape will drift with the seawater. Therefore, when using sonar to detect obstacles, the change in their shape will also cause changes in the reflection characteristics of sound waves, thus causing changes in the detected obstacle position data. Therefore, it is necessary to comprehensively distinguish the category of obstacles based on the obstacle data collected.

[0048] Within a preset time period before the current moment, calculate the unit vector between the center position coordinates of obstacle j at time i and the center position coordinates of obstacle j at time i-1, and use it as the displacement vector of obstacle j at time i.

[0049] The variance of the distance between the displacement vectors of each obstacle at all adjacent moments within the preset time period is used as the displacement correlation value of each obstacle at the current moment. The distance between the displacement vectors of obstacles at adjacent moments can reflect whether there is a significant difference in the direction and distance of movement of the obstacles at two adjacent moments. The displacement correlation value characterizes the stability of the distance movement and the consistency of the direction of movement of the obstacles in a continuous time period. Since pseudo-dynamic obstacles such as kelp are affected by ocean currents and drift, they are uncertain, but their fundamental position is fixed. Therefore, the changes in their displacement direction and position have significant differences. Thus, the larger the displacement correlation value, the greater the possibility that the obstacle is a pseudo-dynamic obstacle such as kelp; conversely, the smaller the displacement correlation value, the less likely the obstacle is a pseudo-dynamic obstacle such as kelp.

[0050] It should be noted that there are many methods for measuring the distance between vectors. In this embodiment, Euclidean distance is used as the distance between unit vectors. In practical applications, as other implementation methods, implementers may also use Mahalanobis distance or Manhattan distance, etc., to measure the distance between vectors. This embodiment does not impose any special restrictions on the selection of the method for measuring the distance between vectors.

[0051] The method for calculating Euclidean distance is a well-known technique, and its specific calculation process will not be elaborated here.

[0052] Furthermore, based on the displacement correlation values, the dynamic confidence level of each obstacle at the current moment is determined, and the dynamic confidence level of obstacle j is... The expression is: In the formula, represents the displacement value of obstacle j at the current moment; s represents the average moving speed of obstacle j within a preset time period before the current moment; This indicates a preset constant greater than 0, used to prevent the denominator from being 0. The value is set manually, in this embodiment. The value of is 0.01. Provided that the denominator is not zero and does not excessively affect the calculation result, the implementer may also set it according to the specific situation. This embodiment does not impose any special restrictions.

[0053] Based on the dynamic confidence score of each obstacle, it can be understood that the dynamic confidence score comprehensively considers the changes in the obstacle's moving speed and moving direction. Compared with the method of directly distinguishing between moving and static obstacles by the obstacle's moving speed, it can more accurately distinguish pseudo-dynamic obstacles, thus enabling more accurate obstacle avoidance for the robot. When the displacement correlation value is not 0, the larger the displacement correlation value, the greater the probability that the obstacle is a pseudo-dynamic obstacle such as seaweed. At this time, the corresponding dynamic confidence score is smaller, indicating that the current obstacle is less likely to be a truly dynamic obstacle. Conversely, if the displacement correlation value is smaller, the greater the probability that the obstacle is a truly dynamic obstacle, and the greater the dynamic confidence score. When the displacement correlation value is 0, it indicates that the current obstacle is a static obstacle.

[0054] Furthermore, if the normalized value of the dynamic confidence of obstacle j at the current moment is greater than the preset threshold, then obstacle j is a dynamic obstacle; conversely, if the normalized value of the dynamic confidence of obstacle j at the current moment is less than or equal to the preset threshold, then it is a static obstacle.

[0055] It should be noted that the preset threshold value is set manually. In this embodiment, the preset threshold value is 0.3. Implementers can also set it according to specific circumstances. This embodiment does not impose any special restrictions.

[0056] Thus, by analyzing the characteristics of static obstacles, pseudo-static obstacles, and dynamic obstacles, all obstacles are classified into static obstacles and dynamic obstacles.

[0057] Preferably, the schematic diagram of dynamic and static obstacle division provided in this embodiment is as follows: Figure 2 As shown.

[0058] Step S3: Divide the movement data of each type of dynamic obstacle within the preset time period into multiple segments, analyze the differences in the dispersion of each type of movement data between different segments and the differences in the average distribution, and determine the smoothing coefficient of each type of movement data of each dynamic obstacle at the current time.

[0059] The spatial positions of underwater robots and dynamic obstacles change over time. However, since the movement speed of an underwater robot is relatively constant, the time required to move from the current position to the obstacle's location can be calculated simply by comparing the distance to the speed. However, considering the uncertainty of the movement speed of underwater organisms and drifting objects, it is necessary to predict the future movement speed based on historical movement speed data of underwater dynamic obstacles, and combine this with the movement direction to predict the position of the dynamic obstacle after a specified time. This allows for a determination of whether the underwater robot needs to perform obstacle avoidance, preventing ineffective obstacle avoidance that could impact operational efficiency.

[0060] Cubic exponential smoothing is a classic and common prediction algorithm that can efficiently and quickly predict subsequent data based on historical data. However, the larger the smoothing coefficient of cubic exponential smoothing, the faster the algorithm reacts to data and the more it focuses on recent data for prediction; conversely, the smaller the smoothing coefficient, the more it relies on overall historical data for prediction. Due to the uncertainty of the moving speed of dynamic obstacles, it is necessary to analyze the historical moving speed of dynamic obstacles and construct an adaptive smoothing coefficient to accurately predict their subsequent moving speed. This allows for setting more precise repulsion factors for each dynamic obstacle, improving the robot's obstacle avoidance accuracy. Specifically:

[0061] The algorithm takes the movement data of each type of dynamic obstacle within a preset time period before the current moment as input to the sequence segmentation algorithm, outputs multiple subsequences, calculates the variance and mean of all elements in each subsequence, and records the subsequence closest to the current moment as the recent subsequence.

[0062] It should be noted that there are many commonly used sequence segmentation algorithms. In this embodiment, the BG sequence segmentation algorithm is used to segment each type of movement data of each dynamic obstacle within a preset time period before the current time. After segmentation, each segment of data forms a subsequence. In practical applications, as other implementation methods, implementers can also use other sequence segmentation algorithms such as the PELT segmentation algorithm. This embodiment does not impose any special restrictions on the selection of sequence segmentation algorithms.

[0063] The BG sequence segmentation algorithm is a well-known technique, and its specific principles will not be elaborated here.

[0064] As one implementation method, this application determines the smoothing coefficient of each type of movement data of each dynamic obstacle at the current time by analyzing the differences in the dispersion of each type of movement data between different segments and the differences in the average distribution.

[0065] In this embodiment, the specific process for determining the smoothing coefficient of each type of movement data for each dynamic obstacle at the current moment is as follows:

[0066] Smoothing coefficient of the u-th type of movement data of dynamic obstacle a at the current time. The expression is: In the formula, The mean of the variance difference between the most recent subsequence and all other subsequences in the u-th type of movement data of dynamic obstacle a; The average result representing the difference between the mean of the most recent subsequence and all other subsequences in the u-th type of movement data of dynamic obstacle a; The expression represents the proportion of the number of all elements in the recent subsequence of the u-th type of movement data of dynamic obstacle a to the total number of each type of movement data within a preset time period; exp() represents the exponential function with the natural constant as the base; norm[] represents the normalization function.

[0067] It should be noted that there are many methods to measure the differences between data. In this embodiment, whenever the difference between data is calculated, the method of taking the absolute value of the mean is used. In practical applications, as other implementation methods, implementers may also use other methods such as the square of the difference to measure the difference between data. This embodiment does not impose any special restrictions on the selection of methods to measure the difference between data.

[0068] This can be understood based on the smoothing coefficient of each type of movement data point for each dynamic obstacle at the current moment. It can reflect the difference between the recent movement data and historical movement speed data of the a-th dynamic obstacle. The smaller the value, the more stable the dynamic obstacle operation; the percentage mentioned above. This allows us to measure the relative importance of dynamic obstacles between recent and historical data. A larger value indicates that the dynamic obstacle remains in its recent state for a longer period, and its subsequent speed and direction of movement do not change abruptly again, indicating that the movement of the dynamic obstacle is more stable, and ultimately, the smoothness coefficient is smaller; conversely, if... The larger the value, the greater the difference between the obstacle's recent movement data and its historical movement data, indicating that the dynamic obstacle's operation may be abnormal. The percentage mentioned... The larger the value, the more unstable the dynamic obstacle's operating state is, and the greater the possibility of abnormal movement changes in the near future. In this case, a larger smoothing coefficient is needed to quickly respond to changes in the dynamic obstacle's moving state.

[0069] Thus, by analyzing the differences between recent and historical movement data of dynamic obstacles, a smoothing index was determined, thereby improving the prediction accuracy when predicting the location of obstacles in the future.

[0070] Step S4: Obtain the minimum circumscribed ball of each obstacle, compare the distance from the underwater robot to each dynamic obstacle at the current moment with the corresponding minimum circumscribed ball radius, and combine the average distribution of each type of movement data of the underwater robot within the preset time period to determine the required movement time of the underwater robot. Combine the smoothing coefficient to predict the center position coordinates of each dynamic obstacle at the corresponding moment after the required movement time, and record them as obstacle coordinates.

[0071] After distinguishing between moving and static obstacles, it is necessary to assess the size of the obstacles in order to set an appropriate repulsive force factor for them. The larger the obstacle, the greater the repulsive force required to repel the underwater robot and avoid collisions.

[0072] Calculate the distance between all position coordinates of each obstacle and the center coordinate at the current moment. Use the maximum distance as the neighborhood radius and the center position coordinate as the sphere center to construct the minimum circumscribed sphere of each obstacle.

[0073] The volume of the minimum circumscribed sphere reflects the size of the space occupied by the obstacle. The larger the volume of the minimum circumscribed sphere, the larger the obstacle. The greater the direction of deviation required for the underwater robot to move, the greater the repulsive force factor required to be set for the obstacle, in order to ensure that the underwater robot can avoid obstacles smoothly.

[0074] Furthermore, obtain all position coordinates of the underwater robot at the current moment, calculate the distance between all position coordinates of the underwater robot and the center position coordinates of each obstacle, and take the difference between the minimum distance and the minimum circumscribed radius of the corresponding obstacle as the shortest distance from the underwater robot to each obstacle at the current moment;

[0075] The ratio of the nearest distance to the average moving speed of the underwater robot within a preset time period before the current moment is taken as the required moving time of the underwater robot.

[0076] The movement data of each type of dynamic obstacle within a preset time period before the current moment is used as the input of the cubic exponential smoothing algorithm, wherein the smoothing coefficient is used as the smoothing coefficient in the cubic exponential smoothing algorithm. The output is the movement data of each type of obstacle within the required movement time after the current moment. Combined with the movement data of each type of dynamic obstacle and the center position coordinates of each dynamic obstacle at the current moment, the center position coordinates of each dynamic obstacle at the corresponding moment after the required movement time after the current moment are calculated and recorded as obstacle coordinates.

[0077] Among them, the triple exponential smoothing algorithm and the calculation of the center position coordinates of each dynamic obstacle after the required movement time following the current moment, based on each type of movement data within the required movement time after the current moment, combined with each type of movement data and center position coordinates of each dynamic obstacle at the current moment, are all well-known technologies, and their specific principles will not be elaborated here.

[0078] Based on the smoothing index obtained in step S3, the center coordinates of each dynamic obstacle at the corresponding time after the required movement time following the current time are predicted more accurately, thus obtaining the obstacle coordinates of the dynamic obstacle.

[0079] Step S5: Combining the volume of the smallest circumscribed ball of each static obstacle, and the distances from the underwater robot's preset position coordinates to the obstacle coordinates of each dynamic obstacle after the required movement time, determine the maximum influence range of each obstacle. Combine the distance from the underwater robot to the surface of the smallest circumscribed ball of each obstacle at the current moment, determine the repulsive force field factor of each obstacle at the current moment, and perform path planning for the underwater robot.

[0080] Furthermore, by combining the characteristics of static and dynamic obstacles, the maximum influence range of each obstacle is determined. Based on this maximum influence range, an appropriate repulsive field factor is set, thereby improving the obstacle avoidance accuracy of the underwater robot. The specific process is as follows:

[0081] If the obstacle is a static obstacle, the volume of its smallest circumscribed sphere is taken as the maximum influence range; if the obstacle is a dynamic obstacle, the shortest distance from all preset position coordinates on the underwater robot to the obstacle coordinates of each dynamic obstacle is calculated after the required movement time following the current moment, and recorded as the predicted distance. The difference between the minimum circumscribed sphere radius of the dynamic obstacle and the predicted distance is taken as the maximum influence range of the obstacle.

[0082] The preset position coordinates are automatically set by the underwater robot.

[0083] Furthermore, based on the maximum influence range, the repulsive force field factor of obstacle m at the current moment is determined. The expression is: In the formula, This represents the closest distance between the underwater robot and the m-th obstacle at the current moment; This represents the maximum range of influence of the m-th obstacle; This indicates a value that is greater than 0 by default.

[0084] It should be noted that, The value is set manually, in this embodiment. The value of 5 is set to ensure that the underwater robot can effectively avoid obstacles while avoiding excessive obstacle avoidance, which would affect the efficiency of operation. In actual application, the implementer can also set it according to the specific situation. This embodiment does not impose any special restrictions.

[0085] Furthermore, the current position coordinates of the underwater robot, all types of movement data, the preset target position of the underwater robot, and the position coordinates and movement data of all obstacles are used as inputs to the artificial potential field method. The repulsive force field factors of all obstacles are used as the repulsive force gain coefficients in the artificial potential field method. The optimal planning path is then output.

[0086] The underwater robot automatically sets the preset target position; the artificial potential field method is a well-known technology, and its specific principle will not be elaborated here.

[0087] Thus, this embodiment can effectively and accurately distinguish between dynamic and static obstacles by analyzing the essential differences in their characteristics. Furthermore, by evaluating the underwater robot's moving speed and the magnitude of its moving direction deviation, the movement data of dynamic obstacles can be predicted more accurately. Based on the prediction results and combined with the volume of static obstacles, a repulsive field factor is set, thereby improving the underwater robot's obstacle avoidance.

[0088] Based on the same inventive concept as the above methods, this application also provides an underwater robot, including a memory, a processor, and a computer program stored in the memory and running on the processor. When the processor executes the computer program, it implements the steps of any one of the above-described autonomous obstacle avoidance methods for an underwater robot.

[0089] It should be noted that the order of the embodiments described above is merely for descriptive purposes and does not represent the superiority or inferiority of the embodiments. Furthermore, specific embodiments of this specification have been described above. Additionally, the processes depicted in the accompanying drawings do not necessarily require a specific or sequential order to achieve the desired results. In some implementations, multitasking and parallel processing are possible or may be advantageous.

[0090] The various embodiments in this specification are described in a progressive manner. The same or similar parts between the various embodiments can be referred to each other. Each embodiment focuses on describing the differences from other embodiments.

[0091] The above description is only a preferred embodiment of this application and is not intended to limit this application. Any modifications, equivalent substitutions, improvements, etc., made within the principles of this application should be included within the protection scope of this application.

Claims

1. An autonomous obstacle avoidance method for an underwater robot, characterized in that, The method includes the following steps: Real-time acquisition of all types of movement data of the underwater robot and all obstacles around it, as well as the center position coordinates. All types of movement data include movement speed and movement direction. Analyze the differences in the center position coordinates of each obstacle between all adjacent moments within a preset time period before the current moment, determine the displacement correlation value of each obstacle at the current moment, and classify all obstacles into dynamic obstacles and static obstacles; The movement data of each type of dynamic obstacle within the preset time period is divided into multiple segments. The differences in the dispersion of each type of movement data between different segments and the differences in the average distribution are analyzed to determine the smoothing coefficient of each type of movement data of each dynamic obstacle at the current time. Obtain the minimum circumscribed ball of each obstacle, compare the difference between the distance from the underwater robot to each dynamic obstacle at the current moment and the radius of the corresponding minimum circumscribed ball, and combine the average distribution of each type of movement data of the underwater robot within the preset time period to determine the required movement time of the underwater robot, and combine the smoothing coefficient to predict the center position coordinates of each dynamic obstacle at the corresponding moment after the required movement time, and record them as obstacle coordinates; By combining the volume of the minimum circumscribed sphere of each static obstacle, and the distances from the underwater robot's preset position coordinates to the obstacle coordinates of each dynamic obstacle after the required movement time, the maximum influence range of each obstacle is determined. Combined with the distance from the underwater robot to the surface of the minimum circumscribed sphere of each obstacle at the current moment, the repulsive force field factor of each obstacle at the current moment is determined, and the underwater robot's path planning is performed. The method for determining the displacement correlation values ​​of each obstacle at the current moment is as follows: Within a preset time period before the current time, calculate the unit vector between the center position coordinates of obstacle j at time i and the center position coordinates of obstacle j at time i-1, and use it as the displacement vector of obstacle j at time i. The variance of the distance between the displacement vectors of each obstacle at all adjacent moments within the preset time period is used as the displacement correlation value of each obstacle at the current moment. The classification of all obstacles into dynamic obstacles and static obstacles includes: Based on the displacement correlation values, the dynamic confidence level of each obstacle at the current moment is determined, and the dynamic confidence level of obstacle j is... The expression is: In the formula, This represents the displacement-related value of obstacle j at the current moment; This represents the average moving speed of obstacle j within a preset time period prior to the current moment; This indicates a constant that is pre-defined as being greater than 0; If the normalized value of the dynamic confidence of obstacle j at the current moment is greater than the preset threshold, then obstacle j is a dynamic obstacle; otherwise, it is a static obstacle. The method for determining the smoothing coefficient of each type of movement data of each dynamic obstacle at the current moment is as follows: The algorithm takes the movement data of each type of dynamic obstacle within a preset time period before the current moment as input to the sequence segmentation algorithm, outputs multiple subsequences, calculates the variance and mean of all elements in each subsequence, and records the subsequence closest to the current moment as the recent subsequence. Smoothing coefficient of the u-th type of movement data of dynamic obstacle a at the current time. The expression is: In the formula, The mean of the variance difference between the most recent subsequence and all other subsequences in the u-th type of movement data of dynamic obstacle a; The average result representing the difference between the mean of the most recent subsequence and all other subsequences in the u-th type of movement data of dynamic obstacle a; The expression represents the proportion of the number of all elements in the recent subsequence of the u-th type of movement data of dynamic obstacle a to the total number of each type of movement data within a preset time period; exp() represents the exponential function with the natural constant as the base; norm[] represents the normalization function.

2. The autonomous obstacle avoidance method for an underwater robot as described in claim 1, characterized in that, The method for determining the required movement time of the underwater robot is as follows: Obtain the minimum distance between the underwater robot and the center coordinates of each obstacle, and take the difference between the minimum distance and the minimum circumscribed radius of the corresponding obstacle as the shortest distance between the underwater robot and each obstacle at the current moment; The ratio of the nearest distance to the average moving speed of the underwater robot within a preset time period before the current moment is taken as the required moving time of the underwater robot.

3. The autonomous obstacle avoidance method for an underwater robot as described in claim 1, characterized in that, The predicted center position coordinates of each dynamic obstacle at the corresponding time after the required movement time following the current time include: The motion data of each type of dynamic obstacle within a preset time period before the current moment is used as the input of the smoothing algorithm, wherein the smoothing coefficient is used as the smoothing coefficient in the smoothing algorithm. The output is the motion data of each type of obstacle within the required motion period after the current moment. Combined with the motion data of each type of dynamic obstacle and the center position coordinates of each dynamic obstacle at the current moment, the center position coordinates of each dynamic obstacle at the corresponding moment after the required motion period after the current moment are calculated.

4. The autonomous obstacle avoidance method for an underwater robot as described in claim 1, characterized in that, The method for determining the maximum influence range of each obstacle is as follows: If the obstacle is a static obstacle, then the volume of its smallest circumscribed sphere is taken as the maximum area of ​​influence. If the obstacle is a dynamic obstacle, calculate the shortest distance from the underwater robot to the obstacle's coordinates at the corresponding time after the required movement time following the current time. This distance is recorded as the predicted distance. The difference between the minimum circumscribed radius of the dynamic obstacle and the predicted distance is taken as the maximum influence range of the obstacle.

5. The autonomous obstacle avoidance method for an underwater robot as described in claim 1, characterized in that, The expression for the repulsive force field factor of each obstacle at the current moment is: In the formula, This represents the repulsive force factor of the m-th obstacle; This represents the closest distance between the underwater robot and the m-th obstacle at the current moment; This represents the maximum range of influence of the m-th obstacle; This indicates a value that is greater than 0 by default.

6. The autonomous obstacle avoidance method for an underwater robot as described in claim 2, characterized in that, The path planning for the underwater robot includes: The current position coordinates of the underwater robot, all types of movement data, the preset target position of the underwater robot, and the position coordinates and movement data of all obstacles are used as inputs to the artificial potential field method. The repulsive force field factors of all obstacles are used as the repulsive force gain coefficients in the artificial potential field method, and the optimal planned path is output.

7. An underwater robot, comprising a memory, a processor, and a computer program stored in the memory and running on the processor, characterized in that, The processor executes the computer program to implement the steps of the autonomous obstacle avoidance method for an underwater robot as described in any one of claims 1-6.

Citation Information

Patent Citations

  • Underwater robot obstacle avoidance path planning method and system based on artificial intelligence

    CN117806334A

  • Intelligent robot path planning method and system, computer equipment and medium

    CN118518104A