Frenet Vehicle Kinematics

Defines the vehicle's Frenet state through the closest-point projection of the rear-axle center, derives a three-state time-domain model and a two-state reference-path-arc-length-domain model under the no-sideslip kinematic assumption, and explains arc-length conversion, the coordinate validity domain, and sign conventions for reversing.

First published
Last updated

On this page

Basic terminology and definition of the Frenet state

This article considers only vehicle kinematics: it describes how position and heading change with motion, without constructing a dynamic model of tire forces, load transfer, vehicle mass, or similar effects. The vehicle moves in a plane, and the center of its rear axle is used as the position reference point.

A state here is a set of variables that describes the vehicle’s geometric position and orientation relative to the reference path and evolves with an independent variable. An input is supplied from outside the model and determines the state derivatives. A model whose independent variable is time tt is called a time-domain model. A model whose independent variable is the reference-path arc length ss is called a reference-path-arc-length-domain model, or, more briefly, a spatial-domain model.

The reference path is a C2C^2 planar curve parameterized by arc length ss:

r:I⟶R2,s⟼r(s).\mathbf r:I\longrightarrow\mathbb R^2, \qquad s\longmapsto\mathbf r(s).

Here, II is the range of the arc-length parameter ss. Give the Cartesian plane its standard orientation and let JJ denote counterclockwise rotation by 90∘90^\circ. The reference path’s unit tangent, left unit normal, signed curvature, and continuously unwrapped heading angle are denoted respectively by T\mathbf T, N\mathbf N, κr\kappa_r, and θr\theta_r. The following planar signed Frenet relations are used:

T(s)=drds,N(s)=JT(s),dTds=κrN,dNds=−κrT,κr=dθrds.\begin{aligned} \mathbf T(s) &= \frac{\mathrm{d}\mathbf r}{\mathrm{d}s},& \mathbf N(s) &= J\mathbf T(s),\\[0.6em] \frac{\mathrm{d}\mathbf T}{\mathrm{d}s} &= \kappa_r\mathbf N,& \frac{\mathrm{d}\mathbf N}{\mathrm{d}s} &= -\kappa_r\mathbf T,\\[0.6em] \kappa_r &= \frac{\mathrm{d}\theta_r}{\mathrm{d}s}. \end{aligned}

The curvature sign follows the left-normal convention: when traversing the reference path in the direction of increasing ss, a left turn has κr>0\kappa_r>0 and a right turn has κr<0\kappa_r<0. The complete construction of arc length, frames, standard orientation, and these formulas appears in Planar Frenet Frame. This article uses that construction as the geometric foundation of the vehicle kinematics.

Let z(t)\mathbf z(t) denote the position vector of the rear-axle center in a fixed planar coordinate system, and let θ(t)\theta(t) be the vehicle heading angle. Define the corresponding heading unit vector by

eθ(t):=[cos⁡θ(t)sin⁡θ(t)].\mathbf e_\theta(t):= \begin{bmatrix} \cos\theta(t)\\ \sin\theta(t) \end{bmatrix}.

Let v(t)v(t) be the signed longitudinal velocity, positive in the eθ\mathbf e_\theta direction. No sideslip means that the instantaneous velocity of the rear-axle center has no component perpendicular to the vehicle’s longitudinal axis:

z˙=veθ.\dot{\mathbf z}=v\mathbf e_\theta.

Thus, v>0v>0 when driving forward, v<0v<0 when reversing, and v=0v=0 when stationary. The vector eθ\mathbf e_\theta always describes the vehicle-body orientation; the actual direction of velocity while the vehicle is moving also depends on the sign of vv.

Let ℓ\ell be the oriented arc-length coordinate of the rear-axle-center trajectory. Given an initial value ℓ(t0)\ell(t_0), define

ℓ(t)=ℓ(t0)+∫t0tv(τ) dτ,\ell(t)=\ell(t_0)+\int_{t_0}^{t}v(\tau)\,\mathrm{d}\tau,

so that

dℓdt=v.\frac{\mathrm{d}\ell}{\mathrm{d}t}=v.

The value of ℓ\ell increases while driving forward and decreases while reversing. It is not the monotonically increasing cumulative distance, whose increment would instead be computed from ∣v∣ dt|v|\,\mathrm{d}t. On a trajectory segment where v≠0v\ne0, ℓ\ell can serve as a local parameter. The chain rule then gives dz/dℓ=eθ\mathrm{d}\mathbf z/\mathrm{d}\ell=\mathbf e_\theta, so the signed curvature of the vehicle trajectory under this orientation is defined by

