Nonlinear Filtering on the Special Orthogonal Group using Vector Directions
Abstract
The problem of filtering for attitude estimation using rotation matrices and vector measurements is studied. Starting from a storage function on the Special Orthogonal Group , a dissipation inequality is considered, and a deterministic nonlinear filter is derived which respects a given upper bound on the energy gain from exogenous disturbances and initial estimation errors to a generalized estimation error. The results are valid for all estimation errors which correspond to an angular error of less than radians in terms of the axis-angle representation. The approach builds on earlier results on attitude estimation, in particular nonlinear filtering using quaternions, and proposes a novel filter developed directly on . The proposed filter employs the same innovation term as the Multiplicative Extended Kalman Filter (MEKF), as well as a matrix gain updated in accordance with a Riccati-type gain update equation. However, in contrast to the MEKF, the proposed filter has an additional tuning gain, , which enables it to be more aggressive during transients. The filter is simulated for different conditions, and the results are compared with those obtained using the continuous-time quaternion MEKF and the Geometric Approximate Minimum Energy (GAME) filter. Simulations indicate competitive performance. In particular, the GAME filter has the best transient performance, followed by the proposed filter and the quaternion MEKF. All three filters have similar steady-state performance. Therefore, the proposed filter can be seen as a MEKF variant which achieves better transient performance without significant degradation in steady-state noise rejection.
Keywords— Attitude estimation, Special Orthogonal Group , nonlinear filtering
1 Introduction
Rigid-body attitude estimation is a well-studied problem, and numerous solutions have been proposed [1, 2]. In general, attitude filtering problems are posed as optimization problems which seek to minimize a suitably defined cost function indicative of the filter’s performance. The cost function usually comprises a weighted average or integration of the estimation error, possibly with a terminal cost. For linear systems, most optimal filtering solutions are equivalent to Kalman filtering.
An alternative (pessimistic, or perhaps realistic) approach to attitude filtering is given by worst-case or nonlinear estimation. In formulating the filtering problem, one optimizes not for the average estimation error, but for the worst-case errors imparted by the worst-case disturbances and large initial estimation errors. The resulting filter respects a given upper bound on the energy gain from the disturbances and initial estimation errors to a chosen performance measure, also a function of the estimation error [3, 4, 5, 6, 7, 8].
Nonlinear filters have been applied successfully for spacecraft attitude determination using quaternions [2, 9, 10]. Since filters minimize only the worst-case error and not the mean square error (MSE), they are outperformed by the quaternion Multiplicative Extended Kalman Filter (MEKF), particularly in problem instances where the properties of the process and measurement noise/disturbance are perfectly known. However, for the more practical case of uncertain noise parameters leading to imperfect filter tuning, extensive Monte-Carlo simulations show that the MEKF gradually loses its edge, and that the filter performs better [11, 12]. Thus, nonlinear filtering offers a promising alternative to optimal estimation methods. Nevertheless, the quaternion MEKF remains the industry standard.
It is well-known that the attitude of a rigid body evolves on the set of rotation matrices, the Special Orthogonal Group , and that all other attitude representations, including quaternions, suffer either from a singularity or a sign ambiguity [13]. Due to the globally defined and unique attitude representation provided by rotation matrices, the development of filtering solutions directly on the Lie group has received considerable attention in recent decades. The solutions proposed include nonlinear complementary filters [14, 15, 16, 17], symmetry-preserving observers [18, 19], the Invariant Extended Kalman Filter (IEKF) [20], and minimum energy filters [21, 22, 23, 24, 25]. Of these, the Geometric Approximate Minimum Energy (GAME) filter [24, 23], is especially relevant since it is an optimal estimation method that has been shown to significantly outperform the quaternion MEKF [26].
Given the potential benefits of worst-case filtering and the increasing interest in filtering algorithms on , a promising solution might be to combine nonlinear filtering with attitude estimation using rotation matrices. This combination is the subject of the present work. We note that there has been some preliminary work in this direction. In particular, Lavoie et al. have proposed an invariant extended filter for Lie groups [27]. Noting the similarities and crucial differences between the Extended Kalman Filter (EKF) and its invariant counterpart, the IEKF, the authors consider an analogous relationship between the Extended Filter and its potential invariant counterpart. This simple and insightful observation leads them directly to an invariant extended filter for Lie groups. In contrast, we build on earlier results on nonlinear worst-case filtering using quaternions [9, 10], and extend them to the case of attitude estimation using rotation matrices. The main contribution of the paper is the development of a novel nonlinear filter on the Lie group . It is envisaged that this exposition, which extends the preliminary results of [28], will pave the way for future developments, especially towards mixed filtering and possibly even the generalized regulator problem on yielding an estimator/controller pair which minimizes the impact of the worst-case disturbances on the controlled variables.
The rest of the discussion is organized as follows. After Section 1.1 introduces the notation used in the paper, Section 2 poses the filtering problem directly on . Thereafter, the filter is derived in Section 3, and its structure is compared with that of the quaternion MEKF and the GAME filter. In Section 4, the proposed filter, the MEKF, and the GAME filter are simulated for different test conditions. Results indicate competitive performance. In particular, it is seen that the GAME filter has the best transient performance, whereas the filter demonstrates better convergence than the MEKF. At steady-state, the three filters have similar performance. Finally, in Section 5, the main conclusions of the study are reviewed.
1.1 Notation
The Special Orthogonal group is the set of orthogonal matrices with determinant , i.e.,
The cross operator transforms a vector in to a -by- skew-symmetric matrix such that equals the cross product for any . In particular,
(1) |
The inverse of the cross operator is denoted by the vee operator . Lastly, we recall the symmetric projection operator given by
(2) |
2 Problem Formulation
This section formulates the attitude estimation problem using rotation matrices. In particular, we assume the following kinematic model:
(3) |
where the state evolves on , and represents the orientation of a body-fixed frame with respect to an inertial reference frame. In the kinematics equation, the vectors are body-frame vectors denoting the measured angular velocity and the process disturbance, respectively. In the output equation, the vectors specify known vector directions in the reference frame, and the vectors represent their measurements in the body-fixed frame with corresponding measurement errors . Lastly, the coefficients and scale the process disturbance and measurement errors, respectively, and represent tuning gains for the filter proposed in Section 3.
We consider the following estimator:
(4) |
where the filter gain is a -by- matrix which will be specified later, and
(5) |
represents the estimate for the -th reference direction . We note that this estimator structure is similar to the one considered in [9] for deriving a quaternion-based filter.
For the augmented system (3)-(4), the estimation error is defined as
(6) |
Using the axis-angle representation, the estimation error can be expressed as
(7) |
where denotes the axis of rotation between the body-fixed and estimate frames, and denotes the angle of rotation. We consider the following configuration error vector as a penalty variable or generalized estimation error:
(8) |
Using the axis-angle representation, the penalty variable can be expressed as
(9) |
We recall that the optimal filtering problem, for the augmented system (3)-(4), seeks a filter gain which minimizes the gain from the process disturbance , the measurement errors , and the initial conditions , to the penalty variable . Since this is, in general, a difficult problem to solve, we resort to the sub-optimal filtering problem which ensures that the gain respects a given upper bound , see e.g., [4, 5, 6, 9]. More precisely, we seek a filter gain such that for all , , , , and , the following dissipation inequality is satisfied:
(10) | ||||
As has been well established in the literature on nonlinear control, see e.g., [3, 5, 6, 9, 10], the requirement (10) on the gain is closely related to the notion of dissipativity. In particular, we seek a filter gain and a smooth positive semidefinite storage function such that the following dissipation inequality is satisfied:
(11) |
Next, we obtain an expression for the time derivative of the penalty variable . In particular, from (8), we have that
(12) |
Conseqently, we can express the time derivative of the penalty variable as
(13) |
Substituting the dynamics from (3) and (4), we can express the time derivative of as follows:
Consequently, we have that:
We apply the following identity to each term on the right-hand side of the above expression:
For the first two terms, we observe that:
In the above simplification, the last equality follows from the relation (12). Next, we introduce the following mapping:
(14) |
Consequently, we can express (13) as:
Removing the operator, and substituting for and from (4)-(5), we obtain:
(15) |
3 Filter Derivation
This section presents a novel filter for attitude estimation using rotation matrices. The filter derivation follows the same procedure as is used in [9, 10] for deriving a quaternion-based filter. In particular, starting from a storage function on , a dissipation inequality of the form (11) is considered. The worst-case process disturbance and measurement errors are obtained, as well as the gain which optimizes for the worst-case disturbances. These values are used to simplify the dissipation inequality. Thereafter, for sufficiently small estimation errors, a deterministic nonlinear filter is derived, the filter gain is specified, and a Riccati-type gain update equation is obtained.
We consider the following storage function:
(16) |
where the penalty variable is defined as in (8), and is a symmetric, positive definite, -by- matrix. The time derivative of the storage function is given by
(17) |
Substituting (15) in (17), the dissipation inequality (11) can be expressed as:
(18) |
Remark 1.
Using the axis-angle representation (9) of the penalty variable, the storage function (16) can be expressed as
(19) |
Thus, we have that the angular term increases only in the interval and decreases to thereafter. This means that although the storage function is nonnegative, it can be used to obtain stability and performance guarantees only for angular errors up to radians. Having noted this limitation, we now proceed to the main steps in the filter derivation.
3.1 Worst-case Disturbances
The dissipation inequality (18) is quadratic in the process disturbance and the measurement errors . In particular, the worst-case process disturbance can be obtained as follows:
(20) |
Its contribution to the dissipation inequality (18) is given by the term
Next, we partition the filter gain as
where . Then, the -th worst-case measurement error can be obtained as:
(21) |
Its contribution to (18) is given by
and the total contribution of the worst-case measurement errors is given by
where
(22) |
Consequently, after substituting the worst-case process disturbance and the worst-case measurement errors , we arrive at the following dissipation inequality:
(23) |
3.2 Filter Gain
In order to find the optimal filter gain for the worst-case disturbances, we perform completion of squares for the terms in the dissipation inequality (23) that contain the gain . In particular, these terms can be re-stated as:
Therefore, the gain which minimizes the left-hand side of (23) satisfies the following condition:
(24) |
Substituting and from (5)-(6), we observe that:
Furthermore, using the axis-angle representations (7) and (9), and assuming that , we proceed as follows:
(25) |
Therefore, using the preceding relations, the minimizing gain condition can be expressed as follows:
This leads to the following sufficient condition for the minimizing gain:
We note that this condition couples the gain matrix to the true estimation error , and that the latter cannot be computed since the true trajectory is not available. However, an approximate solution may be obtained for small estimation errors, i.e., for . In particular, as , we have that the penalty variable , the mapping , and the sufficient condition for the minimizing gain simplifies thus:
(26) |
where
(27) |
Consequently, substituting and from (22) and (26), we obtain the following expression for the estimator (4):
(28) |
We note that the same estimator structure is used in [22], and admits, as special cases, the structures employed in [15, 17] for attitude estimation using vector measurements.
3.3 Gain Update Equation
This section derives a Riccati-type gain update equation for the time-varying filter gain in the estimator (28). Substituting the minimizing gain condition (24) in the dissipation inequality (23) leads to the following expression:
(29) |
The next step is to re-state each term in the above dissipation inequality using the axis-angle representation for the estimation error . For the second term , we observe that:
(30) |
In order to simplify the third term in (29), we recall the relation (25) and the following identities:
Assuming that , we proceed as follows:
Consequently, using the axis-angle representation and the definition of in (27), the third term in (29) can be simplified as follows:
(31) |
For the fourth term in (29), we recall the map (14) and proceed as follows:
Using the axis-angle representation (7), we observe that:
Therefore:
Consequently, the fourth term in (29) can be expressed as follows:
(32) |
Finally, using (30)-(32), we re-state the dissipation inequality (29) in terms of the axis-angle representation as follows:
(33) |
In the above dissipation inequality, the first five terms are second-order in the Euler axis , the last term is fourth-order, and the coefficient of the last term is positive for . Furthermore, we observe that:
Therefore, for , a sufficient condition for the dissipation inequality (33) to hold is given as follows:
Dividing throughout by and considering only the matrix-valued terms, we obtain the following Riccati-type update equation for the filter gain :
Substituting for and from (5) and (27), respectively, we summarize the equations for the continuous-time filter on as follows:
(34) |
where denotes the symmetric projection operator (2). We note that the gain update equation is similar to that proposed for the quaternion filter [9, 10].
Remark 2.
The proposed filter (34) is similar to the quaternion MEKF [29] and the quaternion left-invariant EKF (LIEKF) [30]. More precisely, suppose that in the kinematic system under consideration (3), the process disturbance and the measurement errors are zero-mean Gaussian noises with standard deviations and , respectively. Then, the continuous-time quaternion MEKF [29], which also coincides with the continuous-time quaternion LIEKF [30], can be expressed as:
(35) |
where
(36) |
and the filter gain is updated as follows:
(37) |
Comparing (34) and (35)-(37), we note that the proposed filter and the continuous-time quaternion MEKF/LIEKF use identical innovation terms. Likewise, the gain update equations are similar except that the proposed filter has an additional second-order term containing . This term can be seen as an extra tuning gain which can be used to make the filter more aggressive during transients. Therefore, the proposed filter can be seen as a MEKF variant which achieves better transient performance without significant degradation in steady-state noise rejection. Moreover, this term vanishes in the limit .
Remark 3.
The vector directions filter (34) can also be compared with the Geometric Approximate Minimum Energy (GAME) filter [22, 24]. The GAME filter is especially relevant since it is an optimal estimation method that has been shown to significantly outperform the quaternion MEKF [26]. For the kinematic system under consideration (3), the GAME filter [24, Section 4.3], [31] can be expressed as:
(38) |
where the map E is given in (14). We note that the and GAME filters use the same innovation terms, but differ significantly in their gain update equations. More precisely, the filter contains a -related term, whereas the GAME filter contains geometric curvature correction terms which enable it to have better transient performance than the MEKF.
Remark 4.
As mentioned earlier, the storage function (19) can be used to obtain stability and performance guarantees only for angular errors up to radians. A better starting point would be to assume a storage function which is strictly increasing in the angular error. More precisely, consider the following chordal metric-based storage function:
(39) |
From [32, Lemma 2.2.5], we observe that
(40) |
where the map E is given in (14). We note that a similar function is used in [21] for deriving a minimum energy filter on . In future work, we hope to re-visit the problem of worst-case estimation using a chordal metric-based storage function.
4 Simulation Results
In this section we simulate the proposed filter (34), as well as the GAME filter and the MEKF, against different test cases and compare their performance. The proposed filter and the minimum energy filter are both implemented using a full rotation matrix representation for the state with vector measurements, while the MEKF is implemented in using the quaternion representation and vector measurements (35)-(37).
Two different test cases are considered. In Section 4.1 we consider a simulation case whose parameters are motivated by the characteristics of a typical inertial measurement unit (IMU) used in small quad-rotors. In Section 4.2, the test case is characterized by a relatively higher process (i.e., gyro) noise but lower measurement noise.
4.1 Case A
The true trajectory of the system is generated using
where is the rotation matrix corresponding to the Euler angles , and is the true angular velocity, given by
The angular velocity signal is then integrated to obtain the true trajectory of the state on . This true trajectory, see Figure 1, is clearly simulating a large movement on . The filter, however, only has been provided with the corrupted angular velocity signal, similar to the case of gyroscopic measurements of angular rate. The process disturbance corrupting the true angular velocity is generated by a vector of three independent sources of zero-mean white noises having standard deviations of rad/s. The measurement disturbance vectors are obtained by generating two sets of the three independent realizations of zero-mean white noises having standard deviations of rad. The system and the filters are both simulated with a time step of 0.01 seconds (i.e., at 100 Hz), and for a total simulation time of 30 seconds.

