Grasp that optimises objectives along post-grasp trajectories To be appeared in the Proceeding of ICRoM 2017 1 st Amir M. Ghalamzan E. School of Metallurgy and Materials University of Birmingham Birmingham, United Kingdom a.ghalamzanesfahani@bham.ac.uk 2 nd Nikos Mavrakis School of Metallurgy and Materials University of Birmingham Birmingham, United Kingdom nxm504@bham.ac.uk 3 rd Rustam Stolkin School of Metallurgy and Materials University of Birmingham Birmingham, United Kingdom R.Stolkin@bham.ac.uk Abstract —In this article, we study the problem of selecting a grasp pose on the surface of an object to be manipulated by considering three post-grasp objectives. These objectives include (i) kinematic manipulation capability [1], [2], (ii) torque effort [3] and (iii) impact force in case of collision [4] during post-grasp manipulative actions. In these works [1]–[4], the main assumption is that a manipulation task, i.e. trajectory of the centre of mass (CoM) of an object is given. In addition, inertial properties of the object to be manipulated is known. For example, a robot needs to pick an object located at point A and place it at point B by moving it along a given path. Therefore, the problem to be solved is to find an initial grasp pose that yields the maximum kinematic manipulation capability, minimum joint effort and effective mass along a given post-grasp trajectories. However, these objectives may conflict in some cases making it impossible to obtain the best values for all of them. We perform a series of experiments to show how different objectives change as the grasping pose on an object alters. The experimental results presented in this paper illustrate that these objectives are conflicting for some desired post-grasp trajectories. This indicates that a detailed multi-objective optimisation is needed for properly addressing this problem in a future work. I. I NTRODUCTION Grasping an object and performing manipulative actions are key distinguishing skills of primates [5] learnt in early stage of skill development. In spite of the research conducted on this topic in different fields, e.g. neuroscience [5], neuropsychol- ogy [6], this complex behaviour is not yet fully understood. Robotic grasping and manipulation have been widely inspired by the studies from other fields [7]. Although a robot is desired to make stable contacts on object surface by its hand/fingers to move the object to another pose, most robotic grasping literature focuses on just computing contact points that make a stable force-closure [8], or form closure grasp [9]. Hence, an obtained grasp pose may not be sufficiently good for manipulative motions after making stable contacts. The reason for this may be (i) computing a set of contact points on an object for a robotic hand using a 2D image or partial/full This project was funded by EU H2020 RoMaNS, 645582, and EPSRC EP/M026477/1. Stolkin was supported by a Royal Society Industry Fellow- ship. Figure 1. Simulation setup with a Baxter robot in Gazebo simulator. The robot is tasked with grasping and then moving the object. This paper is concerned with enabling the robot to choose from several feasible grasps, to obtain some objectives during post-grasp actions. The robot manipulates a cuboid object with dimensions 0 . 5 × 0 . 15 × 0 . 2 [ m 3 ] and mass of 0 . 4 [ kg ] . The coordinate axes of the object’s centroid are shown, where red, green and blue correspond to x , y and z axes, respectively. The inertia tensor of the object is known in advance. 10 different grasps are generated for evaluation. We provide three different Pick-and-Place tasks for the robot to execute, and for each task and grasp, we pre-calculate the effective mass, the joint effort and the manipulability along the task trajectory. We aim to investigate the performance of each grasping point according to the calculated metrics. point cloud is yet an open challenging research question [10]– [12] and (ii) planning the post-grasp trajectory [13], [14] is a complex problem. Hence, they are often tackled in isolation. Nevertheless, this two complex problems must be jointly solved [15] because they have dependent solutions, For example, to pick and object shown in Fig. 1 and to place it at the desired pose, the robot may grasp the object such that the torque effort/energy during manipulative actions becomes minimum. The lesson we learnt from our previous works [1]–[4] suggest that post-grasp objectives can be efficiently optimised during reaching an object to grasp it. The main assumption in these works is that the trajectory of the centre of mass (CoM) of the object to be manipulated is given. These objectives can be used to prune a set of possible grasp pose candidates. These arXiv:1712.04295v1 [cs.RO] 12 Dec 2017 objectives, however, are task relevant (application example), i.e. one objective may become more important for an appli- cation example. For example, Ghalamzan et al. [1] proposed a kinematic velocity manipulability (TOV) and showed this criterion can be maximised by a suitable selection of grasp. TOV is integral of velocity manipulability along the desired manipulation trajectory. The grasp pose selected according to TOV has been shown to yield minimum joint velocities and consequently implicitly avoiding singularities along a post- grasp trajectory of object’s CoM. Moreover, this metric is used in [2] to assist human teleoperating a manipulator for grasping an object. On the other hand, Mavrakis et al. [3], [4] studied the effect of grasp pose selection on torque effort and impact force along a post-grasp trajectory. The ideas on “task-informed grasp selection” [1]–[4] poses this question that “ may the objectives, which are proposed for task-informed grasp selection, conflict?” The answer to this question depends on the desired manipulative task and application example. For instance, in surgical robotics [16], minimising torque effort (energy consumption of the robot) may not be as important as minimising cognitive workload of the surgeon operator; hence, maximising task oriented kine- matic manipulability becomes the main objectives for task- informed grasp selection [2]. However, the objectives of task- informed grasp selection may conflict in many applications where they are all desired to be optimal. In this paper, we study how the values of the objectives of task oriented grasp selection changes with a different selection of grasp poses. Our experimental results suggest a multi- objective optimisation is needed for optimally selecting a grasp pose in a future work. The remainder of this paper is as follows. First, in Sec- tion II problem formulation including our main assumption is presented. Next, the objectives of task-informed grasp selection are presented in Section III. Finally, experimental results in Section IV demonstrate that these objectives conflict showing that multi-objective optimisation is needed for better understanding optimal grasp selection. II. O PERATIONAL SPACE TRAJECTORY OF A TASK By operational point we refer to point F g ∈ SE (3) , attached to the end-effector, which will come into contact with the grasped object, once a successful grasp is achieved. SE (3) denotes the group of 3D poses (3D position and 3D orientation). Operational space trajectory ζ g refers to a vector of successive poses, of a frame attached to this point, defining a desired trajectory for the object. Let us denote a world reference frame { O r , x r , y r , z r } by F g . A trajectory to be followed by the manipulated object implies that local frame F o , attached to the CoM of the object, follows a sequence of poses: ζ c = F o ( t ) 0 ≤ t ≤ T (1) where t denotes a particular time during the motion, and T is the total time that the robot needs to complete the desired x 1 ( t 1 ) z 1 ( t 1 ) y 1 ( t 1 ) x c ( t 1 ) y c ( t 1 ) z c ( t 1 ) x c ( t N ) y c ( t N ) z c ( t N ) F g y r z r x 1 ( t N ) z 1 ( t N ) y 1 ( t N ) Figure 2. An object in the global coordinate frame F r = { O r , x r , y r , z r } , shown in black. A local coordinate frame F o = { O c , x c y c , z c } is attached to the center of mass of the object, shown in red color. This frame follows a tra- jectory c ζ during manipulation. F o ( t 1 ) = { O c ( t 1 ) , x c ( t 1 ) , y c ( t 1 ) , z c ( t 1 ) } and F o ( t N ) = { O c ( t N ) , x c ( t N ) , y c ( t N ) , z c ( t N ) } denote this frame at the initial and terminal point of the manipulation trajectory with the corresponding frame of grasp candidate F g ( t 1 ) = { O g ( t 1 ) , x g ( t 1 ) , y g ( t 1 ) , z g ( t 1 ) } and F g ( t N ) = { O g ( t N ) , x g ( t N ) , y g ( t N ) , z g ( t N ) } shown with blue colour. manipulation task 1 . F o ( t ) determines a complete pose of the grasped object at time t . Although there are a variety of different possible representations of orientation, for the sake of simplicity here we use the conventional transformation matrix. Let us consider a local frame F o = { O c , x c , y c , z c } . This frame can be described by a transformation matrix 2 from the global reference frame { O r , r x, y r , z r } into the local frame { O c , x c , y c , z c } : r T o ( t ) = [ r R o ( t ) r t o ( t ) 0 1 × 3 1 ] 4 × 4 . (2) Hence, r x o = { r t o , r R o } ∈ SE (3) . Note that here we assume grasping and manipulation of rigid objects. Let us denote a local frame attached to the robot end-effector, which we refer to as the “operational point”, by F g = { O g , x g , y g , z g } which corresponds to the robotic arm configuration. Because the ob- ject is non-deformable, any candidate robot wrist pose can be expressed by a fixed transformation matrix o T g = { o t g , o R g } from F o into F g (Fig. 2): r R g ( t ) = r R o ( t ) o R g r t g ( t ) = r t o ( t ) + r R o ( t ) o t g . (3) For the sake of the simplicity of presentation, we choose to represent the orientation component of F g with a quaternion parametrisation; hence, the trajectory of the end-effector is represented by r x g = { r t g , r q g } ∈ SE (3) where q g ∈ SO (3) represents the unit-quaternion associated to the rotation matrix r R g . 1 Throughout this paper, Y ( t ) denotes a continuous function of time, where Y i is a corresponding value of Y ( t ) at time t i ∀ i = 1 , ..., n , where t 1 = 0 , t n = T and 0 ≤ t i ≤ T denotes discrete sampling time. We also use Y t as a shorthand of Y ( t ) where necessary. ∗ ζ ( t ) and ∗ ζ ( t ) are continuous and discrete trajectory of poses of a frame attached to point ∗ of object in Figs. 2. 2 In general, ( .. ) ( . ) X ∈ R 4 × 4 denotes a transformation matrix from local frame ( . ) into local frame ( .. ) . −1 −0.5 0 0.5 0 0.5 1 1.5 2 x 1 [m] x 2 [m] (a) 0 20 40 60 80 100 10 −3 10 −2 10 −1 10 0 10 1 # sample Joint velocity TOV (b) Figure 3. A 2-D manipulator follows a semi-circle from right to left shown with dashed blue line: (a) The manipulability ellipsoids are depicted at several configurations. Red and green arrows represent the ellipsoid major/minor axes. The proposed task oriented velocity manipulability measure (black arrow) is obtained by evaluating the radius of the manipulability ellipsoid along the desired end-effector path. The corresponding TOV value and joint velocities are shown in (b) against the samples’ number of trajectory. III. P OST GRASP OBJECTIVES The problem of planning both grasps and subsequent ma- nipulative actions have typically been studied in isolation. For example, o x g = { o t g , o q g } ⊂ X g is a set of wrist poses of the manipulator in eq. (3), which allow stable contacts of robots hand on object surface. Such poses can be computed by a variety of well known grasp planning algorithms (e.g. [8]–[12], or other grasp-planners as the user prefers). The current state- of-the-art grasp planners, typically generate a set of various possible stable grasp configurations. In [10], [11] these are based on learned relationships, between features of the object’s surface geometry and appropriate configurations of various parts of the robot hand. Alternatively, a set of potential stable grasps can be computed using grasp simulation software [12], force-closure analysis [8], or form closure [9]. However, joint reasoning is essential to enable robots to both make a stable grasp and complete real manipulative tasks. In this paper, the two problems are considered jointly and a solution that takes both into consideration is proposed. Manipulative actions after making stable contacts may provide challenging research questions in different contexts. For instance, safety becomes very critical in the context of human-robot interaction. In this paper we consider three different criteria including (i) manipulation capability (in section III-A), (ii) torque energy (in section III-A) and (iii) impact force in the case of collision of robot hand with an object (in section III-A) while perform- ing post-grasp actions. We show that these objective values are functions of both a selected grasp pose and a post-grasp trajectory. A. Task Oriented Kinematic Velocity Manipulability (TOV) Ghalamzan et al. [1] introduced a task-relevant velocity manipulability cost function (TOV) to address the problem of jointly planning both grasps and subsequent manipulative actions. Later, this cost function is used in a mixed initiative, shared control for master-slave grasping and manipulation [2]. The novel system proposed in this work gives informative force cues to a human operator and assists her/him to grasp an object (making stable contacts between robot’s hand and object surface) such that the TOV is maximum during manip- ulative actions. It is shown that maximising TOV results in significantly reduced joint velocities. Let θ ∈ R 6 be the joint vector of the considered manipulator arm, and u = [ v g ω g ] = J ( θ ) ̇ θ (4) be the geometric Jacobian relating joint velocities to the end- effector linear/angular velocities u = ( v g , ω g ) ∈ R 6 in the end-effector frame F g (for ease of notation, we drop the superscript g for the quantities in (4)). Kinematic velocity manipulability ellipsoid is defined by u T ( J J T ) − 1 u = 1 (5) that represents the capability of the robot manipulator in generating task space velocities for a given norm of joint velocities (thus, representing some sort of dexterity of the robot arm). In this work we are interested in maximising (in an integral sense) a particular task-oriented manipulability measure derived from (5): the radius of the manipulability ellipsoid along the tangent vector to the desired path in task space. This is meant to ease as much as possible the execution of the desired trajectory (3) by the manipulator arm with the smallest possible control effort (norm of the joint velocities). We consider θ ( t ) being the trajectory in joint space associ- ated to the end-effector trajectory and generated by the robot inverse kinematics (3) where u ( t ) is the corresponding lin- ear/angular end-effector velocity at each time. We decompose u ( t ) as u ( t ) = a ( t ) ̄ u ( t ) , with a ( t ) representing the norm of u ( t ) and ̄ u ( t ) its (unit-norm) direction. From (5) it follows that, along the planned path, a 2 ( t ) ̄ u T ( t )( J ( θ ( t )) J T ( θ ( t ))) − 1 ̄ u ( t ) = 1 . (6) It is easy to verify that the quantity a ( t ) solution of (6) represents the length of the ellipsoid radius along the direction ̄ u ( t ) , see also the illustrative example in Figs. 3. Our aim is to maximise the quantity a ( t ) along the whole path as defined in the following integral cost function: H TOV ( r x g ) = ∫ ζ o a 2 ( r x g , s )d s = ∫ ζ o 1 ̄ u T ( J ( θ ) J T ( θ ) − 1 ) ̄ u d s, (7) where 0 ≤ s ≤ 1 , s is a parametrisation of the path, s = 0 indicates t = 0 , s = 1 shows t = t f and t f is the time to completion. From eq. (3), it can be confirmed that u = u ( r x g , s ) , θ = θ ( r x g , s ) . In [2], H TOV is called Task-oriented velocity manipulability (TOV). B. Manipulator dynamics under load In this section, we assume that the dynamic model of the robot is known to us, and we have the corresponding governing equation of motion of the manipulator in the joint space, as per Eq. (8). Here, we are interested in computing the total energy consumption of the robot when executing the desired post-grasp trajectory. Hence, we need to obtain“augmented” equation of motion, i.e. a combined equation of motion for both the robot and its grasped object, in the robot’s joint space. The joint space dynamic model of an n -degree-of-freedom (DOF) manipulator is defined by: M ( θ ) ̈ θ + C ( ̇ θ , θ ) + N ( θ ) = τ (8) where θ and τ ∈ R n are the vectors of joint positions and joint torques, respectively, and M ( θ ) is the manipulator inertia matrix. Again, it can be confirmed that θ = θ ( r x g , s ) and τ = τ ( r x g , s ) from eq. (3). C ij ( ̇ θ , θ ) = 1 2 n ∑ k =1 ( ∂ M ij ∂ θ k + ∂ M ik ∂ θ j − ∂ M kj ∂ θ i ) ̇ θ k (9) represent the Coriolis and centrifugal force terms. N ( θ , ̇ θ ) = ∂V ∂ θ (10) defines a gravitational force term, where V ( θ ) is potential energy due to gravity. The dynamics of the robot in operational space are represented using the operational coordinate x as follows: M ( θ ) ̈ x ( t ) + C ( ̇ θ , θ ) ̇ x ( t ) + N ( θ ) = F ( t ) (11) where: M = J − T ( θ ) M ( θ ) J − 1 ( θ ) , F = J − T ( θ ) τ , N ( θ , ̇ θ ) , C ( ̇ θ ) are the corresponding grav- itational and Coriolis terms in operational space, and J ( θ ) is the robot’s Jacobian. Now, augmented dynamic model of manipulator and object to be manipulated can be computed using the generalised inertia matrix of an object M g . M o = ( mI 3 x 3 0 0 I CoM ) where m and I CoM denote the object’s mass and inertia tensor w.r.t. the CoM. This inertia tensor can be expressed in F g as follows: g M o = E − T ( x g ) M o E − 1 ( x g ) (12) where E ( x g ) is the matrix transforming the linear and angular velocities of the object’s CoM to generalised velocities in the frame attached to the end-effector. Accordingly, we represent the grasped object’s dynamics in the joint space: M tot ( θ ) = M arm ( θ ) + M o (13) where M o = [ J T ( θ ) M o ( x g ) J ( θ ) ] is the grasped object’s inertia tensor representation in the joint space. 1) Manipulation energy consumption: We use M tot in eq. (8), (9) and (10) to compute the corresponding torque of augmented model of object and manipulator as per eq. (8). Eventually, the energy consumption of the robot to manipulate the object along path ζ o is H TME ( r x g ) = ∫ ζ o τ 2 d s (14) 2) Effective mass definition: While one can compute the force at every point of interest of the manipulator by writing the corresponding operational space equation, we can analyse the kinetic energy matrix M ( θ ) and compute the impact force during a collision without needing to solve the second order differential equation in Eq. (11). It has been shown that a manipulator is perceived according to its effective mass during a collision (Eq. (15)), denoted by m e . In analogy, we define the effective mass of the total system as m e ( r x g , s ) = 1 ̄ u T M − 1 tot ( x ) ̄ u (15) where M tot = g M o + M expressed in the operational space and H TEM ( r x g ) = ∫ ζ o m e d s (16) Ideally, a high value of H TOV and small values of H TEM and H TME are desired. In a manipulation task, we would like to have minimum values of H TEM , H TME and 1 H TOV . Although a native approach to minimise all can be achieved by an affine combination of all objectives, we will show that this approach is not sophisticated and the solution must be obtained through a multi objective optimisation approach. IV. E XPERIMENTAL RESULTS To validate our hypothesis, i.e. performing a multi-objective optimisation is needed for selecting the best grasping pose, we conduct a series of experiments with a Baxter robot manipulating an object with a given task using the Gazebo simulator. The set-up is shown in Fig. 1. The task is to pick a cuboid object and place it at different poses. The object has dimensions 0 . 5 × 0 . 15 × 0 . 2 [ m 3 ] and uniform mass distribution with a mass value of 0 . 4 [ kg ] . We consider 10 different grasping poses on the object surface. The contact locations of the grasping poses are uniformly distributed on (a) (b) (c) Figure 4. In the first task, the Baxter is desired to pick up the object (blue cuboid), which is located on the table, move it − 20 [ cm ] in line with y axis and 10 [ cm ] in line with x axis and place it on the table. The x and y axes are shown with red and green arrows in Fig. 1. All the 10 grasping poses are equally distributed on the top edge of the cuboid. Three example grasps on the object are shown where (a), (b) and (c) show the first, fifth and tenth grasping pose. 10 20 30 40 50 Trajectory waypoint 1 2 3 4 5 6 7 8 9 10 Grasp index 1 1.5 2 2.5 3 3.5 4 4.5 Effective mass (kg) Figure 5. Heat map of the computed effective mass for the third task. The horizontal axis represents the waypoints along the task trajectory and the vertical axis shows the grasp poses considered on the top edge of the object. This figure shows that the metric value of effective mass correlates with the waypoint of the pick-and-place trajectory and the selected grasp pose. the top edge of the cuboid. Three of the generated grasp poses are shown in Fig. 4. The first grasp is located at − 0 . 22 [ cm ] and the last one is at 0 . 22 [ cm ] along the y-axis. The Baxter approaches the contact points of each grasping pose on the top edge of the object from predefined approach points located 15 [ cm ] above each grasping pose. The robot is tasked with performing three Pick-and-Place: the robot lifts up the object 10 [ cm ] from its initial position along the z axis, 1) translates it in a combined motion − 20 [ cm ] along the y axis and 10 [ cm ] along the x axis and finally puts it down − 10 [ cm ] along the z axis; 2) translates − 0 . 35 [ cm ] along the y axis and finally puts it down on the table; 3) translates − 35[ cm ] along the y axis and − 10[ cm ] along the x axis and finally places it on the table. For the sake of comparison, we only present the results of pure translations. By using the Baxter PyKDL library, we compute the Ja- cobian and the dynamic model for each point of a trajectory allowing us to compute the metrics as per eq. (7), (14), (16). An example of the effective mass for every initial grasping pose versus sample points of the third task trajectory is presented in Fig. 5. We computed the integrals presented in eq. (6), (14) and (16) for every tasks. For the sake of visualization, the metrics values of 1 H TOV , H TEM and H TME are normalised against their corresponding maximum values; that is, H TOV = H TOV max ( H TOV ) , H TEM = H TEM max ( H TEM ) , H TME = H TME max ( H TME ) . Theses normalised metrics are shown in Fig. 6(a), 6(b) and 6(c) for the first, second and third task. A characteristic example is the first task (Fig. 6(a)), where we can see that the grasp No. 1 is the optimal yielding minimum effective mass, minimum joint effort and maximum manipulability. Furthermore, Fig. 6(a) shows the manipula- bility, effort and effective mass significantly changes with the choice of grasp poses. This enables us to use our methodology in choosing the grasp that is safe, yields the least effort and provides large manipulability for executing the task. In contrast, the results yielded for the second task (Fig. 6(b)) shows that the objectives do not agree on the optimal grasping pose(Fig. 6), i.e. while the effective mass and joint effort are implying that grasp number 1 is optimal, TOV manipulability suggests that grasp number 6 is optimal. Likewise, the indexes obtained for the task number 3 (Fig. 6(c)) shows they conflict, i.e. grasping pose number 2 yields minimum joint effort, whereas grasping pose number 1 is the best in terms of both TOV manipulability and effective mass. These results illustrate that the grasping pose selection for predefined manipulative actions is a complex multi-objective optimisation problem. Although one may consider an affine combination of these objectives for grasp selection, a more clever approach of multi-objective optimisation for grasp se- lection is needed which would be an interesting future work. V. C ONCLUSION Primates are capable of grasping and manipulating objects very efficiently by taking different objectives into considera- tion, e.g affordance of the object, maximum reachability and minimum wrist effort. In this paper, we presented an argument 1 2 3 4 5 6 7 8 9 10 Grasp index 0 0.2 0.4 0.6 0.8 1 Normalised value Effective mass Manipulability Joint effort (a) 1 2 3 4 5 6 7 8 9 10 Grasp index 0 0.2 0.4 0.6 0.8 1 Normalised value Effective mass Manipulability Joint effort (b) 1 2 3 4 5 6 7 8 9 10 Grasp index 0 0.2 0.4 0.6 0.8 1 Normalised value Effective mass Manipulability Joint effort (c) Figure 6. The final scalar metric values (namely TOV shown with green line, joint effort shown with blue line and effective mass shown with red line) for task 1 (top) 2 (middle) and 3 (bottom). The L2 norm of a metric along post-grasp trajectory yields a scalar value for each grasp pose. These values represent the quality of the grasp and are directly related to the task to be executed. As a result, the robot can choose a grasp that has low effective mass, low effort and higher manipulability. For instance, grasp number 1 in the first task, top figure,has maximum manipulability and minimum effective mass and effort. in favour of studying the problem of grasping pose selection as a multi-objective optimisation. In specific, we considered three cost functions of a given post-grasp trajectory presented in previous works [1]–[4] that have been used for selecting a grasp pose for a manipulator. These cost functions include (i) kinematic velocity manipulability (TOV) (ii) torque effort (the energy robot consumes to perform the manipulative actions) and (iii) impact force in the case the end effector of the manipulator collides with an obstacle. We presented a series of experiments. The results demonstrate how a manipulator can use the knowledge of post grasp actions and desired objectives for more intelligently grasping the object. Moreover, the results illustrate that the desired objectives (cost functions) conflict in some examples while they do not conflict each other in the first experiment. Our study suggests that a multi- objective optimisation must be used to better understand the problem of grasp selection according to the proposed objectives. R EFERENCES [1] Amir M. Ghalamzan E., N. Mavrakis, M. Kopicki, R. Stolkin, and A. Leonardis, “Task-relevant grasp selection: A joint solution to planning grasps and manipulative motion trajectories,” in IEEE/RSJ International Conference on Intelligent Robots and Systems , pp. 907–914, 2016. [2] Amir M. Ghalamzan E., F. Abi-Faraj, P. R. Giordano, and R. Stolkin, “Human-in-the-loop optimisation: mixed initiative grasping for opti- mally facilitating post-grasp manipulative actions,” in IEEE/RSJ Interna- tional Conference on Intelligent Robots and Systems , p. To be appeared in the proceeding of IROS 2017, 2017. [3] N. Mavrakis, A. M. G. E., R. Stolkin, L. Baronti, M. Kopicki, and M. Castellani, “Analysis of the inertia and dynamics of grasped objects, for choosing optimal grasps to enable torque-efficient post-grasp ma- nipulations,” in IEEE-RAS 16th International Conference on Humanoid Robots (Humanoids) , pp. 171–178, 2016. [4] N. Mavrakis, Amir M. Ghalamzan E., and R. Stolkin, “Safe robotic grasping: Minimum impact-force grasp selection,” in IEEE/RSJ Interna- tional Conference on Intelligent Robots and Systems , p. To be appeared in the proceeding of IROS 2017, 2017. [5] M. Jeannerod, M. A. Arbib, G. Rizzolatti, and H. Sakata, “Grasping objects: the cortical mechanisms of visuomotor transformation,” Trends in neurosciences , vol. 18, no. 7, pp. 314–320, 1995. [6] M. Iacoboni, I. Molnar-Szakacs, V. Gallese, G. Buccino, J. C. Mazziotta, and G. Rizzolatti, “Grasping the intentions of others with one’s own mirror neuron system,” PLoS biology , vol. 3, no. 3, p. e79, 2005. [7] M. Lopes, F. S. Melo, and L. Montesano, “Affordance-based imitation learning in robots,” in IEEE/RSJ International Conference on Intelligent Robots and Systems , pp. 1015–1021, IEEE, 2007. [8] C. Ferrari and J. Canny, “Planning optimal grasps,” in Proceedings of the IEEE/RSJ International Conference on Robotics and Automation (ICRA) , pp. 2290–2295, 1992. [9] D. Ding, Y.-H. Lee, and S. Wang, “Computation of 3-d form-closure grasps,” IEEE Transactions on Robotics and Automation , vol. 17, no. 4, pp. 515–522, 2001. [10] M. Kopicki, R. Detry, M. Adjigble, R. Stolkin, A. Leonardis, and J. Wyatt, “One-shot learning and generation of dexterous grasps for novel objects,” International Journal of Robotics Research , vol. 35, no. 8, pp. 959–976, 2016. [11] A. Saxena, J. Driemeyer, and A. Y. Ng, “Robotic grasping of novel objects using vision,” The International Journal of Robotics Research , vol. 27, no. 2, pp. 157–173, 2008. [12] A. T. Miller and P. K. Allen, “Graspit! a versatile simulator for robotic grasping,” IEEE Robotics & Automation Magazine , vol. 11, no. 4, pp. 110–122, 2004. [13] T. Osa, A. M. Ghalamzan E., R. Stolkin, R. Lioutikov, J. Peters, and G. Neumann, “Guiding trajectory optimization by demonstrated distributions,” IEEE Robotics and Automation Letters , vol. 2, no. 2, pp. 819–826, 2017. [14] N. Ratliff, M. Zucker, J. A. Bagnell, and S. Srinivasa, “Chomp: Gradient optimization techniques for efficient motion planning,” in IEEE Inter- national Conference on Robotics and Automation (ICRA) , pp. 489–494, 2009. [15] F. Charaghpuor, S. Moosavian, and A. Nahvi, “Multi-aspect grasp index for robotic arms,” Scientia Iranica , vol. 18, no. 2 B, pp. 222–230, 2011. [16] P. Wilkening, F. Alambeigi, R. J. Murphy, R. H. Taylor, and M. Armand, “Development and experimental evaluation of concurrent control of a robotic arm and continuum manipulator for osteolytic lesion treatment,” IEEE Robotics and Automation Letters , vol. 2, no. 3, pp. 1625–1631, 2017.