AME 60617 Bayesian Data Assimilation
Homework 3
Instructor: Dr. Jian-Xun Wang
Assistant Professor, Department of Aerospace and Mechanical Engineering
Note: Please upload your solution to each problem in your homework assignment as a single
PDF file to the appropriate assignment section. Use the following file naming convention: DA-
Lastname-FirstName-HW3.pdf. Source codes should also be attached.
1 Problem 1: Standard Kalman filtering for a linear problem
Let’s do the example that was showed in the class: object tracking problem. We track an object
moving in a 2D space with a sensor, which only monitor the object’s position in a Cartesian
coordinate x and y. For this system, the state will include position (x, y), velocity (ẋ, ẏ), and
acceleration (ẍ, ÿ). The forward model is a linear one with Gaussian noise,
xk = Axk−1 + q,
q ∼ N (0, Q)
where A and Q is given as,
1 5 1 4 1 3
20 ∆t 0 8 ∆t 0 6 ∆t 0
0 1 5 1 4 1 3
1 4 20 ∆t 0 8 ∆t 0 6 ∆t
∆t 1 3 1 2
8 0 3 ∆t 0 2 ∆t 0
Q=
0 1 4 1 3 1
2
8 ∆t 0 3 ∆t 0 2 ∆t
1 ∆t3 0 1 2
6 2 ∆t 0 ∆t 0
1 3 1 2
0 6 ∆t 0 2 ∆t 0 ∆t
1
where ∆t = 0.5 and q = 1.
1. Please generate synthetic data by using the forward model given above with the “ground
(T ruth)
truth” of x0 = [0, 0, 1, 0.6, 0.4, 0.8]T (corrupted with some Gaussian measurement noise.)
2. Use the synthetic data to perform Kalman fitering
3. Play with the measurement noise as we did in class.
Note: (1) you can start from x0 = [0, 0, 0, 0, 0, 0]T with state covariance P0 = diag([0.1, 0.1, 0.1, 0.1, 0.5, 0.5]).
(2) Please show plots of filtered results compared with synthetic observation and ground truth.
2 Problem 2: Derive non-additive EKF
Please derive the Extended Kalman filter (non-additive form) algorithm (page 30 in Chapter5-1),
as what we did in class.
3 Problem 3: Extended Kalman filtering for a nonlinear problem
Let’s do another example I showed in the class: considering to track a simple nonlinear dynamic
system, a random sine signal (θ), where the angular velocity (ω) and the amplitude (a) can very
over time. So the state is x = (θk , ωk , ak )T . The evolution of the angle θ is modeled with a
discretized Wiener velocity model, which can be discretized as,
where q1 = 0.2, q2 = 0.1, and ∆t = 0.01
The nonlinearity is from the measurement model,
yk = h(xk , k) + rk = ak sin(θk ) + rk
and rk is a scalar Gaussian RV.
1. Please generate synthetic data by using the forward model given above with the “ground
(T ruth)
truth” of x0 = [0, 10, 1]T . (corrupted with some Gaussian measurement noise.)
2. Derive EKF for this problem (explicitly write out Jacobi, forecase, and update ...)
3. Use the synthetic data to perform Extended Kalman fitering
2
4. Play with the measurement noise.
5. Play with q1 and q2 and see what happens.
Note: (1) you can start from x0 = [0, 10, 1]T with state covariance P0 = diag([3, 3, 3]). (2) Please
show plots of filtered results compared with synthetic observation and ground truth.