Remote control of various robots has been one of the main challenges in the robotics, while it is commonly used for cases where it is difficult or dangerous for a human to perform tasks [1, 2]. In this remote control scenario, a robot has to follow the task command accurately while considering its surrounding environment and constraints of the robot itself.
In the case of a redundant manipulator that this paper focuses on, a sequence of finely-specified joint configurations is required to follow the end-effector path in a Cartesian space accurately. Traditionally, inverse kinematics (IK) has been used to determine joint configurations given an end-effector pose. The traditional IK, however, cannot consider the continuity of configurations, collision avoidance, and kinematic singularities that arise when considering to follow the end-effector path.
solve this problem using non-linear optimization by considering these constraints. While these approaches also avoid self-collisions using a neural network, they do not deal with collisions for external obstacles.
Main Contributions. In this work, we present a trajectory optimization of a redundant manipulator (TORM) for synthesizing a trajectory that is accurately following a given path as well as smooth and collision-free against the robot itself and external obstacles (Fig. 1). Our method is based on the two-stage gradient descent, inspired by CHOMP , and incorporates the aforementioned properties into our trajectory optimization process. Based on the gradients of the objective functions, we iteratively update a trajectory through a two-stage update manner, making a feasible trajectory while accurately following the given end-effector path (Sec. III-B). Since this optimization process is based on local updates, it can be stuck in local minima. To avoid local minima, we adopt the quantum annealing, an effective randomized technique, into our method for progressively identifying better trajectories (Sec. III-D).
To see the benefits of each component of our method, we test our method with its ablated methods on two different scenarios containing external obstacles (Sec. IV-A). To compare ours with the state-of-the-art methods, RelaxedIK  and Stampede , we test three different scenarios that do not have any obstacles (Sec. IV-B). Overall, we are able to observe that our method robustly minimize the pose error reasonably fast in both obstacle and non-obstacle environments. The synthesized results of tested problems and real robot verifications can be seen in the attached video.
Ii Related Work
In this section, we discuss prior studies in the fields of inverse kinematics and optimization-based motion planning.
Ii-a Inverse Kinematics
Inverse kinematics (IK) has been studied widely to find a joint configuration from an end-effector pose . In the case of a redundant manipulator, where our target robots belong to, there can be various joint configurations from a single end-effector pose. For this problem, several techniques for quickly finding solutions have been proposed [7, 8]. In particular, task-priority IK algorithms [9, 10, 11] prioritize solutions based on an objective function for each purpose.
Most methods that synthesize a trajectory geometrically constrained for an end-effector pose are based on the Jacobian matrix instead of IK for finding a feasible solution among various solution candidates [12, 13, 14, 15]
. Unfortunately, the Jacobian matrix is the first derivative of the vector-valued function with multiple variables and thus it can cause false-negative failures by getting stuck in local minima or convergence failures due to the limits of the joint angle.
Trac-IK  points out the problem and improves success rates by using randomly selected joint configurations and sequential quadratic programming. Nonetheless, its solutions do not guarantee continuity of a sequence of joint configurations to make a feasible trajectory . In summary, the traditional IK approaches have different strengths and weaknesses for synthesizing a feasible trajectory along a given end-effector path.
To get alleviated solutions, many studies present optimization techniques with objective functions for synthesizing a feasible trajectory with matching end-effector poses. Luo and Hauser  use a geometric and temporal optimization to generate a dynamically-feasible trajectory from a sketch input. Recently, Rakita et al.  proposed a real-time approach using a weighted-sum non-linear optimization, called RelaxedIK, to solve the IK problem for a sequence of motion inputs. Since the collision checking has a relatively large computational overhead, RelaxedIK uses a neural network for fast self-collision avoidance.
Based on RelaxedIK, two studies [4, 18] are proposed for synthesizing a highly-accurate trajectory on off-line. One of them is Stampede , which finds an optimal trajectory using a dynamic programming algorithm in a discrete-space-graph that is built by samples of IK solutions. The other work  generates multiple candidate trajectories from multiple starting configurations and then selects the best trajectory with a user guide by allowing a deviation if there are risks of self-collisions or kinematic singularities .
Our method also seeks to find a highly-accurate solution for the redundant manipulators while avoiding self-collisions. On top of that, we additionally consider collision avoidance against external obstacles. To synthesize an accurate and feasible trajectory without any collisions against a robot itself as well as obstacles, we propose a trajectory optimization of a redundant manipulator (TORM) that extends the CHOMP , one of the most prominent optimization-based motion planning approaches for our problem using a redundant manipulator.
Ii-B Optimization-based Motion Planning
The optimization-based motion planning approach quickly finds a collision-free trajectory by incorporating an efficient collision avoidance method into optimization techniques. Some of well-known techniques include covariant gradient algorithm (CHOMP) , stochastic optimization without gradient information (STOMP) , and sequential convex optimization (Trajopt) . Thanks to high-quality trajectory, these techniques have been extended to different directions (e.g., constrained motion planning) [21, 22, 23].
Our method is based on CHOMP, but we extend it by adding an additional objective term to consider a given end-effector path. The main difference over the original CHOMP is that CHOMP basically finds a collision-free trajectory from start to goal configurations, but our task is to synthesize a feasible and accurate trajectory that follows a given end-effector path. Also, CHOMP based on gradient descent is a local optimization, and thus it can yield a sub-optimal trajectory. Accordingly, the search space of our problem has many local minima by considering various objective terms. In this work, we adopt quantum annealing , a randomized technique, to avoid local minima.
Iii Trajectory optimization
Our goal is to find a trajectory, , of a redundant manipulator for a given end-effector path, . The trajectory is a sequence of joint configurations, and the end-effector path, , is defined in the 6-dimensional Cartesian space.
We solve the problem by a waypoint parameterization  of the path that finely splits the given end-effector path, ; is an end-effector pose. We then compute the joint configurations for end-effector poses . As a result, the trajectory is approximated as: , where
is the degree of freedom (DoF) of a manipulator;is a start configuration and is a goal configuration for the computed trajectory of joint configurations. Main notations are summarized in Table I.
Our target robot is a redundant manipulator that has multiple joint configurations given an end-effector pose; if , it has infinitely many valid solutions. Among many candidates, we find appropriate joint configurations to generate a trajectory that is smooth and accurate as well as collision-free for the given end-effector path (Fig. 2).
To achieve our goal, we present a trajectory optimization of a redundant manipulator (TORM) by adapting an optimization-based motion planning approach, specifically, CHOMP , for finding a collision-free trajectory from the start to the goal configurations. Since CHOMP not only quickly optimizes a trajectory using gradient descent, but also efficiently avoids collisions by incorporating objective functions, we thus choose CHOMP as a base trajectory optimization method of our approach.
In the following section, we explain how to optimize an objective function and how to avoid getting stuck in local minima or violating constraints. To do so, we first define our own objective function, which has a new path following objective (Sec. III-A). We then update the objectives based on our two-stage gradient descent (Sec. III-B), followed by the quantum annealing that starts with our initial trajectory (Sec. III-D).
|Target end-effector poses that are approximated from|
|the given end-effector path|
|Joint configuration on the trajectory|
|at -th end-effector poses|
|Jacobian matrix, i.e.,|
|Set of body points in the workspace approximating|
|the geometric shape of the manipulator|
|Partial forward kinematics from the manipulator base to|
|a body point at a configuration|
Iii-a Objective Function
We solve our problem by modeling an objective function with three different properties that are 1) matching the end-effector pose, 2) smoothness, and 3) avoiding collisions:
where is a regularization constant. is introduced to minimize the pose error between the target and current end-effector poses, and is defined using the Euclidean distance:
where computes the end-effector pose at the joint configurations using forward kinematics (FK).
For both smooth term and obstacle term , we follow the definitions presented in CHOMP. measures dynamical quantities, i.e., the squared sum of derivatives to guarantee the smoothness:
quantitatively measures a proximity to obstacles for avoiding collisions:
where is partial forward kinematics, i.e., a position of a body point in the workspace at a configuration , and is an obstacle cost computed from a signed distance field that can be calculated analytically from a geometry of workspace obstacles (see the details in ). At a high level, it approximately measures the sum of penetration depths between the robot body and the obstacles.
Iii-B Two-Stage Gradient Descent Update
We iteratively update the trajectory to minimize the cost of objective functions with three different properties. To minimize the cost, our update rule is based on the gradient descent technique adopted in many optimization methods. The functional gradient of the obstacle term, , pushes the robot out of obstacles, and the functional gradient of the smooth term, , keeps the continuity between joint configurations.
Both and are responsible for synthesizing a feasible trajectory, whereas the functional gradient of the pose term, , is responsible for matching the end-effector poses . Even though we can update the trajectory by considering the three functional gradients simultaneously, we found that it can lead to conflicts between each functional gradient.
To alleviate this problem, we present a two-stage gradient descent (TSGD) that consists of updating to make a feasible trajectory and updating the trajectory to match closer to
. The TSGD is repeated in which each odd iteration updates the trajectory usingand , and in which even iteration updates the trajectory using :
where is a learning rate, and is from an equally transformed representation of the smooth term, ; acts to retain smoothness and to accelerate the optimization by having a small amount of impact on the overall trajectory . Since and have a correlation between consecutive joint configurations, it is effective for updating the trajectory with covariant gradient descent using . On the other hand, does not consider consecutive joint configurations, thus we do not use .
Our problem is to avoid collisions and to follow the given end-effector path in the Cartesian workspace, while we have to solve the problem through a sequential movement of the joint configurations in the configuration space (C-space). Although and are computed in workspace using FK, and should be defined in C-space for calculating the change of joint configurations.
Since of Eq. 2 can be represented as , we can derive the functional gradient of the pose term, , by the following:
where is the Jacobian matrix. Note that the Jacobian-based approach can lead to false-negative failures as explained in Sec. II-A. We, however, found that our TSGD method ameliorates the problem in practice, thanks to its exploratory manner that iteratively switches functional gradients.
can be derived as the following :
where is equal to , to , is the normalized velocity vector, and is the curvature vector (see the details in ). Since is already represented in C-space, is represented simply as .
Once a start configuration is given, we iteratively update from its next configuration, , to the goal configuration , based on our TSGD. In our problem, however, the start configuration may not be given, while an end-effector pose is given.
Iii-C Finding an Initial Trajectory
We can optimize a trajectory based on our update rule, but it is not straightforward to get an initial trajectory for our task, because only the end-effector path is given. In this section, we introduce a simple, heuristic method of constructing an initial trajectory in a greedy manner, which is updated in our quantum annealing (Sec.III-D).
Constructing a good initial trajectory faces the main challenge, which we need to consider our objectives, smoothness, avoiding obstacles, and following a given path. Note that there can be multiple or even an infinite number of joint configurations at an end-effector pose. Therefore, simply obtaining joint configurations using IK at each end-effector pose and linearly interpolating, some of them is not a good approach for computing an initial trajectory.
As the first step, we simplify the given end-effector poses into simplified poses, , since the target end-effector path can be represented in a finely tessellated form with many poses, and working with more poses tends to increase the complexity of generating a reasonably initial trajectory. Specifically, we choose the Ramer-Douglas-Peucker algorithm . Starting from the first simplified pose, we find suitable joint configurations at the pose, and we connect one of the configurations with another one in the next pose. For choosing the joint configuration, we greedily select one that minimizes our objective function. Lastly, we connect chosen joint configurations for computing the initial trajectory through linear interpolation.
Iii-D Quantum Annealing
While we got an initial trajectory, there is a high probability that the trajectory is sub-optimal due to the local natures of our update method and initial trajectory construction method. Furthermore, there can be many surrounding local minima in terms of our optimization search space, since we incorporate three different properties of constraints into the objective functions.
To avoid getting stuck in local minima, many prior approaches adopt a kind of global optimization, i.e., simulated annealing  or stochastic methods . In this work, we apply the quantum annealing (QA) that is more effective in getting out of many surrounding local minima, the main characteristics of our problem, than the simulated annealing .
QA is a kind of randomized algorithms, which prepares random parameters utilizing a quantum transition, and performs a local optimization. The quantum transition searches a lower cost by random explorations controlled by a parameter . The parameter controls the intensity of randomness depending on the cost function.
Adopting QA, our algorithm iteratively performs two parts, as shown in Alg. 1; exploring a better trajectory (line 4-7 of Alg. 1) and updating the trajectory (line 3 of Alg. 1). Unlike the original QA, we use a sequential exploring (SE) that gives more weight on the exploration part by repeating the quantum transition times. The SE is chosen for robustly identifying a high-quality solution given our randomized algorithm.
The exploration part uses the quantum transition to find a new trajectory, , and then refines the new trajectory
by two-stage gradient descent. In our case, the quantum transition explores a potentially good solution by estimating randomly constructed trajectories using our objective functions (lineof Alg. 1). The trajectories are computed by connecting random joint configurations obtained at simplified poses using IK.
When the new trajectory taken during the exploration has a lower cost, we use it to the current trajectory (line of Alg. 1). However, if the new trajectory violates the constraints, we do not use it to the current trajectory (Sec. III-E). The update part locally refines the trajectory using the two-stage gradient descent (Sec. III-B). This process continues until satisfying a given condition, e.g., running time or cost.
Iii-E Trajectory Constraints
We synthesize the desired trajectory by finding a low cost through our optimization process that incorporates our objective functions. Although the optimization process finds a low cost solution, it can violate several constraints. For example, a trajectory can have collisions with obstacles or self-collisions, even though the trajectory accurately follows the given end-effector pose. Hence, we check collisions every time we find a better trajectory during the quantum annealing process.
In addition to checking collision, a manipulator commonly has several constraints that are satisfying lower and upper limits of joints, velocity limits, and kinematic singularities for joints. In the case of lower and upper limits of joints, it is traditionally handled by performing projection that resets the violating joints value to its limit value. To retain smoothness, we use a smooth projection used by CHOMP  during the update process. The smooth projection uses the Riemannian metric , which can be written as , where is the vector of joint values, and is a scale constant. This process is repeated until there is no violation.
For other constraints like the velocity limit, we check them together while checking collisions. The velocity limit for joints is checked by computing the velocities of joints between and for a given time interval, . Another constraint is the kinematic singularity that is a point where the robot is unstable, and it can occur when the Jacobian matrix loses full rank. To check kinematic singularities, we use the manipulability measure  used by Relaxed-IK . At a high level, it avoids making the manipulability measure less than a certain value that is computed by random samples. Note that our method returns the lowest cost trajectory guaranteed through checking constraints for constructing a feasible trajectory.
Iv Experiments and Analysis
We use the Fetch robot, whose manipulator arm has 7-DoF for various tests. We report the average performance by performing tests with a machine that has 3.4 GHz Intel i7-6700 CPU and 16 GB RAM. Also, we set = , = , = , and = .
In this setting, the two-stage gradient descent, the quantum transition, and checking constraints of our method take 61%, 37%, and 1% of the overall running time; the two-stage gradient descent is frequently iterated to refine the trajectory, as the main update operation.
|Fixed start||Pose error||AJJ||IST||# of|
|Square||Ours w/o TSGD||2.00e-2||5.19e-3||4.47e-2||0.73||1.81||0|
|tracing||Ours w/o QA||5.96e-2||3.54e-5||9.85e-2||0.72||1.13||4|
|w/||Ours w/o SE||1.23e-4||3.41e-5||1.05e-3||0.67||2.32||0|
|“S”||Ours w/o TSGD||5.95e-3||1.20e-3||4.18e-2||0.35||4.04||0|
|tracing||Ours w/o QA||3.80e-2||1.65e-6||1.18e-1||0.38||1.61||3|
|w/||Ours w/o SE||3.44e-5||1.72e-6||4.45e-4||0.34||3.71||0|
AJJ: Average of joint jerk (). IST: Initial solution time (s).
Iv-a Evaluation w/ Obstacles
We first evaluate our method with obstacles. For this test, we set up two different benchmarks, i.e., the square tracing and “S” tracing problems with obstacles (Fig. 3). For the square tracing, it is necessary to avoid collisions with the table, and we have to consider the blue box on the table additionally in the “S” tracing problem.
We first evaluate whether our method accurately follows the given end-effector path while avoiding obstacles in two obstacle problems (Fig. 3). For this test, we prepare ablated methods by disabling the two-stage gradient descents (TSGD) and thus updating three functional gradients at once. We also test our methods without the quantum annealing (QA) and without the sequential exploring (SE) in QA. Excluding the SE of is set to , and we test our method by setting to . Fig. 4 and Table II show the results in two obstacle problems. Note that these results were extracted from feasible trajectories satisfying the given constraints (Sec. III-E).
The results of both problems show a similar performance trend between tested methods. Excluding the TSGD has a higher pose error on average than our method and also has the highest min. pose error among tests, compared to other methods. These results demonstrate that the different functional gradients compete with each other. Therefore, the TSGD prevents the competition of different functional gradients and is useful to get a highly-accurate solution.
Fig. 4 shows that excluding the QA (blue line) does not reduce the pose error after about or seconds. This is because it was stuck in a local minimum and thus did not find a better solution as we have more planning time. As a result, excluding the QA has the largest difference between the min. and max. pose errors, as shown in Table II.
Table II also shows excluding the SE that has better performance compared to other ablated methods. On the other hand, excluding the SE has a higher difference between the min. and max. pose errors than our method. This result indicates that the SE reduces the randomness by giving more weight on exploring part in QA.
Moreover, our full method has a slightly lower joint jerk on average than other ablated methods. This result supports that our full method efficiently satisfies our objectives.
In conclusion, the results of two problems show that our method with the TSGD, QA, and SE synthesizes highly-accurate trajectories, while effectively getting out of local minima.
AJJ: Average of joint jerk (). IST: Initial solution time (s).
For comparing with RelaxedIK and Stampede, we adapt their own problems into three benchmark problems. Three problems are the square tracing (Fig. 3(a)) without the table, rotating degrees in the direction of pitch and yaw, and writing “icra” used in Stampede (Fig. 5). These problems are set without obstacles, and we thus need only to consider avoiding self-collisions. The end-effector paths of all problems are finely tessellated and are fed into all the tested methods. We used the codes of RelaxedIK and Stampede that are provided by authors through their websites.
Fig. 6 shows how different methods compute a trajectory as we have more time on planning. Overall, RelaxedIK quickly finds a solution, while its accuracy is much lower than other methods; in Fig. 5(a), we can check the pose error of RelaxedIK. On the other hand, Stampede takes a significant amount of time to get an initial solution, while the initial solution is highly-accurate on average.
In terms of the smoothness of the trajectory, Stampede and our method have a higher joint jerk on average than RelaxedIK as shown in Table III. Its reason is that as the accuracy increases, the smoothness tends to decrease .
Overall, our method finds an initial solution quite quickly with a high pose error but is improving its quality as we have more planning time. These results support that our method can be used for anytime planning. Furthermore, Table III shows that our method has a lower pose error on average than other methods.
On the other hand, the max. pose errors of our method is higher than Stampede except for the problem of square tracing without obstacles. Since our algorithm is based on randomized techniques, its max. errors can be higher than Stampede. Nonetheless, our method also shows the smallest min. error, resulting in the best accuracy on average. This result indicates that our method of applying the quantum annealing complements the weakness of having a poor, initial trajectory.
V Conclusion and Limitations
In this paper, we have presented the trajectory optimization of a redundant manipulator (TORM) based on the two-stage gradient descent to follow a given end-effector path and to make a feasible trajectory in the environment with obstacles. We have also applied quantum annealing for our optimization to avoid local minima. We have shown benefits of our method over the state-of-the-art techniques in environments without obstacles where those prior methods can work while demonstrating our method working well even with obstacles. Further, we have verified the feasibility of our synthesized trajectory using the real, Fetch manipulator.
While our method finds an accurate solution reasonably fast, there is no theoretical analysis of the error reduction rate of our approach. While the theoretical analysis could be challenging, it would shed light on deeply understanding the proposed approach in various aspects.
-  Kapil D Katyal, Christopher Y Brown, Steven A Hechtman, Matthew P Para, Timothy G McGee, Kevin C Wolfe, Ryan J Murphy, Michael DM Kutzer, Edward W Tunstel, Michael P McLoughlin, et al., “Approaches to robotic teleoperation in a disaster scenario: From supervised autonomy to direct control”, in IEEE/RSJ International Conference on Intelligent Robots and Systems. IEEE, 2014, pp. 1874–1881.
-  Philip Long, Tarik Keleştemur, Aykut Özgün Önol, and Taşkin Padir, “optimization-based human-in-the-loop manipulation using joint space polytopes”, in IEEE International Conference on Robotics and Automation. IEEE, 2019, pp. 204–210.
-  Daniel Rakita, Bilge Mutlu, and Michael Gleicher, “RelaxedIK: Real-time synthesis of accurate and feasible robot arm motion.”, in Robotics: Science and Systems, 2018.
-  Daniel Rakita, Bilge Mutlu, and Michael Gleicher, “STAMPEDE: A discrete-optimization method for solving pathwise-inverse kinematics”, in IEEE International Conference on Robotics and Automation. IEEE, 2019, pp. 3507–3513.
-  John Schulman, Jonathan Ho, Alex X Lee, Ibrahim Awwal, Henry Bradlow, and Pieter Abbeel, “Finding locally optimal, collision-free trajectories with sequential convex optimization”, in Robotics: Science and Systems. Citeseer, 2013, vol. 9, pp. 1–10.
-  Samuel R Buss, “Introduction to inverse kinematics with jacobian transpose, pseudoinverse and damped least squares methods”, IEEE Journal of Robotics and Automation, vol. 17, no. 1-19, pp. 16, 2004.
-  Rosen Diankov, “Automated construction of robotic manipulation programs”, 2010.
-  Anirban Sinha and Nilanjan Chakraborty, “Geometric search-based inverse kinematics of 7-dof redundant manipulator with multiple joint offsets”, in IEEE International Conference on Robotics and Automation. IEEE, 2019, pp. 5592–5598.
-  Pasquale Chiacchio, Stefano Chiaverini, Lorenzo Sciavicco, and Bruno Siciliano, “Closed-loop inverse kinematics schemes for constrained redundant manipulators with task space augmentation and task priority strategy”, The International Journal of Robotics Research, vol. 10, no. 4, pp. 410–425, 1991.
-  Stefano Chiaverini, “Singularity-robust task-priority redundancy resolution for real-time kinematic control of robot manipulators”, IEEE Transactions on Robotics and Automation, vol. 13, no. 3, pp. 398–410, 1997.
-  Oussama Kanoun, Florent Lamiraux, and Pierre-Brice Wieber, “Kinematic control of redundant manipulators: Generalizing the task-priority framework to inequality task”, IEEE Transactions on Robotics, vol. 27, no. 4, pp. 785–792, 2011.
-  Mike Stilman, “Task constrained motion planning in robot joint space”, in IEEE/RSJ International Conference on Intelligent Robots and Systems. IEEE, 2007, pp. 3074–3081.
-  Dmitry Berenson, Siddhartha S Srinivasa, Dave Ferguson, and James J Kuffner, “Manipulation planning on constraint manifolds”, in IEEE International Conference on Robotics and Automation. IEEE, 2009, pp. 625–632.
-  Nikolaus Vahrenkamp, Dmitry Berenson, Tamim Asfour, James Kuffner, and Rüdiger Dillmann, “Humanoid motion planning for dual-arm manipulation and re-grasping tasks”, in IEEE/RSJ International Conference on Intelligent Robots and Systems. IEEE, 2009, pp. 2464–2470.
-  Tobias Kunz and Mike Stilman, “Manipulation planning with soft task constraints”, in IEEE/RSJ International Conference on Intelligent Robots and Systems. IEEE, 2012, pp. 1937–1942.
-  Patrick Beeson and Barrett Ames, “TRAC-IK: An open-source library for improved solving of generic inverse kinematics”, in IEEE International Conference on Humanoid Robots. IEEE, 2015, pp. 928–935.
-  Jingru Luo and Kris Hauser, “Interactive generation of dynamically feasible robot trajectories from sketches using temporal mimicking”, in IEEE International Conference on Robotics and Automation. IEEE, 2012, pp. 3665–3670.
-  Pragathi Praveena, Daniel Rakita, Bilge Mutlu, and Michael Gleicher, “User-guided offline synthesis of robot arm motion from 6-dof paths”, in IEEE International Conference on Robotics and Automation. IEEE, 2019, pp. 8825–8831.
-  Matt Zucker, Nathan Ratliff, Anca D Dragan, Mihail Pivtoraiko, Matthew Klingensmith, Christopher M Dellin, J Andrew Bagnell, and Siddhartha S Srinivasa, “CHOMP: Covariant hamiltonian optimization for motion planning”, The International Journal of Robotics Research, vol. 32, no. 9-10, pp. 1164–1193, 2013.
-  Mrinal Kalakrishnan, Sachin Chitta, Evangelos Theodorou, Peter Pastor, and Stefan Schaal, “STOMP: Stochastic trajectory optimization for motion planning”, in IEEE International Conference on Robotics and Automation. IEEE, 2011, pp. 4569–4574.
-  Anca D Dragan, Nathan D Ratliff, and Siddhartha S Srinivasa, “Manipulation planning with goal sets using constrained trajectory optimization”, in IEEE International Conference on Robotics and Automation. IEEE, 2011, pp. 4582–4588.
-  Nikita Kitaev, Igor Mordatch, Sachin Patil, and Pieter Abbeel, “Physics-based trajectory optimization for grasping in cluttered environments”, in IEEE International Conference on Robotics and Automation. IEEE, 2015, pp. 3102–3109.
-  Donghyuk Kim, Mincheul Kang, and Sung-eui Yoon, “Volumetric tree*: Adaptive sparse graph for effective exploration of homotopy classes”, in IEEE/RSJ International Conference on Intelligent Robots and Systems. IEEE, 2019.
-  Diego de Falco and Dario Tamascelli, “An introduction to quantum annealing”, RAIRO-Theoretical Informatics and Applications, vol. 45, no. 1, pp. 99–116, 2011.
-  Tamar Flash and Renfrey B Potts, “Communication: Discrete trajectory planning”, The International Journal of Robotics Research, vol. 7, no. 5, pp. 48–57, 1988.
-  David H Douglas and Thomas K Peucker, “Algorithms for the reduction of the number of points required to represent a digitized line or its caricature”, Cartographica: The International Journal for Geographic Information and Geovisualization, vol. 10, no. 2, pp. 112–122, 1973.
-  Scott Kirkpatrick, C Daniel Gelatt, and Mario P Vecchi, “Optimization by simulated annealing”, Science, vol. 220, no. 4598, pp. 671–680, 1983.
-  Wolfgang Wenzel and Kay Hamacher, “Stochastic tunneling approach for global minimization of complex potential energy landscapes”, Physical Review Letters, vol. 82, no. 15, pp. 3003, 1999.
-  Tsuneo Yoshikawa, “Manipulability of robotic mechanisms”, The International Journal of Robotics Research, vol. 4, no. 2, pp. 3–9, 1985.