Abstract
This article proposes an efficient and probabilistic complete planning algorithm to address motion planning problem involving orientation constraints for decoupled dual-arm robots. The algorithm is to combine sampling-based planning method with analytical inverse kinematic calculation, which randomly samples constraint-satisfying configurations on the constraint manifold using the analytical inverse kinematic solver and incrementally connects them to the motion paths in joint space. As the analytical inverse kinematic solver is applied to calculate constraint-satisfying joint configurations, the proposed algorithm is characterized by its efficiency and accuracy. We have demonstrated the effectiveness of our approach on the Willow Garage’s PR2 simulation platform by generating trajectory across a wide range of orientation-constrained scenarios for dual-arm manipulation.
Introduction
To safely perform the manipulation tasks, motion planning algorithms that can generate collision-free motions from an initial to a final configuration in cluttered environments are needed. However, the motion planning problem is known to be PSPACE-hard, 1 which means that the computational complexity will increase dramatically with the increase of a robot’s degrees of freedom (DOF). Sampling-based algorithms 2 –5 in general are considered the dominant approach in dealing with the motion planning problem of high-DOF robotic manipulators because of efficiency, conveniently handling kinodynamic constraints, 6 and probabilistic completeness. Recently, sampling-based methods 7 –24 have also been extended to deal with manipulation planning problem under pose or kinematic closure constraints. However, these planners usually are difficult to solve the dual-arm motion planning involving orientation constraints of the robot’s end-effector. Examples of such constraint tasks are ubiquitous in our daily life, for example, moving cups full of water from one place to another while keeping them from spilling all along the motion; manipulating a tray with food or glasses on it without tipping throughout the motion path.
In this article, we focus on the dual-arm motion planning problem with end-effector orientation constraints, that is computing a collision-free path for both arms between an initial state and a goal state while maintaining a specified orientation throughout the path. In the process of dual-arm cooperation, 25 there may be also closure constraint between the two arms, for example, when two arms simultaneously grasp and manipulate a single object. In general, these problems can be interpreted as finding constraint-satisfying configurations and connecting them to generate valid paths without being trapped in local minima. 7 The main difficulty is that the introduction of constraint satisfaction problem (CSP) 26 poses a significant challenge to the solution of constraint-satisfying configurations, which is an NP-Complete problem. On the one hand, the constraint manifolds (the set of all constraint-satisfied configurations) are zero-measure manifolds 8 embedded in the ambient configuration space (C-space). Therefore, the probability that a randomly sampling configuration in C-space lies on the desired constraint manifolds is extremely low and usually null. On the other hand, due to the nonlinear relationship between configuration parameters derived from orientation and closure constraints, it is complicated to calculate the analytical inverse kinematics (IK) solutions satisfied the constraint conditions.
In this article, we propose an efficient and probabilistically complete planning algorithm called orientation-constrained rapidly exploring random trees (OC-RRT) to address motion planning problem involving orientation constraints for decoupled dual-arm robots. The proposed algorithm is based on a novel combined computing framework of IK solutions and sampling-based planning approach. Although the sampling-based planning algorithm in this work takes the RRT
2
as an example, it is also suitable for other sampling-based planners such as Probabilistic RoadMaps (PRMs)
3
and RRT variants.
4,5
As is the case with human arms, the decoupled dual-arm robots with two decoupled manipulators (Figure 1(a)) are designed to allow the decoupling between position and orientation of the robot wrist,
27
–29
which have been widely adopted, such as the DLR’s Rollin Justin, Yaskawa Motoman’s SDA10D, Willow Garage’s PR2, and Rethink’s Baxter robot. As the last three joints of the decoupled manipulator have concurrent axes, the position of the wrist represented by

