Skip to content

lvhao54/pyroki

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PyRoki: Python Robot Kinematics Library

Project pagearXiv

PyRoki is a modular, extensible, and cross-platform toolkit for kinematic optimization, all in Python.

Core features include:

  • Differentiable robot forward kinematics model from a URDF.
  • Automatic generation of robot collision primitives (e.g., capsules).
  • Differentiable collision bodies with numpy broadcasting logic.
  • Common cost implementations (e.g., end effector pose, self/world-collision, manipulability).
  • Arbitrary costs, autodiff or analytical Jacobians.
  • Integration with a Levenberg-Marquardt Solver that supports optimization on manifolds (e.g., lie groups)
  • Cross-platform support (CPU, GPU, TPU).

Please refer to the documentation for more details, features, and usage examples.


Installation

You can install pyroki with pip, on Python 3.12+:

git clone https://github.com/chungmin99/pyroki.git
cd pyroki
pip install -e .

Python 3.10-3.11 should also work, but support may be dropped in the future.

Status

May 6, 2025: Initial release

We are preparing and will release by May 16, 2025:

  • Examples + documentation for hand / humanoid motion retargeting
  • Documentation for using manually defined Jacobians
  • Support with Python 3.10+

Citation

This codebase is released with the following preprint.

Chung Min Kim*, Brent Yi*, Hongsuk Choi, Yi Ma, Ken Goldberg, Angjoo Kanazawa. PyRoki: A Modular Toolkit for Robot Kinematic Optimization arXiV, 2025.

*Equal Contribution, UC Berkeley.

Please cite PyRoki if you find this work useful for your research:

@misc{pyroki2025,
    title={PyRoki: A Modular Toolkit for Robot Kinematic Optimization},
    author={Chung Min Kim* and Brent Yi* and Hongsuk Choi and Yi Ma and Ken Goldberg and Angjoo Kanazawa},
    year={2025},
    eprint={2505.03728},
    archivePrefix={arXiv},
    primaryClass={cs.RO},
    url={https://arxiv.org/abs/2505.03728},
}

Thanks!

About

A Modular Toolkit for Robot Kinematic Optimization

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%