Sorry, this page is no longer available
Sorry, this page is no longer available
Sorry, this page is no longer available
Sorry, this page is no longer available
We may earn an affiliate commission when you visit our partners.
Course image
Gregory Plett

As a follow-on course to "Linear Kalman Filter Deep Dive", this course derives the steps of the extended Kalman filter and the sigma-point Kalman filter for estimating the state of nonlinear dynamic systems. You will learn how to implement these filters in Octave code and compare their results. You will be introduced to adaptive methods to tune Kalman-filter noise-uncertainty covariances online. You will learn how to estimate the parameters of a state-space model using nonlinear Kalman filters.

Enroll now

What's inside

Syllabus

The extended Kalman filter
This week, you will learn how to implement the extended Kalman filter to estimate the state of a nonlinear system.
The sigma-point (unscented) Kalman filter
Read more

Traffic lights

Read about what's good
what should give you pause
and possible dealbreakers
Builds upon knowledge of linear Kalman filters, which is essential for advanced applications in aerospace, robotics, and signal processing
Develops skills in implementing extended Kalman filters and sigma-point Kalman filters, which are used in real-time estimation and control systems
Explores adaptive methods for tuning Kalman-filter noise covariances, which is crucial for improving the robustness and accuracy of filter performance
Requires prior knowledge from the "Linear Kalman Filter Deep Dive" course, which may pose a barrier to entry for some learners
Uses Octave for implementation, which may require learners to acquire familiarity with this specific software environment
Teaches parameter estimation using nonlinear Kalman filters, which is a valuable skill for system identification and adaptive control

Save this course

Create your own learning path. Save this course to your list so you can find it easily later.
Save

Reviews summary

In-depth nonlinear kalman filtering

According to learners, this course offers a fantastic deep dive into nonlinear Kalman filters, building effectively on the linear filter course. Students praise the clear theoretical explanations and derivations of complex topics like EKF and UKF, finding the material digestible despite its mathematical rigor. The Octave code implementations are frequently mentioned as helpful for practical understanding. While considered highly valuable for real-world implementation in technical fields, reviewers consistently note the course's high difficulty and the necessity of a strong prerequisite background in mathematics, linear algebra, and probability. Some find the reliance on Octave outdated and wish for Python support, and a few feel parts like parameter estimation could have more practical examples.
Code helps understanding but Octave is outdated.
"The Octave examples are helpful for understanding the concepts."
"The Octave coding examples could be more modern or provided in Python as well. Octave feels a bit outdated."
"The reliance on Octave is a minor drawback; Python is more common in industry now. Still, highly valuable information."
Assignments reinforce the course material well.
"The assignments reinforce the material effectively. It's quite challenging but rewarding."
"Assignments were tough but fair."
"The assignments are good but challenging."
Highly relevant for practical application.
"The parameter estimation section was particularly useful for my work."
"Solid introduction to nonlinear filtering techniques..."
"An essential course for anyone needing to implement nonlinear state estimation."
Strong explanations of EKF and UKF theory.
"This course is a fantastic deep dive into nonlinear Kalman filters... provides clear theoretical explanations..."
"Excellent continuation from the linear filter course. The explanations for the derivations are clear..."
"Brilliant course! The mathematical rigor is high but necessary, and the instructor navigates it expertly."
Course is challenging and requires strong prior knowledge.
"Prerequisites are definitely necessary - strong background in linear algebra and probability is a must."
"Very difficult course. Assumes a lot of prior knowledge beyond the linear course."
"Not for the faint of heart or those without a strong math background."

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Nonlinear Kalman Filters (and Parameter Estimation) with these activities:
Review Linear Algebra Fundamentals
Reinforce your understanding of linear algebra concepts, which are essential for understanding Kalman filters.
Browse courses on Linear Algebra
Show steps
  • Review matrix operations such as multiplication and inversion.
  • Practice solving systems of linear equations.
  • Study eigenvalues and eigenvectors.
Review Probability and Statistics
Strengthen your knowledge of probability and statistics, particularly Gaussian distributions and covariance matrices, which are fundamental to Kalman filtering.
Browse courses on Probability
Show steps
  • Review probability distributions, especially the Gaussian distribution.
  • Practice calculating means and variances.
  • Study covariance matrices and their properties.
Read 'Kalman Filtering: Theory and Practice Using MATLAB'
Supplement your learning with a comprehensive textbook on Kalman filtering, including practical examples and MATLAB code.
Show steps
  • Read the chapters on extended and unscented Kalman filters.
  • Work through the examples provided in the book.
  • Implement the Kalman filters in Octave, comparing results with the book.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Implement EKF and UKF on Simulated Systems
