# Are Indirekt KFs with non-linear changing statematrix EKFs for the error state?

I'm trying to implement an indirect kalman filter to estimate the pose of a differential drive robot using gyroscope and wheel encoder data.

I found a fiew papers (1 - 3) describing this approach but am confused about one thing. The state-matrix looks something like this: Elements of this matrix change over time in a non-linear fashon which seems wrong to me:

1. The state matrix should be static and changing values should be encapsuled in the controll input.
2. Non-linear changes should only occur when using an EKF or UKF eventhough all papers only mention Kalman Filter

Are these two points just left out or simplified for conveniece since its obvious or am I missunderstanding something?

1. Dead Reckoning Navigation for Autonomous Mobile Robots. IFAC Proceedings Volumes. 1. March 1998;31(3):219–24.
2. Panich. Indirect Kalman Filter in Mobile Robot Application. Journal of Mathematics and Statistics. 1. August 2010;6(3):381–4.
3. Zunaidi I, Kato N, Nomura Y, Matsui H. Positioning System for 4-Wheel Mobile Robot: Encoder, Gyro and Accelerometer Data Fusion with Error Model Method. 2006;
• I haven't looked through the papers you mentioned, but indirect Kalman filters(aka Error-State Kalman Filters) are usually Kalman filters rather than EKFs. They do work on non-linear terms, however, the error state is linear. That is why you are able to get away with a standard Kalman filter. Nov 15, 2019 at 22:02
• @edwinem as far as I can tell, most indirect KFs relly are just normal KFs but im not sure I understand why. The equations that govern the error-state here are clearly non-linear so Im not sure what you meant with: "the error state is linear". Can you elaborate? Nov 16, 2019 at 14:13
• Sadly not the expert in error state kalman filters. A crappy analogy I have is the the small angle approximation for rotations( sin(theta)=theta). This approximation only holds for small angles. However, since the error is always small(mentioned in your 1 reference and here page 51 ) it means that your approximation holds for any error value. And as the small angle approximation is a linearization it means it is now linear. Nov 17, 2019 at 3:21
• @edwinem The assumption of having small value changes and therefore being able to linearize is also used in the EKF. It uses Taylor-series expansion around the last known point in statespace as far as I understand it. Nov 17, 2019 at 15:01
• Yes, but in the EKF the Jacobians have to be recomputed every iteration since the Taylor series expansion is only valid within some delta x. The error state is small enough to always be within the delta x. So you can get away with only linearizing once. As mentioned in the Sola Quaternion Paper P.51 the Jacobians can in some instances be constant. Nov 17, 2019 at 18:42

The state matrix should be static and changing values should be encapsuled in the controll input.