To get a better insight into the convergence and tracking performance of the filters, the system model is initialized with a large initial attitude, equivalent to the Euler angles . The filters are however assumed to have no prior knowledge of the initial attitude, and to cope with this uncertainty the initial gain is set to a large value, i.e., . The MEKF is tuned with the true parameters of process and measurement disturbance. Although the proposed filter and the GAME filter are deterministic filters, the knowledge of process and measurement noises can still be used to tune these filters. Hence, we choose and for both of these filters. Furthermore, for the filter, is found to offer a good trade-off between stability and speed of convergence. While decreasing further means a tighter bound on the error gain, it is to be reminded that a solution of the Riccati equation (34) may cease to exist for too small values of , see e.g., [33, 34].

Transient | Steady state | |
---|---|---|
RMS error | RMS error | |
TRIAD | 59.52 | 59.29 |
MEKF | 27.79 | 4.74 |
Filter | 26.24 | 4.79 |
GAME | 21.68 | 4.73 |
The absolute values of the estimation errors are averaged over 50 runs to obtain the plots of estimation error, see Figure 2, and to compute the normalized RMS error in Table 1. The RMS error is split in two parts: the transient part during the first 10 seconds and the steady state part after the transient part. The results suggest that the GAME filter demonstrates the best performance during the transients while the proposed filter (34) performs slightly better than the MEKF. All the filters seem to exhibit similar performance at the steady-state. We conjecture that its the effect of geometric curvature terms in the Riccati equation (38), which makes the GAME filter more agile during the transients.
4.2 Case B
Now we consider another case which is characterized by a high process noise (which signifies a less accurate system model) but a low measurement noise. The same simulation setup is maintained as in Section 4.1, except that process and measurement disturbances are taken to be rad/s and rad, respectively. As in the previous section, the filters are tuned with the actual noise levels, and the initial conditions are assumed to be unknown.

