# Task-Based Motion Planning Using Optimal Redundancy for a Minimally Actuated Robotic Arm
## 4 Motion Planning
### Areal Coverage  
An accurate graph-based search is only guaranteed if the graph represents the entire feasible workspace. While full contour coverage is sufficient for finding the optimal arm assembly, it mostly describes the workspace's boundaries, and not the surface. Therefore, creating a workspace-based graph requires the formation of a cloud with full areal coverage.  
We define \(r\) as the grabbing tolerance, i.e., that the end-effector has reached a specific point if the distance between the two is \(r\) or less. In other words, each cloud point has an area cover radius of \(r\). Similar to our full contour coverage definition, we define full areal coverage as the minimal number of cloud points with a cover radius \(r\) needed to reach 95% or 98% (respectively, for low- and high-accuracy tasks) of the true workspace area; i.e., the true contour coverage value (Section 3.2). To find a criterion for the number of points per link, a series of simulations were conducted for several cover radii. In each simulation, an increasing number of cloud points were generated by the superposition method presented in the previous section. In each cloud, the points were connected to form triangles, using MATLAB's _AlphaShape_ (based on the alpha shape method [21] and the cover radius \(r\)). The total area of the alpha shapes was calculated with MATLAB's _area_. An example of these simulation results is shown in Figure 6. The number of cloud points needed for full areal coverage increases as the cover radius decreases and/or the cover percentage increases. Comparing the results for the contour coverage (Table 1) and the areal coverage (Table 2) simulations shows that the latter required up to 51.25 times more points to achieve 95% coverage with \(r=5\) mm, and up to 67.5 times more for 98% coverage with \(r=5\) mm. These results underscore the efficiency of these new contour and areal coverage approaches: the contour coverage required a relatively small number of points to accurately describe the workspace boundaries, thus making it well-suited for running a quick and efficient iterative search along the sub-workspaces of the arm, but less suitable as a search graph.  
In contrast, the areal coverage requires a significantly larger number of points. Thus, although it is impractical to use in an iterative search, it is well suited to use as a search graph. The minimal redundancy motion plan algorithm exploits the advantages of both the contour and the areal coverages. It uses the former to consecutively calculate sub-workspaces until minimal redundancy has been achieved (Section 3). The latter is then used exactly once on the chosen subset of joints to create an informative search graph for the heuristic search. Table 2 shows how the number of cloud points for full coverage rises as the cover radius decreases and the number of joints increases. The size of the cover radius and percentage is derived from the end-effector properties, type of task, the environment, etc. For high accuracy tasks, lower radius value and higher cover percentages will be selected, unlike simpler tasks, where larger radius vales and smaller percentages typically suffice. When using a graph search, the best strategy is to search for the sparsest graph possible that still accurately describes the environment.  
Since the search graph is based on the cloud points, it is crucial for the efficiency of the search to generate the minimum number of cloud points. By adjusting the cover radius and percentage to the task, we can maintain the number of cloud points at a minimum, without losing significant data for the motion plan.