# An ARCore Based User Centric Assistive Navigation System for Visually Impaired People
## 3 Design of ANSVIP
### Adaptive Artificial Potential Field-Based Path Planning  
In indoor navigation for the visually impaired, the path planning has to consider both efficiency and safety. Specifically, our path planning considers the issues that follow.  
1. The path should be planned to be away from obstacles and risks: Where the conventional robot path planning prefers the shortest path, the assistive system has more in-depth requirements. For visually impaired users, the path should be away from obstacles and risks such as walls, pillars, and uneven steps, which may cause falls [25].  
2. The path and guidance shall be updated in real time: Unlike autonomous robot systems, the assistive system cannot expect visually impaired users to proceed along the planned path accordingly. When the user deviates from the planned path, there should be a corresponding real-time path evolution instead of asking the user to return to the planned track.  
3. The mechanism shall be flexible to scale up with new elements: The path-planning algorithm should be able to easily expand with new elements, such as dynamic obstacle avoidance, functional unit integration, step warning, and extreme case re-planning.  
4. The path shall be planned in a human-friendly manner: Unlike robots, visually impaired users are unable to grasp precise turning angles, and thus, it is difficult for them to follow conventional turn-by-turn paths [15]. Qualitative direction guidance is more suitable. Users prefer continuous guidance in navigation and a generally smooth plan.  
The artificial potential field path planning is a suitable candidate for the above issues and challenges, since it has the characteristics of a simple structure, strong practicability, ease of implementation, and flexibility regarding expansion [14; 17].  
Therefore, we propose an adaptive artificial potential field path-planning mechanism for path generation.  
Specifically, the target (goal) is considered an attractive potential, while walls are repulsive. The potential fields are the combination of first-order attractive and repulsive potentials:  
\[U=U_{\text{att}}+U_{\text{rep}}, \tag{9}\]  
\[U_{\text{att}}(X_{\text{current}})=k\rho(X_{\text{current}},X_{\text{target}}), \tag{10}\]  
\[U_{\text{rep}}(X_{\text{current}})=\begin{cases}\eta\left(\frac{1}{\rho(X_{ \text{current}},X_{\text{obs}})}-\frac{1}{\rho_{0}}\right)&\text{if }\rho(X_{\text{current}},X_{\text{obs}}) \leq\rho_{0}\\ 0&\text{if }\rho(X_{\text{current}},X_{\text{obs}})>\rho_{0}\end{cases}, \tag{11}\]  
where \(\eta\) denotes the repulsive factor, \(\rho\) denotes a distance function, and \(\rho_{0}\) denotes the effective radius. A path can be generated along with the potential gradients.  
However, local minimums may block the path or cause redundant travel costs. Thus, we refer to the local minimum immune A* algorithm path length to control \(\rho_{0}\) and solve this problem.  
\(\rho_{0}=\rho_{0}-\Delta\rho\) until \(C_{\text{AAPF}}>\lambda C_{\text{A*}}\), where \(\lambda\) denotes the control factor, and \(C_{\text{AAPF}}\) and \(C_{\text{A*}}\) denote the path length of adaptive artificial potential field (AAPF) and A* from the current position, respectively. A sliding window is used to smooth the path to support and enhance the experience of motion guidance in human-machine interaction (Figure 5):  
\[X(i)=\frac{1}{2N+1}(X(i+N)+X(i+N-1)+...+X(i-N)). \tag{12}\]  
A case of a smoothed path is shown in Figure 5. Since the plan is discrete, the path (red dotted) is planned in taxicab style before smoothing. The sliding window described in equation (12) updates each point on the path by averaging its position with the nearest \(2N\) points' positions on the path. Consequently, the path (dark curve) is smoothed after the process.