Transient | Steady state | |
---|---|---|
RMS error | RMS error | |
TRIAD | 26.33 | 26.43 |
MEKF | 14.82 | 4.84 |
Filter | 14.63 | 4.85 |
GAME | 11.85 | 4.84 |
The simulation results for this case are reported in Figure 3 and Table 2. We see that the GAME filter is still the winner during the transients, while the proposed filter is just a little better than the MEKF. At the steady-state, however, all the filters have comparable performance.
Remark 5.
It is a common practice that the filter gain is initialized with a sufficiently high numerical value which leads to faster convergence. It has been observed after several simulation runs that GAME filter, being a more agressive filter due to the geometric curvature correction terms, does not require such high numerical initialization. Instead, such a high gain initialization may even make GAME filter unstable in some extreme cases.
5 Conclusion
The problem of filtering on using vector directions has been investigated in this brief. A deterministic nonlinear filter has been derived which ensures that a dissipation inequality is satisfied for estimation errors up to radians, and that the energy gain from exogenous disturbances and estimation errors to a specified performance measure respects a given upper bound. The proposed filter has been compared with the quaternion MEKF, the quaternion filter, and the Geometric Approximate Minimum Energy (GAME) filter. The comparison suggests that the proposed filter can be viewed as a MEKF variant which can achieve better transient performance without significant degradation in steady-state performance. However, the approach used to obtain the filter has its limitations. In particular, the storage function considered can give, at best, only local stability and performance guarantees. In future work, we hope to re-visit the problem of worst-case estimation on using a chordal metric-based storage function, as well as to incorporate geometric curvature correction terms, such as those used in the GAME filter, in the gain update equation.
References
- [1] F. L. Markley, J. L. Crassidis, and Y. Cheng, “Nonlinear attitude filtering methods,” in AIAA Guidance, Navigation, and Control Conference, 2005, pp. 15–18.
- [2] J. L. Crassidis, F. L. Markley, and Y. Cheng, “Survey of nonlinear attitude estimation methods,” Journal of Guidance, Control, and Dynamics, vol. 30, no. 1, pp. 12–28, 2007.
- [3] A. J. van der Schaft, “-gain analysis of nonlinear systems and nonlinear state-feedback control,” IEEE Transactions on Automatic Control, vol. 37, no. 6, pp. 770–784, 1992.
- [4] ——, “Nonlinear state space control theory,” in Essays on Control. Springer, 1993, pp. 153–190.
- [5] A. Isidori, “ control via measurement feedback for affine nonlinear systems,” International Journal of Robust and Nonlinear Control, vol. 4, no. 4, pp. 553–574, 1994.
- [6] A. Krener, “Necessary and sufficient conditions for nonlinear worst case () control and estimation,” Journal of Mathematical Systems, Estimation, and Control, vol. 4, no. 4, pp. 1–25, 1994.
- [7] N. Berman and U. Shaked, “ nonlinear filtering,” International Journal of Robust and Nonlinear Control, vol. 6, no. 4, pp. 281–296, 1996.
- [8] A. P. Aguiar and J. P. Hespanha, “Robust filtering for deterministic systems with implicit outputs,” Systems & Control letters, vol. 58, no. 4, pp. 263–270, 2009.
- [9] F. Markley, N. Berman, and U. Shaked, “-type filter for spacecraft attitude estimation,” Spaceflight Dynamics 1993, pp. 697–711, 1993.
- [10] ——, “Deterministic EKF-like estimator for spacecraft attitude estimation,” in American Control Conference, 1994, vol. 1. IEEE, pp. 247–251.
- [11] L. Cooper, D. Choukroun, and N. Berman, Spacecraft Attitude Estimation via Stochastic Filtering. American Institute of Aeronautics and Astronautics, 2010.
- [12] D. Choukroun, L. Cooper, and N. Berman, “Spacecraft attitude estimation and gyro calibration via stochastic filtering,” in Advances in Aerospace Guidance, Navigation and Control. Springer, 2011, pp. 397–415.
- [13] N. A. Chaturvedi, A. K. Sanyal, and N. H. McClamroch, “Rigid-body attitude control,” IEEE Control Systems, vol. 31, no. 3, pp. 30–51, 2011.
- [14] R. Mahony, T. Hamel, and J.-M. Pflimlin, “Complementary filter design on the special orthogonal group SO(3),” in 44th IEEE Conference on Decision and Control, and European Control Conference. CDC-ECC’05. IEEE, 2005, pp. 1477–1484.
- [15] ——, “Nonlinear complementary filters on the special orthogonal group,” IEEE Transactions on Automatic Control, vol. 53, no. 5, pp. 1203–1218, 2008.
- [16] S. Berkane and A. Tayebi, “On deterministic attitude observers on the Special Orthogonal group SO(3),” in 55th IEEE Conference on Decision and Control (CDC). IEEE, 2016, pp. 1165–1170.
- [17] ——, “On the design of attitude complementary filters on ,” IEEE Transactions on Automatic Control, vol. 63, no. 3, pp. 880–887, 2017.
- [18] S. Bonnabel, P. Martin, and P. Rouchon, “Symmetry-preserving observers,” IEEE Transactions on Automatic Control, vol. 53, no. 11, pp. 2514–2526, 2008.
- [19] C. Lageman, J. Trumpf, and R. Mahony, “Gradient-like observers for invariant dynamics on a ie group,” IEEE Transactions on Automatic Control, vol. 55, no. 2, pp. 367–377, 2010.
- [20] S. Bonnabel, P. Martin, and E. Salaün, “Invariant Extended Kalman Filter: theory and application to a velocity-aided attitude estimation problem,” in Proceedings of the 48th IEEE Conference on Decision and Control, 2009. IEEE, 2009, pp. 1297–1304.
- [21] M. Zamani, J. Trumpf, and R. Mahony, “Near-optimal deterministic filtering on the rotation group,” IEEE Transactions on Automatic Control, vol. 56, no. 6, pp. 1411–1414, 2011.
- [22] ——, “A second order minimum-energy filter on the special orthogonal group,” in American Control Conference (ACC), 2012. IEEE, 2012, pp. 1895–1900.
- [23] ——, “Minimum-energy filtering for attitude estimation,” IEEE Transactions on Automatic Control, vol. 58, no. 11, pp. 2917–2921, 2013.
- [24] M. Zamani, “Deterministic attitude and pose filtering, an embedded Lie groups approach,” Ph.D. dissertation, Australian National University, Canberra, Australia, 2013.
- [25] A. Saccon, J. Trumpf, R. Mahony, and A. P. Aguiar, “Second-order-optimal minimum-energy filters on ie groups,” IEEE Transactions on Automatic Control, vol. 61, no. 10, pp. 2906–2919, 2016.
- [26] M. Zamani, J. Trumpf, and R. Mahony, “Nonlinear attitude filtering: a comparison study,” arXiv preprint arXiv:1502.03990, 2015.
- [27] M.-A. Lavoie, J. Arsenault, and J. R. Forbes, “An Invariant Extended Filter,” in 2019 IEEE 58th Conference on Decision and Control (CDC). IEEE, 2019, pp. 7905–7910.
- [28] M. F. Haydar and M. Lovera, “ filtering on the unit circle,” in 2017 IEEE 56th Annual Conference on Decision and Control (CDC). IEEE, 2017, pp. 2422–2427.
- [29] F. L. Markley, “Multiplicative vs. additive filtering for spacecraft attitude determination,” Dynamics and Control of Systems and Structures in Space, pp. 467–474, 2004.
- [30] H. Gui and A. H. de Ruiter, “Quaternion invariant extended Kalman filtering for spacecraft attitude estimation,” Journal of Guidance, Control, and Dynamics, vol. 41, no. 4, pp. 863–878, 2018.
- [31] M. Izadi, E. Samiei, A. K. Sanyal, and V. Kumar, “Comparison of an attitude estimator based on the Lagrange-d’Alembert principle with some state-of-the-art filters,” in 2015 IEEE International Conference on Robotics and Automation (ICRA). IEEE, 2015, pp. 2848–2853.
- [32] S. Berkane, “Hybrid attitude control and estimation on ,” Ph.D. dissertation, University of Western Ontario, London, Canada, 2017.
- [33] D. Simon, Optimal state estimation: Kalman, , and nonlinear approaches. John Wiley & Sons, 2006.
- [34] F. L. Lewis, L. Xie, and D. Popa, Optimal and robust estimation: with an introduction to stochastic control theory. CRC press, 2007, vol. 29.