# Task-Based Motion Planning Using Optimal Redundancy for a Minimally Actuated Robotic Arm
## 4 Motion Planning
### Heuristic Search  
Any effective heuristic search relies on two major components: the search graph and the cost-to-go estimation. The level of accuracy at which these two components describe a specific problem enables obtaining a more efficient solution [18; 22]. Despite the popularity \begin{table}
\begin{tabular}{c c c c c c c} \hline \multicolumn{3}{c}{**98\% Coverage**} & \multicolumn{3}{c}{**95\% Coverage**} & \multirow{2}{*}{
\begin{tabular}{c} **Number** \\ **of Links** \\ \end{tabular} } \\ \(\boldsymbol{r=15}\) & \(\boldsymbol{r=10}\) & \(\boldsymbol{r=5}\) & \(\boldsymbol{r=15}\) & \(\boldsymbol{r=10}\) & \(\boldsymbol{r=5}\) & **of Links** \\ \hline
**mm** & **mm** & **mm** & **mm** & **mm** & **mm** & **mm** \\ \hline
12K & 27K & 108K & 9K & 20K & 82K & 2 \\
67K & 148K & 574K & 49K & 111K & 433K & 3 \\ \hline
181K & 384K & 1406K & 117K & 261K & 935K & 4 \\ \hline
282K & 587K & 2061K & 165K & 372K & 1372K & 5 \\ \hline \end{tabular}
\end{table} 
Table 2: Criteria for the number of cloud points to generate to achieve 95% and 98% area coverage for a cover radius of 5, 10, and 15 mm. Figure 6: Areal coverage simulation example results for 95% coverage with two cover radii. The top figures present areal coverages of the 5R MASR workspace, produced from \(10^{5}\) cloud points, with cover radii of 10 mm (**left**) and 5 mm (**right**). The bottom figures show differences in the convergence of the coverage percentage as the number of active joints decrease and the cover radius increases. of heuristic searches in robotic navigation, devising a search graph for manipulators is considered impractical due to the high-dimensionality of the state-space problem [18]. Our new approach for manipulator path planning relies on using the cloud points with full areal coverage and suitable heuristics as the search graph. The cloud contains all the arm's kinematics (configurations and constraints), as well as the data on unachievable configurations as a result of the presence of obstacles within the workspace. By searching the cloud points, we can find an optimal path without needing inverse kinematics, Jacobian calculations, or obstacle sensing. Since we are generating a minimal number of points, we also guarantee the minimal possible dimensionality of the problem. To perform the search, we need to know the start and goal nodes for the graph. In the case of manipulators, the nodes can be defined by the end-effector position or by the joint configuration. Since all configurations are known from the cloud, and our aim is to find the path with the fewest joint rotations, we define the goal node as the configuration which is both within the cover radius and has the least angular change with respect to the starting configuration. We then apply the traditional A* search, with a modification of a neighbor search: instead of searching for the eight Cartesian neighbors, we identify all the cloud points within a search radius which is predefined from the geometry of the cloud. The optimal path is defined as the path with minimal angular change between the start and goal configurations; hence, the cost at each node \(s\) is given by:  
\[\left\{ \begin{aligned} & f(s)=g(s)+h(s)\\ & g(s)=\sum\limits_{i=start+1}^{n}\|\overline{\theta}(s_{i})- \overline{\theta}(s_{i-1})\|\\ & h(s)=\|\overline{\theta}(s)-\overline{\theta}\big{(}s_{goal} \big{)}\|\end{aligned} \right. \tag{7}\]  
where \(f(s)\) is the total estimated cost from start to goal. \(g(s)\) is the true cost from the start node to the current node \(s_{n}\), calculated as the 2 nd norm sum of change in the relative joint angles \(\overline{\theta}\), between adjacent nodes \(s_{i}\) and \(s_{i-1}\). \(h(s)\) is an optimal estimation of the cost to go, calculated as the norm of angular change between the current node and the goal.