Principle:Haosulab ManiSkill Task Space Control
| Knowledge Sources | |
|---|---|
| Domains | Robotics, Control_Theory, Kinematics |
| Last Updated | 2026-02-15 08:00 GMT |
Overview
Task-space (Cartesian) controllers accept end-effector pose targets and use inverse kinematics to compute the corresponding joint positions, enabling policies to reason about spatial goals rather than individual joint angles.
Description
The Task Space Control principle defines how controllers translate Cartesian-space commands (end-effector position and orientation) into joint-space targets using inverse kinematics (IK). This abstraction allows learning algorithms to output intuitive spatial actions (e.g., "move gripper 5cm forward") rather than requiring knowledge of the robot's joint configuration. The IK solver handles the nonlinear mapping from task space to joint space, accounting for joint limits and kinematic constraints.
ManiSkill implements task-space control through the PDEEPosController (3D position) and PDEEPoseController (6D position + orientation) classes. These controllers support both absolute and delta modes, configurable reference frames (end-effector frame or base frame), and virtual target tracking for smooth interpolation. The underlying Kinematics class provides IK solvers on both CPU (via SAPIEN's PinocchioModel) and GPU (via pytorch_kinematics with batched Jacobian computation).
Usage
This principle applies whenever:
- A manipulation task is naturally expressed in Cartesian coordinates (e.g., reach a target position, follow a trajectory).
- The policy should be robot-agnostic, working with any robot that has an end-effector without being tied to specific joint configurations.
- Delta pose control is needed, where the policy outputs relative movements rather than absolute targets.
Theoretical Basis
Inverse Kinematics: Given a target end-effector pose T_target and current joint configuration q, IK finds q_target such that FK(q_target) ≈ T_target. The solver iteratively minimizes the pose error using Jacobian-based methods.
Levenberg-Marquardt vs Pseudo-Inverse: Two IK solver strategies are supported. Levenberg-Marquardt adds a damping term for numerical stability near singularities. Pseudo-inverse uses the Moore-Penrose pseudoinverse of the Jacobian for faster but potentially less stable solutions.
Delta vs Absolute Mode: In delta mode, the action represents a displacement from the current end-effector pose. A virtual target tracks the cumulative desired pose, and IK solves for the joint configuration matching this target. In absolute mode, the action directly specifies the target pose.
Frame Selection: Actions can be expressed in the end-effector's local frame (intuitive for the robot's perspective) or the world/base frame (intuitive for the task specification).
Related Pages
- Implementation:Haosulab_ManiSkill_PDEEPoseController -- 6D end-effector pose controller.
- Implementation:Haosulab_ManiSkill_Kinematics -- CPU/GPU inverse kinematics solver.