κv:=dθdℓ.\kappa_v := \frac{\mathrm{d}\theta}{\mathrm{d}\ell}.

For a given vehicle position, the closest-point projection finds the point on the reference path that minimizes the distance to the rear-axle center. This article assumes that the projection is unique and lies in the interior of the reference-path parameter interval, so the line from the projection point to the rear-axle center is perpendicular to the path. Denote the projection point’s arc-length coordinate by s(t)s(t). Let d(t)d(t) be the signed distance from that point to the vehicle along the left unit normal N\mathbf N: d>0d>0 places the vehicle to the left of the increasing-ss direction, and d<0d<0 places it to the right. Define the difference between the vehicle heading and the reference heading at the projection point by

φ(t):=θ(t)−θr(s(t)).\varphi(t) := \theta(t)-\theta_r\bigl(s(t)\bigr).

Both θ\theta and θr\theta_r are continuously unwrapped along the trajectory segment under consideration, preventing an artificial jump in φ\varphi when an angle representation crosses the ±π\pm\pi boundary. The time-domain model uses time tt as its independent variable and (s,d,φ)(s,d,\varphi) as its state. The reference-path-arc-length-domain, or spatial-domain, model instead uses ss as its independent variable and therefore requires only (d,φ)(d,\varphi) as its state. Figure 1 shows the geometric relationship among these quantities. The vectors T(s)\mathbf T(s) and N(s)\mathbf N(s) are the Frenet basis vectors at the projection point; the purple bidirectional dimension line is the lateral deviation dd from the reference path to the rear-axle center; and the arrow eθ\mathbf e_\theta at the rear-axle center is the vehicle heading unit vector.

Throughout this article, upright d\mathrm{d} denotes the differential symbol, distinct from the italic lateral-deviation variable dd; d˙\dot d denotes the time derivative of that deviation.

T(s)N(s)eθd

‖T‖ = ‖N‖ = 1

Figure 1. Geometric definition of the vehicle Frenet state. The blue point is the vehicle’s projection onto the reference path, and T(s)\mathbf T(s) and N(s)\mathbf N(s) are the tangent and left-normal basis vectors at that point. The rear-axle center satisfies z=r(s)+dN(s)\mathbf z=\mathbf r(s)+d\mathbf N(s); the purple bidirectional dimension line denotes the lateral deviation dd, and eθ\mathbf e_\theta is the vehicle heading unit vector.

Time-domain Frenet kinematics

Position-coordinate kinematics

From the normal-coordinate representation in Figure 1, the vehicle position is

z(t)=r(s(t))+d(t)N(s(t)).(1)\mathbf z(t) = \mathbf r\bigl(s(t)\bigr) + d(t)\mathbf N\bigl(s(t)\bigr). \tag{1}

Differentiate Equation (1) with respect to time tt, using dr/ds=T\mathrm{d}\mathbf r/\mathrm{d}s=\mathbf T and dN/ds=−κrT\mathrm{d}\mathbf N/\mathrm{d}s=-\kappa_r\mathbf T:

z˙=drdss˙+d˙ N+d dNdss˙=Ts˙+d˙ N−dκrTs˙=(1−dκr)s˙ T+d˙ N.\begin{aligned} \dot{\mathbf z} &= \frac{\mathrm{d}\mathbf r}{\mathrm{d}s}\dot s + \dot d\,\mathbf N + d\,\frac{\mathrm{d}\mathbf N}{\mathrm{d}s}\dot s\\[0.6em] &= \mathbf T\dot s + \dot d\,\mathbf N - d\kappa_r\mathbf T\dot s\\[0.6em] &= (1-d\kappa_r)\dot s\,\mathbf T + \dot d\,\mathbf N. \end{aligned}

Here and below, any T\mathbf T, N\mathbf N, and κr\kappa_r without an explicit argument are evaluated at the projection point s(t)s(t). The no-sideslip assumption gives z˙=veθ\dot{\mathbf z}=v\mathbf e_\theta. This relation remains valid for both v>0v>0 while driving forward and v<0v<0 while reversing. Since (T,N)(\mathbf T,\mathbf N) is an orthonormal basis, eθ\mathbf e_\theta can be expanded by its orthogonal projections onto the two basis directions:

eθ=⟨eθ,T⟩T+⟨eθ,N⟩N.\mathbf e_\theta = \langle\mathbf e_\theta,\mathbf T\rangle\mathbf T + \langle\mathbf e_\theta,\mathbf N\rangle\mathbf N.

Substituting

