# Grasp Planning Based on Metrics for Collaborative Tasks Using Optimization
## 3 Multi-Objective Optimization  
We know the grasp position of the human's hands (\(p1\), \(p2\)); now the robot must find its grasp point on the object (\(p3\)). For this purpose, we use the metrics described in Section 2 as optimization functions; i.e., they seek to optimize the grasp point \(p3\) that achieves the best results for each and every metric, resulting in a multi-objective (MO) problem. \[maximize(f_{1}(x))\quad\text{and}\quad minimize(f_{2}(x),f_{3}(x),f_{4}(x),f_{5 }(x)) \tag{6}\]  
\[x=p1,p2,p3 \tag{7}\]  
\[f_{1}(x)=Q_{Area},f_{2}(x)=Q_{CM-C},f_{3}(x)=Q_{InerYZ},f_{4}(x)=Q_{InerXZ},f_ {5}(x)=Q_{InerXY} \tag{8}\]  
To solve this MO problem, we selected one of several metaheuristic optimization algorithms, based on the Pareto-front concept as a decision parameter. Pareto front is the theoretical optimal solution set of any MO characteristic problem where each solution is non-dominated compared to the others; i.e., MO results in more than one possible optimal solution. NSGA-II, MOPSO and MOGWO algorithms will be described briefly for better understanding. NSGA-II uses the behavior of [PERSON]'s principle of evolution to select the best population generation to generation, applying the concepts of mutation and natural selection until finding or being near to the theoretical solution. MOPSO is the social behaviour simulation of bee swarms or bird flocks called particles where each particle moves around the search-space under the influence of its own best position and the movement direction of the other particles (swarm global best position). After some iterations, the swarm gathers around the same or several zones, i.e., near to the theoretical Pareto front, according to a few metaheuristic formulas (Table 11). In a similar way, MOGWO is based on the behaviour of wolf pack trying to hunt prey. MOGWO uses a social-hierarchy system where all wolves follow the position of their alpha, beta and delta wolves, called the leadership group, and simulate a hunting mechanism where groups of wolves separate the prey for the herd and one wolf attacks it. Figure 4: Heuristic Inertial Metric: (**a**) General representation of Quality Metric; (**b**) Inertial Quality Metric projected into \(YZ\) plane. Setting parameters for MO algorithms are discussed in some researches [43; 44; 45; 46]. The size of the population and the number of generations/iterations are set to 100 and 20 runs for all the test functions. In the NSGA-II algorithm, the selection percentage is set to 50% and the mutation percentage is set to 1%. For the MOPSO algorithm, \(c_{1}=c_{2}=2\) and the inertia weight \(w\) decreases from \(w_{max}=0.9\) to \(w_{min}=0.4\). Lastly, for both MOPSO and MOGWO algorithms, \(r_{1}\) and \(r_{2}\) are random values between 0 and 1. We need to evaluate the performance of each algorithm in order to select the best one for grasp planning. For this, we focused on three criteria: Generational Distance (GD), Spacing (SP) and computational time. GD establishes how close it is or how much convergence exists between the solution set output for a specific problem with respect to the theoretical solution or the theoretical Pareto front. This indicator is dimensionless and it indicates that the optimization algorithm has a better convergence if this indicator is closer to zero. Therefore, GD will help us indicate which of the optimization algorithms could obtain a better set of optimal solutions and then we could use this algorithm in our grasp planner, where we do not known the theoretical optimal solution. Also, SP is a dimensionless indicator which shows how much spread or distribution exists throughout the solution set, calculating the distance between each solution and its other closest solution. One or several solutions can be far from each other, increasing the value of SP, i.e., worsening the distribution and creating subsets of solutions; then SP is better if it is closer to 0. This indicator is chosen because it will allow our planner to obtain more than one position for the robot in case one is not reachable.