Analysis updated 2026-05-18
Reproduce the Force Policy research results on the provided Push and Flip dataset
Train a robot control policy that switches between vision guidance and force feedback on contact
Study how interaction-frame estimation works for contact-rich robot manipulation
Deploy the trained policy on a Flexiv Rizon robot arm with a force and torque sensor
| force-policy/forcepolicy | avbiswas/sam2-mlx | chanthruu/wind_energy_monitor | |
|---|---|---|---|
| Stars | 27 | 27 | 27 |
| Language | Python | Python | Python |
| Setup difficulty | hard | moderate | moderate |
| Complexity | 5/5 | 4/5 | 3/5 |
| Audience | researcher | researcher | data |
Figures from each repo's GitHub metadata at analysis time.
Needs a patched MinkowskiEngine build, specific CUDA/PyTorch versions, pretrained DINO weights, and for real robots a Flexiv Rizon arm and force sensor.
Force Policy is the code release for a robotics research paper accepted at Robotics: Science and Systems 2026. It teaches a robot arm how to complete tasks that involve actually touching and pushing things, such as pressing, flipping, or sliding an object, rather than only tasks where the arm moves through open air. The core idea is to combine two separate control systems and switch between them automatically. A first system, built on an existing project called RISE-2, watches the scene with cameras and guides the arm while it is moving freely through open space toward the object. Once the arm actually makes contact with something, a second, faster system takes over. That second system reads the direction and strength of the forces the arm is feeling at the moment of contact and adjusts both position and force together, so the arm can, for example, keep pressing with the right amount of force while also moving in the correct direction. A scheduler decides moment to moment which of the two systems should be in charge. The repository is organized into clear pieces: code for figuring out the forces and directions at the moment of contact, the two control policies themselves, tools for preparing training data, a training loop, and a separate runner used to actually operate a real robot arm. Training this system requires real demonstration data, which the authors collected using two robot arms working together, one controlled by a human and one following it, with force feedback so the human operator can feel what the following arm feels. Camera images are recorded at 15 times per second while the arm's own position and force readings are recorded 1000 times per second. Getting this running is not a lightweight task. It expects Python, a specific version of PyTorch, a patched build of a 3D vision library, and pretrained vision model weights, all installed in particular versions to match the paper's setup. Actually running it on real hardware additionally requires a specific commercial robot arm from Flexiv, a compatible gripper, a force and torque sensor, and two depth cameras. The authors do provide a sample dataset and pretrained checkpoints for one example task, called Push and Flip, so a reader without the exact hardware can still inspect the data and trained models.
A research robotics project that teaches a robot arm to handle contact tasks like pushing and flipping by blending vision-based motion with real-time force control.
Mainly Python. The stack also includes Python, PyTorch, CUDA.
Setup difficulty is rated hard, with roughly 1day+ to a first successful run.
Mainly researcher.
This repo across BitVibe Labs
Verify against the repo before relying on details.