Solidify your understanding by implementing the Extended Kalman Filter (EKF) and Unscented Kalman Filter (UKF) on simulated nonlinear systems.
Show steps
  • Create a simulation of a simple nonlinear system (e.g., a pendulum).
  • Implement the EKF to estimate the state of the system.
  • Implement the UKF to estimate the state of the system.
  • Compare the performance of the EKF and UKF.
Parameter Estimation of a Real-World System
Apply your knowledge to a real-world problem by estimating the parameters of a state-space model using nonlinear Kalman filters.
Show steps
  • Choose a real-world system with available data (e.g., a robotic arm).
  • Develop a state-space model for the system.
  • Implement a nonlinear Kalman filter to estimate the model parameters.
  • Validate the estimated parameters against the real-world data.
Write a Blog Post on Adaptive Kalman Filtering
Deepen your understanding of adaptive Kalman filtering techniques by writing a blog post explaining the concepts and implementation.
Show steps
  • Research different adaptive Kalman filtering methods.
  • Write a clear and concise explanation of the methods.
  • Include examples and code snippets to illustrate the concepts.
  • Publish the blog post online.
Study 'Optimal State Estimation'
Expand your knowledge with a more theoretical treatment of optimal state estimation, including advanced topics in Kalman filtering.
Show steps
  • Read the chapters on nonlinear and adaptive filtering.
  • Work through the mathematical derivations.
  • Compare the different filtering techniques.

Career center

