Open Source RoboticsRobots, software & learning

jaxls

Software

Sparse constrained least-squares solver in JAX, with non-Euclidean variables and examples for geometric optimization. [1]

Installation & first result →Official websiteGetting started

For
Developers defining custom robotics optimization costs [1]
Source rights
Named licenses are documented by part. Review licenses
Unknowns
operating system, compute requirements not fully established. Review gaps

Source researched · Not tested by us
Sources checked · Research details

Licenses & related hardware

Requirements · Research details and dates

On this page

Overview

jaxls supplies the optimization layer for developers who want to define their own robotics costs and constraints. It solves sparse least-squares problems in JAX, including constrained problems and variables that live on rotation or pose manifolds. Its upstream README lists PyRoki as a user for robot kinematics and motion planning. [1]

Is this for you?

Known limitations
  • The waypoint example constrains discrete points, not swept robot geometry.
  • Legacy Factor and FactorGraph APIs have migration shims; package version is 0.0.0.

Editorial assessment from cited documentation; no runtime testing.

[3] [4] · Editorial assessment

What you need

Languages / runtimes
  • Python

[2]

Dependencies
  • Python >=3.10
  • JAX and jaxlib >=0.6.0
  • jaxlie >=1.0.0
  • Viser for the waypoint viewer

[2] [3]

Installation & first result

Open the upstream getting-started guide [3] · Project documentation [1]

  • Install the pinned source with the dev extra.
  • Run python examples/3_constraints.py.
  • Inspect constraint violations and the displayed waypoints.

Editorial assessment from cited documentation; no runtime testing.

[2] [3] · Editorial assessment

Installation

Install the pinned checkout with pip install -e ".[dev]" in an isolated environment; the dev extra includes Viser.

Editorial assessment from cited documentation; no runtime testing.

[2] · Editorial assessment

Hardware, models & data

Inputs and outputs

Costs, constraints and initial variable values produce optimized variable values; the example displays a 2D waypoint path.

[3]

Project notes

Try the waypoint problem before a robot model

The included examples/3_constraints.py builds 50 two-dimensional waypoints, fixes the start and goal, and adds constraints around two circular obstacles. It solves from a straight-line initial guess, prints constraint violations and displays the initial and optimized paths in Viser. This makes a small, inspectable starting point for understanding how costs and constraints are assembled. [3]

For a source-based trial, use an isolated Python 3.10+ environment, check out the reviewed revision and install with pip install -e ".[dev]"; the dev extra supplies Viser. Run python examples/3_constraints.py from the checkout. These steps are derived from the package metadata and example and have not been run for this review. JAX and jaxlib must be at least 0.6.0. A workload-specific memory or accelerator minimum is not established here. [2] [3]

The example checks obstacle constraints at discrete waypoints. It does not model a robot's volume or test the swept segments between those points. Treat its printed success message as a check of that mathematical example, not evidence of safe physical motion. [3]

Record the commit, not just the package version

No GitHub release was listed at review. This profile uses commit 50a58be88c5ef74532f09e3f55268b4f02c490e3; the package still identifies itself as 0.0.0. Its compatibility shims warn that Factor became Cost and FactorGraph.make(...) became LeastSquaresProblem(...).analyze(). Record the resolved commit and JAX environment when comparing results or integrating an older consumer. A README relationship alone does not verify version compatibility. [4] [6]

Repository code and documentation carry MIT terms; dependencies keep their own licenses. We preserved and inspected source but did not install jaxls, run its examples or benchmark a solver. [7]

What we checked

Source researched only; no installation, training, benchmark or physical hardware test performed. No affiliate links or reused media.

Not yet established

  • Requirements: operating system, host computer
  • Version-specific hardware compatibility (ecosystem tags alone do not establish it)

Updates

Upstream last updated
Jun 20, 2026 [6]
Latest release
Not established
Profile updated
Oct 17, 2026
Sources last checked
Oct 17, 2026
Next review
Nov 17, 2026
Reviewed revision
commit snapshot; no GitHub releases listed / 50a58be88c5ef74532f09e3f55268b4f02c490e3 · software repository

Source files and licenses

Useful robotics optimization dependency with MIT repository terms; external components retain separate terms.

LayerAvailability / license
softwareavailable · MIT
Repository materials only; external components retain their own terms. [7]
documentationavailable · MIT
Repository materials only; external components retain their own terms. [7]

The solver example does not require trained weights.

The waypoint example constructs its inputs in code.

References

Each source links to the exact revision we read. “Used for” shows where this page relies on it.

Correction guidance · Discussion is not enabled · Profile format 0.7.0-draft.5

Change history