Extended Kalman Filter with Reduced Computational Demands for Systems with Non-Linear Measurement Models

The paper presents a method of computational complexity reduction in Extended Kalman Filters dedicated for systems with non-linear measurement models. Extended Kalman filters are commonly used in radio-location and radio-navigation for estimating an object’s position and other parameters of motion, based on measurements, which are non-linearly related to the object’s position. This non-linearity forces designers to use non-linear filters, such as the Extended Kalman Filter mentioned, where linearization of the system’s model is performed in every run of the filter’s loop. The linearization, consisting of calculating Jacobian matrices for non-linear functions in the dynamics and/or observation models, significantly increases the number of operations in comparison to the linear Kalman filter. The method proposed in this paper consists of analyzing a variability of Jacobians and performing the model linearization only when expected changes of those Jacobians exceed a preset threshold. With a properly chosen threshold value, the proposed filter modification leads to a significant reduction of its computational burden and does not noticeably increase its estimation errors. The paper describes a practical simulation-based method of determining the threshold. The accuracy of the filter for various threshold values was tested for simplified models of radar systems.


Introduction
In radio-electronic systems, especially radio-location or radio-navigation systems, a common issue is estimating the position and other parameters of motion of an observed or navigated object [1]. These quantities, treated as elements of a state vector [2], are calculated based on measurements of distances, differences of distances, sums of distances, angles, velocities etc., acquired with the use of various sensors. In most cases, the measured quantities are non-linearly related to the object's position, and this relationship can be written as a non-linear equation called the measurement model [1][2][3][4][5][6].
Algorithms of object position estimation used in radiolocation and radio-navigation systems are often model-based, which implies the use of a dynamic model to describe the relationship between the future and the current state vector values [2], and enables a future state prediction. The dynamics model equation, similar to the measurement model equation, is non-linear in many radio-electronic systems [4,7].
Due to the common non-linearity of radio-electronic system models, classical linear Kalman filters [1,2] cannot usually be applied for their state estimation and, instead, non-linear filters such as a Linearized Kalman Filter (LKF) [2], an Extended Kalman Filter (EKF) [2,8], an Unscented Kalman Filter -UKF [9], or a Particle Filter (PF) [10,11] are used. Due to its simplicity and versatility, one of the most frequently applied algorithms is the Extended Kalman Filter.
In every computational step of the EKF algorithm, the non-linear equations of the system model are linearized. If both the dynamics and the observation model are non-linear, Jacobians of both non-linear functions must be calculated [2,4]. In many systems, however, only the observation model = T, T -period between two discrete time steps. The EKF algorithm for such a system is shown in Figure 1. The EKF algorithm contains the following steps: 1. Initialization of the estimated state vector ̂(0|0) and the covariance matrix of filtration errors (0|0), 2. Prediction of the state vector ̂( + 1| ) and calculation of the covariance matrix of prediction errors ( + 1| ), 3. Calculation of the observation matrix ( + 1) which is a Jacobian of the non-linear measurement function h(*), 4. Acquisition of a new measurement vector z( + 1), 5. Calculation of the Kalman gains matrix ( + 1) and correction of the prediction results, i.e., calculation of the updated state vector ̂( + 1| + 1) and the covariance matrix of filtration errors ( + 1| + 1), 6. Reporting of the state vector estimate ̂( + 1| + 1).
An additional step of the EKF in comparison to a linear Kalman filter can be seen in step (3), where a Jacobian matrix of the function h(*) is calculated.
The Q and R matrices in the filter's equations represent a covariance matrix of process disturbances w and a covariance matrix of the measurement noises , respectively [2].

Extended Kalman Filter with Reduced Computational Demands
Assuming that the state vector is composed of elements and the measurement vector contains simultaneously acquired measurements, Equation (2) can be presented in more detail as follows, where the k index was omitted for simplicity. The EKF algorithm contains the following steps: 1.

2.
Prediction of the state vectorx(k + 1|k) and calculation of the covariance matrix of prediction errors P(k + 1|k), 3.
Calculation of the observation matrix H(k + 1) which is a Jacobian of the non-linear measurement function h(*), 4.
Acquisition of a new measurement vector z (k + 1), 5.
Calculation of the Kalman gains matrix K(k + 1) and correction of the prediction results, i.e., calculation of the updated state vectorx(k + 1|k + 1) and the covariance matrix of filtration errors P(k + 1|k + 1), 6.
Reporting of the state vector estimatex(k + 1|k + 1), An additional step of the EKF in comparison to a linear Kalman filter can be seen in step (3), where a Jacobian matrix of the function h(*) is calculated.
The Q and R matrices in the filter's equations represent a covariance matrix of process disturbances w and a covariance matrix of the measurement noises ε, respectively [2].