T=[cos⁡θrsin⁡θr],N=[−sin⁡θrcos⁡θr]\mathbf T = \begin{bmatrix} \cos\theta_r\\ \sin\theta_r \end{bmatrix}, \qquad \mathbf N = \begin{bmatrix} -\sin\theta_r\\ \cos\theta_r \end{bmatrix}

into the projection coefficients gives

⟨eθ,T⟩=cos⁡θcos⁡θr+sin⁡θsin⁡θr=cos⁡(θ−θr)=cos⁡φ,⟨eθ,N⟩=−cos⁡θsin⁡θr+sin⁡θcos⁡θr=sin⁡(θ−θr)=sin⁡φ.\begin{aligned} \langle\mathbf e_\theta,\mathbf T\rangle &= \cos\theta\cos\theta_r + \sin\theta\sin\theta_r\\ &= \cos(\theta-\theta_r) = \cos\varphi,\\[0.7em] \langle\mathbf e_\theta,\mathbf N\rangle &= -\cos\theta\sin\theta_r + \sin\theta\cos\theta_r\\ &= \sin(\theta-\theta_r) = \sin\varphi. \end{aligned}

Therefore, the vehicle heading unit vector has the following representation in the Frenet frame:

eθ=cos⁡φ T+sin⁡φ N.\mathbf e_\theta = \cos\varphi\,\mathbf T + \sin\varphi\,\mathbf N.

The vehicle velocity is consequently

z˙=veθ=vcos⁡φ T+vsin⁡φ N.\dot{\mathbf z} = v\mathbf e_\theta = v\cos\varphi\,\mathbf T + v\sin\varphi\,\mathbf N.

Using the same Frenet frame and the same resultant velocity vector, Figure 2 separately shows the two components obtained by differentiating the position coordinates and by expressing the no-sideslip velocity. Placing them side by side makes the subsequent coefficient comparison a direct geometric correspondence.

(a)
z˙\dot{\mathbf z}(1−dκr)s˙ T(1-d\kappa_r)\dot{s}\,\mathbf Td˙ N\dot{d}\,\mathbf N
(b)
v eθv cosφ Tv sinφ N

Figure 2. Two decompositions of the same vehicle velocity vector in the same Frenet frame. (a) Differentiating the position coordinates gives the tangential component (1−dκr)s˙ T(1-d\kappa_r)\dot s\,\mathbf T and normal component d˙ N\dot d\,\mathbf N. (b) The no-sideslip constraint gives the tangential component vcos⁡φ Tv\cos\varphi\,\mathbf T and normal component vsin⁡φ Nv\sin\varphi\,\mathbf N. Because decomposition in an orthonormal basis is unique, the scalar coefficients of corresponding components must be equal.

Equating the coefficients of the same velocity vector in the basis (T,N)(\mathbf T,\mathbf N) gives

(1−dκr)s˙=vcos⁡φ,d˙=vsin⁡φ.(1-d\kappa_r)\dot s = v\cos\varphi, \qquad \dot d = v\sin\varphi.

When 1−dκr≠01-d\kappa_r\ne0, the time-domain position kinematics are

s˙=vcos⁡φ1−dκr,d˙=vsin⁡φ.\dot s = \frac{v\cos\varphi}{1-d\kappa_r}, \qquad \dot d = v\sin\varphi.

The normal coordinates and velocity decomposition of Equation (1) appear in [1, §2.1–2.2, Eqs. (14)–(20)], and an equivalent position representation appears in [2, §3.1, Eq. (1)]. The longitudinal and lateral state equations under the same coordinate convention appear in [3, §4.3, Eqs. (4.33a)–(4.33b)].

Heading-error kinematics

The heading error is defined by

φ(t)=θ(t)−θr(s(t)).\varphi(t) = \theta(t) - \theta_r\bigl(s(t)\bigr).

Apply the chain rule with respect to time and substitute κr=dθr/ds\kappa_r=\mathrm{d}\theta_r/\mathrm{d}s:

φ˙=θ˙−dθrdss˙=θ˙−κrs˙.\begin{aligned} \dot\varphi &= \dot\theta - \frac{\mathrm{d}\theta_r}{\mathrm{d}s}\dot s\\[0.6em] &= \dot\theta - \kappa_r\dot s. \end{aligned}

On an interval where v≠0v\ne0, using κv=dθ/dℓ\kappa_v=\mathrm{d}\theta/\mathrm{d}\ell and dℓ/dt=v\mathrm{d}\ell/\mathrm{d}t=v gives

