This project involves deriving the deterministic motion model for an idealized bicycle and implementing a probabilistic sampling function to simulate its movement under noisy controls.
Consider an idealized bicycle with a wheelbase
-
$(x, y)$ is the coordinate of the front tire's center. -
$\theta$ is the frame's orientation (heading).
The bicycle is controlled by a forward velocity
The control input vector is
We have derived the deterministic state update equations,
-
General Case: A solution is provided for the general case of turning (
$\alpha \neq 0$ ). -
Special Case: A solution is provided for the special case of moving straight (
$\alpha = 0$ ).
Implemented a sampling function based on our derived model to simulate the bicycle's motion under noisy controls. The true controls,
Use the following parameters for implementation and simulation:
-
Wheelbase:
$l = 150 \text{ cm}$ -
Time step:
$\Delta t = 1 \text{ sec}$ -
Variance of steering angle:
$\sigma_\alpha^2 = 16 \text{ (degrees)}^2$ (i.e., standard deviation$\sigma_\alpha = 4^\circ$ ) -
Variance of velocity:
$\sigma_v^2 = 42 \cdot v^2 \text{ in units of }(\text{cm}/\text{sec})^2$
For a bicycle starting at the origin,
| Problem Number | Steering Angle ( |
Velocity ( |
|---|---|---|
| 1 | ||
| 2 | ||
| 3 | ||
| 4 | ||
| 5 |
Simulated the propagation of uncertainty over a sequence of motions using the sampling function implemented in Task b.
-
Initialization: We initialized
$N = 240$ samples (particles) at the origin:$\mathbf{x}_0 = [0, 0, 0]^T$ . -
Procedure: For each particle, we applied the following sequence of control commands, using our sampling function at each step to update the particle's pose. The total simulation duration is
$t=8\text{s}$ .
| Time Interval | Duration ( |
Steps | Motion Command |
|---|---|---|---|
|
|
3 | Drive straight with |
|
|
|
2 | Turn right with |
|
|
|
3 | Drive straight again with |
Created a single plot that visualizes the entire simulation motion.
On this plot, the following elements have been shown:
- The particle clouds (the set of 240 samples) at the end of each motion segment (i.e., at
$t=3\text{s}$ ,$t=5\text{s}$ , and the final time$t=8\text{s}$ ). - The ideal (noise-free) trajectory for comparison.
The plot should clearly illustrate how the uncertainty cloud grows and deforms as the bicycle moves.