A.K.03/appendix/state-tracking.ipynb
Mehrdad Mihankhah 12cabf65ea initial commit
2025-11-16 15:37:13 +01:00

219 lines
87 KiB
Plaintext

{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# State tracking and state error feedback\n",
"**⚠️ Optional Advanced method**\n",
"The contents of this module cover advanced topics that not all students are expected to understand."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"\n",
"\n",
"\n",
"Imagine you're trying to keep track of a friend's location as they move around a city. You might predict their movement based on their planned route and speed, or receive updates from them via text messages about where they are. However, both methods have uncertainties: your predictions might be off if they take a detour or get delayed, and their updates might be inaccurate due to typos or delayed messages. To get the best estimate of your friend's actual location, you need to combine both your predictions and their updates in a smart way.\n",
"\n",
"This is where the Kalman filter comes into play. The Kalman filter is like a sophisticated tool that helps you estimate the true state of something—like your friend's location—by predicting the next state based on a model (such as their expected route and speed) and updating this prediction with new observations (like their text messages). It weighs both the prediction and the observation based on how much you trust them.\n",
"\n",
"But why do we need it? In many systems, especially in engineering and robotics, we need to know the current state—like position and speed—to make decisions or control actions. Measurements, such as sensor readings, are often noisy or imperfect, and models, like equations of motion, might not capture every real-world nuance. By using a Kalman filter, we can improve our estimates by combining predictions and observations, account for uncertainties in both the model and the measurements, and make better decisions based on more accurate state information.\n",
"\n",
"Think about using GPS navigation in your car. GPS signals provide your location but can be inaccurate due to signal loss or interference, while the car's motion model knows your car moves forward, turns, and so on. The navigation system uses a Kalman filter to predict where you should be based on your last known position and how fast you're driving, and then updates this prediction with new GPS data. This allows it to estimate your current position more accurately than using either method alone.\n",
"\n",
"The Kalman filter adjusts how much it trusts the model versus the measurements. If the measurements are noisy—for example, due to a poor GPS signal—it relies more on the model prediction. If the model is uncertain, such as when movement is unpredictable, it trusts the measurements more. The filter calculates a Kalman gain, which determines this balance.\n",
"\n",
"This is important in control systems like autonomous vehicles or robots, where making precise movements depends on knowing the current state accurately. State tracking involves continuously estimating the true state (position, velocity), and state error feedback uses the difference between the estimated state and the desired state to adjust control actions. By effectively tracking the state and accounting for errors, we achieve improved performance—the system can respond accurately to changes—robustness—the system can handle uncertainties and disturbances—and efficiency, optimizing the use of inputs like steering and acceleration."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"\n",
"\n",
"So as said in the signal processing/control literature, Kalman filters are used to estimate the state (position, velocity) of a system, given its inputs and observed (noisy) outputs. This assumes linear systems in state-space form (either continuous-time or discrete-time): in discrete time, you model\n",
"\n",
"$$\n",
"\\left\\{\n",
"\\begin{array}{lcl}\n",
" \\mathbf{x}_k &=& \\mathbf{A} \\mathbf{x}_{k-1} + \\mathbf{B} \\mathbf{u}_k + \\mathbf{w}_k \\\\\n",
" \\mathbf{y}_k &=& \\mathbf{C} \\mathbf{x}_k + \\mathbf{v}_k\n",
"\\end{array}\n",
"\\right.\n",
"$$\n",
"\n",
"Here, $\\mathbf{u}_k$ is the system input at time $k$ (your velocity and steering commands), $\\mathbf{x}$ is the (true) state vector, and $\\mathbf{y}_k$ is an observation, in our case your position estimator. For example, for moving in 1D on a line, without friction, and with a discretization time step $\\Delta T$,\n",
"\n",
"$$\n",
"\\mathbf{x} = \\left[\\begin{array}{c}\n",
" z \\\\\n",
" v\n",
" \\end{array}\\right] \\,, \\qquad\n",
"\\mathbf{A} = \\left[\\begin{array}{cc}\n",
" 1 & \\Delta T \\\\\n",
" 0 & 1\n",
"\\end{array}\\right] \\,, \\qquad\n",
"\\mathbf{u} = F_a \\,, \\qquad\n",
"\\mathbf{B} = \\left[\\begin{array}{c}\n",
" 0 \\\\ \\frac{1}{m} \\end{array}\\right] \\,, \\qquad\n",
"\\mathbf{C} = [1 \\quad 0] \\,.\n",
"$$\n",
"\n",
"The disturbances $\\mathbf{v}_k$ and $\\mathbf{w}_k$ are unknown additive noise processes at the input and the output, respectively, that will make the state and the output deviate from their real values. The Kalman filter is an estimator for $\\mathbf{x}_k$ given $\\mathbf{u}_k$ and $\\mathbf{y}_k$ (and the previous state estimate at time $k-1$); it tries to track this state; it is a topic for MSc-level courses (e.g., EE4C03). The fundamental idea here is that you do not have access to the true state $\\mathbf{x}_k$, you only have estimates $\\hat{\\mathbf{x}}_k$ that you keep updated.\n",
"\n",
"If the observation noise $\\mathbf{v}_k$ is high, then you don't trust the measurements $\\mathbf{y}_k$, and will estimate the next state as $\\hat{\\mathbf{x}}_k = \\mathbf{A} \\hat{\\mathbf{x}}_{k-1} + \\mathbf{B} \\mathbf{u}_k$, i.e., using the model predictions only. On the other hand, if the input (state) noise $\\mathbf{w}_k$ is high, you don't trust the model state update and estimate the state (position, velocity) mostly from the observations. The Kalman filter gives a weighted average of these two extremes, using something called the Kalman gain. Our trust is modeled by covariance matrices $\\mathbf{Q}_w = \\mathbb{E}[\\mathbf{w}_k\\mathbf{w}_k^T]$ and $\\mathbf{Q}_v = \\mathbb{E}[\\mathbf{v}_k\\mathbf{v}_k^T]$. For example, $\\mathbf{Q}_w$ contains on its main diagonal the measurement noise variance on your position estimates, which you documented in the preceding Modules. $\\mathbf{Q}_v$ is the jitter on your input, and you could measure this by repeatedly giving the same control inputs and seeing how the state varies (measuring the state with a ruler rather than the less accurate beacon locator).\n",
"\n",
"Kalman filters are described in many books, see e.g. Chapter 7.4 in\n",
"\n",
"> Monson H. Hayes, *Statistical digital signal processing and modeling*, John Wiley and Sons, New York, 1996. ISBN: 0-471-59431-8.\n",
"\n",
"Unfortunately, steering a car is highly nonlinear. You could try to use an Extended Kalman filter. Alternatively, since you have your own car model, you can use that to predict the next location and state, given the same inputs, and use the observed error in position to update/correct your state estimate, similar to what a Kalman filter does.\n",
"\n",
"A complete theory is not developed here, the above is meant as inspiration for your own solution! However below you can see an example of Kalman filter for tracking a moving object. This should be adjusted for the case of KITT."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Example: Tracking a Moving Object with a Kalman Filter\n",
"\n",
"So here we use **Kalman Filter** to estimate the position of a moving object based on noisy measurements. \n",
"\n",
"1. **Problem**: We have an object moving in 1D at a constant velocity (this could be for instacne KITT), but we can only measure its position with noise. The goal is to estimate the true position and velocity of the object over time.\n",
"\n",
"2. **Approach**:\n",
" - Here we use simulation for noisy position measurements as the object moves. in practice you get data from your noisy estimations. \n",
" - The Kalman Filter processes these noisy measurements to provide a more accurate estimate of the object's position and velocity.\n",
"\n",
"3. **Steps in the Code**:\n",
" - **Prediction**: The Kalman Filter predicts where the object will be based on its current state (position and velocity).\n",
" - **Update**: It compares the prediction to the noisy measurement, adjusts the estimate, and reduces uncertainty.\n",
" \n",
" \n",
"The script plots three lines:\n",
" - The true position of the object (which is hidden in practice).\n",
" - The noisy position measurements.\n",
" - The Kalman Filter's position estimate, which is much closer to the true position than the noisy measurements.\n"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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UaoUVKni6GhERERERATSQZIE0L9/f/r37+/oMFLcnJe2AzXo1PwyNluAo8MRERERERGcfE3Sgyxo2wlWXnkIgKc7Wg6ORkREREREblGS5CDfby1ING5UL3SeErWyOTocERERERH5l5IkB5kz1wZAp0E5HRyJiIiIiIjEpiTJAY4dg82bwWaDjh0dHY2IiIiIiMSmJMkBvn/ldwAa1rpBnjwODkZEREREROJQkpTWLItvfzWV7DqV3e3gYERERERE5L+UJKWx48f92BtRCg+XSNq+Vc7R4YiIiIiIyH+ki32SHiQbNhYAoEUrd7IWcndwNCIiIiIi8l8aSUpDdjusX58fgE6dHByMiIiIiIjES0lSGtry7QkuXPDBN5PF4487OhoREREREYmPkqQ0NG/SWQDa5NyAt7eDgxERERERkXgpSUojkZHw/ZGqADzVWT92ERERERFnpd/W00hYGDz3oielSl6m4evVHR2OiIiIiIjcharbpRE/Pxg50k6NGhtw82jh6HBEREREROQuNJIkIiIiIiISi5IkERERERGRWJQkiYiIiIiIxKIkSUREREREJBYlSSIiIiIiIrEoSRIREREREYlFSZKIiIiIiEgsSpJERERERERiUZIkIiIiIiISi5IkERERERGRWJQkiYiIiIiIxKIkSUREREREJBYlSSIiIiIiIrEoSRIREREREYlFSZKIiIiIiEgsSpJERERERERiUZIkIiIiIiISi5IkERERERGRWNwcHUBqsywLgODgYAdHApGRkdy4cYPg4GDc3d0dHY6kM+o/khzqP5JU6juSHOo/khyp0X9u5QS3coS7eeCTpOvXrwNQoEABB0ciIiIiIiLO4Pr162TOnPmux23W/dKodM5ut3PmzBn8/Pyw2WwOjSU4OJgCBQpw6tQp/P39HRqLpD/qP5Ic6j+SVOo7khzqP5IcqdF/LMvi+vXr5M2bFxeXu688euBHklxcXMifP7+jw4jD399fHxSSZOo/khzqP5JU6juSHOo/khwp3X/uNYJ0iwo3iIiIiIiIxKIkSUREREREJBYlSWnI09OTESNG4Onp6ehQJB1S/5HkUP+RpFLfkeRQ/5HkcGT/eeALN4iIiIiIiCSGRpJERERERERiUZIkIiIiIiISi5IkERERERGRWJQkiYiIiIiIxKIkKQ1NmzaNwoUL4+XlRc2aNdm2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",
"text/plain": [
"<Figure size 1000x600 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"\n",
"# Simulation parameters\n",
"dt = 1.0 # Time step (in seconds)\n",
"num_steps = 50 # Number of time steps\n",
"\n",
"# Ground truth initial state (position and velocity)\n",
"true_position = 0.0\n",
"true_velocity = 1.0\n",
"\n",
"# Kalman Filter parameters\n",
"# Initial state estimate (position, velocity)\n",
"x = np.array([[0], [0]])\n",
"\n",
"# Initial uncertainty covariance matrix\n",
"P = np.array([[1000, 0], \n",
" [0, 1000]])\n",
"\n",
"# State transition matrix (models constant velocity)\n",
"F = np.array([[1, dt], \n",
" [0, 1]])\n",
"\n",
"# Measurement matrix (we only measure position)\n",
"H = np.array([[1, 0]])\n",
"\n",
"# Measurement noise covariance (assume noisy position sensor)\n",
"R = np.array([[10]])\n",
"\n",
"# Process noise covariance matrix (assumes some uncertainty in system dynamics)\n",
"Q = np.array([[1, 0], \n",
" [0, 1]])\n",
"\n",
"# Storage for plotting\n",
"true_positions = []\n",
"measured_positions = []\n",
"kalman_positions = []\n",
"\n",
"# Simulate the system\n",
"for step in range(num_steps):\n",
" # Simulate true object position (with perfect velocity)\n",
" true_position += true_velocity * dt\n",
" true_positions.append(true_position)\n",
"\n",
" # Simulate noisy measurement (position with noise)\n",
" measurement = true_position + np.random.normal(0, np.sqrt(R[0, 0]))\n",
" measured_positions.append(measurement)\n",
" \n",
" # Kalman Filter prediction step\n",
" x = F @ x # State prediction\n",
" P = F @ P @ F.T + Q # Covariance prediction\n",
"\n",
" # Kalman Filter update step\n",
" y = measurement - H @ x # Measurement residual (innovation)\n",
" S = H @ P @ H.T + R # Residual covariance\n",
" K = P @ H.T @ np.linalg.inv(S) # Kalman gain\n",
"\n",
" x = x + K @ y # Updated state estimate\n",
" P = (np.eye(2) - K @ H) @ P # Updated covariance estimate\n",
" \n",
" kalman_positions.append(x[0, 0]) # Save the filtered position\n",
"\n",
"# Plotting the results\n",
"plt.figure(figsize=(10, 6))\n",
"plt.plot(true_positions, label='True Position', color='g', linestyle='--')\n",
"plt.plot(measured_positions, label='Measured Position (noisy)', color='r', linestyle=':')\n",
"plt.plot(kalman_positions, label='Kalman Filter Estimate', color='b')\n",
"plt.title('Kalman Filter for 1D Object Tracking')\n",
"plt.xlabel('Time Step')\n",
"plt.ylabel('Position')\n",
"plt.legend()\n",
"plt.grid(True)\n",
"plt.show()\n"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.12.7"
}
},
"nbformat": 4,
"nbformat_minor": 2
}