RoboJEV
Two-stage Jev control of a Franka Panda arm in MuJoCo.
A first Jev call chooses the stage of the task, and a second chooses the motion inside it. The demo covers pick and place, and pushing.
Two-stage JEV control of a Franka Panda in MuJoCo.</strong><br>Measured simulator state → task intent → Cartesian motion and gripper commands.</p> <p align="center"><a href="https://lykycy123.github.io/RoboJEV/">Interactive showcase</a> · <a href="#todo-list">Todo list</a> · <a href="#demo-presentation">Demo presentation</a> · <a href="#quick-start">Quick start</a> · <a href="docs/evaluation.md">Evaluation</a> · <a href="README.zh-CN.md">中文</a></p> <p align="center"><a href="LICENSE"><img alt="License: Apache 2.0" src="https://img.shields.io/badge/License-Apache_2.0-41d2e3?style=flat-square"></a> <img alt="Python 3.11" src="https://img.shields.io/badge/Python-3.11-93a5b9?style=flat-square"> <img alt="MuJoCo 3.3.7" src="https://img.shields.io/badge/MuJoCo-3.3.7-93a5b9?style=flat-square"> <a href="https://github.com/lykycy123/RoboJEV/actions/workflows/ci.yml"><img alt="Tests" src="https://github.com/lykycy123/RoboJEV/actions/workflows/ci.yml/badge.svg"></a></p> RoboJEV is a small, inspectable robotics laboratory. JEV receives **structured simulator state, not images**, selects an immediate intent, then selects X/Y/Z directions and a gripper command. A Cartesian controller executes the action using real MuJoCo contacts. Each task has independent physical success checks; model answers cannot declare success. ## Todo list **Completed** - [x] Implement two-stage JEV control: intent selection followed by XYZ and gripper commands. - [x] Integrate MuJoCo and Franka Panda with structured state observations and physical contact. - [x] Demonstrate pick & place, surface pushing, and stacking on a fixed pedestal with real JEV decisions. - [x] Complete 100 evaluation episodes across five tasks in two frozen campaigns, with an independent rule baseline and documented failures. -
