car_reeds_shepp_path — GRAPH path op

• Data kinds: matrix → table

• Call: import fullseye as fs; fs.ledger.car_reeds_shepp_path(poses, radius=1.0, step=0.05) (to call the implementation directly, import carpath; carpath.car_reeds_shepp_path(poses, radius=1.0, step=0.05); from the registry, opsgraph.get("car_reeds_shepp_path"))

Usage

Shortest path of a car that may reverse, between two poses (Reeds and Shepp 1990), by closed form.

`poses is [[x, y, theta], [x', y', theta']]` (start, goal). The car turns with minimum radius

`radius` and may change gear. Reeds and Shepp proved the shortest path has at most five segments

drawn from 48 words (Sussmann and Tang 1991: 46 suffice); the 44 formulas used here (the 12 base

words of the paper expanded by time reversal, reflection and backwards reading, as in OMPL) generate

every candidate. Each candidate is verified by forward integration and discarded if it misses the

goal (counted in `n_rejected`); the shortest survivor is the answer. Reversed segments carry

`gear = -1`.

Returns `word (letters L/S/R; reversed segments are lower-case), length` (metres, sum of

absolute segment lengths), `segments [(kind, gear, length)], points (N, 3)` poses

sampled every `step metres, candidates [(word, length)] sorted, n_candidates`,

`n_rejected, lower_bound (Euclidean distance), radius`.

Raises `ValueError: poses not (2, 3) finite; radius or step` not positive; no word

reached the goal.

References (sample data, literature)

• Sample-data catalog (download URLs / licences) — 2-D uses skimage.data (BSD/public domain) plus synthetic images; 3-D lists download URLs for real data sources (Stanford, PDS, …).

• Operator provenance and references — the sources of the research/methods this op family came from.

• The canonical algorithm (author, year) and its uses are named in the family usage guide above.

Runnable examples (verified samples that actually call this op)

• poc_car_parking — py -3.11 examples/poc_car_parking.py

Ops the type connects to (they accept table as input)

graph_edge_consensus · graph_core_persistence · tree_morphometry · tree_sholl · tree_run_length

Same category (path)

car_dubins_path · car_hybrid_astar


*Provenance: carpath.py — GRAPH operator registry. This per-op note is generated by tools/opdocs.py md (do not hand-edit).*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.