# Extended Kalman Filter linearization of non-linear functions

I have more general question about the extended Kalman filter usage. What is not clear to me is why the EKF uses non-linear functions $f$ and $h$ for state prediction and estimate, while in other places the Jacobian of these functions is used.

Why the following is never used?

First calculate the linearized state and measurement models at previous estimate point using Jacobian. Use the linearized state transition and measurements matrix everywhere instead of non-linear in this specific iteration.

• what f and h values we have to take to implement EKF program??? – user7379 Dec 26 '13 at 4:26

We can't use the initial linearized-model of non-linear system again and again in each iteration because linear-model approximates the nonlinear model only around some small neighbourhood of the starting point. In other words, linear model is good(i-e approximates the nonlinear model) only around some small-interval around the point. As, we need to estimate the current state again and again, if we don't linearlize the non-linear model around the current estimate in each iteration, we would we getting worse and worse (in terms of linear model) and consequently we will no longer correctly estimate the state.

Kalman filter is optimal only for a linear model. It can be extended to non-linear case because all the equations in the kalman filtering algorithm are difference equations. It is only an approximate solution for the non-linear case.

In the case of Non-linear model (i.e, where state-transition equation and measurement equation are non-linear), whenever we need state-transition matrix or measurement matrix in kalman filter equations we use the linear(first-order) approximations of non-linear state-transition and measurement functionals. The jacobian comes into play because of the first order approximation of their taylor series.

So, the non-linear functions are not used, their linear approximations are used for state prediction and estimation in EKF.

Adding up to the excellent answers by @Siva , @kaka, since the model is non-linear, having a linear approximation of it, computeted at a certain point (e.g. $X_0$) means that you have a good approximation of the model's values around that certain linearization point. How far away from it, that linearization point can still provide good approximations depends on the "severity" of the nonlinearity.

As an example from this guide on Taylor expansions one could try and linearise the sin function around $0$. Notice that for values in $(-1,1)$ the linearised approximation provides fairly accurate results. However if we go away from this range (e.g. $x = 2$) that doesn't hold and we need to relinearize the model around a new point again (ideally around $x=2$). 