θ˙=dθdℓdℓdt=vκv.\begin{aligned} \dot\theta &= \frac{\mathrm{d}\theta}{\mathrm{d}\ell}\frac{\mathrm{d}\ell}{\mathrm{d}t}\\[0.6em] &= v\kappa_v. \end{aligned}

When v=0v=0, ℓ\ell cannot locally replace tt as a parameter at that instant. If the curvature input κv\kappa_v is bounded, however, the kinematic relation θ˙=vκv\dot\theta=v\kappa_v extends continuously to the stationary state, where θ˙=0\dot\theta=0.

The heading-error kinematics are therefore

φ˙=vκv−κrs˙.\dot\varphi = v\kappa_v - \kappa_r\dot s.

Three-state time-domain model

Combining the heading-error kinematics with the position-coordinate kinematics gives the three-state time-domain model for (s,d,φ)(s,d,\varphi):

s˙=vcos⁡φ1−dκr,d˙=vsin⁡φ,φ˙=vκv−s˙ κr=v(κv−κrcos⁡φ1−dκr).(2)\begin{aligned} \dot s &= \frac{v\cos\varphi}{1-d\kappa_r},\\[0.65em] \dot d &= v\sin\varphi,\\[0.65em] \dot\varphi &= v\kappa_v - \dot s\,\kappa_r\\[0.65em] &= v\left( \kappa_v-\frac{\kappa_r\cos\varphi}{1-d\kappa_r} \right). \end{aligned} \tag{2}

Here, κr=κr(s)\kappa_r=\kappa_r(s) is determined by the reference path. The signed longitudinal velocity vv and vehicle-trajectory curvature κv\kappa_v are treated as inputs to the kinematic model. In a particular steering model, κv\kappa_v is normally determined in turn by the steering geometry. Model validity requires both a unique closest-point projection and 1−dκr≠01-d\kappa_r\ne0. The former gives the vehicle position a unique (s,d)(s,d) representation, while the latter is the local regularity condition that prevents the normal-coordinate map from degenerating in the tangential direction. The region satisfying both conditions is called the Frenet-coordinate validity domain here. A standard Frenet vehicle model corresponding to Equation (2) appears in [3, §4.3, Eq. (4.41)].

Reversing in the time-domain model

Equation (2) applies to reversing without a separate derivation. The time-domain derivation already defines vv as the signed longitudinal velocity positive along the heading unit vector eθ\mathbf e_\theta and uses the same no-sideslip kinematics:

z˙=veθ,θ˙=vκv.\dot{\mathbf z}=v\mathbf e_\theta, \qquad \dot\theta=v\kappa_v.

Neither relation requires v>0v>0. When driving forward, v>0v>0 and the velocity vector z˙\dot{\mathbf z} points in the same direction as eθ\mathbf e_\theta. When reversing, v<0v<0 and z˙\dot{\mathbf z} points in the opposite direction. Differentiating the position-coordinate relation (1) with respect to time, comparing components in the Frenet frame, and applying the chain rule to the heading error are all independent of the sign of vv. The same three-state model therefore remains valid in reverse.

Let sgn⁡(x)\operatorname{sgn}(x) denote the sign function, whose value is respectively 11, 00, or −1-1 when x>0x>0, x=0x=0, or x<0x<0. From Equation (2), the direction of change of the reference-path arc-length coordinate generally satisfies

sgn⁡(s˙)=sgn⁡(v)sgn⁡ ⁣(cos⁡φ1−dκr).\operatorname{sgn}(\dot s)= \operatorname{sgn}(v) \operatorname{sgn}\!\left(\frac{\cos\varphi}{1-d\kappa_r}\right).

In the usual Frenet tracking region where 1−dκr>01-d\kappa_r>0 and ∣φ∣<π/2|\varphi|<\pi/2, forward motion has s˙>0\dot s>0 and reversing has s˙<0\dot s<0. More generally, the sign must be determined from the equation above; “reversing” alone does not determine the sign of s˙\dot s independently of φ\varphi and 1−dκr1-d\kappa_r.

For a strict comparison, fix the same state (s,d,φ)(s,d,\varphi), the same vehicle curvature κv\kappa_v, and the same speed magnitude u>0u>0, changing only the longitudinal velocity from forward v=uv=u to reverse v=−uv=-u:

QuantityForward: v=uv=uReverse: v=−uv=-uDefinition or model changed?
Vehicle velocity z˙\dot{\mathbf z}ueθu\mathbf e_\theta−ueθ-u\mathbf e_\thetaNo-sideslip relation unchanged
Oriented arc-length rate dℓ/dt\mathrm{d}\ell/\mathrm{d}tuu−u-uAlways dℓ/dt=v\mathrm{d}\ell/\mathrm{d}t=v
Reference-path coordinate rate s˙\dot sucos⁡φ1−dκr\dfrac{u\cos\varphi}{1-d\kappa_r}−ucos⁡φ1−dκr-\dfrac{u\cos\varphi}{1-d\kappa_r}Determined by the same state equation
Lateral-deviation rate d˙\dot dusin⁡φu\sin\varphi−usin⁡φ-u\sin\varphiDefinition of dd unchanged
Heading rate θ˙\dot\thetauκvu\kappa_v−uκv-u\kappa_vκv\kappa_v is not artificially negated
Heading-error rate φ˙\dot\varphiu(κv−κrcos⁡φ1−dκr)u\left(\kappa_v-\dfrac{\kappa_r\cos\varphi}{1-d\kappa_r}\right)−u(κv−κrcos⁡φ1−dκr)-u\left(\kappa_v-\dfrac{\kappa_r\cos\varphi}{1-d\kappa_r}\right)Definition of φ\varphi unchanged
Reference curvature κr\kappa_r and vehicle curvature κv\kappa_vExisting sign conventionsSame sign conventionsNeither is modified
Equation (2)Original equationsOriginal equationsCompletely unchanged

Under these comparison conditions, changing only the sign of vv reverses all three state derivatives in Equation (2). Time tt continues to advance in its positive direction. Unlike reversing in the reference-path-arc-length-domain model, time-domain reversing is represented by v<0v<0, not by integrating time backward. When stationary, v=0v=0, and Equation (2) gives s˙=d˙=φ˙=0\dot s=\dot d=\dot\varphi=0.

Reference-path-arc-length-domain Frenet kinematics

This section constructs the model directly from the arc-length-parameterized position-coordinate relation and heading-error relation. It neither invokes the time-domain state equations nor uses time derivatives.

Oriented arc-length coordinate of the vehicle trajectory

The variable ss is the arc-length coordinate of the projection point on the reference path. The variable ℓ\ell is the oriented arc-length coordinate of the rear-axle-center trajectory, positive along the vehicle heading unit vector eθ\mathbf e_\theta. On a nonstationary trajectory segment where the Frenet coordinates are valid, ss and dd can both be treated as functions of ℓ\ell, so Equation (1) becomes

z(ℓ)=r(s(ℓ))+d(ℓ)N(s(ℓ)).\mathbf z(\ell) = \mathbf r\bigl(s(\ell)\bigr) + d(\ell)\mathbf N\bigl(s(\ell)\bigr).

Differentiate directly with respect to ℓ\ell:

dzdℓ=drdsdsdℓ+d ddℓN+ddNdsdsdℓ=Tdsdℓ+d ddℓN+ddNdsdsdℓ.\begin{aligned} \frac{\mathrm{d}\mathbf z}{\mathrm{d}\ell} &= \frac{\mathrm{d}\mathbf r}{\mathrm{d}s}\frac{\mathrm{d}s}{\mathrm{d}\ell} + \frac{\mathrm{d}\,d}{\mathrm{d}\ell}\mathbf N + d\frac{\mathrm{d}\mathbf N}{\mathrm{d}s}\frac{\mathrm{d}s}{\mathrm{d}\ell}\\[0.8em] &= \mathbf T\frac{\mathrm{d}s}{\mathrm{d}\ell} + \frac{\mathrm{d}\,d}{\mathrm{d}\ell}\mathbf N + d\frac{\mathrm{d}\mathbf N}{\mathrm{d}s}\frac{\mathrm{d}s}{\mathrm{d}\ell}. \end{aligned}

From the Frenet relation dN/ds=−κrT\mathrm{d}\mathbf N/\mathrm{d}s=-\kappa_r\mathbf T and ⟨T,N⟩=0\langle\mathbf T,\mathbf N\rangle=0,

⟨dNds,N⟩=−κr⟨T,N⟩=0.\left\langle \frac{\mathrm{d}\mathbf N}{\mathrm{d}s}, \mathbf N \right\rangle =-\kappa_r\langle\mathbf T,\mathbf N\rangle=0.

Project the position derivative onto N\mathbf N and use ⟨T,N⟩=0\langle\mathbf T,\mathbf N\rangle=0 and ⟨N,N⟩=1\langle\mathbf N,\mathbf N\rangle=1:

⟨dzdℓ,N⟩=d ddℓ.\left\langle \frac{\mathrm{d}\mathbf z}{\mathrm{d}\ell}, \mathbf N \right\rangle = \frac{\mathrm{d}\,d}{\mathrm{d}\ell}.