Extended Kalman Filter with Reduced Computational Demands
Assuming that the state vector x is composed of n elements and the measurement vector z contains m simultaneously acquired measurements, Equation (2) can be presented in more detail as follows, where the k index was omitted for simplicity.
Thus, a calculation of the Jacobian for the h(*) function requires calculating numerical values of m × n partial derivatives, which compose the H matrix. Thus, a calculation of the Jacobian for the h(*) function requires calculating numerical values of × partial derivatives, which compose the matrix.
In practice, the matrix elements often change only very slightly between successive time steps, and, therefore, their updating in each step k results in unnecessary computational burden without significantly improving the filter's estimation accuracy. In such cases, updating the matrix elements only in selected steps of the algorithm loop may be considered. The values of derivatives , however, display various sensitivities for changes of the state vector elements. Thus, without a priori knowledge of the estimated state vector trajectory, one cannot decide how often the matrix should be updated. In this paper, an adaptive approach is proposed, consisting of determining the matrix update times based on the expected changes of the partial derivatives from their last actualization.
A differential , which is a function of the estimated state vector , can be written as follows.
In addition, by approximating it with a finite increment, the following is obtained.
An expected (linearly extrapolated) relative change of the element from the last update realized at the time step until the current time step + 1 can be calculated as follows.
In the proposed algorithm, the matrix is calculated for the first time at the time step = 1. After its first calculation and each subsequent update at the time step , the coefficient and the predicted state vector | − 1 are stored. In the steps following the matrix update, monitoring variables + 1| − | − 1 are calculated and compared with a predefined threshold .
If any of such variables exceeds the threshold , the element of and a new value of are calculated. The proposed solution eliminates the necessity of calculating the matrix as a whole and, in every step of the EKF algorithm loop, and therefore it may reduce the number of performed arithmetic operations.
The presented EKF modification reduces the computational load related to the calculation of the matrix, but it adds additional calculations of coefficients after every matrix update and comparisons of monitoring variables + 1| − | − 1 with the threshold at each time step . With a properly chosen threshold, however, this additional computational overhead is smaller than the obtained savings. This is due to the fact that calculating or is of similar complexity, but, in a standard EKF, parameters are calculated at every step , whereas the coefficients can be calculated much less frequently. The operation of calculating monitoring variables and their comparison with the threshold is admittedly realized at each time step , but it is a simple operation that does not increase the computational burden significantly.
A block diagram of the modified EKF algorithm is shown in Figure 2. The step numbered as 3 in this algorithm replaces the calculation of the total matrix at every step of the standard algorithm from Figure 1. The monitoring variables named as are initially set to large values In practice, the H matrix elements often change only very slightly between successive time steps, and, therefore, their updating in each step k results in unnecessary computational burden without significantly improving the filter's estimation accuracy. In such cases, updating the H matrix elements only in selected steps of the algorithm loop may be considered. The values of derivatives H ij , however, display various sensitivities for changes of the state vector elements. Thus, without a priori knowledge of the estimated state vectorx trajectory, one cannot decide how often the H matrix should be updated. In this paper, an adaptive approach is proposed, consisting of determining the H matrix update times based on the expected changes of the partial derivatives H ij from their last actualization.
A differential dH ij , which is a function of the estimated state vectorx, can be written as follows.
In addition, by approximating it with a finite increment, the following is obtained.
An expected (linearly extrapolated) relative change of the H ij element from the last update realized at the time step l until the current time step k + 1 can be calculated as follows.
In the proposed algorithm, the H matrix is calculated for the first time at the time step k = 1. After its first calculation and each subsequent update at the time step l, the M ij (l) coefficient and the predicted state vectorx(l|l − 1) are stored. In the steps following the H matrix update, monitoring variables M ij (l) x (k + 1|k) −x(l|l − 1) are calculated and compared with a predefined threshold ρ. If any of such variables exceeds the threshold ρ, the H ij element of H and a new value of M ij are calculated. The proposed solution eliminates the necessity of calculating the H matrix as a whole and, in every step of the EKF algorithm loop, and therefore it may reduce the number of performed arithmetic operations. The presented EKF modification reduces the computational load related to the calculation of the H matrix, but it adds additional calculations of M ij (l) coefficients after every H matrix update and comparisons of monitoring variables M ij (l) x (k + 1|k) −x(l|l − 1) with the threshold ρ at each time step k. With a properly chosen threshold, however, this additional computational overhead is smaller than the obtained savings. This is due to the fact that calculating M ij or H ij is of similar complexity, Sensors 2020, 20, 1584 5 of 23 but, in a standard EKF, H ij parameters are calculated at every step k, whereas the coefficients M ij can be calculated much less frequently. The operation of calculating monitoring variables and their comparison with the threshold ρ is admittedly realized at each time step k, but it is a simple operation that does not increase the computational burden significantly. A block diagram of the modified EKF algorithm is shown in Figure 2. The step numbered as 3 in this algorithm replaces the calculation of the total H matrix at every step k of the standard algorithm from Figure 1. The monitoring variables named as mv ij are initially set to large values MV > ρ to ensure that the H matrix is calculated for the first time at the time step k = 1. Their values are recalculated at every step k in a block numbered as 6. > to ensure that the matrix is calculated for the first time at the time step = 1. Their values are recalculated at every step in a block numbered as 6.

