## 3 Obstacle Avoidance Model by Harmonic Potential Field with Curvature Constraint
### Harmonic Potential Function and Streamlines  
Harmonic potential functions are solutions to [PERSON]'s Equation, so functions generated by [PERSON]'s Equation do not exhibit local minima [7]. In a two-dimensional computational domain \(\mathbf{D}\) of  
Figure 4: The scenarios of obstacle detection. The ray of each sensor is presented as a dashed line. As the rays intersect with an obstacle, the nearest intersection point is retained. (**a**) An obstacle is in front of the robot. Sonar 2 detects an obstacle with distance less than 150 cm, the robot knows the obstacle is located in front of the robot with azimuth angle \(0^{\circ}\). (**b**) Both Sonar 2 and IR 3 detect the obstacle, and the obstacle’s direction will be \(6^{\circ}\), which is between Sonar 2 and IR 3. The distance of the obstacle is the average of the data received from the two sensors. Figure 3: The configuration of the sonar and infrared sensors and their sensing ranges in Dr. Robot X80. Euclidean space, the velocity potential \(\phi\in C^{2}(\mathbf{D})\) is a solution of Laplace's Equation \(\
abla^{2}\phi=0\) with the given boundary conditions that govern the flow of the non-viscous, incompressible, irrotational fluid particle motion at every point of the domain. [PERSON]'s Equation can be solved analytically in simple cases or by numerical methods in a general situation. For numerical methods, Laplace's Equation in a computational domain \(\mathbf{D}\) could be discretized using both the finite difference method or the finite element method, resulting in a system of linear equations for the solution of the potential value in a grid or mesh environment. The Jacobi iteration, Gauss-Seidel iteration, and SOR (successive over-relaxation) iteration methods in a grid environment can be employed to solve the linear equations with an efficient accuracy. A log-space algorithm with GPU acceleration was proposed to fix the numerical precision problem of the numerical solution of a linear system of linear equations at the grid points that have nearly vanishing gradients resulting from discretized Laplace's Equation via the finite difference methods [10]. A streamline indicates the local flow direction: its tangent at every point (vector field) is in the direction of the local fluid velocity associated with the flow defined in Equation (2). \[\mathbf{u}=\
abla\phi(x,y) \tag{2}\]  
That is, the gradient of the obtained potential values gives the streamline or the direction of velocity at each grid [7], offering an explicit specification of the heading of a smooth, natural-looking path for navigation. Higher order path characteristics such as curvature can also be obtained for streamlines, thus, being more predictable. Consider a mobile robot at \(\mathbf{x}=[x\,y]^{\mathrm{T}}\) modeled as a fluid particle moving with velocity \(\left[\mathrm{v}_{\mathbf{x}},\mathrm{v}_{\mathbf{y}}\right]^{\mathrm{T}}\) in the Cartesian space. It moves in the \(+x\)-axis direction with a forward/longitudinal speed \(U\) to avoid a circular obstacle of radius \(r_{Obstacle}\) (or an enlarged \(r_{Obs}\) for safety) located at the origin. The velocity potential field \(\phi(x,y)\) can be represented as the superposition of a uniform rectilinear flow and a doublet [19] as  
\[\phi(x,y)=U+\frac{A}{x^{2}+y^{2}}x \tag{3}\]  
where \(A=Ur^{2}\). According to [19], the robot's velocity \(\left[\mathrm{v}_{\mathbf{x}},\mathrm{v}_{\mathbf{y}}\right]^{\mathrm{T}}:= \left[u,v\right]^{\mathrm{T}}\) in the Cartesian coordinate is determined by the gradient \(\
abla\phi(x,y)\)  
\[u=\frac{\partial\phi(x,y)}{\partial\mathrm{x}}=U-\frac{2 Ax^{2}}{\left(x^{2}+ y^{2}\right)^{2}}+\frac{A}{x^{2}+y^{2}},\ v=\frac{\partial\phi(x,y)}{\partial y}=- \frac{2 Axy}{\left(x^{2}+y^{2}\right)^{2}} \tag{4}\]  
In practice (and in our experiment in Section 5), we assume that the linear speed \(U=\sqrt{u^{2}+v^{2}}\) is normalized to unity while its direction of motion is preserved.