ExecVLA: Following Fine-Grained Execution Constraints in Vision-Language-Action Models with Bi-Level Action Representation
Organizations: MBZUAI.
Abstract
We study fine-grained execution-constraint following in vision-language-action (VLA) models. Given an invariant task goal, the policy must follow instruction-specified execution constraints, including interaction targets, motion patterns, spatial relations, and terminal configurations. This setting exposes a limitation of goal-oriented VLAs: trajectories that complete the same task are not interchangeable when the instruction specifies how the task must be executed. We propose ExecVLA, a framework that separates a goal-oriented component from an execution-specific component through a bi-level action representation and supervised bi-level reasoning tokens. We further introduce explicit goal-invariance and execution-predictability objectives so that the goal-level representation remains stable across executions of the same goal, while the execution-level representation retains the constraints that distinguish those executions. We construct execution-constraint-following datasets in simulation and on a Realman-75 robot, with goal and fine-grained reasoning annotations. Experiments on LIBERO and the real robot show improved goal completion and, more importantly, substantially more reliable adherence to instruction-specified execution constraints.
Figures & tables
| Dataset | BLEU | BERTScore | Intervention (%) |
|---|---|---|---|
| LIBERO-Goal-Relabled | 0.93 | 0.94 | 76.5 52.4 |
| Kine-LIBERO | 0.95 | 0.96 | 70.4 48.6 |
| Kine-Realman | 0.92 | 0.94 | 65.0 42.4 |
| Methods | Inference Time |
|---|---|
| OpenVLA | 237ms |
| 86ms | |
| VQ-VLA | 84ms |
| KineVLA | 96ms |
| Dataset | Baseline | + Bi-Rep | + Bi-Rea | + MI |
|---|---|---|---|---|
| LIBERO-Goal-Relabled | 70.0 | 73.4 | 75.5 | 76.5 |
| Kine-LIBERO | 61.5 | 66.8 | 68.6 | 70.4 |
Appendix figures & tables6 assets
Supplementary material from the paper’s appendix.
Appendix
| Split | Setting | Frames | Language | Reasoning Text | Vision | Action Space |
|---|---|---|---|---|---|---|
| LIBERO-Goal-Relabeled | Simulation | 63K | Kinematics-rich | Bi-Level | Front, Wrist | EEF Pose |
| Kine-LIBERO | Simulation | 266K | Kinematics-rich | Bi-Level | Front, Wrist | EEF Pose |
| Kine-Realman-75 | Real robot | 49K | Kinematics-rich | Bi-Level | Front, Wrist | Joint Positions |
| No. | Kinematic language instruction | Coarse-grained CoT | Fine-grained CoT |
|---|---|---|---|
| 1 | grasp the left edge of the bowl, move it forward, and place it precisely at the center of the plate | put the bowl on the plate | 1. Robot Action-level Constraint: Trajectory shape - forward linear movement; Contact timing - grasp then place; Ordinal relations - sequential grasp, move, place. 2. Object-level Targeting: Target - bowl’s left edge for grasp, plate’s center for placement; Pose/Facing/Angle - precise placement with implied alignment. |
| 2 | grab the wine bottle by the neck and place it on the rack | put the wine bottle on the rack | 1. Robot Action-level Constraint: Contact Timing - Must initiate/break contact (grab/release). Trajectory Shape - Requires transfer motion from source (neck) to target (rack). Ordinal Relations - Strict sequence: grab before place. 2. Object-level Targeting: Grasp Target - The neck (specific part) of wine bottle. Place Target - The rack (specific object); final pose constrained by rack structure (must be placed on it). |
| 3 | press the handle to open the top drawer to its maximum extension, then grasp the left edge of the bowl and place it in the center of the drawer | open the top drawer and put the bowl inside | 1. Robot Action-level Constraint: State/Trajectory: Press, then grasp and place. Contact Timing: Press handle first, then grasp bowl after drawer is open. Ordinal Relations: Sequential: open drawer, then grasp bowl, then place bowl. 2. Object-level Targeting: Handle/Surface/Edge: Handle (of drawer), left edge (of bowl). Pose/Facing/Angle: Maximum extension (drawer state), center (target placement pose). |
| 4 | grab the cream cheese by the middle and place it in the center of the bowl | put the cream cheese in the bowl | 1. Robot Action-level Constraint: Trajectory shape - Straight-line placement motion; Contact timing - Grasp first, then place; Ordinal relations - Sequential (grab, then place). 2.Object-level Targeting: Handle/Surface - Target middle of object (cream cheese); Pose/Facing - Orientation-agnostic grasp; Placement - Center of bowl (specific positional target). |
| 5 | hold the wine bottle firmly by the neck and position it on the upper section of the cabinet top, orienting the bottle so that its label is facing to the left | put the wine bottle on top of the cabinet | 1. Robot Action-level Constraint: State/Trajectory: Hold firmly, position on upper section. Contact Timing: Grip neck before positioning. Ordinal Relations: Orient after positioning. 2. Object-level Targeting: Handle/Edge/Surface: Neck (grip), cabinet top (placement). Pose/Facing/Angle: Label facing left. |
| 6 | place the end-effector at the center of the plate and move it leftward then backward along the table plane to reposition the plate about close in front of the stove | push the plate to the front of the stove | 1. Robot Action-level Constraint: State/Trajectory: Move end-effector leftward then backward along the table plane. Contact Timing: Maintain contact with the plate. Ordinal Relations: Sequential motion: first leftward, then backward. 2. Object-level Targeting: Target Part: Center of the plate (initial contact). Pose/Facing/Angle: Align end-effector to plate center; movement constrained to table plane. Final Placement: close in front of the stove. |
| No. | Kinematic language instruction | Coarse-grained CoT | Fine-grained CoT |
|---|---|---|---|
| 1 | grab the right edge of this bowl and move it along a diagonal path to the upper section of the cabinet | put the bowl on top of the cabinet | 1. Robot Action-level Constraint: Trajectory shape - Diagonal path; Contact timing - After grabbing, then move 2. Object-level Targeting: Target component - Right edge of the bowl; Spatial relation - Upper section of the cabinet |
| 2 | grab the left edge of this bowl and move it along a diagonal path to the upper section of the cabinet | put the bowl on top of the cabinet | 1. Robot Action-level Constraint: Trajectory shape - Diagonal path; Contact timing - After grabbing, then move 2. Object-level Targeting: Target component - Left edge of the bowl; Spatial relation - Upper section of the cabinet |
| 3 | grab the right edge of this bowl and move it along a diagonal path to the bottom section of the cabinet | put the bowl on top of the cabinet | 1. Robot Action-level Constraint: Trajectory shape - Diagonal path; Contact timing - After grabbing, then move 2. Object-level Targeting: Target component - Right edge of the bowl; Spatial relation - Bottom section of the cabinet |
| 4 | grab the left edge of this bowl and move it along a diagonal path to the bottom section of the cabinet | put the bowl on top of the cabinet | 1. Robot Action-level Constraint: Trajectory shape - Diagonal path; Contact timing - After grabbing, then move 2. Object-level Targeting: Target component - Left edge of the bowl; Spatial relation - Bottom section of the cabinet |
| 5 | hold the handle of the middle cabinet drawer and pull it open completely | open the middle drawer of the cabinet | 1. Robot Action-level Constraint: Contact Timing: Initiate contact Trajectory Shape: Linear pulling. Ordinal Relations: Grasp then pull 2. Object-level Targeting: Target Part: Middle cabinet drawer handle. Action on Target: Pull open completely |
| 6 | vertically hold the handle of the middle cabinet drawer and pull it open completely | open the middle drawer of the cabinet | 1. Robot Action-level Constraint: Contact Timing: Initiate contact. Trajectory Shape: Linear pulling. Ordinal Relations: Grasp then pull. 2. Object-level Targeting: Target Part: Middle cabinet drawer handle. Action on Target: Pull open completely |
| No. | Kinematic language instruction | Coarse-grained CoT | Fine-grained CoT |
|---|---|---|---|
| 1 | pick up the bread and move it to the left front | move the bread | Robot Action: Trajectory Shape - To the left front; Ordinal Relations - Pick first, then move. Object Targeting: Target Object - The bread; Spatial Relation - Move it to a location (left front). |
| 2 | pick up the bread and move it to the right front | move the bread | Robot Action: Trajectory Shape - To the right front; Ordinal Relations - Pick first, then move. Object Targeting: Target Object - The bread; Spatial Relation - Move it to a location (right front). |
| 3 | pick up the bread and move it to the front | move the bread | Robot Action: Trajectory Shape - To the front; Ordinal Relations - Pick first, then move. Object Targeting: Target Object - The bread; Spatial Relation - Move it to a location (front). |
| 4 | hold the carrot by the upper part and place it on the right side of the plate | place the carrot in the plate | Robot Action-level Constraint: State/Trajectory - Move carrot from held to placement pose. Ordinal Relations - Grasp first, then place. Object-level Targeting: Carrot - Target handle (upper part). Plate - Target surface (top side). Spatial Relation - Final pose on the right side of the plate. |
| 5 | hold the carrot by the upper part and place it on the left side of the plate | place the carrot in the plate | Robot Action-level Constraint: State/Trajectory - Move carrot from held to placement pose. Ordinal Relations - Grasp first, then place. Object-level Targeting: Carrot - Target handle (upper part). Plate - Target surface (top side). Spatial Relation - Final pose on the left side of the plate. |
| 6 | hold the carrot by the lower part and place it on the left side of the plate | place the carrot in the plate | Robot Action-level Constraint: State/Trajectory - Move carrot from held to placement pose. Ordinal Relations - Grasp first, then place. Object-level Targeting: Carrot - Target handle (lower part). Plate - Target surface (top side). Spatial Relation - Final pose on the left side of the plate. |