Science topic

Extended Kalman Filters - Science topic

Explore the latest questions and answers in Extended Kalman Filters, and find Extended Kalman Filters experts.
Questions related to Extended Kalman Filters
  • asked a question related to Extended Kalman Filters
Question
2 answers
Hello everyone,
I have experience in UKF but seem that when involve to EKF, things start to out of the track!
I followed the instruction on Wiki of EKF about Discrete-Time predict & update equations but have a struggling with Sk.
Based on my application of Parameter & State estimation of Mechanical System , my State Equation (4 disp, 4 velo, 4 stiffness, 4 damper) is 16x1 so the Initial Covariance Matrix is 16x16.
However, the Measurement Equation (4 disp, 4 velo, 4 accel) is only 12x1 so the Transition Measurement Matrix is only 12x12
So it is IMPOSSIBLE when I try to use: Sk = Hk * Pk * Hk^T + R -> I can't calculate Sk because (12x12) * (16x16) * (12x12)^T is non-sense!
Can you please point out the reason for this issue?
I would be appreciated if you can help me find a more possible way to do this!
Thank you & wish those who care have a nice day!
#EKF
Relevant answer
Answer
If the number of measurements are 12 then the "H" matrix must be 12x16 since it relates the state vector with the measurement vector. This is valid for also the nonlinear case with the jacobian of h(.) with respect to x.
After taking the the jacobian of h(.) if there is no damper related term, cascading a 4x4 zero matrix to H (to obtain a new 12x16 H) may works.
  • asked a question related to Extended Kalman Filters
Question
2 answers
I am working on an error state extended Kalman filter for navigation using IMU and DVL.
What kind of sanity checks are you using to test your filter?
Relevant answer
Answer
Hi Nadav. A good way to check your method and algorithm is to test it on a relatively simple simulation problem, where you know the answers (states) that you are trying to estimate. Add the noise etc in the simulation and check that the filter seems to work right. Once you’re confident it’s working, you can apply it to the real world problems.
  • asked a question related to Extended Kalman Filters
Question
3 answers
In the strong tracking extended Kalman filter algorithm, it is required to introduce a fading factor lamda>=1 into the predicted state covariance matrix. However, when I tried, I found that as long as lamda>1, the estimated state quantity would diverge.The figure 1.1 has no fading factors.The figure 1.2 has.
Relevant answer
Answer
Yang Wang In strong tracking extended Kalman filter, the fading factor is added in order to give more weight to the most recent measurements and minimize the impact of earlier measurements on the estimated state. The goal is to improve the filter's sensitivity to shifts in system behavior.
Before the update phase, the projected state covariance matrix is multiplied by the fading factor to incorporate it into the method. This can be accomplished as follows:
1. At the present time phase, compute the expected state covariance matrix P-.
2. Compute the fading factor lambda. This can be a fixed number or one that is calculated dynamically based on some parameters.
3. P-_w = lambda * P- is the weighted projected state correlation matrix.
4. Based on the weighted projected state correlation matrix, compute the Kalman gain K.
5. Update the expected state and correlation matrix using the Kalman gain and the observation.
It should be noted that the fading factor lambda selection is essential and can have a substantial effect on filter performance. When lambda becomes too high, the filter becomes excessively sensitive to noise and measurement mistakes, resulting in divergence. If lambda is too tiny, the filter may be unable to track changes in the system dynamics efficiently.
To select a suitable value of lambda, some simulations and sensitivity analysis may be required to assess the filter effectiveness under various circumstances.
Overall, using a strong tracking extended Kalman filter with fading factors can enhance the filter's responsiveness to changes in system dynamics, especially when the system is extremely nonlinear or has substantial measurement noise. However, in order to prevent instability and guarantee excellent filter performance, the fading factor must be cautiously chosen.
  • asked a question related to Extended Kalman Filters
Question
3 answers
Hello who interested with my question,
Firstly, I want to thanks you for spending your time to read this topic!
So I have 3 questions that need some advice in Unscented Kalman Filter about the 3 DoFs Mass-Damping-Stiffness System. Right now, i'm modifying my UKF code in MATLAB for a new project but some problems seem to occur again. Below there are 2 Code files - one was the UKF test and one was an UKF function that I've writen in my graduated thesis and here are the problems I incurred:
1/ The Cholesky Decomposition: I used the chol() function from library of MATLAB. However in my test, from the loop k=3, the covariance matrix was starting to fail in excuting chol() because it was not completely positive definited!
My solution: First, I used a function name "nearestSPD" of Mr. John D'Errico and this function have helped my covariance matrix pass the chol() but the output (state vector) I received was full of 0 from the loop k=3. Second approach was plusing (1e-6)*eye() into the covariance matrix but MATLAB code stopped from the loop 3 and said that matrix wasn't positive definited!
2/ Kalman Gain: since the equation of Kalman Gain has the inverse matrix, some value of Kalman Gain of my code in some loop can't be calculate because the covariance matrix is singularity and it doesn't have the inverse version!
My solution: in MATLAB, I've used pinv() (Moore-Penrose Inverse matrix) instead of the regular inverse inv()
3/ Choosing the workable Initial Covariance Matrix (P): How can we choose the suitable Initial Covariance Matrix for UKF?
My solution: Usually, I always choose the values of P corresponding to the error between the initial state vector and true parameter. For example, true k1 = 10000 N/m and in my initial state, I choose k1 = 8000 N/m -> value error of k1 in P will be chosen equal to 1e6.
If you have any suggestions, please feel free to repsonse! I would love to hear your idea!
My code is free and as long as you seem interested, you can use it freely! However, my code seems to fail due to 3 reasons above!
Thanks you!
  • asked a question related to Extended Kalman Filters
Question
5 answers
I use the Kalman filter to estimate the stator and rotor currents for a 2MW doubly fed induction generator, I used the state model in the alpha beta reference, How to calculate the initial matrix P_0, Q_0, R_0 for a extended Kalman filter?
Relevant answer
Answer
Mohammed Abbas In an extended Kalman filter (EKF), the starting matrices P 0, Q 0, and R 0 play a significant role in the estimating process. They are, in order, the starting values of the state covariance matrix P, the process noise covariance matrix Q, and the measurement noise covariance matrix R. These matrices are used to represent the uncertainty in the state estimation, process dynamics, and measurement noise, in that order.
You must consider the following factors while calculating these matrices:
1. P 0 state covariance matrix: This matrix captures the state estimate's starting uncertainty. To represent the fact that the initial state estimate is unknown, it is commonly set to a big number for the diagonal elements and zeros for the off-diagonal elements.
2. Q 0: Process noise covariance matrix This matrix illustrates the process dynamics' uncertainty. It is often determined based on a prior understanding of process dynamics and how they evolve over time.
3. R 0 is the measurement noise covariance matrix. This matrix displays the measurement uncertainty. It is often set based on measurement noise characteristics such as sensor accuracy.
P 0, Q 0, and R 0 values can be derived by tuning or previous knowledge of the system. As the EKF converges to a more accurate estimate, the values can be changed over time. Finding the proper values for these matrices, on the other hand, may be difficult, as estimation success is largely dependent on the choice of these.
  • asked a question related to Extended Kalman Filters
Question
1 answer
Hello. Do you have recommendations as to how I can compare the extended Kalman filter and particle filter as fair as possible?
Relevant answer
Answer
Marvin Nuer It is advised to compare the extended Kalman filter (EKF) with particle filter (PF) for leak detection by:
1. Create a clear issue description and goal for leak detection. This will assist in ensuring that the comparison of the two filters is appropriate and focused on the specific use case.
2. Select acceptable assessment measures: In order to evaluate the performance of the two filters properly, you must select appropriate evaluation metrics. Accuracy, precision, recall, and root mean square error are some standard measures for evaluating filtering systems (RMSE).
3. Using the same simulation or real-world data for both filters ensures that the comparison is fair and that any discrepancies in performance can be ascribed to changes in the filters themselves.
4. Implement both filters accurately: To achieve a fair comparison, both filters must be implemented correctly and with the same settings for each filter.
5. To validate the results, repeat the comparison with various data sets and under different conditions: It is advised that the comparison be repeated numerous times with various data sets and under varied settings to check that the results are consistent.
Following these procedures will allow you to compare the EKF and PF for leak detection. Best wishes for your study!
  • asked a question related to Extended Kalman Filters
Question
1 answer
Hi there,
I am currently working on a paper that discusses satellite attitude control and extended Kalman filter. I am interested in submitting this paper for publication and was wondering if anyone has any suggestions for journals that have announced a special issue for this type of research.
Any recommendations would be appreciated.
Thank you!
Relevant answer
  • asked a question related to Extended Kalman Filters
Question
5 answers
I'm studying the topic from Probabilistic Robotics by Thrun Burgard and Fox.
In the Extended Kalman Filter algorithm, we linearized the action model in the following way.
𝑔(𝑢(𝑡),𝑥(𝑡-1)) = 𝑔(𝑢(𝑡),𝜇(𝑡−1)) + 𝐺(𝑡)⋅(𝑥(𝑡−1)−𝜇(𝑡−1))
𝑔(𝑢(𝑡),𝑥(𝑡-1)) is the action model and 𝐺(𝑡) is its Jacobian matrix with respect to the state 𝑥(𝑡−1).
I don't see how this guarantees linearity because 𝑔 could be nonlinear in 𝑢(𝑡). The authors don't mention anything about why this is the case.
In other words, I imagined that the multivariate Taylor expansion for this where we get a linear function in both 𝑢(𝑡) and 𝑥(𝑡−1)
Relevant answer
Answer
Hi,
It should be noted that the Kalman filter is part of the theory of estimation of states of a system represented by a linear model. It is therefore an algorithm that provides estimates of some unknown variables from observed measurements over time. The filter uses as input the command u(t) and the output of the model y(t) and as output it provides an estimate of the output, in other words an estimate of the states of the system. For non-linear systems there is an extension that can deal with these cases: the extended Kalman filter. In my opinion there is no particular requirement on the control when applying this algorithm.
Also please take a look at the links.
Best regards
  • asked a question related to Extended Kalman Filters
Question
1 answer
Dear all,
I have been doing research on the leak detection of pipelines for some time. I did the simulations with simcenter software. But unfortunately, I tried to detect the location of the leak using Kalman filter in different ways, but it is not possible. Is it possible to guide me? Is it possible to send me the MATLAB code so that I can try on my own water pipelines and simulations?
Relevant answer
Answer
Richard Fenner and Steve Mounce have done work using Kalman filters for leak detection in water distribution networks Seyed.
  • asked a question related to Extended Kalman Filters
Question
2 answers
I’ve linearised about my current state estimate with my equations that relate my measured variables to the states. But I think I must be missing an equation or setting it up wrong because the dimensions of my matrices being concatenated are not consistent
Relevant answer
Answer
To obtain matrix C by linearization in discrete-time EKF, you need to consider the Jacobian matrix of the measurement equation with respect to the state variable at the current state estimate. A real-valued function 'f(.)' from 'n'-dimensional state variable to 'm'-dimensional observations has a 'm X n'-dimensional Jacobian matrix with the (i,j)-th element being first-order derivative of the 'i'-th observation with respect to the 'j'-th state variable. This will result in appropriate dimensions for implementing EKF.
You can look up more about Jacobian matrices.
Hope it helps.
Regards,
Himali
  • asked a question related to Extended Kalman Filters
