Skip to content

utiasSTARS/geodex

Repository files navigation

geodex

CI docs codecov

geodex is a general-purpose software framework for planning on Riemannian manifolds.

Unlike traditional algorithms that operate in Euclidean space, geodex works directly with the intrinsic geometry of the state space. Manifolds are defined via C++20 concepts (RiemannianManifold, HasMetric, HasGeodesic, etc.) so algorithms work generically over any conforming type with zero overhead. Metrics and retractions are injected as template policies, making it easy to swap between e.g. true exponential maps and cheaper approximations.

Key Features

  • Generic Manifolds — Out-of-the-box support for $S^n$, $R^n$, $T^n$, SE(2), and custom manifolds via template policies
  • Performance First — Header-only C++ core with many built-in retractions and anisotropic metrics
  • Python Bindings — First-class support for Python (pip install geodex)

Roadmap

  • OMPL and VAMP integrations (Planning on Riemannian manifolds with state-of-the-art sampling-based planners)
  • Nav2 and MoveIt 2 plugins (Geometry-aware planning for ROS 2 mobile robots and manipulators)

Getting Started

All installation instructions, C++/Python tutorials, and API references are available at our documentation site:

👉 Read the Documentation

Citation

geodex accompanies the paper "Geometry-Aware Sampling-Based Motion Planning on Riemannian Manifolds" accepted to WAFR 2026:

@article{kyaw2026geometry,
  title={Geometry-Aware Sampling-Based Motion Planning on Riemannian Manifolds},
  author={Kyaw, Phone Thiha and Kelly, Jonathan},
  journal={arXiv preprint arXiv:2602.00992},
  year={2026}
}

License

geodex is licensed under the Apache License 2.0.

About

A general-purpose software framework for planning on Riemannian manifolds

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors