• Praktische Grundlagen der Informatik
  • Algorithmen und Datenstrukturen
  • Foundations for Robotic and AI
  • Übersicht Data Science:
  • Data Science / Machine Learning
  • Projekt: Deep Teaching
  • Alte Veranstaltungen:
  • Grundlagen der Informatik (NF)
  • Octave/Matlab Tutorial
  • Game Physik
  • Home
  • Lehre
  • Publikationen
  • Kontakt/Impressum

2D Motion of a Point¶

In 2D space, we describe the motion of a point using a Cartesian coordinate system with two orthogonal axes: $x$ (or $1$) and $y$ (or $2$).

Introduction: The Principle of Independence¶

The most critical concept in 2D point kinematics is that orthogonal motions are independent. An acceleration in the $x$-direction has no effect on the velocity or position in the $y$-direction. Because of this, the 2D motion of a point is simply two 1D motion problems happening simultaneously.

Differential Equations of Motion¶

The state of a point in 2D is defined by four variables:

  • position ($p_1, p_2$) and
  • velocity ($v_1, v_2$).

The relationships between the variables is defined by the following system of first-order differential equations:

For the horizontal axis (1):

$$\dot{p}_1 = v_1, \quad \dot{v}_1 = a_1$$

For the vertical axis (2):

$$\dot{p}_2 = v_2, \quad \dot{v}_2 = a_2$$

Discrete-Time Prediction: Forward Integration¶

In the context of a Kalman Filter, we must predict the state at the current time $k$ using information available from the previous time $k-1$. This is known as Forward Integration (or the Forward Euler method).

By assuming a constant acceleration $a_{i, k-1}$ (axis $i \in \{1,2\}$) over the interval $\Delta t$, we derive the following discrete-time prediction equations:

Position Update: $$p_{i,k} = p_{i,k-1} + v_{i,k-1} \Delta t + \frac{1}{2} a_{i,k-1} (\Delta t)^2$$

Velocity Update: $$v_{i,k} = v_{i,k-1} + a_{i,k-1} \Delta t$$

Integration Schemes¶

To implement the filter on a computer, we must convert our continuous differential equations ($\dot{p}, \dot{v}$) into discrete steps. The accuracy of our prediction depends on how we handle the acceleration over the interval $\Delta t$.

  • Forward Integration (Euler): Uses acceleration at $k-1$ to predict the state at $k$. This is the real-time standard because it allows an immediate "projection" into the future without waiting for new data.
  • Midpoint Integration: Uses the average acceleration $\bar{a}_i = \frac{a_{i,k-1} + a_{i,k}}{2}$. This is more accurate but requires a one-step delay to receive $a_k$.
  • Backward Integration: Uses acceleration at $k$. Like the midpoint method, this is non-causal and usually reserved for offline smoothing.

In this course, we use Forward Euler Integration. It is the most efficient choice for real-time tracking, as it provides an instant estimate the moment the previous state is known.

Matrix Form¶

In the Kalman Filter, these equations are packed into the State Transition Matrix $\mathbf{F}$ and the Control Matrix $\mathbf{B}$.

If we use Forward Integration, our matrices look like this:

$$\begin{bmatrix} p_1 \\ p_2 \\ v_1 \\ v_2 \end{bmatrix}_k = \underbrace{\begin{bmatrix} 1 & 0 & \Delta t & 0 \\ 0 & 1 & 0 & \Delta t \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \end{bmatrix}}_{\mathbf{F}} \begin{bmatrix} p_1 \\ p_2 \\ v_1 \\ v_2 \end{bmatrix}_{k-1} + \underbrace{\begin{bmatrix} \frac{1}{2}\Delta t^2 & 0 \\ 0 & \frac{1}{2}\Delta t^2 \\ \Delta t & 0 \\ 0 & \Delta t \end{bmatrix}}_{\mathbf{G}} \begin{bmatrix} a_1 \\ a_2 \end{bmatrix}_{k-1}$$

with matches our convention $$ \mathbf{x}_k = \mathbf{F} \mathbf{x}_{k-1} + \mathbf{G} \mathbf{u}_{k-1} $$

In [ ]:
 
Kontakt/Impressum