Question
3 answers
I know I should be using the concept of Dead Reckoning. But how do I use prediction algorithms to determine/estimate the 2D coordinates and yaw angle, if I can get the gyroscope data, wheel encoder data, and global system time or timestamp of each input?
  • asked a question related to Extended Kalman Filters
Question
3 answers
if possible please send me to mahe.nani64@gmail.com.
thank you
Relevant answer
Answer
If you want to program it in Matlab, you may have a view in the Matlab Global Optimization Toolbox which actually covers the mentioned optimization algorithms.
You may also find the following papers interesting which actually performed the discussed task on a real-world drive system:
  • asked a question related to Extended Kalman Filters
Question
4 answers
Sensorless Control of a Doubly Fed Induction Machine Based
on an Extended Kalman Filter
Improved Sensorless Control of Doubly Fed Induction Motor
Drive Based on Full Order Extended Kalman Filter Observer
  • asked a question related to Extended Kalman Filters
Question
3 answers
I am doing a project on Development of Control and Protection techniques in AC Microgrid . So I need simulink model of PMU to measure positive sequence components of three phase voltage and current.
Relevant answer
Answer
Look the link, maybe useful.
Regards,
Shafagat
  • asked a question related to Extended Kalman Filters
Question
5 answers
What is the importance of representing the frequency normalized of digital filter design with an optimization algorithm?
Most of the time, the reviewers state that there is no need for these shapes (like Frequency Normalized, Magnitude response, ele. )and what is important is only the Paul-Zero diagram.
  • asked a question related to Extended Kalman Filters
Question
5 answers
Hi,
I face the following problem:
I want to use a measured quaternion (from an AHRS) for the update within an UKF to update the attitude.
My state vector contains a quaternion, therefore I want to know, if I could calculate the Kalman innovation with the quaternion directly or do I need an alternative representation (Euler angles, orientation vector...)?
The problem with Euler angles is, that for the +-180° (South) direction, an UKF would spread its sigma points around a discontinuity. This does not sound harmless from my point of view.
Is there an elegant way to solve my problem?
Best regards
Maximilian
Relevant answer
Answer
This is a strange question. You must use the measurement model, which relates your measurment to the state you want to observe.
  • asked a question related to Extended Kalman Filters
