Probabilistic Trajectory Prediction with Gaussian Mixture Models
Probabilistic Trajectory Prediction with Gaussian Mixture Models
Trajectory Representation
input data: short trajectory pieces.
Trajectory $T$:
$$
T = ((x_0,y_0,z_0),t0), \cdots, ((x_{N-1},y_{N-1},z_{N-1}),t_{N-1}) described by $p_X, p_y, p_z$
$$
described by $p_X, p_y, p_z$ or described by roll, pitch and yaw angle $\phi(t_i), \theta(t_i), \psi(t_i)$ and velocity $v_x, v_y,v_z$.
Chebyshev decomposition on the components of trajectory $\rightarrow$ coefficients as input features of GMM
polynomial $T_n$ of degree $n$
$$
T_n (x) = \cos(n \arccos (x))
$$
in detail,
$$
T_0(x) = 1 \
T_1(x) = x \
T_{n+1}(x) = 2x T_n(x) - T_{n-1}(x), \ n\ge 1
$$To approximate any arbitrary function $f(x)$ in $[-1,1]$, the Chebyshev coefficients are
$$
c_n = \frac {2}{N} \sum\limits_{k=0}^{N-1} f(x_k) T_n(x_k)
$$
where $x_k$ are N zeros of $T_N(x)$.reformulate as
$$
f(x) \approx \sum\limits_{n=0}^{m-1} c_n T_n(x) -\frac{1}{2}c_0
$$
code
numpy.polynomial.chebyshev
Basics | |
---|---|
chebval (x, c[, tensor]) |
Evaluate a Chebyshev series at points x. |
chebval2d (x, y, c) |
Evaluate a 2-D Chebyshev series at points (x, y). |
chebval3d (x, y, z, c) |
Evaluate a 3-D Chebyshev series at points (x, y, z). |
chebgrid2d (x, y, c) |
Evaluate a 2-D Chebyshev series on the Cartesian product of x and y. |
chebgrid3d (x, y, z, c) |
Evaluate a 3-D Chebyshev series on the Cartesian product of x, y, and z. |
chebroots (c) |
Compute the roots of a Chebyshev series. |
chebfromroots (roots) |
Generate a Chebyshev series with given roots |
Fitting | |
---|---|
chebfit (x, y, deg[, rcond, full, w]) |
Least squares fit of Chebyshev series to data. |
chebvander (x, deg) |
Pseudo-Vandermonde matrix of given degree. |
chebvander2d (x, y, deg) |
Pseudo-Vandermonde matrix of given degrees. |
chebvander3d (x, y, z, deg) |
Pseudo-Vandermonde matrix of given degrees. |