Range-Only Tracking in 2D Radar
The performance of the proposed algorithm was first demonstrated for a simple radar system, graphically presented in Figure 3. The considerations were limited to a 2D case where both the radar and the observed object are in the OXY frame of reference. It is assumed that the object moves in one direction only, along the OX axis, and only ranges R between the radar and the object are measured. The coordinates of the radar are (X 0 , Y 0 ) and those of the object are (x, y). Such a simple model is enough to present all the important features of the proposed modified EKF algorithm without focusing on the intricacies of models of more realistic radar systems.

Range-Only Tracking in 2D Radar
The performance of the proposed algorithm was first demonstrated for a simple radar system, graphically presented in Figure 3. The considerations were limited to a 2D case where both the radar and the observed object are in the OXY frame of reference. It is assumed that the object moves in one direction only, along the OX axis, and only ranges between the radar and the object are measured. The coordinates of the radar are ( 0 , 0 ) and those of the object are ( , ). Such a simple model is enough to present all the important features of the proposed modified EKF algorithm without focusing on the intricacies of models of more realistic radar systems. Figure 3. An example of a simple radar system.
A linear uniform motion of the object with disturbances (random acceleration) was assumed. Such a model, called a PV (Position-Velocity) model in the literature [2], can be formulated as follows for an object moving on the OX axis only. [ where and are discrete disturbances acting on the object's position and velocity, respectively. It is, thus, a linear model, conforming with the general dynamics model Equation (1), where the state vector , the transition matrix , and the covariance matrix of process disturbances are as follows [2].
where represents the power spectral density of continuous disturbances of the object's motion. The measurement model in the considered system is, on the other hand, non-linear, and can be written as follows, which conforms with the general measurement model of Equation (2).
where represents radar range measurement errors. The measurement matrix , calculated according to Equation (4) is as follows, where the k index was omitted for simplicity.  A linear uniform motion of the object with disturbances (random acceleration) was assumed. Such a model, called a PV (Position-Velocity) model in the literature [2], can be formulated as follows for an object moving on the OX axis only.
where w x and w v x are discrete disturbances acting on the object's position and velocity, respectively. It is, thus, a linear model, conforming with the general dynamics model Equation (1), where the state vector x, the transition matrix Φ, and the covariance matrix of process disturbances Q are as follows [2].
where S v x represents the power spectral density of continuous disturbances of the object's motion. The measurement model in the considered system is, on the other hand, non-linear, and can be written as follows, which conforms with the general measurement model of Equation (2).
where ε R represents radar range measurement errors. The measurement matrix H, calculated according to Equation (4) is as follows, where the k index was omitted for simplicity.
Since the measurement vector contains only one variable R, the covariance matrix of measurement errors is 1 × 1 and represents the variance of radar-object range measurements.
The model presented above is enough to implement a standard algorithm of an extended Kalman filter. For the sake of its adaptive version, only a single scalar coefficient M 11 must be derived because only the H 11 element of the H matrix is non-zero. Moreover, it depends only on the first element x of the state vector x, which simplifies further calculations.
During the adaptive filter's operation, at every time step k, the following condition is checked.
Only if it is met, an updated value of H 11 is calculated. When comparing numbers of operations and times of calculations in the standard EKF and in its modified version, their differences can be focused on. In the standard EKF, a calculation of H 11 is performed in every step k. Such a single calculation involves three additions, two multiplications, one division, and one calculation of the sqrt() function. In the proposed adaptive EKF, there is only one comparison, one addition, and one multiplication in every step k as well as six additions, six multiplications, two divisions, and one calculation of the sqrt() function in every step l. Therefore, the times of calculations of unique fragments of the measurement matrix updates for both filters can be expressed as follows.
t upEKF2 = k t comp ·n comp2 + t add ·n add2 + t mul ·n mul2 + + l t add ·n add l + t mul ·n mul l + t div ·n div l + t sqrt ·n sqrt l (17) where: t upEKF1 , t upEKF2 -total times of calculations of unique fragments of the measurement matrix updates in the standard EKF and in the modified EKF, respectively, t comp , t add , t mul , t div , t sqrt -times of single operations of comparison, addition, multiplication, division, and square root calculations, n add1 , n mul1 , n div1 , n sqrt1 -number of operations of addition, multiplication, division, and square-root in the standard EKF, n comp2 , n add2 , n mul2 -number of operations of comparison, addition, and multiplication realized in all steps k in the modified EKF, n add l , n mul l , n div l , n sqrt l -number of operations of addition, multiplication, division, and square-root realized in the modified EKF in steps l only.

Angle-Only Tracking in 2D Radar
To demonstrate a possibility of using the proposed algorithm for a system with a different type of non-linearity, we reconsider the simple radar system presented in Figure 3. However, we assume that now only angles φ are measured. The previous assumption with respect to the radar location and the motion of the object remain unchanged. The measurement model in this version of the system is as follows.
where ε φ represents radar angle measurement errors. The measurement matrix H, calculated according to Equation (4), is as follows.
The covariance matrix of measurement errors is 1 × 1 and contains the variance of angle measurements.
For the sake of the adaptive filter, similarly to the range-only tracking problem, only a single scalar coefficient M 11 must be derived because only the H 11 element of the H matrix is non-zero.
The condition for updating the value of H 11 is the same as the previous one and it is given by Equation (15).
In the standard EKF for the considered system, a calculation of H 11 is performed in every step k and involves two additions, two multiplications, and one division. In the proposed adaptive EKF, there is only one comparison, one addition, and one multiplication in every step k, but, additionally, three additions, three multiplications, and one division in every step l. Therefore, the times of calculations of unique fragments of the measurement matrix updates for both filters can be expressed as follows.
where: t upEKF1 , t upEKF2 -total times of calculations of unique fragments of the measurement matrix updates in the standard EKF and in the modified EKF, respectively, t comp , t add , t mul , t div -times of single operations of comparison, addition, multiplication, and division, n add1 , n mul1 , n div1 -number of operations of addition, multiplication, and division in the standard EKF, n comp2 , n add2 , n mul2 -number of operations of comparison, addition, and multiplication realized in all steps k in the modified EKF, and n add l , n mul l , n div l -number of operations of addition, multiplication, and division realized in the modified EKF in steps l only.

Tracking in 2D Radar with Range and Angle Measurements
To provide a more general and practical example of the filter's use, in this subsection, a 2D radar system processing both range and angle measurements is analyzed. The considered system is shown in Figure 4. It is assumed that the radar is located at the origin of the OXY frame of reference. The observed object can move in two directions, and the radar provides ranges R and angles φ.

Tracking in 2D Radar with Range and Angle Measurements
To provide a more general and practical example of the filter's use, in this subsection, a 2D radar system processing both range and angle measurements is analyzed. The considered system is shown in Figure 4. It is assumed that the radar is located at the origin of the OXY frame of reference. The observed object can move in two directions, and the radar provides ranges R and angles ϕ. Figure 4. An example of a 2D radar system with range and angle measurements. A two-dimensional PV motion model for this system can be formulated as follows where w x , w v x , w y , and w v y are discrete disturbances acting on the object's position and velocity, respectively. The state vector x, the transition matrix Φ, and the covariance matrix of process disturbances Q are as follows.
where S v x and S v y represent the power spectral densities of disturbances of the object's motion. The measurement model in the considered system is as follows.
where v R and v φ represent radar range and angle measurement errors. The measurement matrix H, calculated according to Equation (4), is as follows, where the k index was omitted for simplicity.
The covariance matrix of measurement errors contains the variances of range and angle measurements.
Sensors 2020, 20, 1584 10 of 23 The coefficients M ij (l) must be calculated according to Equation (7) for the non-zero H matrix elements, and, since these elements are functions of two variables x and y, the mentioned coefficients are vectors rather than scalars. The way of calculation of the M ij (l) coefficients is explained below.
The following four conditions are checked at every time step k during the filter's operation.
From Equations (38)-(41), it is visible that the above conditions can be reduced to simpler scalar inequalities. The respective element of the H matrix, i.e., H 11 , H 13 , H 21 , or H 23 is updated only if one of the above conditions is met, i.e., one of the thresholds ρ 11 , ρ 13 , ρ 21 , or ρ 23 is exceeded.

Results of Algorithm Testing
The proposed modified EKF algorithm was implemented and tested for all examples of systems described in Section 4 and the obtained results are shown in subsequent subsections.

Range-Only Tracking Radar Simulations
The results presented in this subsection refer to the EKF described in Section 4.1, which was designed for the 2D radar with range-only measurements available. The following conditions were assumed for these simulations. In the conducted tests of the algorithm, the threshold ρ was changed in the range from 0 to 0.1 with a step 0.01, and its influence on the number of the measurement matrix H updates and on the root-mean-squared (RMS) estimation error of the x coordinate of the object's position. Since the results for various runs of simulations are variable due to various realizations of process disturbances and measurement errors, their values were averaged for 100 thousand simulations for each considered threshold value. The obtained values are gathered in Table 1. Due to the mentioned averaging, the number of H matrix updates in this table is not an integer number. The results from Table 1 are also graphically presented in Figures 5 and 6.  In order to verify what is the influence of the intensity of the measurement errors on the optimal threshold value, the following experiment was conducted. For two different standard deviations of range errors, i.e., = 1 m and = 100 m the threshold was changed in the range from 0 to 0.8 with a step 0.01, and its influence on the number of the measurement matrix updates and on the root-mean-squared estimation error of the coordinate of the object's position were registered. The respective results are gathered in Tables 2 and 3. Even for significantly (an order of magnitude) stronger or weaker measurement noises, the same threshold = 0.06 gives the best results. Thus, there is no need for adaptive threshold changes in the modified EKF even if one expects that the noise level may be variable.  In order to verify what is the influence of the intensity of the measurement errors on the optimal threshold value, the following experiment was conducted. For two different standard deviations of range errors, i.e., σ R = 1 m and σ R = 100 m the threshold ρ was changed in the range from 0 to 0.8 with a step 0.01, and its influence on the number of the measurement matrix H updates and on the root-mean-squared estimation error of the x coordinate of the object's position were registered. The respective results are gathered in Tables 2 and 3. Even for significantly (an order of magnitude) stronger or weaker measurement noises, the same threshold ρ = 0.06 gives the best results. Thus, there is no need for adaptive threshold changes in the modified EKF even if one expects that the noise level may be variable. Computation loads and times for arithmetic operations are largely dependent on the processor used and the implementation of functions in the applied library. However, it is generally assumed that comparisons and additions are the least computationally expensive, and more demanding, in increasing order, are multiplications, divisions, and calculations of functions, such as the square-root or trigonometric functions [17]. Assume for illustrative purposes the times of elementary operations given in Reference [17] for a specific computer, namely the IBM 360 Model 67-1. They are 2.7 µs for addition, 4.1 µs for multiplication, 6.6 µs for division, and 60 µs for the square root, respectively. Assume that the time for comparison equals that of adding two variables. The times of the calculations of unique fragments of the measurement matrix updates in the standard EKF and in the modified EKF, calculated according to Equations (16) and (17) for the considered example, are gathered in Table 4. The results presented in Table 4 show significant savings in terms of processing time for the adopted assumptions, even for small thresholds ρ where the H matrix updates are still frequently performed.
In a further step of algorithm testing, for four selected thresholds ρ, values of the H 11 element of the H matrix, values of the monitoring variable M 11 (l)[x(k + 1|k) −x(l|l − 1)] , and the number of H matrix updates since the beginning of a single simulation were calculated and are presented in Figures 7-10.      In the presented figures, one can see that the number of matrix updates decreases with the increasing threshold value.
The case = 0 is equivalent to a standard EKF with the measurement matrix update taking place in every step , whereas the case from Figure 10, obtained for = 0.06, represents a situation when the position estimation accuracy is still almost the same as in a standard EKF, but the filter's computational demands are significantly reduced.
With increasing threshold value, the number of matrix updates decreases, but their uneven distribution in time is worth noting. The largest density of actualizations takes place in a portion of the object's trajectory, where the cosine of the ϕ angle, under which the object is seen by the radar,  In the presented figures, one can see that the number of matrix updates decreases with the increasing threshold value.
The case = 0 is equivalent to a standard EKF with the measurement matrix update taking place in every step , whereas the case from Figure 10, obtained for = 0.06, represents a situation when the position estimation accuracy is still almost the same as in a standard EKF, but the filter's computational demands are significantly reduced.
With increasing threshold value, the number of matrix updates decreases, but their uneven distribution in time is worth noting. The largest density of actualizations takes place in a portion of the object's trajectory, where the cosine of the ϕ angle, under which the object is seen by the radar, In the presented figures, one can see that the number of H matrix updates decreases with the increasing threshold ρ value.
The case ρ = 0 is equivalent to a standard EKF with the measurement matrix update taking place in every step k, whereas the case from Figure 10, obtained for ρ = 0.06, represents a situation when the position estimation accuracy is still almost the same as in a standard EKF, but the filter's computational demands are significantly reduced.
With increasing threshold value, the number of H matrix updates decreases, but their uneven distribution in time is worth noting. The largest density of actualizations takes place in a portion of the object's trajectory, where the cosine of the φ angle, under which the object is seen by the radar, changes most rapidly. Its quickest changes are in the central part of the assumed flight trajectory, and they result from the fact that changes most rapidly near φ = 90 o . This notion leads to establishing a practical method for choosing the threshold. The threshold ρ should be chosen for a specific radioelectronic system, based on simulations or on analytical considerations. One can considered "the worst case" scenario where the H matrix elements change the quickest. In case of a radar system, with known minimal detection range R min , the quickest H matrix updates are required for an object passing the radar in such a small distance, as presented in Figure 11, and the threshold ρ can be established for this specific case only, looking for its maximal value, but still ensuring acceptable estimation accuracy. This notion leads to establishing a practical method for choosing the threshold. The threshold should be chosen for a specific radioelectronic system, based on simulations or on analytical considerations. One can considered "the worst case" scenario where the matrix elements change the quickest. In case of a radar system, with known minimal detection range , the quickest matrix updates are required for an object passing the radar in such a small distance, as presented in Figure 11, and the threshold can be established for this specific case only, looking for its maximal value, but still ensuring acceptable estimation accuracy. For better visualization of the filter's behavior, the presented example was purposefully chosen in such a way that the matrix changes significantly in the short time of simulation. In most radar and radio-navigation systems, these changes would be much slower. For example, in the Kalman filter of a Global Positioning System (GPS) receiver, the matrix contains direction cosines from the user to the visible GPS satellites [2]. Since the angles under which the satellites are seen from a user's location remain almost unchanged in short periods of time due to the very large distances between the user and the satellites, the matrix elements would be almost constant for relatively long periods. In such a filter, the matrix updates would be performed very rarely in comparison to the radar system example that was considered in this paper. Therefore, in real radioelectronic systems, the proposed EKF modification could lead to an even more significant reduction of its computational demands.

Angle-Only Tracking Radar Simulations
The results presented in this subsection of the paper refer to the EKF described in Section 4.2 designed for the 2D radar with angle-only measurements available. The conditions adopted for these simulations were the same as for the range-only tracking radar, with a single difference, consisting of assuming a standard deviation of angle measurements = 0.1° instead of a standard deviation of range measurements.
In the first test of the algorithm, the threshold was changed in the range from 0 to 0.1 with a step 0.02 and from 0.1 to 0.2 with a step 0.05. Its influence on the number of the measurement matrix updates and on the root-mean-squared estimation error of the coordinate of the object's position For better visualization of the filter's behavior, the presented example was purposefully chosen in such a way that the H matrix changes significantly in the short time of simulation. In most radar and radio-navigation systems, these changes would be much slower. For example, in the Kalman filter of a Global Positioning System (GPS) receiver, the H matrix contains direction cosines from the user to the visible GPS satellites [2]. Since the angles under which the satellites are seen from a user's location remain almost unchanged in short periods of time due to the very large distances between the user and the satellites, the H matrix elements would be almost constant for relatively long periods. In such a filter, the H matrix updates would be performed very rarely in comparison to the radar system example that was considered in this paper. Therefore, in real radioelectronic systems, the proposed EKF modification could lead to an even more significant reduction of its computational demands.

Angle-Only Tracking Radar Simulations
The results presented in this subsection of the paper refer to the EKF described in Section 4.2 designed for the 2D radar with angle-only measurements available. The conditions adopted for these simulations were the same as for the range-only tracking radar, with a single difference, consisting of assuming a standard deviation of angle measurements σ φ = 0.1 • instead of a standard deviation of range measurements.
In the first test of the algorithm, the threshold ρ was changed in the range from 0 to 0.1 with a step 0.02 and from 0.1 to 0.2 with a step 0.05. Its influence on the number of the measurement matrix H updates and on the root-mean-squared estimation error of the x coordinate of the object's position was analyzed and gathered in Table 5. The decreasing number of matrix updates does not visibly affect the estimation error. The times of the calculations of unique fragments of the measurement matrix updates in the standard EKF and in the modified EKF, calculated according to Equations (23) and (24) for the considered example, are gathered in Table 6. Similar to the range-only tracking, in this case, computational savings can be obtained. However, they are not as large as previously seen. This is due to a fact that, in the range-only tracking problem, the H 11 element of the H matrix contained a time-consuming square root operation and its omitting in some steps immediately resulted in a large decrease of the processing time. In the angle-only tracking, the H 11 element is a simpler function that can be decomposed into a few additions, multiplications, and divisions. Thus, it is not computationally expensive. The savings are still possible only due to limiting the number of the mentioned elementary operations.
Based on the already presented examples, one can conclude that the proposed modified filter would be most effective in problems where the H matrix elements are computationally expensive so that the obtained savings due to less frequent H matrix updates are much larger than the additional computational burden due to calculations of monitoring variables and their comparisons with a threshold. As the EKFs used in GPS receivers process pseudoranges closely related to ranges, and typical radars process both ranges and angles, the H matrix elements in these filters contain time-consuming operations, like square roots. Therefore, the proposed filter may be useful in these important groups of applications.
For  As can be seen in Figure 12, the 11 element of the matrix reaches its minimum at step 41 and then very rapidly changes its direction. This results from a very small distance between the radar and the object in the considered case. It should be mentioned that this is not a typical situation in real  As can be seen in Figure 12, the 11 element of the matrix reaches its minimum at step 41 and then very rapidly changes its direction. This results from a very small distance between the radar and the object in the considered case. It should be mentioned that this is not a typical situation in real As can be seen in Figure 12, the H 11 element of the H matrix reaches its minimum at step 41 and then very rapidly changes its direction. This results from a very small distance between the radar and the object in the considered case. It should be mentioned that this is not a typical situation in real systems where EKFs are used, as the EKF itself is dedicated for systems with relatively benign non-linearities [10]. In strongly non-linear systems, Unscented Kalman Filters or Particle Filters are typically applied [9,11]. designed, one can consider forcing the update of the matrix not only based on the observation of the monitoring variables, but also a predefined number of steps, whichever happens first. The results obtained for the above described filter but with a forced matrix update every 10 steps are shown in Figure 14. It is visible that such a filter can effectively work in high-response conditions and deal with its sluggish behavior when the matrix elements reach their extreme values and their derivatives are close to zeroes.

2D Radar with Range and Angle Measurement Simulations
The results presented in this subsection refer to the EKF described in Subsection 4.3, processing both range and angle measurements in a 2D radar. The following conditions were assumed for these simulations.  However, the effects observed in the considered scenario give some insight into the algorithm's behavior. If the value of H 11 derivative is calculated around step k = 40, it will be close to zero and, consequently, the variable M 11 will also be close to zero. In such a case, the proposed algorithm may be too sluggish, and it will wait long with the next update of the H matrix. This effect can be observed in Figure 13 obtained for a large ρ = 0.2.
If rapid changes of the H matrix elements occur in a system for which the proposed algorithm is designed, one can consider forcing the update of the H matrix not only based on the observation of the monitoring variables, but also a predefined number of steps, whichever happens first. The results obtained for the above described filter but with a forced H matrix update every 10 steps are shown in Figure 14. It is visible that such a filter can effectively work in high-response conditions and deal with its sluggish behavior when the H matrix elements reach their extreme values and their derivatives are close to zeroes.

2D Radar with Range and Angle Measurement Simulations
The results presented in this subsection refer to the EKF described in Section 4.3, processing both range and angle measurements in a 2D radar. The following conditions were assumed for these simulations. To demonstrate the results obtained with a standard EKF and the proposed modified filter version, a trajectory of a moving object and pairs of range-angle measurements were generated. In the modified Kalman filter, a threshold was set to ρ = 0.06. The object trajectory estimated by both filters is compared in Figure 13. It is visible that, despite the limited number of the H matrix updates, the results of estimation from the modified Kalman filter are similar to those from a standard EKF.
The To demonstrate the results obtained with a standard EKF and the proposed modified filter version, a trajectory of a moving object and pairs of range-angle measurements were generated. In the modified Kalman filter, a threshold was set to = 0.06. The object trajectory estimated by both filters is compared in Figure 13. It is visible that, despite the limited number of the matrix updates, the results of estimation from the modified Kalman filter are similar to those from a standard EKF.
The values of 11 , 13 , 21 , and 23 elements of the matrix, values of respective monitoring variables, and the number of 11 , 13 , 21 , and 23 elements' updates since the beginning of the simulation are presented in Figures 15-19.   To demonstrate the results obtained with a standard EKF and the proposed modified filter version, a trajectory of a moving object and pairs of range-angle measurements were generated. In the modified Kalman filter, a threshold was set to = 0.06. The object trajectory estimated by both filters is compared in Figure 13. It is visible that, despite the limited number of the matrix updates, the results of estimation from the modified Kalman filter are similar to those from a standard EKF.
The values of 11 , 13 , 21 , and 23 elements of the matrix, values of respective monitoring variables, and the number of 11 , 13 , 21 , and 23 elements' updates since the beginning of the simulation are presented in Figures 15-19.

Conclusions
The paper presented a classical Extended Kalman Filter and its modified version with a reduced computational burden due to the omission of unnecessary matrix updates. The effects of the proposed modification were analyzed for a simple radar system model. Two simple cases of rangeonly and angle-only tracking were analyzed in detail and a more general and practical example of a 2D radar system processing both range and angle measurements was demonstrated.
In the case of range-only tracking, for the assumed threshold = 0.06, the accuracy of the object position estimation remained almost unaffected despite the number of the matrix updates being reduced to only 11% of the number in a standard EKF. The presented simulation results show that initially increasing the threshold value does not change the filter's accuracy, but, at the same time, decreases its number of computations. When exceeding a specific threshold value, = 0.07 in the considered example, estimation errors increase rapidly to a very large and unacceptable level.
In the case of angle-only tracking, the computational savings can also be achieved. However, they are not as prominent as in the previous system, which results from a simpler and less computationally demanding function in the matrix. The comparison of these two cases leads to a conclusion that the proposed adaptive filter would be most effective in problems where the matrix elements are complicated and computationally demanding. Then, significant savings on the number of operations can be achieved with an even slight reduction of the number of the matrix updates.
The proposed estimation method can be used in any field where the estimation of a state vector in a non-linear system is necessary, but the applications presented in this paper are related mainly to radiolocation and radio-navigation. It seems that, as the EKFs used in GNSS receivers process observables related to ranges, and typical radars process both ranges and angles, the matrix elements in these filters contain enough time-consuming operations, that applying the proposed filter in them could be beneficial.

Conclusions
The paper presented a classical Extended Kalman Filter and its modified version with a reduced computational burden due to the omission of unnecessary H matrix updates. The effects of the proposed modification were analyzed for a simple radar system model. Two simple cases of range-only and angle-only tracking were analyzed in detail and a more general and practical example of a 2D radar system processing both range and angle measurements was demonstrated.
In the case of range-only tracking, for the assumed threshold ρ = 0.06, the accuracy of the object position estimation remained almost unaffected despite the number of the H matrix updates being reduced to only 11% of the number in a standard EKF. The presented simulation results show that initially increasing the threshold ρ value does not change the filter's accuracy, but, at the same time, decreases its number of computations. When exceeding a specific threshold value, ρ = 0.07 in the considered example, estimation errors increase rapidly to a very large and unacceptable level.
In the case of angle-only tracking, the computational savings can also be achieved. However, they are not as prominent as in the previous system, which results from a simpler and less computationally demanding function in the H matrix. The comparison of these two cases leads to a conclusion that the proposed adaptive filter would be most effective in problems where the H matrix elements are complicated and computationally demanding. Then, significant savings on the number of operations can be achieved with an even slight reduction of the number of the H matrix updates.
The proposed estimation method can be used in any field where the estimation of a state vector in a non-linear system is necessary, but the applications presented in this paper are related mainly to radiolocation and radio-navigation. It seems that, as the EKFs used in GNSS receivers process observables related to ranges, and typical radars process both ranges and angles, the H matrix elements in these filters contain enough time-consuming operations, that applying the proposed filter in them could be beneficial.