Question
2 answers
In a seminal paper titled "Posterior Cramer Rao bounds for discrete-time non-linear filtering" (Link: https://ieeexplore.ieee.org/abstract/document/668800/?casa_token=Ecgr8cQF6RUAAAAA:JtZ8OuUkQLyphtnQnot1ZPGlifREbS393Pg0TJ58J98IilZuIw6xSjS1Af1XDlLchlKMi8LoRfxfmAg), Tichavsky et al. have developed a recursive way to calculate the Cramer Rao bounds for non-linear filtering problems. However, in the paper, the state xk at time 'k' is a non-linear function of the previous state xk-1only and not on other previous states. Are there any similar works on CR bounds for filtering problems where the current state depends on all the previous states up to the given time instants i.e. xk is a function of x1, x2, and so on up to xk-1?
  • asked a question related to Extended Kalman Filters
Question
3 answers
I am working on a project wherein I need to implement a combination of a deterministic algorithm such as TRIAD or QUEST along with EKF to determine the attitude of a Satellite in Space. Any good papers/thesis that explains and lists out the steps to implement the EKF?
Thanks!
Relevant answer
Answer
This is well established problem and people solved in different abstracts. Plz try to read the papers published by these authors
Yevgeny Somov,
Iskandar
Sergey Somov
Kyuman Lee
Do-Seob Ahn
Jun Wang
Sergey Butyrin
Jaesung Lim
F. Cuccoli
L. Facheris
Jong-Min Park
F. Dovis,
Takayoshi Yokota
This list is limited. You can find more authors who contributed to this field. Moreover I would suggest you to understand the basic ekf framework from . Bar-Shalom, X.R. Li and T. Kirubarajan, Estimation, Tracking and Navigation: Theory, Algorithms and Software, John Wiley & Sons, New York, June 2001. If you want to get hands on with code, try " tracker component library " . Hope this is helpful
  • asked a question related to Extended Kalman Filters
Question
3 answers
For the discrete-time Extended Kalman filter (EKF), a stochastic stability analysis is discussed by Reif et al. in their paper "Stochastic stability of the discrete-time extended Kalman filter" (https://ieeexplore.ieee.org/abstract/document/754809). Recently, there have been works on EKF with unknown inputs, in particular, for arbitrary unknown inputs. Are there any works providing such stability analysis similar to Reif's work available for these EKF with unknown input filters?
  • asked a question related to Extended Kalman Filters
Question
7 answers
I want to use a EKF for parameter (p) and state (x) estimation.
I am currently not understanding the difference between (1) the formulation of the parameters as states:
x_new=[x,p] and using a normal EKF for estimating x_new
and (2) the formulation with a dual extended Kalman filter, where x and p are estimated individually.
Which of them provides more benefits?
I am very thankful for your tips.
Relevant answer
Answer
The Kalman filter (KF) is a method based on recursive Bayesian filtering where the noise in your system is assumed Gaussian. The Extended Kalman Filter (EKF) is an extension of the classic Kalman Filter for non-linear systems where non-linearity are approximated using the first or second order derivative.
  • asked a question related to Extended Kalman Filters
Question
8 answers
Hello,
using Cholesky decomposition in the UKF induces the possibility, that the UKF fails, if the covariance matrix P is not positiv definite.
Is this a irrevocable fact? Or is there any method to completely bypass that problem?
I know there are some computationally more stable algorithms, like the Square Root UKF, but they can even fail.
Can I say, that problem of failing the Cholesky decomposition occurs only for bad estimates during my filtering, when even an EKF would fail/diverge?
I want to understand if the UKF is not only advantagous to the EKF in terms of accuarcy, but also in terms of stability/robustness.
Best regards,
Max
Relevant answer
Answer
If I understand your question correctly, it concerns not the initial covariance matrix rather the updated covariance matrix you get at the end of each Kalman iteration.
If such a condition arises you may use Higham's method to find an approximate positive-definite covariance matrix.
Reference:
Computing a nearest symmetric positive semidefinite matrix - ScienceDirect
  • asked a question related to Extended Kalman Filters
Question
1 answer
This is just a novice question from somebody who just got into this topic. Can the application of Scale-Invariant Feature Transform be combined with extended Kalman Filter?
Relevant answer
Answer
Dear Yopi Prabowo Oktiovan,
I think so because the Kalman filter is used with David Lowe's SIFT algorithm and EKF is an extended form of KF taking into account the nonlinearity of the image scale process.
For more information about this subject i suggest you to see links and attached files on topic.
Best regards
  • asked a question related to Extended Kalman Filters
Question
4 answers
Hello,
I'm currently working with a system consisting of an accelerometer, that samples in bursts of 10 seconds with a sample frequency of 3.9 Hz, before going into deep sleep for an extended (and yet undetermined) time period, then waking up again and sampling for 10 seconds and so on.
I've recently taken over this project from someone else and I can see that this person has implemented a Kalman filter to smooth the noise from the accelerometer. I don't know much about Kalman filters, but to me it seems that the long deep sleep period would make the previous states too outdated to be useful in predicting the new ones.
So my question is: can the previous states become outdated?
Relevant answer
Answer
The application of a Kalman Filter requires four models:
1. Measurement model, expressed by the Jacobian of the measurement variables in respect to the state variables. (H)
2. The measurement error model (R)
3. The state model, which allows to extrapolate the state to the future (F)
4. The state error model which allows to model the unpredictability of the state extrapolation. (The degree of a deviation of the state from the prediction for whatever reason) (Q)
For the exact mathematical meaning of H,R,F,Q refer to Wikipedia: Kalman Filter.
  • asked a question related to Extended Kalman Filters
Question
6 answers
I'm trying to control the rotor speed of an induction machine using indirect rotor flux orientation of vector control.
I am using a Recurrent Neural Network trained with Extended Kalman filter algorithm to estimate the rotor speed in order for the reference speed to track the estimated speed.
Please I'll be glad for your assitance.
Relevant answer
Answer
Mohamed-Mourad Lafifi can you please share the LSTM_Kalman filter matlab code?
Thanks
  • asked a question related to Extended Kalman Filters
Question
6 answers
Is it theoretically possible, that after discretization by using Talyor Series Expansion, a non-observable nonlinear system will became an observable?
It was proved, that used continuous model of PMSM is non-observable (see attached). I want to know, if resulting discrete system is observable or not. Any comment appreciated. Thanks.
  • asked a question related to Extended Kalman Filters
Question
13 answers
suggest me literature regarding this topic and the gaudiness to start my thesis
please.....!
hope for good response...
  • asked a question related to Extended Kalman Filters
Question
12 answers
Hello
Good Day and Happy New Year !!!
I am facing problem to write MATLAB code for estimation of SOC (state of charge) of lithium-ion battery cell of 3.7 V_nominal and 15.5 Ah in real time using EKF(Extended Kalman Filter) with the covariance, and other measurement and observation noises terms. Could anyone please guide me how to solve my problem in estimating SOC of li-ion battery.
Thanks.
Relevant answer
Answer
Hi Monali Gandhi please follow my paper as you may find an equation of the voltage-SOC relationship of a particular Li-Ion battery that might be used for OCV method. thanks
  • asked a question related to Extended Kalman Filters
Question
3 answers
I am currently working on the SOC estimation model. I am simulating the model but it is showing the error in the Extended Kalman Filter block
Error in default port dimensions function of S-function 'trial_16march/EKF'. This function does not fully set the dimensions of output port 2.
Relevant answer
Answer
You should select the port dimensions manually. I hope this will help. Furthermore, also check if the matlab file you are using is designed for the version you are working on.
  • asked a question related to Extended Kalman Filters
Question
3 answers
Dear friend,
These days, I'm trying to finish my Ph.D. in electrical engineering (control engineering). I'm specialized in Extended-Kalman fitter application, fault detection, neural network, digital transportation, digital twins and machine learning respectively. It is necessary to say that, my thesis about industry 4.0 at pipeline performance management (software). I'm enthusiastic to join a team for my postdoc. And I struggle to study at the edge of science topics for my postdoc.
Would you help me please to join in the on the team for my postdoc, study abroad or a way to join in this kind of program?
Relevant answer
Answer
Post doc is for those whose Phd is weak.
I suggest to look for some Entrepreneurship in your domains of interest
  • asked a question related to Extended Kalman Filters
Question
9 answers
I’m trying to implement EKF in my Real-time hand motion capturing algorithm. I have surveyed some paper or source code, but I can’t understand how to define a correct x state. Someone define [velocity(X);position(X);velocity(Y);position(Y)] or [acceleration(X); acceleration(Y)]in X state matrix. However I can't confirm if they are suitable for my system.
Could anyone tell me how to choose a correct X state matrix?
Some information
Input data: 3D acceleration (x,y,z).
State model:
Xk = AXk-1 + wk-1
Zk = HXk + vk
wk-1 and vk are Gaussian white noise.
Relevant answer
Answer
Useful answers, thank you for all
  • asked a question related to Extended Kalman Filters
Question
3 answers
I am implementing the extended kalman filter for battery soc estimation using a state space model in simulink. The output equation has the open circuit voltage as one of the terms. This open circuit voltage is a function of battery SOC. So I want to understand how can we calculate the derivative of OCV with respect to SOC
Relevant answer
Answer
Dear Arpita Rathee,
Please Take a look at attached file on topic.
Best regards
  • asked a question related to Extended Kalman Filters
Question
4 answers
Dear friend,
These days, I'm trying to finish my Ph.D. in electrical engineering (control engineering). I'm specialized in Extended-Kalman fitter application, fault detection, neural network, digital transportation, digital twins and machine learning respectively. It is necessary to say that, my thesis about Industry 4.0 at pipeline performance management (software). I'm enthusiastic to join a team for my postdoc. And I struggle to study at the edge of science topics for my postdoc.
Would you help me please to join in the on the team for my postdoc, study abroad or a way to join in this kind of program?
Relevant answer
Answer
Hi Syed Ali,
You may follow: https://www.timeshighereducation.com/ which for all PostDoc jobs and my be helpful for you.
Good Luck
Ali
  • asked a question related to Extended Kalman Filters
Question
3 answers
Dear friend
I want to design software for measuring the valuable information (pressure and flow) of the pipeline to detect faults like corrosion and leakage.
I'm working on the algorithm that used for extended kalman filter for pipeline leak detection systems.
I follow the low-priced method to design this kind of hardware for pipeline fault detection. Could you tell me some approaches to designing? Which instrument need for fabrication which doesn’t need expensive devices?
Thank you for your consideration
Relevant answer
Answer
I am engaged in modeling of computer central processing papeline. Problems of pape in other spheres are not my area.
  • asked a question related to Extended Kalman Filters
Question
9 answers
Dear Community, I am wondering if there are articles/books/references proposing implementations of Kalman Filters for positioning based on a single accelerometer ? (no GPS, no camera, no gyro, no odometery...)
Relevant answer
Answer
thank you Mohammed Aftatah
  • asked a question related to Extended Kalman Filters
Question
2 answers
Hello all,
I have a question regarding the implementation presented in paper titled "Real-Time Metric State Estimation for Modular Vision-Inertial Systems" by Stephan Weiss.
at Epoch 1: The monocular visual odometry starts at origin like IMU (both are aligned with world coordinate system). 
Epoch 2 is shown below, where visual odometry moves along Z-axis (in world frame), IMU moves along X-axis (in world frame) and the position of Camera (in world)
The update & correction will be visual frame (which moves along Z-axis).  For fusion to be successful, If we transform the visual odometry to IMU frame then they will be pointing in the same direction. 
Then our measurement vector Zp would also change or we use the same formula as in the paper?
Thank you very much for your suggestions and answers in advance.
  
Relevant answer
Answer
consult this work: Filtre de Kalman discret à la modélisation HydrologiqueFebruary 2019
Publisher: Editions universitaires européennes
ISBN: ISBN13: 978-613-8-46494-5 ISBN-10:613846494X
Project:
Multi-site modeling and prediction of annual and monthly precipitation
📷Samra Harkat
  • asked a question related to Extended Kalman Filters
Question
4 answers
I do need an open-source software to validate my (extended kalman filter) EKF code results in GPS/INS integration. Please help me. “Waypoint inertial explorer” is an excellent choice. Unfortunately, it is too expensive to buy.
Relevant answer
Answer
consult this work: Filtre de Kalman discret à la modélisation HydrologiqueFebruary 2019
Publisher: Editions universitaires européennes
ISBN: ISBN13: 978-613-8-46494-5 ISBN-10:613846494X
Project:
Multi-site modeling and prediction of annual and monthly precipitation
📷Samra Harkat
  • asked a question related to Extended Kalman Filters
Question
7 answers
For extended Kalman filter, we need to do matrix differentiation for converting the non linear system to a linear system using first order Taylor approximation
Relevant answer
Answer
Thank you so much.
  • asked a question related to Extended Kalman Filters
Question
3 answers
Dear colleagues,
the majority of EKF/UKF implementations for speed sensorless control of PMSM are in alpha,beta frame (i.e. observer is implemented in stationary frame). I wonder why? Equations in dq fame are much more simpler, so the computational requirements should be lower. Is there any evidence that observer doesn't work implemented in dq frame?
Relevant answer
Answer
In fact , the simplified EKF reduced state dimention( in dq frame) is used for only speed estimation, and without rotor position estimation .... the resons resides mainly in the abc/dq cordinate transformation.... .
Elsewhere, you can read carfully this research paper.
best regards,
  • asked a question related to Extended Kalman Filters
Question
10 answers
Hello all, 
I have a question regarding the square-root Kalman Filter section of the Wikipedia article about Kalman filters (https://en.wikipedia.org/wiki/Kalman_filter).
The text reads as follows: 
"Between the two (regular square-root implementation), the U-D factorization uses the same amount of storage, and somewhat less computation, and is the most commonly used square root form."
I see that they need the same amount of storage, but I don't understand why the U-D should is computationally more efficient (in which step do we same computations?). 
Furthermore, is the U-D form really the most commonly used from? I mostly saw papers using the standard Cholesky decomposition.
And last but not least, what properties does the state space model need to have (I guess badly conditioned covariance matrices among others) in order 
for standard Kalman filters and smoothers to fail? 
For which type of concrete problems (examples?) are those square-root filters used?
Thanks a lot in advance!
Relevant answer
Answer
The first "square root" implementation of the Kalman filter was derived by the late James Potter at what was then the MIT Instrumentation Laboratory. It enabled the Apollo computer to implement the space navigation problem for the moon missions in 15-bit fixed-point arithmetic. The late Gerald Bierman, co-developer of the U-D filter (along with Catherine Thornton), characterized square-root implementations as "achieving the same accuracy with half as many bits." All the square-root implementations use a square-root factorization of the covariance matrix of estimation, the condition number of which (a metric for digital inversion accuracy) is the square root of the condition number of the covariance matrix. Otherwise, relative performances of the various square-root implementations are not predominantly application-dependent.
  • asked a question related to Extended Kalman Filters
Question
2 answers
The problem's objective is to estimate the current flowing through a transformer. In the ekf block, when I add my jacobian files , the values are reaching infinity and when i switch jacobian selector off and let the computer compute the jacobian numerically, the ekf block is just tracing the measurements that are being fed to it. What might be the problem. any solution??? Will doing it in matlab be more comfortable than simulink
Relevant answer
Will doing it in matlab be more comfortable than simulink ?
Matlab M-file is better than simulink I think.
You have to be careful while giving Co variance matrix and initial conditions.
Please check Jacobian matrix parameters again.
  • asked a question related to Extended Kalman Filters
Question
4 answers
I need to apply a Kalman Filter for System Identification. The function can be of the forme.g. A*cos(omega*t-phi)1. I was not able to fit the data by a Kalman Filter while something like A*((t-tau)/T)^alpha*exp(-(t-tau)/T) seems to be managable (it just requires sometimes lots of iterations). Is there a criterion/rule of thumb/etc. that states for these kind of nonlinear functions it works/likely works, ...
Thanks in advance.
Relevant answer
Answer
Hi Oliver. I may explain what I would do for solving the problem you have mentioned (under assumption that I got it right) having Kalman filter in mind, but not only it.
You have some data, you suppose that they are generated by the black box in the form A*cos(omega*t-phi) and need to identify A, omega, phi.
First I would apply Fourier transform and check that the spectrum is localized in some small area plus inevitable noise. If it is not the case, it seems that approximating the data by a simple harmonic wave is not a good idea.
If it is indeed the case let take the middle of spectrum as an approximation for omega`.
Next we need to find A and phi and Kalman filter may be used for that.
Namely A *cos(omega *t- phi) is a solution of the second order linear system d/dt(X) = A*X with A= ( 0 1; -omega ^2 0) or
dot( x_1 ) =x_2 dot(x_2) = - omega^2 x_1
with observation y= x_1 ( in matrix form y= C*X =(1 0 ) * (x_1 x2)’ )
You need to add some noise and set its statistical characteristics than use standard Kalman filter As a result, you will get a smooth function that can be easily approximated by a*cos(omega*t) + b*sin (omega*t) ( using least square – for example) , and finally A and phi - can be easily computed from a,b.
Hope it may help.
  • asked a question related to Extended Kalman Filters
Question
5 answers
I'm designing an extended Kalman filter observer in a control system. In the control system, there is an MPC controller.
Do states, inputs, and outputs used in observer have to be the same as states, inputs, and outputs used in controller in the same control system?
And, should I choose the inputs from variables that I can control only? Or can I choose any variables from state equations that is not a state to be the input?
Thank you in advance.
Relevant answer
Adding on to what Daniel said, once you are using EKF, you can also use in your MPC scheme the linearized state matrices computed by the EKF, which reduces the computational burden.
  • asked a question related to Extended Kalman Filters
Question
4 answers
In the Kalman filter method, the posterior estimate will be calculated based on a-priori state estimate and the ratio of current measurement error (Kalman gain). Now if the forward model is not accurate, for example we change the input matrix by multiplying a gain, why the Kalman gain remains the same for all values of the gain?
Relevant answer
Answer
Kalman Filtering is based on the assumption that the error on the state prediction is just a vector generated following Gaussian white noise, and that this noise vector is simply added to the prediction itself. This noise is called usually process noise, and is simply parametrized with a positive semi definite covariance matrix.
Therefore the error does not depend on B matrix at all, since we assume that the input itself is perfectly known, it is only the model of its influence on the state that could be wrong. If you think your input model is wrong then you should increase the process noise covariance matrix accordingly.
  • asked a question related to Extended Kalman Filters
Question
3 answers
Hello,
I am using a Kalman-Filter for a System with a watertank . Theres a known voltage input signal U_pump, that is used to control a waterpump. The waterpumps flowrate is proportional to the voltage U_Pump, so the relationship between U_Pump and the flowrate Q is Q = K * U_Pump.
As you can see, this is just a very easy model and probably not very accurate. So I have a Sensor, and want to decrease the uncertainty in this model by using the sensor to update the flowrate Q.
Therefore I have set Q as a state.
So the Differential Equation for the Flowrate Q is.
Q_dot = 0* Q + 0*U_Pump;
with A = 0; B = 0;
Because Q_dot is just the Rate at which Q changes over time, I cant put the K * U_Pump in there.
This means, in the discrete form:
Q_k = Q_k-1, which is a static model for the Flowrate Q, although I have the model Q = K*U_Pump
So my predicted Measurement of Q with the Kalman-Filter is just
Q_k_predicted = 1 * Q_k-1; which is not correct when I am adjusting the Voltage U at this timestep, therefore I can only use this for a static Voltage.
So is there a way to update U_Pump with the sensor value, or is there non?
Relevant answer
Answer
Hi Michael Short Thank you a lot for your answer. This is exactly what I was looking for and you understood my question perfectly. I will try to implement this soon. Again, thanks for your time investment and the detailed answer.
  • asked a question related to Extended Kalman Filters
Question
3 answers
Hi, my Extended kalman filter (EKF) program works well, my estimated state vector is same as real state vector when I give any positive definite number to measurement noise R, even though I gives 10^ -14 to R. But I want to make covariance analysis and one part of covariance analysis I need to set zero measurement noise. When I do this, I get singularity warning from K= (H*P*H'+R)^-1 (kalman gain part of measurement correction part of EKF). I checked eigenvalues and rank. When I get R=0, some eigenvalues becomes negative a few seconds later and rank is decrease from 15 to 1. When I get R>0, all eigenvalues are positive definite and rank goes to 15 to 7. How can I solve problem, I can not detect cause of this problem. Could you help me please?
Relevant answer
Answer
When you set R=0 and you measure y_m=h(x) where y_m denotes the measured value, in theory this means you have deterministic information. Right after this measurement is made, two consequences should follow. First, your Kalman estimate \hat x should actually satisfy y_m=h(\hat x) and secondly you should have H*P*H'=0 indicating the certainty (no variance) in the corresponding directions. And you see this means if P is initially full rank its rank loses as many dimensions as the dimension of y.
In practice, though, the first condition is not met due to nonlinearities (this would be guaranteed with a linear system and a KF but this is not guaranteed for the EKF in a nonlinear context). What happens in practice is the second condition since you can easily check that HPH'=0 after P has been updated, i.e. P<- P-PH'(HPH'+0)^{-1}HP. This implies a decrease in the rank.
If you measure again right after that, this measurement is useless as the filter already knows y_m=h(x) for certain. And you see that indeed H*P*H'+R is not invertible for R=0 but remember you apply anyway the gain to (y_m-h(\hat x)) and this is null in theory (see first consequence above). Now, if you move between two measurements and update the EKF again, normally in a nonlinear context H is different since it is linearized at a different point. This implies further rank decrease and so on.
Numerical issues may also creep in when dealing with rank deficient matrices and trying to inverse matrices that are not invertible of course.
  • asked a question related to Extended Kalman Filters
Question
6 answers
Currently i am working on tracking the pose of a 3D object. I applied linear kalman filter and it works fine but not very good so i am working with extended kalman. According to many literature i need some non linear functions f(.) and h(.) but it is not very clear on how to model those functions. i want to track 6 dof with ekf.
Does anyone have an idea on how to model those functions ?
On what basis should i model it ?
I need non linear state transition function. x has variables: X, Y, Z, velocity_x, vel_y, vel_z, acceleration_x, acc_y, acc_z, roll, pitch, yaw, angular_vel_roll, ang_vel_pitch, ang_vel_yaw, ang_acc_roll, ang_acc_pitch, ang_acc_yaw.
Thank you for your recommendations and solutions.
Relevant answer
Answer
Hello again,
I'm not sure that your problem is observable. You have to have sufficient sensor measurements to be able to estimate the state (in your case pose and required derivatives). If you simulate a dynamic system with process noise, the state rapidly diverges from its initial state.
Maybe you have noisy measurements pose from video or other sensors? If you do not have an "observable system" (in the control theoretic sense), you cannot construct a state estimator, including an EKF.
  • asked a question related to Extended Kalman Filters
Question
5 answers
I have implemented an EKF to estimate the dynamic state of a synchronous generator in Matlab/Simulink. The model of the generator is a 6th order sub-transient dynamic model. Ignoring the effects of saturation in the machine, I can achieve a good performance of the EKF. However, when I simulate the behavior of the machine including saturation, it results in an steady state error in my estimates.
How could I account for the effects of saturation in the estimation process? Or how could I reduce the steady state error when including saturation in the machine.
Relevant answer
Answer
Check the initial setting.
  • asked a question related to Extended Kalman Filters
Question
7 answers
Hi,
working with extended and unscented Kalman filter brings me to the question, how I can compare them in simulations as fair as possible.
My first intent was to choose the process noise matrix Q and measurement noise matrix R for both filters in the same way.
I found out, that my UKF works much better for 10*R, while the EKF is more accurate for 1*R. I do offline simulations for a navigation problem, using measured IMU and GNSS data.
My feelings says me, that even for same noise matrices, the comparison is not as easy as I thought, because of the sigma points building procedure and so on...
I found that paper:
which says that EKF can perform better covariance estimations in certain regions (higher mean estimates).
Has somebody some tips for me, regarding that topic?
Best regards,
Max
Relevant answer
For nonlinear estimation, both the EKF and the UKF are approximate strategies. The propagation of the error covariance matrix P is simplified by the use of Jacobian in the EKF and the choice of sigma points in the UKF.
Though Q and R matrices generally refer to the process noise covariance and measurement noise covariance respectively, they can also compensate for the errors in the approximation of the propagation of the error covariance P. That is, in the EKF Q can be tuned such that it compensates for the loss of higher order information that result from linearization. The same holds for the UKF too.
To sum up, Q and R can be tuned to represent a little more than process noise and measurement noise for nonlinear Kalman-based estimation schemes. This gives rise to difficulty in tuning for some applications. Since you work with simulated data, you can easily verify if your tuning is reasonably correct by checking if the actual error covariance is approximately close to the one obtained by the filter. This implies that the estimation scheme works reasonably well. In the absence of the true state value as happens in real-world situations, the innovations can be compared.
Coming to the specific case, if you want to do the fair comparison tune both the estimation schemes separately to obtain the best results. Then compare them as pointed out early.
  • asked a question related to Extended Kalman Filters
Question
3 answers
Hi to everybody
I'm new about this topic and i want know how i can implement a extended kalman filter in simulink to estimate the state of charge of a, for the moment, generic battery.
If you can send me some steps that i have to follow or an easy example.
thank you
Relevant answer
Answer
You can use sfuntion builder for both simulations and real time experiments. However, if you only want to implement in simulation, choose maylab coded sfunction block. Good luck.
  • asked a question related to Extended Kalman Filters
Question
18 answers
Trying to understand the Kalman filtering with all these example of the EKF and is it properly done ?
Relevant answer
Answer
I advise you to read the book "KALMAN FILTERING. Theory and Practice Using MATLAB. Fourth Edition" by M.S. GREWAL and A.P. ANDREWS
A very useful book for those interested in the Kalman filter.
  • asked a question related to Extended Kalman Filters
Question
5 answers
I ntend to work on fault detection of robotic systems with kalman filter implementaion how difficult will it be for me to complete the task?
Regards
Relevant answer
Answer
It will be not be easy. Designing, developing and implementing a practical working Kalman filter has a number of pitfalls. Here are a few tips derived from a good deal of experience with extended Kalman filters in all sorts of aerospace applications:
1. Make sure that the partials with respect to state variables are right.
2. Check that the observation errors are close to Gaussian and independent from one measurement time to the next
3. Pay much attention to the differential equations of motion and their numerical solution method. Best to use a self-starting Runge-Kutta method.
4. Approximate the state transition matrix by differentiating the integration formula----an old, very practical aerospace engineering trick.
5. Devote a good deal of attention to Process Noise in the state transition---a good practical method is to numerically integrate the equations of motion with the operational RK method along the baseline trajectory along with a higher order method, and difference resultant state vectors at each integration point and average the first and second order statistics of the vector differences. The first average of the first difference will give you some notion of bias while the averaged second order statistics will be your process noise matrix.
6. Avoid using the noxious notion of covariance error analysis in which your run the filter along the baseline trajectory without processing observations, just updating the state error covariance matrix. This can be very misleading.
7. Construct the entire filter first and run the observations through it----that's the sine qua non.
8. Be sure to compute chi-square of the prediction-observation. This statistic will tell you whether your extended KF is working---It should average to the dimension of the measurement.
I hope you find these tips helpful. Let me know how things work out , if you need help, and best of luck.
Roy Danchick
  • asked a question related to Extended Kalman Filters
Question
11 answers
Hello,
I am making a simulation to determine Orbit determination for Space Objects so that I am changing the parameters in simulation by automatical and I need to validate the filter is worked and the estimation result is ok. I know state vector of object and covariance so that I need to establish a relationship between state vector and covariance result. Normally, we expect state vector result should be under the covariance( 3-sigma). For example, I have 100 step filter result for state vector and covariance and I want to print only one value to give a decision for the estimation worked fine. I have one idea but How much is correct I dont know! I can take average of state vector and covariance and ....RESULT= sqrt(X^t*inv(P)*X).... X=> state vector average, P is covariance average.
EDITED:
I dont have reference state because I have real data and other thing is if I am working on Weighted Least square Filter, How can I find (HPH'+R)?
Yours Sincerely
Relevant answer
Answer
I suggest read this paper about estimators performance tests:
  • asked a question related to Extended Kalman Filters
Question
7 answers
I found out, that the linearized (error-state space, indirect...) Kalman filter estimates the error, made by linearization.
Furthermore it linearizes also the state itself and not only the Covariance matrices as the extended Kalman filter does.
What is the benefit of using a linearized Kalman filter compared to the usage of an extended Kalman filter? Does this "error-state space" formulation comes with advantages or is it just an alternative representation?
Regards,
Max
Relevant answer
Answer
Dear Maximilian,
In Linearized Kalman Filter nominal estimate of state is used to define Jacobian matrix of the dynamic model function f as F and Jacobian matrix of the measurement function h as H. But in EKF, corrected state estimate is used in each step for linearization.
With the time, error due to linearization will grow in LKF. Using updated state estimates in each step it is likely to obtain more accurate results.
I drew a simple representation of both.
Hope it helps,
Good Luck
  • asked a question related to Extended Kalman Filters
Question
2 answers
I am trying to find Optimum data interval for orbit determination. Because in Leo, Geo orbit update measurement data can be different so that I want to implement optimum data interval algorithm for Orbit determination. I found one thing for that LUPI algorithm but haven't still found more details about LUPI algorithm. Which kind of algorithm can use in Geo, MEO, Low orbit? Because Atmospheric drag and solar radiation is really important sometimes not need to update frequently the measurements. LUPI algorithm is mentioned in 'Conjunction Assessment Risk Analysis M.D. Hejduk NASA CARA Collision Avoidance “Short Course” Part I: Theory'
EDITED: I reached the author so that not possible to see LUPI algorithm. If you have experience about ODI(Orbit determination Interval), please, give an idea.
Relevant answer
Answer
Dear Mohamed,
These papers are not explaining the LUPI algorithm.Thanks for effort but I have checked these papers before.
  • asked a question related to Extended Kalman Filters
Question
4 answers
Are there any conditions under which the EKF performs better than the EKF or do both have a comparable performance?
Relevant answer
Answer
If the system is linear or linear nearly, and if the numerical condition is bad, like the state is small floating value: 1e-3, ukf will lose precision in square root computation seriously. In this condition, I think EKF performs better (just based on my experience :) ).
  • asked a question related to Extended Kalman Filters
Question
3 answers
Hello everyone,
I am a little stuck with my Extended Kalman Filter. I try to estimate the attitude of a satellite based on the angular rate and quaternion. I also have the magnetic field values in body and ECEF frame.
The problem is my measurements (angular rate, quaterninon, magnetic field)) are available every 60 sec. and I would like to reconstruct the state every second.
However, I can have the position at every seconds.
Do you have any advice on how estimate the attitude please ?
Thanks a lot :)
Relevant answer
Answer
Use position measurement to estimate states at each second. Further at 60th second when other measurements are available use all other measurement to estimate the states.
  • asked a question related to Extended Kalman Filters
Question
3 answers
Hello,
I am working on Square Root Information Filter. My question is about process noise because I have already known the process noise for SRIF but I am not using Gamma*u for state propagation.But I can assume Gamma is 1 because I know the process noise. The question is, How can I determine 'zu'. Process noise(Q)=R^-1u*R^-Tu
Also, How can I determine initial 'zu'? In my opinion, I will accept the 'zu=0'. Is it correct?
I attach a pdf for information but I think the equation 7 is not correct in chapter 2.1.4.
Covariance Propagation=> P(k+1)=Phi*Pk*Phi^T
| Ru 0 zu,k | | Ru,k+1 Rux Zuk_bar |
| -Rk+1Gamma Rk+1 zk_hat | | 0 Rk+1 zk+1_bar|
Relevant answer
Answer
Thanks for answers, I solved the problem. I accept Zu is zero and working!
  • asked a question related to Extended Kalman Filters
Question
4 answers
I have written the code for Extended Kalman FIlter in Matlab for SOC estimation of a battery.
The problem is that the state estimation is not working, and the filter takes a constant value through out the number of iterations.
So far, I have made certain modifications but the filter just seems to be unresponsive.
I am attaching the corresponding .m file and excel files.
Any leads would be appreciated.
Relevant answer
Answer
Start with a simple filter and get that working.
  • asked a question related to Extended Kalman Filters
Question
6 answers
Do you have any SRIF example code or Can you send any link about that?
Relevant answer
Answer
You can find SRIF C++ code in GPS Toolkit Library (in application to the processing the GNSS measurements) http://www.gpstk.org/doxygen/classgpstk_1_1SRIFilter.html
Actually the classical book on SRIF is G.J. Bierman "Factorization Methods for Discrete Sequential Estimation", the reprint is available on amazon for a reasonable price.
  • asked a question related to Extended Kalman Filters
Question
4 answers
hello sir,
i am estimating state of charge of lithium-ion battery. i am using 2RC electrical equivalent model in Simulink and extended kalman filter model. i am facing problem in state function and measurement function. kindly help
Relevant answer
Answer
What toolbox are you using? I worked with Simscape Power Systems, and I had a lof of troubles because of it. Basically the process variables might change depending on the rest of the Simulink schematic. Basically, I would use the EKF to estimate the output of a generator. Changes I would do in the EKF would affect the process (it was a wind turbine) without being any link between the EKF and the process, except some from blocks to get the inputs and measurements from the wind turbine. I found that changing the solver to a fix step continous one (some Power Systems blocks have numerical problems when using discrete solvers) like ode1, with a fix step size of 1e-9 made the simulation more stable (and more slower).
Can you please describe your problem in greater detail? What is the exact problem that you face?
  • asked a question related to Extended Kalman Filters
Question
6 answers
I am currently working on a research where I can apply Kalman Filter in optimizing Ecognition's Multiresolution Segmentation results. By finding the right weights / parameters, I think. However, I find it hard to find a guiding reference where I could apply Kalman Filter.
Now, I am currently working with table consisting of sets of parameters / weights run through the multiresolution segmentation algorithm, and with a column of their specific error rates (with a certain reference). Do you think it's valid to use linear regression to find an equation to represent these results / data? in order to find weights where the error will be near zero?
Can I apply Kalman filter before or after linear regression? May it be a help for finding coefficients for linear regression? Or for finding optimal weights with the equation after linear regression?
*note: I will use the Multiresolution Segmentation in Trimble's eCognition Developer software. Not in matlab / python.
Any response is highly appreciated. Thank you!
Relevant answer
Answer
There is a really good toolbox which allows you to do this sort of thing, written br James Taylor and colleagues. It includes some examples that may help get you started. You can download it here http://www.lancaster.ac.uk/staff/taylorcj/tdc/download.php
Hope you find it useful.
  • asked a question related to Extended Kalman Filters
Question
5 answers
I'm working on this research where I should find optimal segmentation results from eCognition's Multiresolution Segmentation. Is there a way for Kalman Filter to be able to help with this objective of mine? May it be for identifying parameters? Or converge error to zero? Thank you!
I'm currently working on table of errors vs. weights
Relevant answer
I am currently working with table consisting of sets of parameters / weights run through the multiresolution segmentation algorithm, and with a column of their specific error rates (with a certain reference).
Do you think it's valid to use linear regression to find an equation to represent these results / data? in order to find weights where the error will be near zero? Can I apply Kalman filter before or after linear regression?
  • asked a question related to Extended Kalman Filters
Question
4 answers
Hello,
I am fusing a certain sensor into an Unscented Kalman Filter (UKF).
This sensor reports a certain measurement including an SNR metric for each measurement.
I am wondering if it is a good idea to keep changing R for this sensor based on the SNR values. However, this would mean too frequent updates of R. or I could adapt R at a lower frequency, like 1Hz or slower.
Or should R be rather kept constant and I simply make use of the sensor's SNR metric to decide whether to use or throw out certain measurements.
Thanks for the advice.
Robert
Relevant answer
Answer
Dear Robert,
I suggest you to see links and attached files in topics.
- The Joint Adaptive Kalman Filter (JAKF) for Vehicle Motion State ...
- New Insights Into the Noise Reduction Wiener Filter
ftp://ftp.esat.kuleuven.be/sista/doclo/reports/04-239.pdf -Measuring Indoor Mobile Wireless Link Quality
- Observer Design and Model Augmentation for Bias ... - DiVA
Best regards
  • asked a question related to Extended Kalman Filters
Question
3 answers
I generated a trajectory for a point target by using coordianted turn model with a turn rate w = 0.08 rad/s ~ 4.6 degrees/s. When i use extended kalman filter with coordinated turn model, the estimated turn rate converges to 3.8 (~ 0.066 rad/s if estimate is in degrees). If I accept estimated turn rate is in degrees, my filter is OK. I just need to convert deg2rad. Any ideas?
Relevant answer
Answer
Dear Aykut,
I suggest you to see links and attached files in subject.
- Interacting Multiple Model Extended Kalman Filter for Tracking Target ...
- An Improved Interacting Multiple Model Filtering Algorithm ... - MDPI
- Models and Algorithms for Tracking Target with Coordinated Turn Motion
- Bearing only Tracking of Maneuvering Targets ... - Semantic Scholar
- MS Thesis - UPCommons
Best regards
  • asked a question related to Extended Kalman Filters
Question
10 answers
The double integration of acceleration gives the position of an object. However, how should the position of an object fitted with accelerometer and gyroscope be determined using the data from the two sensors.
Relevant answer
Answer
Hello,
the problem you are referring to usually receives the name of "inertial navigation" or "dead reckoning". It is something I am currently working on, and is a problem whose solution is not direct.
The method I am using is:
1. Obtain a good "orientation estimation" or "attitude estimation". This is, find the best guess of the rotation transformation that relates two reference frames: the one attached to your sensor, and other one usually taken to be an inertial reference frame (or approximately inertial) as one whose z-axis points in a direction orthogonal with the Earth surface. The accelerometers sense the gravity accelerations, so it gives you information about "where it is down". Gyroscopes help predict orientation. A common approach is to use a Kalman filter:
although others use gradient descent techniques and also obtain good results:
2. Transform the acceleration measurements (taken in a non inertial reference frame: the one attached to your sensor) to the inertial reference frame using the rotation transformation obtained with orientation estimation.
3. Subtract the acceleration due to gravity.
4. Integrate the resulting acceleration twice to obtain position.
This is what you usually obtain when you perform this process:
If you have seen those videos you will have begun to think that it is not possible. However, in certain scenarios you can use pseudo-measurements to improve your estimation:
I would conclude that depending on your application, you should use pseudo-measurements, or include more sensors to estimate the position. In other case, as far as I know, it is not possible to obtain a good position estimation.
  • asked a question related to Extended Kalman Filters
Question
9 answers
We know that Kalman filter is not available for nonlinear systems, hence, extended Kalman filter (EKF) was developed as an alternative.
Similarly, unscented Kalman filter (UKF) is an alternative to EKF, due to some restrictions of EKF.
Please let me know, if any, what are negative points (deficiencies) of UKF?
Relevant answer
Answer
In my opinion; no body can say UKF is the endpoint of Kalman filtering. Form time to time we read some new researches in this field. But we can simply distinguish between the "Kalman family" that suppose the Gaussian function as a probabilistic distribution in the state space and the other filters like particle filters who are applicable for any p.d.f. in the state space. In my opinion; the main draw back of the family of Kalman filters is the heavy computational burden because of the "big matrix" which have been initialized at the beginning of our model.
You can also read the first and second chapters of the following book:
Beyond the Kalman Filter: Particle Filters for Tracking Applications.
  • asked a question related to Extended Kalman Filters
Question
2 answers
I am trying to integrate a GPS and IMU via a loosely coupled integration. My state is the position and velocity vector. I am using the following equations for the nav frame mechanization.
I am trying to use the kalman filter and for this I need:
the state transition matrix φ
the system noise covariance matrix Q.
I assume the measurement matrix H is the identity matrix because the outputs of the IMU and GPS are in the same frame
The measurement noise matrix R.
How do I initialize the initial covariance matrix
I am assuming that I have perfect sensors. Although I would like to know how not having perfect sensors would change these matrices.
my questions are the following:
For the state transition matrix. Is it derived from the IMU mechanization above? If so how do you deal with the fact that the future latitude is a function of the of the future altitude?
Would the system noise co variance be 0 since I am assuming a perfect model?
Is the H matrix the identity?
How is the initial covariance matrix usually initialized?
 
Relevant answer
Answer
Hi Ariel,
As Graham mentioned, that you will need to add process noise in order for the filter to converge. Also assuming H as identity can lead to bad results as you always assume that the GNSS and IMU are bias-free (which is real life is not the case). I would suggest adding the bias in the GNSS and IMU data as state variables for the filter to estimate them as well. 
You can have a look at our work regarding the same. If you want I can also attach you c++ implementation of the same.
Regards.
  • asked a question related to Extended Kalman Filters
Question
3 answers
i am working on hardware implementation on the RT-LAB and my application is EKF based induction motor for that  i am facing the issue on s function matrix code in c language in 5*5 matrix
Relevant answer
Answer
Hi Savarapu,
I provide you a ROS and C++ implementation of an EKF filter that I made. Its very similar to a C code. The main EKF logic for the S function can be found in the run function.
Let me know if it helps.
  • asked a question related to Extended Kalman Filters
Question
4 answers
Detailed Description :
I am working on steering wheel angle sensor that measures absolute angle of steering wheel. As steering angle sensors uses gears and several joints which is totally hardware related so in spite of calibration in start with the passage of time due to usage of mechanical parts and also due to some environmental and road conditions some errors occurs in the values of sensors (e.g. offset, phase change, flattening of signal, delay).
In short due to these errors in the measurements our aim gets distracted means If I am viewing velocity vs time curve so if in the original or calibrated sensor in short close to ideal condition sensor my velocity shows a peak in amplitude but due to error (hysteresis) in measured signal I am not getting peak in velocity curve or I am getting flattening of curve so it will affect my final task.
I have a tolerance let say 1.20 degree for hysteresis so that’s why I am having detailed idea about my signal and want to observe my signal if some changes means offset, delay, lowering has occurred in my signal or not. This will not only provide me an idea that whether to lessen the amount of sensors used for my task or made some changes in hardware of sensor to lessen the amount of hysteresis or do some other actions to reduce it.
What I have done uptill now in which uptill now I am not sure that whether I am right or wrong. I am getting some values for hysteresis but I have few questions regarding those techniques. If someone provides me an idea about it how to improve these techniques or provide me a better approach then it will be nice and great guidance.
I have an ideal sensor signal (under ideal conditions which we want) and values from 1 sensor I have data of 6 different drives from car. I am explaining just 1 example of my first drive and its relation with my reference sensor data.
Given the data reference signal and sensor signal data of size 1x1626100 and 1 x 1626100 double for one reading from sensor but in all readings values from Ideal and measured signal w.r.t to time are same.
In short I want to find out the Hysteresis difference of sensor signal from measured signal.
I have applied few data estimation techniques to accomplish my goals.
1-      I have applied Gaussian Technique to estimate error in my data but I am not satisfied with it as I am not getting some good values or expected values with it may be due to outliers or some other errors.
I have subtracted (Ref – measured value of signal). Calculated mean of difference signal after applying my limitations, Standard Deviation of difference signal after applying my limitations, then make a Gaussian Curve along with mean and standard deviation. Made 2 lines one for mean+ standard deviation and 2nd one is with Mean – Standard Deviation and distance between +ve Mean_std and –ve Mead_std is called Hysteresis (Loss).
Please have a look at the attached figure. I have attached figure for 3 modal Gaussian curve but in some diagrams just like picture 3 my data is shifted. Can anyone tell me the reason why it is so and how to erase it because it is occurring in all diagrams but in this figure 3 it was clear.
2- In this method I have applied Regression lines Technique (On upper and lower values of difference signal).
I took difference of my signals (Ref – measured value of signal after applying my limitation on signal).
Applied regression technique above and below the difference signal means on upper values and on lower values separately and difference between upper and lower values regression lines is called as Hysteresis (Loss). Please have a look at figure 3 and 4 for clear view.
The Problem here with this technique is that I define the values for upper and lower regression line by myself after looking into data like up= 0.08  , low= -0.08.
3-      I have also applied RMSE technique but have few questions that are confusing me.
As I am dealing with static data so I considered my Reference signal as actual valued signal and my measured valued signal from sensor as measured values and apply RMSE formula on that.
    RMSE=    square_error = (sig_diff_lim).^2;
    mse =  mean(square_error)
    msedivided = mse/numel(drv(2))
    rmse = sqrt(mse)
4-      I have also applied correlation function but I think it is not working well with my data.
But it gave me some good insight about data.
Some Questions that also need clarification if possible:
1-      What is difference between RMSE and MSE means I know basic stuffs but I want to know that what are the applications where we use RMSE or MSE and which will work in my case for my data.
2-      I have now explained Gaussian, Regression technique, RMSE. Just one Request .Can someone explain me which Technique is the best to use because I have mentioned my issues in Gaussian and Regression Technique above. Just some explanation will work for me .Means Pros and cons of above mentioned technique.
I hope that I remained able to provide you the clear idea and detailed review what I want to do and what I am expecting and I hope to get some positive and valuable response from people.
Sorry for providing a long story but As I am not too expert in these as I am still learning so if I will get some useful responses it will improve my knowledge and also help me to accomplish my task/Goal.
Thanks for cooperation in advance.
Relevant answer
What type of hysteresis sensor are you studying?
Magnetic?
  • asked a question related to Extended Kalman Filters
Question
2 answers
How to detect bad data in inputs of system dynamic equations?
Relevant answer
Answer
Dear Mr. Bhui,
You can still detect any kind of faulty input to the UKF system equations using the innovation sequence and an appropriate chi-square test applied to the innovation covariance of the filter.
For such detection your filter must be sensitive to the faults in the inputs (e.g. a filter with low process noise covariance, Q).
If there is a possibility for both measurement and input faults then you may need also a fault isolation process as you need to detect two types of faults both from the innovatiaon sequence. I suggest you to check the following publication in this case for the details of a fault isolation process
We applied the same isolation process for an estimation problem with the UKF in
If you have trouble accessing the full texts I can send them via e-mail.
Best regards
  • asked a question related to Extended Kalman Filters
Question
6 answers
Hi 
please, i want to know if i can use a classic kalman filter to estimate the states of a linear system with a variable state matrix A.
Thank you 
Relevant answer
Answer
Hello. Jose Fernando provided a good answer above. I think I can clarify a bit further.
The "classical" Kalman filter is posed in continuous time for a system of the form dx/dt=Ax(t)+Bu(t)+Gw(t), z(t)=Hx(t)+v(t) where w(t) and v(t) are white Gaussian noise (WGN) with zero mean and known covariance Q and R, respectively, x(0) is Gaussian with known mean and covariance and all three of x(0), v(t) and w(t) are uncorrelated. It is a simple matter to proceed from the constant-coefficient continuous time linear stochastic system to a discrete time equivalent system by "discretizing" the continuous time system via the "variation of constants" formula. This involves integrating the dynamical equation and assuming x(t) is constant between sampling times. The process noise covariance Q(k) of the discrete time system can also be obtained this way. The classical Kalman filter for the discrete time system can then be written down quite easily. In general, the coefficient matrices for the discrete-time KF depend on the time, but this is not a problem.
Now when the continuous time system is not time invariant (in terms of its coefficient matrices), it is not generally possible to discretize the continuous time system to obtain the discrete time equivalent and hence the KF. However, the discrete-time KF is general in the sense that the equations hold even when the coefficient matrices are time varying. You just have to know what they are at each time instant.
So I think this answers your question: if the continuous time system is time varying, you can't easily write down the KF, but you can for a time-varying discrete-time stochastic linear system.
  • asked a question related to Extended Kalman Filters
Question
10 answers
Hi everyone!
I spent lots of time to implement DEKF for battery state and parameters estimation simultaneously. However, I need your help! I will be grateful for any your advice.
I use the standard Li-ion battery model with the following state parameters: SOC and two voltages (V1 and V2) corresponding to two RC-branches. The observe equation is
y(k) = OCV(SOC(k)) - V1 - V2 - R0*i(k).
I use current as control.
Parameters are R0, exp(-deltat/R1*C1), R1*(1-exp(-deltat/R1*C1)), exp(-deltat/R2*C2), R2*(1-exp(-deltat/R2*C2)).
I calculated derivatives (Jacobian matrix) for parameters estimation recursively.
Unfortunately, I did not obtain good estimation results for R0 estimation.The problems that I managed to find: parameters covariance matrix updated noticeably during prediction step only; when current is equal to zero, estimated Rhas big noises in these iterations (please, see attached pictures).
The only solution that I found now: predict parameters not in the form of
theta(k+1)- = theta(k)
but in the form of
theta(k+1)- = alpha*theta(k)+ + (1-alpha)*p, where p is expected parameter value based on mathematical model, alpha is tuning coefficient, unfortunately, I do not understand, how to obtain p in my model or any other because we do not have the explicit mathematical model for params estimation.
Could anyone help me find mistake in my inferences, please? Or provide useful articles where this problem is already solved? I will be very grateful for any advice which will help to find a solution.
Relevant answer
Answer
idea is good, hard to realize I suppose, I can only set it emprically for now
  • asked a question related to Extended Kalman Filters
Question
14 answers
I am using the EKF to estimate some structural parameters, but the result is not right.
One single-DOF structure, the state vector includes displacement, velocity, stiffness and damping coefficient, the measurement vector only includes displacement, the input is known.
The results show that the estimated stiffness and damping are alway keep constant and are equal to the initial value during the process. The displacement and velocity will change
Relevant answer
Answer
Dear Quankun Li,
The problem you mentioned might be related to the tuning of the EKF. If you do not set the process noise covariance matrix (which is usually represented as Q) properly then you may have this problem.
For your case, you need to be careful about what are the Q values for the stiffness and damping.
In addition there is possibility that the initial estimation covariance values (P0) for stifness and damping are not set properly. To exite the filter at the beginning you may set higher covariance values for these parameters.
Lastly here is a paper, which investigates a similar problem:
Please let me know if you somehow cannot access the paper, I may send you.
Best regards.
  • asked a question related to Extended Kalman Filters
Question
2 answers
Hi everyone, 
I have 4 outputs and i want to make detection of faults in those outputs by ysing dedicated observer scheme (DOS) and the observer that i use is kalman filter 
my question is about the design of each observer for the four outputs and the selection of covariance matrix Q and R 
Thanks a lot
Relevant answer
Answer
Dear Idrissi,
Concerning your second question about the selection of the process and measurement noise covariance matrices Q and R for an (extended) Kalman filter, I think you may find the attached tutorial paper very helpful.
  • asked a question related to Extended Kalman Filters
Question
2 answers
I am working on the state estimation of batch distillation columns using an extended Kalman filter. The components are ethanol and water, i.e ethanol-water system.
But I have some challenges
1. I am having a challenge on how to obtain the matrices needed to obtain the error covariance, process noise covariance and measurement noise covariance. 
2. I am having a challenge of not knowing which software I can best use in modelling the system.
3. How to do the the experimental setup. What are things required to run the experiment?
This project is my experience with Kalmafilter, extended Kalman filter and the like. I am into chemical engineering.
Relevant answer
Answer
Dear Philemon,
True to say the question you ask is a real project consisting of several parts of which the first is the modeling. Indeed, everything will depend on the perfect realization of the model of this system, so the calculation of the covariance matrix and the construction of the extended Kalman filter can be done easily. The second part is the simulation implementation of this process using Matlab and Labview for example. Finally, we shall deal with the experimental part which must be the resultant of the preceding parts. Concerning the modeling part here are some elements of information links and attached files in topics.
- ASPEN Tutorial | Chemical Engineering and Materials Science
- 21st European Symposium on Computer Aided Process Engineering: ...
- Identification of Best Model for Equilibrium Data of Ethanol-Water Mixture
- Simulation of ethanol extractive distillation with mixed glycols as ...
Best regards
  • asked a question related to Extended Kalman Filters
Question
16 answers
Dear Researchers,
I have to build a Kalman filter in Simulink based on linearized model of a system using state space block. The linearization of a system occurs at every one hr. and the matrices A,B,C,D are updated. As far as the Simulink is concerned it doesn't update these matrices (defined as global variables) in state space block every time the linearization happens. I was wondering if there is any other way to implement this. Note that this filter has to run with Simulink's run-time as it then sends state estimates to controller.
Thanks in advance!
Relevant answer
Answer
Hi Niraj
you can make state space block that has inputs for A, B, C, D like follow picture
  • asked a question related to Extended Kalman Filters
Question
3 answers
Hello!
I am working on multi-platform, multi-target tracking problem. I am using Interactive multiple models (IMM) [CV + CT + Singer]. My problem is asynchronous (different times of each plot for every platform). Monoplatform processing is fine. I am satisfied with the results. But when I try to fuse my measurements, I get unappropriate quality.
I want to do something like that: extrapolate all local(monoplatform) tracks to one time and fuse them here. Calculation of cross-covariances is quite involved and resourse-consumption for this case. So I've chosen method that was described at Zhen Ding, Lang Hong " A distributed IMM fusion algorithm for multi-platform tracking " (1998). It suggests to use "global" filter and fuse locals using both locals and "global" filters results. (It performes the same procedure with Bar-Shalom - Multitarget-multisensor tracking: principles and techniques p .464 ("Optimal fusion using central estimator") but for IMM filter, not for KF).
My problem is: I want to propagate this article's technique to asyncronous case. I don't understand how to get predicted and filtrated values for local tracks (because I have only predicted value to get all local tracks to the same time). Any suggestions?
The second problem is less complicated. I just don't know what initial value to set on "global filter". 
Relevant answer
Answer
Thanks for the answer!
Didn't find in this arcticle multisensor fusion without using cross-covariances though. Not sure it is possible to combine techniques from this article and "Zhen Ding, Lang Hong " A distributed IMM fusion algorithm for multi-platform tracking " (1998)" to deal with asynchronous IMM.
  • asked a question related to Extended Kalman Filters
Question
3 answers
I am working to implement an Extended Kalman Filter to estimate the dynamic state of a synchronous generator connected to a Power System. I am using Power World Software to generate simulation data to use it as input to the estimator, and I am adding gaussian white noise to the data as "measurement noise".
Can someone tell me how can I add "process noise" to this simulation data?
Relevant answer
Answer
Hello. You don't usually add process noise to the simulated data. The assumption is that the dynamical process obeys some physical laws that can be described by a system of ordinary differential equations. The process noise is introduced in the filter to obtain a least-squares type problem for which the Kalman filter is the optimal estimator (under certain conditions). The process noise covariance Q is usually adjusted as a tuning parameter to trade of the state estimation performance. The rule of thumb is: higher Q, better tracking of the data (and the noise); lower Q - better rejection of the noise (and ignoring the data) - hence smoother estimates.
  • asked a question related to Extended Kalman Filters
Question
3 answers
Is it possible to use the particle filters for parameter identification ? if ye, what could be the cost related to the identified parameter which need to be minimized? e.g in case of EKF, we had the covariance matrix and we can minimize the covariance of the identified parameter as the cost. Please suggest some suitable matlab implementation to start my work on PF. Thanks 
Relevant answer
Answer
Hello. Your question relates to whether a filter (i.e. a state estimator) can be used as a parameter estimator. Whether the filter is Kalman based or Monte Carlo (particle filter) based, it does not matter. You need to set the problem up so that you have a constant state equation, i.e. x(k+1) = x(k) or perhaps x(k+1) = f(x(k)), essentially without any process noise term. The Kalman filter will compute a recursive weighted least squares estimate of x (the parameter vector) based on the noisy measurements y(1), ..., y(k), where y(k)=Hx(k)+w(k), w(k) ~ N(0,R).  It will be the recursive equivalent of minimising a sum of squares cost function of the form sum (1..k) (y(j)-Hx(j))^T R^(-1) (y(j)-Hx(j)) + (x(j)-x(0))^TQ^(-1)(x(j)-x(0)), where Q is the process noise covariance (zero in your case).
If the system functions are nonlinear, you need an approximate estimator, like EKF, UKF, etc. The particle filter should handle the nonlinearity without problems, but the question is do you really need a recursive estimator? If not, use a batch estimator like iteratively reweighted least squares (I call it ILS), which is OK for any nonlinearity of the form y=h(x)+w. This is a really nice, simple technique that you can code up very easily in Matlab, having calculated the derivative of your measurement function. Have a look at the references in the paper below for ILS.
  • asked a question related to Extended Kalman Filters
Question
1 answer
Dear Prof.
I have developed estimation and identification techniques, in spite of all efforts, the convergence velocity is very limited, with respect to the variance of the noises, but in my case, combined many second estimation using artificial intelligent, minimizing the convergence error, requiring less time with respect to traditional techniques.
The hybrid filter results an excellent stretegy, accomplishing the great convergence levels seeked.
Your experience in iologial reactors using the filter theory represents an excellent oportunity to collaborate with you. Is it possible?
Thank you of your time to read this little letterI hope in a short time, the scientific collaboration, knowing the biological reactor models and applying the hybrid filtering.
Relevant answer
Answer
Dear Professor Jesús,
I am very grateful for your interest in our work and I will be very happy to colaborate with you. As you mention, the estimation is an interesting and important research area, where several proposal can be considered, for example, we develop some mathematical models of a class of bioreactors which have been experimentally corroborated and also some nonlinear observers have been proposed for our group; they can be considered as application cases. It will be very good to start with a scientific collaboration. Let me give you my e-mail: raguilar@cinvestav.mx.  I will waiting for your kind response.
  • asked a question related to Extended Kalman Filters
Question
5 answers
Good morning everyone,
In robotics, the estimation of the inverse dynamics model (tau = Y(q,qd,qdd)*theta) is based on finding the inertial (dynamical) parameters 'theta'. As the model is linear in the parameters, mostly regression techniques are used to find an estimation. To collect useful data for the identification algorithm, excitation trajectories for the robot are optimized using a cost function that depends on the regressor matrix 'Y'. My question is the following, is there a way to find the excitation trajectory without using the regressor matrix? Put in other words, is there a measure of excitation that does not involve the regressor?
Thanks for your help!
Relevant answer
Answer
I would say that any method of measuring the excitation which does not involve the regressor matrix (at least indirectly) is but a pale imitation of one that does. The symmetric (noise-weighted) matrix [RTWR]-1 should map to the co-variance of your parameter estimates if you were to re-run the estimation with new data, and this is precisely what identification trajectory design seeks to control: bad trajectories are those which allow parameters of the model to have a low signal to noise ratio.
  • asked a question related to Extended Kalman Filters
Question
2 answers
i am trying to reproduce the optimal controller mentioned in the attached paper, cant figure how to carry Laplace trans. on Y and f as in page 8
thanks 
Relevant answer
Answer
thank you Dr Mohamed
  • asked a question related to Extended Kalman Filters
Question
16 answers
It is easy to maintain positive definiteness if the matrix has only diagonal entries. But, if the process noise covariance matrix has off-diagonal symmetric elements, then how to ensure that it will be positive definite considering there is an update law being used to estimate its elements.
Relevant answer
Answer
Try to do a Cholesky factorization of the matrix: P = R'*R, where R is upper triangular. If the factorization succeeds then P is non-negative definite.
  • asked a question related to Extended Kalman Filters
Question
4 answers
I have found a lot of information about fusion of filtrated tracks but, of course, my tracks were extrapolated before fusion. So I do not have "fresh"  filtration matrices to use them in fusion. I use IMM (banch of 3 KF (CV, Singer, CT models)). Now i use something like that:
1) models probability of i-th model is calculated as mean of model probabilities of i-th model for every connected with global(system) track locals.
2) Covariances( P ): P[i]_system = ( 1/(P[i]_1) + 1/(P[i]_2) + 1/(P[i]_3) ) ^ {-1}
3) coordinates (x): x[i]_system = sum{j=1..3} (P[i]_j^{-1} * x[i]_j) (weighted sum of coordinates for every track)
After that I calculate total covariances and coordinates for the system track:
1) coordinates are just weighted with models probabilities coordinates of every model of system track which were calculated before.
2) Dont know how properly calculate covariances here for systems. Tried some variances but it seems it doesnt work properly.
Have i calculated all properly? How to calculate coordinates having predicted coordinates for all models (already combined)? Any suggestions? Thx a lot.
Relevant answer
Answer
Hello. Fusion of asynchronous radar tracks requires prediction of all track estimates/covariances to the most recent measurement epoch. You wish to calculate the posterior PDF of the target state (assuming no data association problems!) p(x(k) | Y1^k, ... , YN^k ) where Yi^k is the set of measurements from radar i up to time k. You can approximate this PDF using the formulae you provide but you have made a number of assumptions, the most important of which are: (1) the measurements sequences are actually from the target with state x(k); (2) the process noise for each filter is independent. In practice, both these assumptions are violated. There is a fairly simple way to deal wtih (2) on the common process noise. This is covered in Bar-Shalom and Fortmann's 1988 monograph (in the appendix, I think). Your problem is a bit more complicated due to multiple motion models, but that should not deter you! IMM type approximations will help. Good luck. Please upvote if you like this answer.
  • asked a question related to Extended Kalman Filters
Question
6 answers
As per (Grewal and Andrews, 2008): "The Kalman filter optimizes the use of all measurements made at or before the time that the estimated state vector is valid. Smoothing can do a better job than the Kalman filter by using additional measurements made after the time of the estimated state vector."
Does it mean that smoothing can further improve the performance of Kalman Filters in the long run? Something like tuning it up by correcting the previous predicted values?
Relevant answer
Answer
For an attempt at an intuitive idea, for simplicity assume you have a sinusoidal signal with some noise. Kalman Filter is a filter and like any filter, even a simple first order pole, will clean some of the noise, yet with some time delay, so its output will remain behind the desired signal.
Now, if you have the entire record and you go in the opposite direction, from the end to the start, you again clean some noise, yet the new "delay" is actually a time advance and so, it actually puts the output ahead of the actual signal in time.
Combining the two output signals, besides getting even better cleaning, also eliminates the delay and so, tells you what the real signal did at the real time. 
  • asked a question related to Extended Kalman Filters
Question
7 answers
I am doing on the research to estimate aero-engine performance parameters using Unscented Kalman Filter. To make this estimation system more practicable, the measurement noise should be included in the engine model in UKF. I have known the maximum range of the measurement noise, but I cannot get the exact value for each point. Besides, does someone know how to set the initial value of estimation x and the corresponding error covariance P0? And how to set the measurement noise R in the model?
Relevant answer
Answer
If you start the UKF without previous information, I would initialise it with X0=0 and P0 large. As control engineering, I would use R to tune it. If the estimation is noisy, then increase R; if the estimation is smooth but slow, then decrease R. You may want to estimate your the variance of your noise, and then use this value for R.
BR,
J
  • asked a question related to Extended Kalman Filters
Question
8 answers
I would like to know how to calculate the earth and sun positions in the Solar system barycenter fram SSB
Relevant answer
Answer
If you are looking for predicted postions of the Earth and Sun wrt the SSB or any other body in any frame, the JPL SPICE system is useful for getting programmatic access to solar system body and spacecraft ephemerides (positions, velocities and attitudes).  The link below points you to the toolkit for Matlab 
The learning curve for SPICE is not trivial, but it is very powerful and there are tutorials and example programs provided.  If you can describe an API (function call with input arguments and outputs) I could probably cobble something together for you pretty quickly.
  • asked a question related to Extended Kalman Filters
Question
6 answers
I am working on ATC target tracking. Using IMM3 (CV, CT, Singer). I get an appropriate quality in the big range situation (When radar measurements have a low accuracy). The problem is i cant get on track fast during maneuveurs. For example: http://take.ms/GYMuB . I dont understand how to fix it. It is not about that I want to describe maneuvers perfectly (I understand that there is some compromise). But I want to return on track after maneuver has occurred faster. In 2-3 iterations. What parameters of filters should i change? May be there is another combination of dynamic models that I should use?
Relevant answer
Answer
Hello. This is an interesting question. There are a couple of Viterbi/EM techniques that you may wish to try. They are compared with IMM in the paper below. You may get some more ideas from the survey paper I did (it was "gazumped" by Li's paper, despite being done earlier). The title is "A Survey of Manoeuvring Target Tracking Methods" but I can't find the link right now..
  • asked a question related to Extended Kalman Filters
Question
5 answers
I am working on how to increase the convergence rate of kalman filter as parameter estimator. When doing the simulation i found that the change of input sin signal(frequency,amplitude) can influence the convergence rate of  parameter estimator. I wonder how and why can  input signal influence the convergence rate of kalman filter. Thanks for advance.
Relevant answer
Answer
In general the more persistenly exciting the input signal, the faster the filter will converge and the better covariance of estimated parameters will be. Use "persistently exciting input" or "persistent excitation" as key-words in your research. The main idea is that the wider the spectral content of the input, the more dynamics it will produce at the output. Data with rich dynamical content usually result in faster convergence in recursive estimation/filtering and smaller estimation covariance.
  • asked a question related to Extended Kalman Filters
Question
6 answers
I am using an extended kalman filter for an aircraft containing 5 state variables. The estimated states are diverging as I am not able to nail down the initial Q & R array accurately. The input contains the actual pitch stick movement. Any guideline regarding the tuning of filter is highly appreciated. Thanks in advance
Relevant answer
Answer
Suresh, there may be various causes of the Kalman filter divergence.
First, you should check your model equations. If any of them do not properly reproduce the real dynamics and measurements, the filter tuning would be impossible ("true divergence"). If the model is correct, then the problem is due to inappropriate tuning ("apparent divergence").
Both Q and R matrices are usually diagonal. The R matrix contains the squared noise RMSs taken from the measurement device specifications. The choise of the Q matrix is much more difficult, since the process noise is a fiction and there is no physical device that produces it. It only shows how much you trust your dynamics model. In this sense, the process noise exists in your mind, not in the external world, and there is no "true" Q. The larger Q you choose, the less you trust the model, and the more information for the estimation will be taken from the measurements. Thus, the estimates will be noisy, since the measurement noise enters with a higher weight, but the time lag in the estimates will be very little. In other words, with the increase of Q, the noise filtering properties of the Kalman filter get weaker. And vice versa, with small Q you trust your model much, and the measurements, along with their noise, enter with low weights.
Anyway, the Kalman filter tuning is a very laborious and non-intuitive iterative procedure. My personal experience is that it is easier to design a simple, though not so general, state observer for the particular system, so that all of the observer's adjustable parameters have clear physical meaning and are easy to tune. Two examples of such observers, along with the critique of the Kalman filter, are given in the attached papers.
  • asked a question related to Extended Kalman Filters
Question
16 answers
Dear All,
I have a question about Kalman filter. I am using kalman filter for a state space model as following:
X(k+1)=A(k)x(k)+B(k)u(k)+w(k), w(k) ∼ N(0,Q)
Y(k)=C(K)x(k)+D(k)u(k)+v(k), v(k) ∼ N(0,R)
Which the state space matrixes (A(k),B(k),C(k),D(k)) are updated in each sampling time but Q and R matrixes are considered to be constant. The equations which calculate the kalman gain (K(k)) and covariance P matrix (P(k)) are as following:
K(k) = (P(k)*C(k)' )/(R + C(k)*P(k)*C(k)');
Pxx(k)=(eye(n)-K(k)*C(k))*P(k)*(eye(n)-K(k)*C (k))'+K(k)*R*K(k)';%Joseph form
P(k)= A(k)*Pxx(k)*A(k)' + Q;
The problem that I face is related to stability of (A(k)-K(k)*C(k)). In some sampling times, the calculated kalman gain can not stabilize the (A(k)-K(k)*C(k)) matrix and the eigenvalues of (A(k)-K(k)*C(k)) are outside of unit circle. Could you please help me to figure out the reason for this problem? I am expecting that the kalman filter gives me the gain which make the (A(k)-K(k)*C(k)) matrix stable with eigenvalues inside the unit circle.
"Just to clarify, the state space matrixes are updated based on a subspace identification technique in each sampling time. So, I am not using an extended kalman filter. Furthermore, In each sampling time which the state space matrixes are updated, I also check the observabilty matrix of the system which is full rank all the time. I also check the controlability matrix based on (A, Q^1/2) which is full rank.  Another point, in subspace identification technique which I am using, input and output data are considered from a real process without any preprocessing such as filtering."
Relevant answer
Answer
You need to check detectablity and stabilizability of your system! Since your system is timevarying, these concepts are not so straightforward and easy to check as in the time-invariant case: checking the rank of the controlability / observability matrices might not be enough in the timevarying case. You should look at the Gramians. I suggest checking textbooks on timevariant control.
  • asked a question related to Extended Kalman Filters
Question
13 answers
I am using UKF to estimate states of a small robotic vehicle. But It is results are diverging and I've been trying to tune the parameter but so far I am failing.
Relevant answer
Answer
Incidentally I recently investigated exactly this question and found surprising answers. Abstract:
Among nonlinear, Bayesian filters the Unscented Kalman Filter (UKF) promises to be computationally more efficient than a particle filter and more accurate than an Extended Kalman Filter. It, therefore, is a good candidate for many practical filtering applications in which the uncertainty of the filter estimates needs to be tracked, too. The approximation employed by the UKF is usually formalised with 3 free parameters, but, apart from very general hints about their purpose, users are left in the dark about the practical effects they have. I here go through the theory behind the UKF to review its parameters in more detail. I show that the UKF effectively has only 2 parameters. I then investigate the accuracy of the UKF with different parameter settings and show that the typically suggested parameter values lead to bad approximations compared to other parameter settings, when model functions are strongly nonlinear within the range covered by the current state distribution. I further show that, for the tested model, the accuracy of the UKF approximation deterioates in higher dimensions such that random sampling becomes computationally more efficient and more accurate in high dimensions (D>10). I conclude with a new suggestion for default UKF parameter values and discuss possible causes of my findings in comparison to sampling.
For full information see the link to the article on github.
  • asked a question related to Extended Kalman Filters
Question
7 answers
Dear friends,
I have read about High-Gain observers, but don't realize the advantages it give us in comparison to other observers.
Can somebody tell me?
If somebody has a review of High-gain observers, it would be nice to hand it to me :)
Thanks :)
Relevant answer
Answer
Dear Robert,
This is an interesting question. I would like to add some points to this discussion. 
High-gain observers have some advantages that can be summarized as follows:
1-High-gain observers are relatively simple to design as you do not need to solve complex differential equations nor use complicated formulae. Determining a suitable value for the gain is typically done through experimentation.
2- For large class of nonlinear systems, they can provide global or semi-global stability results for large class of systems. This means that their use can provide stability guarantees for any arbitrarily chosen initial conditions.
3-They can be relatively fast.
4-They can be robust to modeling uncertainty and external disturbances.
5- For (nonlinear) systems represented in the normal form, it was shown that when high-gain observers are used in output feedback control they can recover the performance of the state feedback controller. In other words, assuming that all the states are measured, you can design a controller that satisfies some performance specifications such us some a desired overshoot and settling time. Then, when the states are provided by the high-gain observer, the output feedback controller can provide a very similar performance to the state feedback case.     
The disadvantages of the high-gain observers can be summarized as follows:
1- They are sensitive to measurement noise. Although there have been some results in the literature that tackled this problem, solving this problem still deserves more research. 
2- They suffer from the 'peaking' phenomenon, where, due to the high-gain, there is an initial sharp spike in the response of the state estimates. This phenomenon can cause instability for some types of systems. One practical solution to this problem is to use saturation outside the operating range of the system states. 
A recent survey regarding high-gain observers in feedback control can be found in the following paper:
Khalil, Hassan K., and Laurent Praly. "High‐gain observers in nonlinear feedback control." International Journal of Robust and Nonlinear Control 24.6 (2014): 993-1015.
  • asked a question related to Extended Kalman Filters
Question
4 answers
sometimes I find that GPS signals are not at the same time with inertial sensors,which causes kalman filter a failure
Relevant answer
Answer
I agree with Maciej. One easy technique out there is to simply update your inertial solution with the GPS solution, at some interval (several minutes, let's say). If the selected interval for GPS update is short enough, and the IMU reasonably good, the jump for every GPS update will be small. This scheme does work.
If the GPS becomes unavailable for a long time, then you will notice a significant glitch when it comes back. The assumption made is that the GPS fix is always better than the IMU-derived fix.
  • asked a question related to Extended Kalman Filters
Question
3 answers
Hi
I am working on chaos synchronization by EKF and other stochastic nonlinear estimators. The problem is like-
Chaos system has 3 states at transmitter end ; x1, x2 , x3 out of which x1 is transmitted as synchronization signal.
At the receiver end EKF is receiving measurements of  noisy x1 and goal is to reconstruct x2 and x3 but their measurements are not available.
In the correction step if I only choose x1 state , ie,
x_new=x_apriori + Kalman_Gain*(y(:,k)-h(x_apriori))
since Y(:,k) is just contains measurements of x1, I am unable to reconstruct x2 and x3
How to do that?
Relevant answer
Answer
Avinash, Olof's comments should be taken seriously. Nevertheless, we can probably imagine a system whose "chaoticity" is contained entirely in x1, so that, given the direct measurements of x1, we are able to reconstruct x2 and x3 "deterministically". This is our only chance to solve the problem.
In contrast, the issue with EKF you mentioned is purely technical. The Kalman gain is a 3 x 1 matrix. If the filter model is properly designed, this matrix contains three non-zero weights, with which the single measurement y = x1 is distributed among the estimates of x1, x2, and x3.
Anyway, the EKF is based on a linearization technique and therefore not very well suitable for highly nonlinear systems.
  • asked a question related to Extended Kalman Filters
Question
3 answers
Dear Researchers,
I am doing timeseries modelling on 154 observations and my number of Independents is 21. I am using three years of weekly data.
And for the analysis I am using "Bayesian Dynamic Linear Modeling Using Kalman Filter" where i get the beta coefficient for each time period
So it is fine to do the modelling with this number of observation or do I need to reduce the independents.
Thanks in Advance!
Danish
Relevant answer
Answer
I agree: 21 variables is too many.  Take a closer look at your model to see if you can't reduce this number
  • asked a question related to Extended Kalman Filters
Question
11 answers
Hello!
In this question I mean that in my concrete case data is achieved not in batches but as a sequence of measurements. My measurements are being obtained in real-time. So I have to do some actions with every point which has been obtained. And it is hard for me to apply IMM/PDA in a correct way because:
1) It is multiplatform case
2) There is a clutter. PDA can easily deal with it, getting a T time batch of measurements by calculating the association probablities but if I have received 1 point I cant perform PDA well (for example this point can be a clutter point)
What is the way to deal with this? Summarising: I understand IMM/PDA kinda well. But I cant apply it to multiplatform sequential data. How can I deal with it?
Relevant answer
Answer
Do you mean that measurements may arrive out of sequence? So that newer data may arrive at your tracker before older data?
Rather than trying to wrangle with the maths (using prediction and 'retro-diction') could you just push all of your measurements through a buffer? Sort them as they pass through. Then apply the IMM/PDA algorithm on the sorted measurements at the other end? This would apply a lag/latency to your system (determined by the maximum expected transmission delay in your network), but if that is tolerable it might be a simple way of dealing with your problem.
  • asked a question related to Extended Kalman Filters
Question
24 answers
Pk+1|k = A Pk|k AT + Q is one of the update equations in Kalman filter, which is same as the iterative Lyapunov equation for discrete systems. The convergence of P is guaranteed only is case where A has stable eigen values.
Also, what is the effect of unstable A matrix on,
ek = (A-KkCA)ek-1
i.e the error dynamics, looking to the covariance estimate equation given above?
Also in the attachment:
In the unstable case see that the co-variance is steady state but the estimation error is boundlessly increasing.
Relevant answer
Answer
I haven't looked properly into this topic, but to my knowledge, the Riccati equation yields the steady state covariance matrix, i.e. the covariance matrix converges to a steady state matrix if the system is observable (full rank observability matrix).
Stability of the system should not be an issue, the state estimate would of course grow unbounded too, but the error should stay bounded.
What you wrote down is the Lyapunov equation, which is used for the smoothing step in Kalman smoothing, to find the steady state filtering covariance you have to solve the (discrete) algebraic riccati equation.