software
SRMP: Search-Based Robot Motion Planning
SRMP is a motion planning library for robot manipulators, built on graph search. It plans for a single arm or for teams of arms, runs inside the simulators and tools you already use, and was presented at IROS 2026. It is joint work with Yorai Shaoul and Ram Natarajan (equal contribution), Jiaoyang Li and Maxim Likhachev.
pip install srmp Docs Paper Discord
Why model-based planning still matters
- High-stakes settings. Robots working near people need guarantees, not likelihoods.
- Hard problems. Confined spaces and many arms sharing a workspace are hard to learn.
- Robot learning. Learned policies need many consistent, high-quality demonstrations, and a consistent planner can generate them.
Consistent and predictable
Similar queries should get similar motions. SRMP uses search algorithms with theoretical guarantees, so a query that worked once will behave the same way next time. Sampling-based planners such as OMPL can return very different motions for nearly identical queries.
Multi-arm planning
SRMP is the first motion planning library to support multi-arm manipulation planning directly, for teams of up to 10 arms.
Fast, and better plans
µs to ms
planning time, single armms to 2 s
planning time, up to 10 armsup to 2×
higher success than sampling-based planners10%
of their solution cost12.5%
of their variation in costAgent mode
SRMP comes with a visual workspace where you build robot applications together with an AI agent. Describe the robots, scene and goal in plain language; the agent adds the robots and obstacles, picks a planner and solves the task; then you check the result in the visualizer and refine it yourself or through chat. It works with Gemini, Claude, GPT, Groq, or local models through Ollama.
A few lines of Python
If you prefer code, SRMP takes a few lines of Python and plugs into MuJoCo, PyBullet, Isaac and MoveIt!.