By the orientation of ℓ\ell and the no-sideslip constraint, the unit tangent of the vehicle trajectory with respect to ℓ\ell is the heading unit vector:

dzdℓ=eθ=cos⁡φ T+sin⁡φ N.\frac{\mathrm{d}\mathbf z}{\mathrm{d}\ell} = \mathbf e_\theta = \cos\varphi\,\mathbf T + \sin\varphi\,\mathbf N.

Its normal component is

⟨dzdℓ,N⟩=sin⁡φ.\left\langle \frac{\mathrm{d}\mathbf z}{\mathrm{d}\ell}, \mathbf N \right\rangle = \sin\varphi.

Equating the same normal component gives

d ddℓ=sin⁡φ=sin⁡(θ−θr).\frac{\mathrm{d}\,d}{\mathrm{d}\ell} = \sin\varphi = \sin(\theta-\theta_r).

This result follows directly from the position relation parameterized by ℓ\ell and is not inferred backward from time derivatives. Reference-path curvature does not appear explicitly because the projection of dN/ds=−κrT\mathrm{d}\mathbf N/\mathrm{d}s=-\kappa_r\mathbf T onto the N\mathbf N direction is zero. General regularity of the closest-point map within a tubular neighborhood is discussed in [4, §2.1, Eq. (4), Proposition 2 and Theorem 3].

Local relationship between reference-path and vehicle-trajectory arc lengths

Substituting dN/ds=−κrT\mathrm{d}\mathbf N/\mathrm{d}s=-\kappa_r\mathbf T into the position derivative from the previous subsection gives

dzdℓ=(1−dκr)dsdℓT+d ddℓN.\frac{\mathrm{d}\mathbf z}{\mathrm{d}\ell} = (1-d\kappa_r)\frac{\mathrm{d}s}{\mathrm{d}\ell}\mathbf T + \frac{\mathrm{d}\,d}{\mathrm{d}\ell}\mathbf N.

At the same time, the vehicle-trajectory unit tangent with respect to oriented arc length ℓ\ell is

dzdℓ=cos⁡φ T+sin⁡φ N.\frac{\mathrm{d}\mathbf z}{\mathrm{d}\ell} = \cos\varphi\,\mathbf T + \sin\varphi\,\mathbf N.

Equating tangential components gives

(1−dκr)dsdℓ=cos⁡φ.(1-d\kappa_r)\frac{\mathrm{d}s}{\mathrm{d}\ell} = \cos\varphi.

When 1−dκr≠01-d\kappa_r\ne0 and cos⁡φ≠0\cos\varphi\ne0, this equation gives ds/dℓ≠0\mathrm{d}s/\mathrm{d}\ell\ne0, so ss and ℓ\ell are locally interchangeable parameters. “Locally interchangeable” means that, near the current point, the same vehicle-trajectory segment can be described using either ss or ℓ\ell, with a differentiable local inverse transformation between them. Their local arc-length relationship is

dℓds=1−dκrcos⁡φ.(3)\frac{\mathrm{d}\ell}{\mathrm{d}s} = \frac{1-d\kappa_r}{\cos\varphi}. \tag{3}

The inverse relation is

dsdℓ=cos⁡φ1−dκr.\frac{\mathrm{d}s}{\mathrm{d}\ell} = \frac{\cos\varphi}{1-d\kappa_r}.

For an interactive examination of how dd, κr\kappa_r, and φ\varphi jointly affect the local arc-length relationship in Equation (3), together with the Frenet geometric configurations corresponding to degeneration of the coordinate map and failure of the parameterization, see Frenet Arc-Length Conversion.

Lateral-deviation equation

On an interval where ds/dℓ≠0\mathrm{d}s/\mathrm{d}\ell\ne0, the chain rule gives

d ddℓ=d ddsdsdℓ.\frac{\mathrm{d}\,d}{\mathrm{d}\ell} = \frac{\mathrm{d}\,d}{\mathrm{d}s}\frac{\mathrm{d}s}{\mathrm{d}\ell}.

Substituting d d/dℓ=sin⁡φ\mathrm{d}\,d/\mathrm{d}\ell=\sin\varphi and the inverse of Equation (3) yields

d dds=sin⁡φcos⁡φ/(1−dκr)=(1−dκr)tan⁡φ.\begin{aligned} \frac{\mathrm{d}\,d}{\mathrm{d}s} &= \frac{\sin\varphi} {\cos\varphi/(1-d\kappa_r)}\\[0.6em] &= (1-d\kappa_r)\tan\varphi. \end{aligned}

The relation d d/dℓ=sin⁡φ\mathrm{d}\,d/\mathrm{d}\ell=\sin\varphi contains no explicit reference-path curvature because it describes normal displacement per unit oriented vehicle-trajectory arc length. By contrast, d d/ds\mathrm{d}\,d/\mathrm{d}s explicitly contains κr\kappa_r, because changing the independent variable to the reference-path arc-length coordinate requires the inverse of Equation (3) for the scale conversion.

Heading-error equation

Under the conditions for Equation (3), ss and ℓ\ell are locally interchangeable parameters. Along the same vehicle trajectory, write the heading error directly as

φ(s)=θ(ℓ(s))−θr(s).\varphi(s)=\theta\bigl(\ell(s)\bigr)-\theta_r(s).

Differentiate with respect to reference-path arc length ss, using κv=dθ/dℓ\kappa_v=\mathrm{d}\theta/\mathrm{d}\ell, κr=dθr/ds\kappa_r=\mathrm{d}\theta_r/\mathrm{d}s, and Equation (3):

dφds=dθdℓdℓds−dθrds=κv1−dκrcos⁡φ−κr.\begin{aligned} \frac{\mathrm{d}\varphi}{\mathrm{d}s} &= \frac{\mathrm{d}\theta}{\mathrm{d}\ell}\frac{\mathrm{d}\ell}{\mathrm{d}s}-\frac{\mathrm{d}\theta_r}{\mathrm{d}s}\\[0.65em] &= \kappa_v\frac{1-d\kappa_r}{\cos\varphi}-\kappa_r. \end{aligned}

The first term is the rate of change of vehicle heading per unit reference-path arc length, while the second term, κr=dθr/ds\kappa_r=\mathrm{d}\theta_r/\mathrm{d}s, is the rate of change of reference heading under the same independent variable.

Two-state reference-path-arc-length-domain model

Combining the lateral-deviation and heading-error equations gives the spatial-domain model with independent variable ss and state (d,φ)(d,\varphi):

d dds=(1−dκr)tan⁡φ,dφds=(1−dκr)κvcos⁡φ−κr.(4)\begin{aligned} \frac{\mathrm{d}\,d}{\mathrm{d}s} &= (1-d\kappa_r)\tan\varphi,\\[0.7em] \frac{\mathrm{d}\varphi}{\mathrm{d}s} &= \frac{(1-d\kappa_r)\kappa_v}{\cos\varphi}-\kappa_r. \end{aligned} \tag{4}

Here, κr=κr(s)\kappa_r=\kappa_r(s) is determined by the reference path, and κv\kappa_v is the vehicle-trajectory curvature input. Equation (4) follows entirely from arc-length-parameterized geometric relations and does not depend on the time-domain model. In addition to a unique closest-point projection and 1−dκr≠01-d\kappa_r\ne0, it requires cos⁡φ≠0\cos\varphi\ne0. Otherwise, ds/dℓ=0\mathrm{d}s/\mathrm{d}\ell=0, and the reference-path arc-length coordinate ss cannot serve as a local independent variable of the vehicle trajectory at that point.

Reversing in the arc-length-domain model

Equation (4) also applies to reversing without a separate derivation. The reason is that the preceding derivation uses the oriented arc-length coordinate ℓ\ell, positive along the vehicle heading unit vector, and relies only on the no-sideslip geometric differential relations

dz=eθ dℓ,dθ=κv dℓ.\mathrm{d}\mathbf z=\mathbf e_\theta\,\mathrm{d}\ell, \qquad \mathrm{d}\theta=\kappa_v\,\mathrm{d}\ell.

Neither relation requires dℓ>0\mathrm{d}\ell>0. For forward motion, dℓ>0\mathrm{d}\ell>0 and the displacement dz\mathrm{d}\mathbf z points with eθ\mathbf e_\theta. For reverse motion, dℓ<0\mathrm{d}\ell<0 and dz\mathrm{d}\mathbf z points against eθ\mathbf e_\theta, while dz/dℓ=eθ\mathrm{d}\mathbf z/\mathrm{d}\ell=\mathbf e_\theta remains true. The component comparison of the position differential, arc-length conversion, and chain rule are therefore unchanged in reverse, yielding the same two-state model.

The inverse of Equation (3) gives

dsdℓ=cos⁡φ1−dκr.\frac{\mathrm{d}s}{\mathrm{d}\ell}=\frac{\cos\varphi}{1-d\kappa_r}.

In general, the signs of ds\mathrm{d}s and dℓ\mathrm{d}\ell are related by