Learners who complete Nonlinear Kalman Filters (and Parameter Estimation) will develop knowledge and skills that may be useful to these careers:
Navigation Systems Engineer
A navigation systems engineer develops guidance systems for vehicles. This role typically requires in-depth knowledge of state estimation using filters like those taught in this course. The extended and sigma-point Kalman filters are directly relevant to handling the nonlinearities present in a navigation system. This course's knowledge of adaptive methods to tune filter uncertainty may help build robust navigation systems. Also, the parameter estimation techniques may prove useful in calibrating the sensors of a navigation system. A solid understanding of these filters is critical for a navigation systems engineer.
Control Systems Engineer
A control systems engineer designs and implements systems that regulate the behavior of dynamic systems. This course may be useful for a control systems engineer because it directly addresses estimation of the state of nonlinear dynamic systems using extended and sigma-point Kalman filters. Parameter estimation using nonlinear filters is another topic in the course. The skills this course provides should help you work with complex systems, from industrial machinery to aerospace vehicles. This course's focus on adaptive methods to tune filter noise uncertainty can yield robust control systems.
Autonomous Vehicle Engineer
An autonomous vehicle engineer develops and implements control and perception systems for self-driving cars. This course may be useful because it teaches implementation of various Kalman filters, which are used in vehicle localization and state estimation. The course's focus on nonlinear Kalman filters will likely be relevant for handling the complexities of real-world scenarios. The course teaches methods for tuning noise uncertainties in the filter, which can lead to more reliable autonomous systems. The skills in parameter estimation are also useful for calibrating sensors.
Signal Processing Engineer
A signal processing engineer develops algorithms and systems that analyze signals. The course's coverage of nonlinear Kalman filters addresses state estimation, which is important for speech processing and signal tracking. The course introduces adaptive methods for tuning noise uncertainty, and this knowledge is directly applicable to building signal processing algorithms. Parameter estimation with filters can also be helpful for system identification and signal modeling. This course may be useful for a signal processing engineer working with complex, dynamic signal sources.
Aerospace Engineer
An aerospace engineer is involved in the design, development, and testing of aircraft and spacecraft. This course provides practical experience implementing nonlinear Kalman filters, which are used in navigation and control systems of airborne vehicles. This is a critical component of many aerospace applications such as trajectory optimization and guidance. Understanding adaptive tuning methods for noise uncertainties in filter covariances may assist engineers in building robust aerospace systems. Moreover, the course's parameter estimation with nonlinear Kalman filters may be highly relevant for modeling the behavior of aerospace components.
Simulation Engineer
A simulation engineer creates computer-based models to simulate real-world systems. The concepts from this course, namely nonlinear Kalman filters, may be useful for a simulation engineer needing state estimation and filtering in dynamic simulations. The techniques taught in this course may be used to model and estimate the states of complex systems in real time. The course's focus on parameter estimation may also aid in improving the accuracy of simulation models. If a simulation engineer is working with nonlinear systems, this course may be especially helpful.
Robotics Engineer
A robotics engineer designs, develops, and tests robots for various applications. This role requires expertise in control systems, and this course, focusing on nonlinear Kalman filters, may be useful for the estimation of robot states in dynamic environments. Specifically, the course teaches the implementation of extended and sigma-point Kalman filters, which can help when designing state estimation algorithms for complex robotic systems. The skills in parameter estimation of state-space models may also prove valuable in the calibration and tuning of robot controllers.
Embedded Systems Engineer
An embedded systems engineer develops software and hardware for embedded devices. This course may be useful for certain embedded applications where real time state estimation is required. The techniques taught in the course, such as extended and sigma-point Kalman filters, are directly applicable in scenarios that use sensor data. An embedded systems engineer may use this to monitor processes and adjust system behavior as needed. The course also covers parameter estimation, which can be important for calibrating sensor performance. This course may help in building more robust embedded systems.
Instrumentation Engineer
An instrumentation engineer designs and develops measurement instruments and systems. This role might use the state estimation techniques learned in this course to improve the accuracy and reliability of sensor data. The adaptive methods may be applicable to noise reduction in measurements. Also, the parameter estimation skills can be helpful for calibration and modeling of sensor behavior. A course like this may allow an instrumentation engineer to build more precise and robust measurement systems.
Research Scientist
A research scientist conducts scientific research, often involving complex modeling and analysis. This course may be useful to research scientists, especially those dealing with dynamic systems and nonlinear data. The various Kalman filter methods discussed in this course can help with the state estimation, and the parameter estimation techniques can help scientists model and analyze their data. The ability to adaptively tune filter uncertainties may help in modeling noisy data. This course may be valuable for experimental research that requires advanced data processing techniques.
Data Scientist
A data scientist analyzes complex data sets to derive insights and build predictive models. This course may be useful in the context of time-series modeling and state estimation. The techniques taught, particularly extended Kalman filters and sigma-point Kalman filters, are useful in handling nonlinearities in time series data. Parameter estimation using filters may also help build more accurate predictive models. The skills acquired from this course can be applied to various data science applications such as financial modeling, signal processing, or climate modeling.
Biomedical Engineer
A biomedical engineer applies engineering principles to the healthcare field. This role may use the state estimation techniques from this course when tracking physiological signals. The nonlinear Kalman filters covered in this course may help analyze dynamic biological data. The adaptive methods for tuning noise uncertainties can be used to improve signal quality. The parameter estimation techniques may be useful for modeling biological systems. A biomedical engineer working with complex, dynamic biological data may benefit from this course.
Geophysical Engineer
A geophysical engineer studies the earth's physical properties using quantitative methods. The techniques in this course may be useful for estimating the state of various geophysical processes. The implementation of nonlinear Kalman filters may help a geophysicist track and analyze data from dynamic systems such as seismic activity or underground fluid flow. The adaptive methods to tune filter covariances may improve the accuracy of geophysical models. This course may be useful in parameter estimation of complex geophysical models.
Machine Learning Engineer
A machine learning engineer builds and deploys machine learning models. While this role involves broad skills, this course may be helpful in situations where dealing with time series and dynamic systems are required. This course on Kalman filters may be useful for state prediction in dynamic environments. The skills in parameter estimation from this course may help in tuning model hyperparameters. The course's methods of handling nonlinearities through extended and sigma-point filters can be applied to build robust machine learning systems. All of this may be useful in developing more sophisticated machine learning applications.
Financial Quantitative Analyst
A financial quantitative analyst develops mathematical models for financial instruments and markets. While this role primarily focuses on linear models, this course may be useful for more complicated, dynamic systems with nonlinear behavior. The methods for state estimation covered in this course may help model market dynamics. The adaptive tuning techniques may improve the robustness of financial models, and parameter estimation may improve calibration of financial models. These techniques may be helpful for enhancing a financial analyst's model-building skills.

Reading list

We've selected two books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Nonlinear Kalman Filters (and Parameter Estimation).
Provides a comprehensive treatment of Kalman filtering theory and its practical applications. It covers both linear and nonlinear Kalman filters, including the extended Kalman filter and unscented Kalman filter. The book includes numerous examples and MATLAB code, making it an excellent resource for implementing and understanding Kalman filters. It is commonly used as a textbook in graduate-level courses.
Provides a rigorous and in-depth treatment of optimal state estimation techniques, including Kalman filtering. It covers a wide range of topics, including nonlinear filtering, adaptive filtering, and robust filtering. While mathematically demanding, it offers a deeper understanding of the underlying theory. This book is more valuable as additional reading for those seeking a more theoretical understanding.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser