ECE 8540 Analysis of Tracking Systems

This course covers topics related to tracking systems, focusing on the filtering methods used to mitigate noise. It is assumed the student has a strong mathematical background and is proficient in MATLAB or C programming.

Topics include model fitting and the normal equations, nonlinear soultions, Kalman filter, extended Kalman filter, particle filter, unscented transform, recursive Bayesian estimation, and hidden Markov models. In labwork, several of these ideas are implemented by the student.

Instructor: Adam Hoover

Grader: Surya Sharma, email


Here is the tentative outline for the semester. Dates and topics are subject to change.

Day Lecture topics (instructor notes) Extra references Lab assigned Lab due
Thursday, 8/24 Introduction to tracking systems and filtering; Line fitting, least squares A paper on least median of squares fitting to overcome outliers.
Tuesday, 8/29 Normal equations, fitting a circle to a set of data An excerpt on the normal equations from Numerical Recipes in C. lab 1 - line and model fitting The data for part three of the lab.
Thursday, 8/31 Root finding, nonlinear regression An online function graphing calculator which can be used to visual the second example in the lecture notes.
Tuesday, 9/5 Nonlinear model fitting Some C code that demonstrates fitting a nonlinear model of exponential form. Another C code example that demonstrates fitting a sinusoidal form. lab 2 - nonlinear regression The data files A B and C for fitting. lab 1 due
Thursday, 9/7 Professional writing tools, TeX, vector graphics A simple example of a TeX file. Another example of a TeX file of the notes for the previous lecture, along with EPS files for the scalar figure and distribution figure.
Tuesday, 9/12 class canceled - hurricane
Thursday, 9/14 Technical writing, content and organization lab 2 due
Tuesday, 9/19 Writing: graphics and figures Top 10 worst figures in published research papers. Data distortion, ambiguity and distraction. Anatomy of a graph. lab 3 - professional writing
Thursday, 9/21 Filtering, state spaces, state transition and measurement equations
Tuesday, 9/26 Dynamic and measurement noises, optimal balancing
Thursday, 9/28 Covariances, matrix notation for filtering An excerpt from Brookner's book on matrix notation for the KF. lab 3 due
Tuesday, 10/3 Kalman filter An Introduction to the KF by Greg Welch and Gary Bishop. Instructions on using TrackSim to demonstrate the Kalman filter. lab 4 - Kalman filter The data to be used for part 1. Some 2D UWB tracking data that can be used for part 2.
Thursday, 10/5 2D Kalman filter example
Tuesday, 10/10 Nonlinear filtering, Jacobians
Thursday, 10/12 Extended Kalman filter, radar example lab 4 due
Tuesday, 10/17 no class - Fall break
Thursday, 10/19 EKF example, sinusoid Instructions on using TrackSim to demonstrate the extended Kalman filter. lab 5 - extended Kalman filter The data to be used for part 1. Some simulated ballistic data for part 2 is forthcoming.
Tuesday, 10/24 Recursive Bayesian estimation
Thursday, 10/26 Non-Gaussian state and noise distributions
Tuesday, 10/31 no class - instructor out of town
Thursday, 11/2 Importance sampling, sequential importance sampling lab 5 due
Tuesday, 11/7 Particle filter, resampling A tutorial on particle filtering in the context of signal processing. Another tutorial in the context of mobile robot localization. lab 6 - particle filter The data to be used. Some C code that generated the data, in case you would like to try your own.
Thursday, 11/9 Particle filter demo, coding Instructions on using TrackSim to demonstrate the particle filter.
Tuesday, 11/14 Introduction to ultra-wideband position tracking Bill Suski's defense slides
Thursday, 11/16 Noise modeling for UWB indoor position tracking Salil Banerjee's defense slides
Tuesday, 11/21 Introduction to hidden Markov models and the Viterbi algorithm An introduction to HMMs and examples of HMM applications by Raul Ramos. An example of the Viterbi algorithm by Didier Gonze. lab 7 - HMM lab 6 due
Thursday, 11/23 no class - Thanksgiving break
Tuesday, 11/28 Mobile robot architectures Pictures of different mobile robots explained during lecture.
Thursday, 11/30 Behavior-based robotics lab 8 - robot simwars. The C code for the simulated environment for robot survival wars. lab 7 due
Tuesday, 12/5 Robot survival simulations lab 8 first robot code due
Thursday, 12/7 Robot survival simulations with memory lab 8 second robot code due, report due

Last updated 2017
ECE 8540 Page / Clemson /