sgn⁡(ds)=sgn⁡(dℓ)sgn⁡ ⁣(cos⁡φ1−dκr).\operatorname{sgn}(\mathrm{d}s)= \operatorname{sgn}(\mathrm{d}\ell) \operatorname{sgn}\!\left(\frac{\cos\varphi}{1-d\kappa_r}\right).

In the usual Frenet tracking region where 1−dκr>01-d\kappa_r>0 and ∣φ∣<π/2|\varphi|<\pi/2, ds/dℓ>0\mathrm{d}s/\mathrm{d}\ell>0, so forward motion has ds>0\mathrm{d}s>0 and reverse motion has ds<0\mathrm{d}s<0. Given the same vehicle-curvature function κv(s)\kappa_v(s) and the same initial state, the same spatial-domain equations determine the same (d,φ)(d,\varphi) state curve for forward and reverse motion; the curve is simply traversed in opposite directions of ss. The right-hand side of Equation (4) requires no modification.

Within this usual tracking region, while keeping the same state, initial condition, and curvature input, the quantities correspond as follows:

QuantityForwardReverseDefinition or model changed?
Oriented vehicle-trajectory arc-length increment dℓ\mathrm{d}\elldℓ>0\mathrm{d}\ell>0dℓ<0\mathrm{d}\ell<0Definition unchanged
Vehicle displacement dz=eθdℓ\mathrm{d}\mathbf z=\mathbf e_\theta \mathrm{d}\ellSame direction as eθ\mathbf e_\thetaOpposite direction to eθ\mathbf e_\thetaGeometric relation unchanged
Reference-path arc-length increment ds\mathrm{d}sds>0\mathrm{d}s>0ds<0\mathrm{d}s<0Determined by Equation (3)
Heading increment dθ=κvdℓ\mathrm{d}\theta=\kappa_v \mathrm{d}\ellAccumulates along positive arc lengthIncrement direction reverses for the same κv\kappa_vκv\kappa_v is not artificially negated
States dd, φ\varphiEvolve forward in ssEvolve backward in ssState definitions unchanged and not pre-negated
Reference curvature κr\kappa_r and vehicle curvature κv\kappa_vExisting sign conventionsSame sign conventionsNeither is modified
Two right-hand sides of Equation (4)Original formOriginal formCompletely unchanged

Accordingly, when solving directly in ss within this usual tracking region, forward motion integrates from a smaller ss to a larger ss, while reverse motion integrates from a larger ss to a smaller ss. On a reversing segment beginning at sstarts_{\mathrm{start}} with monotonically decreasing ss, a numerical implementation may define an increasing progress variable σ=sstart−s\sigma=s_{\mathrm{start}}-s. Since d/dσ=−d/ds\mathrm{d}/\mathrm{d}\sigma=-\mathrm{d}/\mathrm{d}s, both state-equation right-hand sides then acquire an overall factor of −1-1. This is a consequence of changing the independent variable, not a modification of Equation (4) caused by reversing.

References

  1. Jan Eilbrecht and Olaf Stursberg,

    Challenges of Trajectory Planning with Integrator Models on Curved Roads

    , IFAC-PapersOnLine, 53(2), 2020, doi: 10.1016/j.ifacol.2020.12.2492, §2.1–2.2, Eqs. (14)–(20). This reference is used to verify the Frenet position coordinates, velocity decomposition, and time-domain state equations.

  2. Keisuke Yoneda et al.,

    Trajectory Optimization and State Selection for Urban Automated Driving

    , Artificial Life and Robotics, 23, 474–480, 2018, §3.1, Eq. (1). This reference is used to verify the normal-coordinate position representation z=r(s)+dN(s)\mathbf z=\mathbf r(s)+d\mathbf N(s).

  3. Oskar Ljungqvist,

    Motion Planning and Feedback Control Techniques with Applications to Long Tractor-Trailer Vehicles

    , Linköping Studies in Science and Technology, Dissertation No. 2070, Linköping University, 2020, doi: 10.3384/diss.diva-165246, §4.3. This reference is used to verify the regular domain of Frenet coordinates and the three-state vehicle-kinematics model.

  4. Catherine Kublik and Richard Tsai,

    Integration over Curves and Surfaces Defined by the Closest Point Mapping

    , Research in the Mathematical Sciences, 3, Article 3, 2016, doi: 10.1186/s40687-016-0053-1, §2.1, Eq. (4), Proposition 2 and Theorem 3. This reference supplies the general regularity background for the closest-point map and its tubular neighborhood.