(a) A prototype of dual-arm robot with two decoupled manipulators. The left arm configuration consists of the main arm joints (

The block diagram shows the workflow of the global system architecture, which gives the planning process.
The main contributions of this article can be summarized as follows. (1) an IK-based motion planning algorithm is presented for decoupled dual-arm manipulation with orientation constraints, which directly calculates the constraint-satisfying configuration by analytical IK instead of the previously proposed Jacobian pseudo-inverse projection methods. (2) As the adoption of the analytical IK solver, our planner is characterized by efficiency, accuracy, and without iteration modification. (3) We distinguish this work from the closed-chain motion planning and motion planning with orientation constraint, because considering closure constraint and orientation constraint simultaneously is more difficult than just respecting a single constraint. (4) The other constraints such as the task CSP of trajectory between nodes, probabilistic completeness, avoid singularities, and the limits of joint angle are also considered in this work.
The rest of this article is organized as follows. In the second section, a survey of related work of dual-arm motion planning involving orientation constraints is given. Some preliminaries including the classification of dual-arm operation, the representation of end-effector’s pose constraint, and the description of constrained motion planning are provided in the third section. After that, the detail of OC-RRT planner is presented in the fourth section. In the fifth section, a wide range of OC scenarios are used to validate the prominent performance of the OC-RRT planner. Finally, conclusions of this study are presented in the sixth section.
Related work
Before going into detail of the OC-RRT algorithm, a brief summary of historical approaches to the closed-chain or OC motion planning problem are presented.
Projection strategy 7,9,31 and randomized gradient descent (RGD) 10,11,32 are very common methods that have a wide range of applications. In dealing with pose or closure constraints, the projection strategies iteratively projecting randomly sampled configurations onto the constraint manifolds have been proved to be feasible. LaValle et al. 10 presented the first method to handle the closure constraints of closed-chain robots using a RGD algorithm. An improved RGD algorithm was designed by Yakey 11 for more general closure constraints. Some other researchers adopted a more effective decomposition approach 12,13 to deal with the closure constraints, which combines IK computation with PRM techniques. To further reduce the computing time of handling closure constraints, random loop generator (RLG) 14,15 was proposed to increase the probability of randomly generating valid configurations. Gharbi et al. 16 used the singular configurations to connect different self-motion manifolds. Position/orientation constraints and joint velocity constraints between cooperative robots 17 were mainly investigated. However, the above methods are only suitable for closed-chain path planning problems.
For the pose constraints on the end-effector, Stilman 7 compared three projection algorithms for pose-constrained tasks and the final results indicated that the Jacobian pseudo-inverse projection was typically faster and more invariant than the RGD algorithm. Berenson et al. 18 used the Task Space Regions (TSRs) to represent a unified framework of pose-related constraints and proposed the CBiRRT planner 19 to solve general end-effector constraints. To improve the efficiency of the projection operation, recently, planners such as Tangent Space RRT (TS-RRT), 20 Atlas-RRT, 21 Tangent Bundle RRT (TB-RRT), 22 and Atlas + X planner 23 sampled new joint configurations within the tangent spaces, which are nearby the constraint manifold. Kingston et al. 24 divided these previous methodologies into five categories: (1) relaxation, (2) projection, (3) tangent space sampling, (4) incremental Atlas construction, and (5) reparameterization. But the approach of decoupling between translational and rotational motions has not been studied yet.
Researchers have proposed several kinematics-based planners capable of planning for regrasping tasks, but they only focus on how to choose the feasible grasping configurations rather than the whole path constraint. Bertram et al. 33 calculated several joint configurations of grasping using the IK solver and then set them as goals for the randomized planner. Berenson et al. 34 used workspace goal regions (WGRs) and two probabilistically complete planners (RRT-JT and IKBiRRT) to deal with end-effector pose constraints. Related IK-based approaches (RRT-JT and IK-RRT) 35 for dual-arm manipulation planning and regrasping tasks were presented by Vahrenkamp et al. 35 and Xian et al. 36 connected nearby C-space through the IK-switch to address complex closed-chain manipulation tasks. Such methods are mainly designed for the selection of goal or switching joint configurations in the path planning, which are infeasible to maintain orientation and closure constraints throughout the whole path. There has been research on dual-arm manipulation planning with orientation constraints 37 using the graph heuristic search techniques. Also, some approaches tried to achieve the approximation of the constraint manifolds by off-line computation, 38 model learning, 39 or demonstrations learning 40,41 but only for certain scenarios.
We compared several classical methods as shown in Table 1. The previous research mainly focuses on closure or pose constraint problem, to the best of our knowledge, the multiple CSP of considering closure and orientation constraint simultaneously has been rarely addressed by randomized path planning approaches.
Comparison of several constrained motion planners.
IK: inverse kinematic; RGD: randomized gradient descent; PRM: probabalistic RoadMap; RLG: random loop generator; RRT: rapidly-exploring random trees; TS: Tangent Space.
Preliminaries
In this section, some mathematical notations and preliminaries of our planning algorithm are given. The preliminaries consists of three parts: classification of dual-arm operations according to the type of dual-arm manipulation tasks, representation of pose constraints between the two arms, and description of motion planning on constraint manifold.
Classification of dual-arm manipulation
A summary of dual-arm manipulation conducted by Smith was discussed, 42 where dual-arm operation was split into modes of non-coordinated manipulation (each arm performs a different task) and coordinated manipulation (both arms implement different parts of the same task). The coordinated manipulation mode 43 was further divided into bimanual manipulation, where two arms are engaged in manipulation of a single object within the shared space and goal-coordinated manipulation, where two arms operate separately without kinematic constraints but both are solving the same task.
When there is no orientation constraint imposed on the end-effector of the manipulators, the dual-arm manipulation can often be realized by well-investigated motion planners for closed kinematic chains or two single-arm robots (please refer to “Related work” section for general reviews). However, the introduction of orientation constraint makes dual-arm manipulation more complicated because of the difficulty of parameterizing lower dimensional orientation constraint manifolds and solving analytic IK solutions for the desired orientation. Thus, the dual-arm manipulation with orientation constraints is an important and difficult part of the dual-arm manipulation, which can be categorized into open-chain manipulation mode and close-chain manipulation mode.
As only kinematic constraints are considered in this article, dual-arm manipulation can be grouped into
Constraints description
The orientation and kinematic closure constraints of dual-arm robot most commonly take the form of the position and/or orientation of the robot’s end-effector. In this article, homogeneous transformation of frame
To express pose constraint (denoted by
As there is no explicit kinematic closure constraint in open-chain manipulation mode, the dual-arm system can be considered as two independent single-arm systems with predefined orientation constraints on each arm. That is, Euler angles
Constraint manifold
It has long been recognized that the notion of C-space (
In general, sampling-based planners are typically efficient in planning motions for high-dimensional systems and provide probabilistic completeness guarantees. Instead of computing
However, for kinematic constrained motion planning, these random variables
As the structure of the constraint manifold region is not known a priori, motion planners need to be able to either directly calculate analytical IK solutions that inherently satisfy the special equality constraints or iteratively project the invalid configurations onto the constraint manifold. Obviously, computing analytical IK solutions can be much more rapid than the projection method, but the process of IK is fairly complicated or even null. Fortunately, the analytical IK solutions that satisfy the pose constraints can be solved for decoupled manipulators (see “Generating IK solutions” section).
OC-RRT planner
To solve the constrained motion planning problem, algorithms must conduct a search on constraint manifold
Generating IK solutions
Decoupled manipulators are frequently equipped with a humanoid spherical wrist from the viewpoint of the anthropomorphic arm structure, which allows decoupling motion of the position problem from the orientation problem. This makes it possible to generate configurations that lie on constraint manifold directly. A general decoupled redundant manipulator with seven revolute joints is employed in this work, whose world frame
where
As the last three joint axes of the decoupled manipulator intersect at the wrist point,
where
Thus, we have three scalar equations and three unknowns, the analytical IK solutions of
Likewise, the orientation of wrist can be controlled by
Please refer to Angeles 44 for more detailed explanation.
Sampling constraint-satisfying configurations
Although the study of motion planners with orientation or kinematic closure constraints (see “Related work” section) has been proved feasible using Jacobian pseudo-inverse projection techniques, these methods have many technical challenges, such as avoiding joint limits and singularity, iterations, and computational efficiency. What is more, dual-arm manipulation with orientation constraint not only has specified orientation all along the entire path, but also need to maintain a relatively fixed position constraint between the two arms’ end-effector in close-chain manipulation mode. The multiple constraints on end-effector make the problem more complicated than only imposed orientation or kinematic closure constraint.
To overcome these difficulties, an analytical IK solver is applied to calculate constraint-satisfying configurations directly, which has preferable efficiency and satisfactory accuracy. The dual-arm system is decomposed into the “active arm” (named arm1) and the “passive arm” (named arm2). Due to the predefined orientation constraint of tasks, the active arm needs to maintain fixed Euler angles
where
As for mode of close-chain manipulation, we suppose that a grasping object by the two hands is rigid and the length of the rigid object determines the relatively fixed position between the two arms. As aforementioned, the configuration of active arm is assigned to maintain a predefined orientation in the entire movement and then the configuration of passive chain is computed to meet the closure constraint by IK solver. Because of the kinematic redundancy of the passive arm, there are an infinite number of IK solutions
45
corresponding to the desired end-effector pose obtained from the forward kinematics of the active arm. The set of all these IK solutions in joint space is referred to as self-motion manifold
where
As the kinematics analysis of decoupled manipulators mentioned before, position exploration can be done through random sampling of the main arm angles, while the orientation of wrist can be controlled by the wrist angles. The pseudocode procedure of generating a constraint-satisfying configuration is described in Algorithm 1. For the active arm (arm1), the random sampling function
OC-RRT algorithm
Sampling-based planners, such as RRT-Connect (a bidirectional search version of RRT)
4
, RRT* (an asymptotically optimal RRT),
5
anytime RRT*,
46
and RABIT* (regionally accelerated batch informed trees),
47
are state-of-the-art techniques for solving the motion planning problem, which use a variety of distributions for sampling the C-space they search. Instead of running the planner on the C-space, the OC-RRT algorithm works on the constraint manifold to meet the OC requirement of task directly. As shown in Algorithm 2, the OC-RRT algorithm strives to search the constraint manifold for a feasible path by growing a space-filling tree
OC-RRT.
To depict the functionality of the presented OC-RRT, it is reasonable to compare with the RRT algorithm
3
and point out the relevant modifications. The main differences between OC-RRT and RRT are as following: Sampling: compared with RRT algorithm, OC-RRT uses Steering: In the RRT algorithm, the function

New node (gray) generated by Steer() is outside of constraint manifold (blue). Hence, OCSteer() is proposed to generate new node (yellow) lying on the constraint manifold.
In terms of the passive arm, similar steps mentioned above are extended to the passive arm and also the similar results can be obtained when operating in open-chain manipulation mode. Otherwise, the forward kinematic function
Probabilistic completeness guarantee of the OC-RRT algorithm follows from the property: given infinite time, every possible constraint-satisfying configuration on the constraint manifolds will be added to the space-filling tree. What is more, the trajectory of joint angle and the final motion of the robot’s end-effector do not jump between adjacent nodes of the random trees when the step size
Simulation experiments
To validate the performance of the proposed OC-RRT algorithm, four scenarios (named Industrial I, Industrial II, Tabletop, and Passageway) were implemented on the Willow Garage’s PR2 robot in MoveIt!
48
simulator. PR2 is designed with two 7-DOF decoupled manipulators, which allows us to decouple planning for the main arm joints (the first four joints) from the wrist joints (the last three joints) as shown in Figure 4. The shoulder pan joint (

The right arm configuration of the PR2 robot consists of the main arm joints (
For the sake of comparison, the CBiRRT proposed by Berenson et al. 19 was implemented for dealing with the same task. As the CBiRRT planner and our OC-RRT planner are randomized, we carried out 20 times repetitive experiments for each simulated scenarios. The two planners are coded in the open-source Open Motion Planning Library (OMPL), 49 and the laptop used to install the Robot Operating System (ROS) has 6 GB of RAM and an Intel i3-6100 CPU quadcore processor running at 2.5 GHZ.
Evaluation index
To evaluate the performance capabilities of the proposed algorithm, several indicators were introduced: (1) planning time, (2) number of nodes, (3) success rate, and (4) root-mean-square deviations (RMSDs) of position or orientation for path accuracy. The RMSD or RMSE 50,51 is a well-known evaluating index, especially in probability statistics. The orientation RMSD (in radians) is defined as
and the position RMSD (in meters) is defined as
where
Experimental results in open-chain mode
As shown in Figure 5, the simulated PR2 robot has to vertically move two cups full of water from the initial (green) to the target configuration (yellow) in the cluttered environment (Industrial I). According to requirement of the task, not only the start pose and the target pose but also the entire planned trajectory needs to satisfy the end-effector’s orientation constraint with Euler angles

Industrial I scenario: (1)–(4) snapshots of moving two cups full of water from start pose (green) to goal pose (yellow) by using the OC-RRT planner. Constraints: upright orientation and collision-free constraint. Blue: trajectories of two arms’ end-effector. Green: start configuration. Yellow: goal configuration. (a) Trajectories of two arms’ end-effector. (b) RMSD of orientation. (c) Joint position trajectories of left arm. (d) Joint position trajectories of right arm. OC-RRT: orientation-constrained rapidly exploring random trees; RMSD: root-mean-square deviation.
Figure 5(1)–(4) showed a typical result of the snapshots from the execution of the OC-RRT planner, where the planned collision-free path (shown in blue) is smooth. The accompanying video showed the motion of the robot for this task. Figure 5(a) presented the path of the two arms’ end-effector. The corresponding orientation RMSD of the two arms’ end-effectors was fixed to zero with high accuracy as shown in Figure 5(b) and the trajectories of two arms’ each joint moved smoothly as shown in Figure 5(c) (left arm) and (d) (right arm).
Experimental results in close-chain mode
Due to the orientation and closure constraints of the arms, the distance between two grasping points of the arms and the cluttered environments caused a very tight cooperative workspace for dual-arm manipulation. The multiple simultaneous constraints make the problem particularly complicated. We evaluated the performance of the proposed planner by presenting numerical results in three different scenarios 52 (Industrial II, Table top and Narrow Passageway) as shown in Figures 6 to 8. The simulated PR2 robot was required to vertically manipulate a tray with a cup on it from the start configuration (green) to the goal configuration (yellow) in the cluttered environments, while maintaining a relatively fixed position constraint between the two arms’ end-effector.

Industrial II scenario: (1)–(4) snapshots of moving a tray with a cup on it from start pose (green) to goal pose (yellow). (a) Trajectories of two arms. (b) RMSDs of orientation and position. (c) Joint position of left arm. (d) Joint position of right arm. RMSD: root-mean-square deviation.

Tabletop scenario: (1)–(5) snapshots of moving a tray with a cup on it from start pose to goal pose. (a) Trajectories of two arms. (b) RMSDs of orientation and position. (c) Joint position of left arm. (d) Joint position of right arm. RMSD: root-mean-square deviation.

Narrow passageway scenario: (1)–(8) snapshots of moving a tray with a cup on it from start pose to goal pose. (a) Trajectories of two arms. (b) RMSDs of orientation and position. (c) Joint position of left arm. (d) Joint position of right arm. RMSD: root-mean-square deviation.
Upper part of each figure (Figures 6 to 8) presented the typical result of the snapshots from the execution of the OC-RRT planner for the three different scenarios, where the planner can compute a collision-free path successfully while satisfying the orientation and closure constraints. The motion of the robot for the different scenarios is fully visible in the accompanying video. The subgraph (a) of each figure showed the entire trajectory of the two arms, where the left arm is identified as the active arm (Leader) and right arm as the passive (Follower). We can visually see that the planned trajectory is smooth and meets the kinematic closure constraints. The position and orientation RMSD of the two arms’ end-effectors were fixed to zero with high accuracy as shown in subgraph (b) of each figure. The corresponding joint trajectories of the two arms were shown in subgraph (c) (left arm) and (d) (right arm) of each figure.
Discussion
The comparative results of simulation between the proposed OC-RRT and the CBiRRT 19 in four different scenarios are given in Table 2. According to the results in Table 2, the OC-RRT and the CBiRRT both can successfully complete the motion planning of dual-arm with the same constraints on PR2 simulation platform, but the OC-RRT algorithm can plan constraint-satisfying trajectory with efficiency and accuracy.
Simulation results (efficiency and accuracy) from 20 times trials for the four different scenarios.
OC-RRT: orientation-constrained rapidly exploring random trees; RMSD: root-mean-square deviation.
In open-chain manipulation mode, the proposed OC-RRT algorithm is superior to the CBiRRT planner in terms of the indicators of Planning Time, Number of Nodes, and ORMSD. All these superiorities can be attributed to that the OC-RRT planner uses the analytical IK technique to sample constraint-satisfying configurations directly without iteration modification. Besides, the extremely tiny ORMSD can not only illustrate that the nodes generated by the OC-RRT planner meet the orientation constraint accurately but also verify that the trajectories between nodes respect the orientation constraint of the task.
Similarly, the proposed OC-RRT planner is more accurate and efficient than the CBiRRT planner in terms of all indicators in close-chain manipulation mode. In addition, the extremely tiny RMSD of orientation and position can not only illustrate that the nodes generated by the OC-RRT planner meet the orientation and kinematic closure constraints of the task with high accuracy but also verify that the trajectories between nodes respect these constraints.
Conclusion
In this article, we have presented an efficient and probabilistic complete planning algorithm-combined sampling-based technique with analytical IK solver to address the dual-arm motion planning problem involving orientation constraints for decoupled dual-arm robots. The general problem is interpreted as finding constraint-satisfying configurations and connecting them to generate valid paths in joint space without being trapped in local minima. The key idea of our approach is to efficiently explore the constraint-satisfying configurations by directly sampling them on constraint manifold through analytic IK. Besides, we also limit the joint space displacements between nearest node and new node by setting a small step size
In our recent work, we have successfully validated the proposed OC-RRT algorithm on the Baxter robot built by Rethink Robotics. The proposed algorithm has also been extended to other sampling-based motion planners such as PRM planner and RRT-Connect planner. Especially when our method was applied to the RRT-connect algorithm, the planning time and path were obviously improved. To make the proposed algorithm framework more versatile, future research will focus on solving general pose constraint tasks for decoupled manipulators. Additionally, considering the influence of the contact force between two arms in the close-chain mode, another future research is how to integrate motion planner and forces/position controller to deal with closure constrained motion planning for dual-manipulators.
Footnotes
Authors’ note
Changbin Yu is also affiliated to School of Engineering, Westlake University, Hangzhou, Zhejiang, China.
Declaration of conflicting interests
The authors declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.
Funding
The authors disclosed receipt of the following financial support for the research, authorship, and/or publication of this article: This work was supported in part by the NSFC (Grant no. 61503108), NSFC-DFG (Grant no. 61761136005), 111 Project (Grant no. D17019), and the Key Research and Development Program of Zhejiang Province, China (Grant no. 2019C04018).
