You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
1Applied Research Associates 2University of Virginia 3University of Texas at Dallas
*corresponding author
Pictorial representation of using Lie theory to move across the Lie group using the corresponding Lie algebra. The motion in between each point on the Lie group (manifold) can be represented as a motion on the corresponding Lie algebra (tangent surface).
We present SLITHERS (State planner using LIe THEory for RoboticS), a Lie theory based optimization approach for state planning of mobile manipulators.
Given the sequence of end effector poses, SLITHERS solves for the joint values incrementally using kinematic constraints found through Lie theory.
The joint state values are estimated by solving a constrained optimization problem which yields the sequence of states given the current pose and desired pose.
In this study, our contribution is three-folds:
Firstly, we successfully developed a new state planner given unrestricted motion in high degrees of freedom,
SLITHERS is generalizable and can be easily adjusted for mobile manipulators of multiple degrees of freedom,
and lastly SLITHERS guarantees smoothness in the joint states with unified motion between the base and manipulator.
The framework of SLITHERS which takes in a set of desired end effector poses, computes the desired state based off of an objective function, and executes the motion to achieve the desired states.
Directories
lie_theory
The lie_theory directory contains the main files and functions for solving inverse kinematics. The main functionality of the repository is located here.
coppeliasim
The coppeliasim directory contains the files and scenes to run simulations with the tested robot models. The code for simulations is set up to run open loop by precomputing the states and playing them back.
robot_models
The coppeliasim directory contains the robot model files (urdf, dae, stl, etc).
kinematic
The kinematics directory contains the orginal code and inspiration for shifting to the Lie Theory based optimization.
export_fig
The export_fig directory contains a copy of export_fig for generating figures.
Experimental Validation
Test paths used for the simulated experiment with the colored axes representing the desired pose of the end effector. The red, blue, and green axes represent the x, y, and z axes, respectively.
The error of the end effector on each of the different paths for both the position and orientation when using a non-holonomic mobile platform and computed by the proposed method.
The computed angular and linear velocity for the mobile manipulator with a non-holonomic base using the proposed method.
The computed joint states for the robotic manipulator mounted on the non-holonomic base using the proposed method.
The error of the end effector on each of the different paths for both the position and orientation when using a holonomic mobile platform and computed by the proposed method.
The computed angular and linear velocities for the mobile manipulator with a holonomic base using the proposed method. The forward and translational velocities represent the velocities in the x and y direction with respect to the base frame, respectively.
The computed joint states for the robotic manipulator mounted on the holonomic base using the proposed method.
Summarized metrics and results from the simulated experiment when testing the state planner on mobile manipulators.
Mobile Base Configuration
Non-holonomic
Holonomic
Trajectories
Vertical Helix
Sine Wave
Horizontal Helix
Vertical Helix
Sine Wave
Horizontal Helix
Position RMSE (m)
0.0415
0.0299
0.0031
0.0472
0.0147
0.0094
Rotation RMSE (rad)
0.0214
0.0159
0.0016
0.0199
0.2841
0.0011
Computation Time (s)
0.1862
0.1092
0.1216
0.1572
0.1075
0.1312
Max Forward Velocity (m/s)
0.8317
0.3004
3.6881
2.0000
1.4923
0.5514
Max Translation Velocity (m/s)
-
-
-
0.9933
0.9028
0.9650
Max Angular Velocity (rad/s)
2.5299
1.7195
0.6449
3.1416
2.4128
0.4185
Max Forward Acceleration (m/s$^2$)
1.1774
0.5491
1.1238
3.4888
3.1030
1.2341
Max Translation Acceleration (m/s$^2$)
-
-
-
0.6746
0.5749
0.4107
Max Ang Accel (rad/s$^2$)
5.8892
4.2186
1.2413
6.1535
5.1969
1.0681
Max Forward Jerk (m/s$^3$)
5.8309
1.5568
3.4703
24.6442
15.3703
11.4400
Max Translation Jerk (m/s$^3$)
-
-
-
1.1581
0.6296
0.3900
Max Angular Jerk (rad/s$^3$)
23.7865
19.4592
6.7439
36.1791
25.6212
3.4932
Max Joint Velocity (rad/s)
1.7848
1.8732
1.0609
6.1663
1.2688
2.6576
Max Joint Acceleration (rad/s$^2$)
1.9905
2.5079
1.1399
5.4608
1.4042
1.8988
Max Joint Jerk (rad/s$^3$)
10.0259
7.9320
2.6727
9.6929
2.7737
3.4553
Manipulator Kinematics
Lie theory is useful to model manipulator kinematics and dynamics due to is generic format and wide applications.
Screw Coordinates
A twist, $\mathbf{S} \in \mathbb{R}^6$, is a screw composed of two three dimensional vectors, the rotational and translational motion about an axis, as given by
where $\boldsymbol{\omega} \in \mathbb{R}^3$ is the angular motion, $\mathbf{v} \in \mathbb{R}^3$ is the linear motion, and $\mathbf{d} \in \mathbb{R}^3$ is a translation from the reference frame to the joint.
In a revolute joint ($\mathbf{v}=\mathbf{0}$), the twist element, $\mathbf{S}_{\omega}$, is defined by rotational motion and translational vectors as given by
The defined screw coordinates can then be used to compute the forward and inverse kinematics from the fundamentals of Lie theory using the product of exponentials.
Lie Groups and Lie Algebra
In the case of a three dimensional rigid body transformation, $[\mathbf{P}] \in SE(3)$, any element in the Lie group can be defined by a rotation matrix, $[\mathbf{R}]$, and translation vector, $\mathbf{t}$, as given by
The Lie algebra, $[\mathbf{S}]^{\wedge} \in \mathfrak{se}(3)$, for a homogeneous transformation is defined by the twist governing the motion and given by
where $[\cdot]_{\times}$ indicates a skew symmetric matrix.
The matrix exponential is used to map $[\mathbf{S}(q)]^{\wedge}$ onto the $SE(3)$ manifold changing the pose from $[\mathbf{P}_{0}]$ to $[\mathbf{P}]$ as given by
where $[\mathbf{P}_{0}]$ is the configuration state at the identity and $S$ is a function of $q$, the joint state.
For a manipulator, the product of exponentials is used to solve for the forward kinematics as given by
Diagram of Universal Robot UR5 with base frame, B, and end effector frame, E, in the zero position. Screw coordinates, Si ∀ i ∈ n, and joint angles, θi ∀ i ∈ n, are used to define kinematic model of the six link manipulator, n=6.
Mobile manipulator consisting of a six degree of freedom industrial robotic manipulator (Universal Robots UR5e) mounted on a non-holonomic mobile platform (Clearpath Robotics Husky).
Mobile manipulator consisting of a six degree of freedom industrial robotic manipulator (Universal Robots UR5e) mounted on a holonomic mobile platform.
If you found this repository useful please consider citing:
@misc{smith2024lietheorybasedoptimization,
title={Lie Theory Based Optimization for Unified State Planning of Mobile Manipulators},
author={William Smith and Siddharth Singh and Julia Rudy and Yuxiang Guan},
year={2024},
eprint={2410.15443},
archivePrefix={arXiv},
primaryClass={cs.RO},
url={https://arxiv.org/abs/2410.15443},
}
@inproceedings{whole_body_planning_mobile_manipulators_lie_optimization_openreview_7ZRclFFHSK,
title = {Whole Body Planning of Mobile Manipulators Leveraging Lie Theory based Optimization},
author={William Smith and Siddharth Singh and Julia Rudy and Yuxiang Guan},
booktitle = {RSS Workshop on Mobibe Manipulation},
year = {2025},
url = {https://openreview.net/forum?id=7ZRclFFHSK},
note = {OpenReview submission (id: 7ZRclFFHSK)}
}
About
SLITHERS (State planner using LIe THEory for RoboticS), a Lie theory based optimization approach for generating smooth, accurate, and unified motion plans for mobile manipulators.