Neural potential field helped robots to avoid obstacles better
Avoiding obstacles and barriers is one of the first skills humans acquire early in life. We do this daily without thinking when we walk through a room or on the street. However, for robots, obstacle avoidance presents a significant challenge that engineers are working hard to solve.
Teaching a virtual agent to navigate through model mazes is relatively easy. Algorithms for solving this problem were proposed as far back as the mid-20th century. We’ve already discussed in our blog how these can be improved using machine learning techniques. But real-world situations that robots encounter are much more complex. The primary constraints arise from the robot’s finite size and shape, as well as its kinodynamic characteristics (for example, limitations related to the turning radius of its wheels).
All of this can be taken into account if a way is devised to transform the broken line provided by simple algorithms into a smooth curve that ensures the robot will bypass and not collide with obstacles. This can be done using a rigid system of inequalities; however, a more flexible approach has proven to be one where a penalty term is added to the cost function of the optimization problem, which is responsible for collision avoidance. This term acts as if a certain repulsive artificial potential field (Artificial Potential Field, APF) is exerting force on the robot.
The problem is that this penalty must be described by a differentiable function, which is not always possible to find since the APF is usually calculated algorithmically and not numerically or analytically. To solve this problem, a team of researchers from AIRI and MIPT proposed using neural networks to find this artificial potential. The development was called the Neural Potential Field Model (NPField).
NPField takes the position and orientation of the robot along with an obstacle map as input and returns the value of the repulsive potential, including its gradient, which is necessary for optimization. The model consists of two main blocks: a neural network and a controller that plans the robot’s trajectory. The neural network is assembled from an encoder and a subnetwork that calculates the potential. The controller is also divided into two blocks: for determining the set of parameters of model-predictive control and for optimization according to these parameters. The full scheme of the algorithm is shown in the figure below:
To train the model, the authors used data on the robot’s pose and shape, maps from the MovingAI planning dataset, and potential values that were calculated algorithmically. They chose the Theta* algorithm as a tool for generating a broken geometric path.
The researchers conducted a series of experiments, comparing the performance of NPField with some existing solutions, such as the CIAO algorithm, using the BenchMR framework. It turned out that the new model as a whole provides almost the shortest path length, better smoothness, and several other metrics, although it may be inferior to baselines in some criteria. The researchers also deployed their development on a real Husky UGV mobile manipulator, filming it as it navigates a winding corridor.
A paper with technical details was presented at the ICRA 2024 conference.