The potential field method has been studied extensively for autonomous mobile robot path planning in the past decade. The basic concept of the potential field method is to fill the robot’s workspace with an artificial potential field in which the robot is attracted to its goal position and is repulsed away from the obstacles. This method is particularly attractive because of its mathematical elegance and simplicity. However, it has some inherent limitations. A systematic criticism of the inherent problems based on mathematical analysis was presented in, which includes the following: 1) trap situations due to local minima; 2) no passage between closely spaced obstacles; 3) oscillations in the presence of obstacles; and 4)oscillations in narrow passages. Besides the four problems mentioned above, there exists an additional problem, goals non- reachable with obstacles nearby (GNRON). In most of the previous studies, the goal position is set relatively far away from obstacles. In these cases, when the robot is near its goal position, the repulsive force due to obstacles is negligible, and the robot will be attracted to the goal position by the attractive force. However, in many real-life implementations, the goal position needs to be quite close to an obstacle. In such cases, when the robot approaches its goal, it also approaches the obstacle nearby. If the attractive and repulsive potentials are defined as commonly used, the repulsive force will be much larger than the attractive force, and the goal position is not the global minimum of the total potential. Therefore, the robot cannot reach its goal due to the obstacle nearby. To overcome this problem, the repulsive potential functions for path planning are modified by taking into account the relative distance between the robot and the goal. The new repulsive potential function ensures that the total potential has a global minimum at the goal position. Therefore, the robot will reach the goal finally.
Is there any paper related to the calculation of attractive potential field in the code:
uatt = (d_s_gzetadatt)-0.5zeta((d_s_g)^2);
I want to know why it is calculated like this,Thank you.