Next Article in Journal
DML–LLM Hybrid Architecture for Fault Detection and Diagnosis in Sensor-Rich Industrial Systems
Next Article in Special Issue
Artificial Intelligence-Based Decision Support System for UAV Control in a Simulated Environment
Previous Article in Journal
Optical Caliper for Contactless Measurement of Plant Stem Diameter
Previous Article in Special Issue
Transmitarray-Based CATR for Streamline UAV RCS Measurement
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

An Unscented Kalman Filter Based on the Adams–Bashforth Method with Applications to the State Estimation of Osprey-Type Drones Composed of Tiltable Rotor Mechanisms

1
Graduate School of Environmental, Life, Natural Science and Technology, Okayama University, Okayama 700-8530, Japan
2
Faculty of International Economics and Management, International Pacific University (IPU), Tokyo Campus, Chiba 272-001, Japan
3
Sony Group Corporation, Tokyo 108-0075, Japan
4
National Institute of Technology, Mitsue College, Matsue 690-0865, Japan
*
Author to whom correspondence should be addressed.
Sensors 2026, 26(6), 2009; https://doi.org/10.3390/s26062009
Submission received: 26 February 2026 / Revised: 14 March 2026 / Accepted: 17 March 2026 / Published: 23 March 2026

Abstract

In the state estimation problem for nonlinear systems, the Unscented Kalman Filter (UKF) has gained attention as an algorithm capable of accurate state estimation based on high-fidelity discretization for strongly nonlinear systems. Furthermore, for applying the UKF to continuous-time state–space models, a method employing the Runge–Kutta method in the time-update equation for sigma points has already been proposed to achieve high-precision state estimation. While this method uses high-order numerical approximations, the associated decrease in computational efficiency due to processing time becomes problematic. It is thus unsuitable for the state estimation of relatively fast-moving objects, such as autonomous vehicles and drones, which require high sampling frequencies. In this study, to reduce computational load while achieving relatively high estimation accuracy, we newly apply the Adams–Bashforth method to the UKF algorithm. The effectiveness of the proposed method is demonstrated by first explaining a low-dimensional model’s state estimation problem, followed by a comparison of estimation accuracy and computation time in state estimation simulations for the UAV model of an Osprey-type drone.

1. Introduction

The navigation problem for moving objects is a fundamental challenge with important engineering applications [1]. The problem of position estimation is inherently formulated as a nonlinear filtering problem, and the theory of optimal filtering has been established by researchers such as [2]. However, in practice, only the linear Kalman filter (KF) proposed by Kalman [3] and its nonlinear extensions are feasible for implementation. This is because optimal nonlinear filters are computationally too expensive to implement.
The motion models of many real-world systems, particularly autonomous mobile robots, are described in continuous time. However, since observation information from sensors is obtained discretely through sampling, the observation model becomes discrete time. Such a system is called a continuous-discrete (CD) system [4]. While the approach that directly applies the Kalman filter to this CD system is referred to as CD-KF, in practice, it is common to discretize or numerically integrate the continuous-time motion model and construct a discrete-time Kalman filter. A Kalman filter in which both the motion model and the observation model are discrete-time is called a discrete–discrete Kalman filter (DD-KF). For nonlinear dynamics or nonlinear observation systems, the CD-EKF (continuous-discrete extended Kalman filter) or DD-EKF (discrete–discrete extended Kalman filter), which apply the Kalman filter to their linearly approximated systems, are widely used [5,6,7,8]. Furthermore, as a stable algorithm that does not require linear approximation via Jacobians, the Unscented Kalman Filter (UKF) has been proposed for DD nonlinear systems [9,10,11]. This will be referred to as DD-UKF hereafter. The UKF employs a nonlinear transformation called the Unscented Transform (UT). For a system of order n, it generates ( 2 n + 1 ) sample points called sigma points, applies a nonlinear transformation to each, and then calculates the conditional expectation of the state vector and the covariance matrix by taking the sample average of the transformed points. By using this UT, the UKF enables state estimation based on high-fidelity discretization.
Since the proposal of the UKF, many researchers have advanced its development and improvement. Särkkä [12] derived continuous-time and continuous-discrete versions of the UKF and applied them to nonlinear continuous-time filtering and re-entry vehicle tracking problems. van der Merwe [13] proposed the square-root UKF to improve numerical stability, and Ito and Xiong [14] analyzed the convergence of Gaussian filters, including the UKF. Julier [15] proposed the spherical simplex UT to reduce the number of sigma points. Meanwhile, Haykin [16] advanced research on the integration of neural networks and Kalman filtering, demonstrating new possibilities for nonlinear adaptive filtering. Elliott [17] contributed to the foundations of filtering theory through the theory of hidden Markov models and stochastic control. Recently, Singh [18] comprehensively reviewed the development of Gaussian filtering, including the UKF. In particular, recent studies have combined the UKF with outlier handling and event-triggered mechanisms. For example, Ref. [19] proposed a dual-event-triggering ANFIS-based UKF for cluster cooperative navigation with measurement anomalies, demonstrating potential applications to navigation problems in complex environments.
From the perspective of numerical integration methods, Takeno and Katayama [20] applied the Runge–Kutta (RK) method to the time-update equations for sigma points and demonstrated that high-precision state estimation is possible for several models. Furthermore, Takeno and Katayama [21] applied Heun’s method, an improved version of the Euler method, to the prediction step. Kulikov and Kulikova [22,23] have advanced research on high-precision numerical implementation of the continuous-discrete UKF. However, discussions on these UKFs have focused primarily on estimation accuracy, with little consideration given to computational efficiency. Due to its characteristic of performing nonlinear transformations on each of the ( 2 n + 1 ) sigma points in the UT algorithm, the UKF has the drawback of increased computation time as the system order n grows. For state estimation of large-scale real-world models, both accuracy and real-time performance are required, making the improvement of computational efficiency in UKF algorithms critically important [24]. In recent years, research addressing this computational efficiency challenge has begun to emerge. Wang et al. [25] proposed an adaptive step-size UKF based on the degree of nonlinearity, achieving a balance between accuracy and computational cost by dynamically adjusting the step size in highly nonlinear regions. Researchers in the aerospace domain [26] introduced a high-efficiency UKF utilizing parallel computation for sigma point propagation, demonstrating significant speedup for multi-target trajectory estimation. The integration of machine learning techniques with UKF has also been explored; a GAN-enhanced UKF framework [27] dynamically predicts and updates filter parameters in real-time, improving estimation accuracy without sacrificing computational performance. In the realm of numerical implementation, Kulikova and Kulikov [28] developed square-root information-type methods for continuous-discrete extended Kalman filtering, enhancing numerical stability which is crucial for efficient computation. Furthermore, theoretical advances in sensor scheduling for continuous-discrete systems [29] provide insights into optimizing the trade-off between resource allocation and estimation accuracy. A comparative evaluation of nonlinear filters [30] further contextualizes the performance of the UKF against other methods in practical tracking applications. These recent developments underscore the growing recognition of computational efficiency as a critical factor in the practical deployment of nonlinear Kalman filters.
Regarding Unmanned Aerial Vehicle (UAV) navigation, comprehensive reviews exist on topics such as autonomous navigation in GPS-denied environments [31], UAV positioning using GNSS [32], and sensor-based autonomous localization [33]. These reviews highlight the importance of filtering techniques in UAV navigation. Therefore, in this study, to improve the computational efficiency of the UKF, we propose a UKF that applies the Adams–Bashforth (AB) method, instead of the RK method, to the time-update equations for sigma points. The RK method is a single-step numerical integration method; it calculates the next numerical point ( x ( t k + 1 ) , t k + 1 ) based solely on the current point x ( t k ) . Furthermore, when the order of accuracy is s   ( s < 5 ) , s function evaluations are required to generate the next numerical point. On the other hand, the AB method is a multi-step numerical integration method. For an accuracy order of 4, the next numerical point x ( t k + 1 ) is calculated based on the past four points x ( t k 3 ) , x ( t k 2 ) , x ( t k 1 ) , x ( t k ) , and only one function evaluation is needed to generate the next numerical point. Thus, regardless of the accuracy order s of the AB method, the number of function evaluations is always one. Therefore, compared to the fixed-step RK method, computation with the AB method is more efficient.
It should be noted, as a related study focusing on the degradation of computational efficiency of the RK method when applying numerical integration to nonlinear Kalman filters, that He et al. [34] have already conducted research applying a multi-step method based on the Adams–Bashforth–Moulton (ABM) method to the EKF. The objective of this study is to demonstrate that the UKF applying the AB method to the time-update equations for sigma points in the UT can achieve estimation with computational efficiency superior to that of the RK method, while maintaining comparable estimation accuracy. In addition to comparison with the RK method, we also compare the differences in estimation accuracy and computation time resulting from varying orders (2nd to 6th) of the AB method itself.
The effectiveness of the proposed method is demonstrated through state estimation in a MATLAB 2022a simulation environment using two nonlinear models. Specifically, as a preliminary experiment, we first apply the method to a low-dimensional falling object model used in previous research and compare estimation performance under identical conditions. Subsequently, as an application to a more complex model, we perform a similar comparison of estimation performance using a UAV model of an Osprey-type drone.
The structure of this paper is as follows. Section 2 formulates the continuous-discrete system and the state estimation problem. Section 3 discusses the integration of the UT with the Runge–Kutta method and the Adams–Bashforth method, presenting the time-update equations for sigma points based on each method. Section 4 details the modeling of the Osprey-type drone. After defining the coordinate systems, the rotational and translational motions are explained in detail. Section 5 describes the control law and control allocation. Specifically, a controller based on the computed torque method and the control input allocation problem are detailed. Section 6, as a preliminary experiment, applies the sigma-point time-update equations presented in Section 3 to the falling object model used in previous research, comparing estimation accuracy and computation time. Section 7 first derives the state equations and sigma-point time-update equations for the Osprey-type UAV model, then performs comparisons of estimation accuracy and computation time similar to those in Section 6. Furthermore, we provide discussions based on a broader range of estimation results, including not only comparisons with the RK method but also differences in estimation performance due to the order of the AB method and comparisons of estimation performance under different sampling periods. Section 6 summarizes the paper and presents concluding remarks.

2. Continuous-Discrete System and Problem Formulation

2.1. Continuous-Discrete System

The motion of many real-world systems, particularly moving objects such as UAVs, is described in continuous time, while observations from sensors are obtained discretely through sampling. Such systems are called CD systems, and the foundations of their filtering theory are detailed in Jazwinski [4].
In this study, we consider a system described by the following nonlinear continuous-time state equation and discrete-time observation equation:
x ˙ ( t ) = f c ( x ( t ) , u ( t ) ) + w c ( t ) ,
y ( t k ) = h m ( x ( t k ) ) + v ( t k ) .
Here, t denotes continuous time, t k = k Δ t ( k = 0 , 1 , ) denotes sampling instants, and Δ t is the sampling interval. x ( t ) R n is the state vector, u ( t ) R m is the input vector, and y ( t k ) R p is the output vector. f c : R n × R m R n and h m : R n R p are nonlinear functions. Furthermore, w c ( t ) R n is the system noise, and v ( t k ) R p is the observation noise, both assumed to be Gaussian white noises with zero mean and covariance matrices Q c and R, respectively.

2.2. Discrete–Discrete Unscented Kalman Filter

Discretizing the continuous-time state Equation (1) using some numerical integration method yields the following discrete-time state equation:
x ( t k + 1 ) = f d ( x ( t k ) , u ( t k ) ) + w ( t k )
where f d is an approximation function obtained through the numerical integration method, and w ( t k ) is the system noise arising from discretization. The UKF can be applied to the DD system composed of Equations (2) and (3).
The UKF is an algorithm that performs state estimation for nonlinear systems using the Unscented Transform (UT) [9,10,11]. Hereafter, the filtered estimate is denoted as x ^ ( t k | t k ) , its covariance matrix as P ( t k | t k ) , the one-step predicted estimate as x ^ ( t k + 1 | t k ) , and its covariance matrix as P ( t k + 1 | t k ) . The initial estimate x ^ ( 0 | 0 ) and initial covariance matrix P ( 0 | 0 ) are assumed to be known.
The UKF algorithm consists of a prediction step and an update step. The detailed derivation and specific equations are provided in Appendix A; here, we present only an overview.
Prediction Step: From the estimate x ^ ( t k | t k ) and covariance matrix P ( t k | t k ) at time t k , ( 2 n + 1 ) sigma points X i ( t k | t k ) and corresponding weights W i are generated. These sigma points are propagated through the nonlinear function f d , and the one-step predicted estimate x ^ ( t k + 1 | t k ) and its covariance matrix P ( t k + 1 | t k ) are computed by taking the weighted average.
Update Step: The predicted sigma points X i ( t k + 1 | t k ) are substituted into the observation function h m to compute the predicted output y ^ ( t k + 1 | t k ) , its covariance P y y , and the cross-covariance between state and output P x ν . The innovation ν ( t k + 1 ) is computed using the actual observation y ( t k + 1 ) , and the estimate x ^ ( t k + 1 | t k + 1 ) and covariance matrix P ( t k + 1 | t k + 1 ) are updated via the Kalman gain K ( t k + 1 ) .
For the specific computational procedure and complete set of equations for the UKF, please refer to Appendix A.

3. Unscented Transform and Discretization Methods

3.1. Discrete-Time State–Space Model

Consider the following continuous-time nonlinear system:
d x d t = f c ( x ) , x ( 0 ) = x 0
where x R n is the state vector and x 0 is the initial value. Discretizing this continuous-time system using some numerical integration method yields the following time-update equation:
x ( t k + 1 ) = f d ( x ( t k ) ) , k = 0 , 1 ,
The observation equation is given similarly to Equation (2) as
y ( t k ) = h m ( x ( t k ) ) + v ( t k ) , k = 0 , 1 ,
where v is Gaussian white noise with zero mean and covariance matrix R. Equations (5) and (6) constitute the discrete-time state–space model.
The objective of this study is to propose a nonlinear filtering algorithm that sequentially estimates the state vector x ( t k ) based on the observation data y ( t k ) . Takeno and Katayama [20] demonstrated that combining the UKF with the RK method enables high-precision state estimation. In this study, we show that by combining the AB method with the UT instead of the RK method, relatively high-precision state estimation can be achieved while reducing computational load.
For the general theory of numerical solutions for stochastic differential equations, please refer to Kloeden and Platen [35].

3.2. Integration of UT and the Runge–Kutta Method

When applying the RK method to the time update of sigma points in the UKF, numerical integration is performed for each sigma point. The sigma point matrix X k at time k with its element X i , j , k is defined as follows:
X k = X 1 , 1 , k X 1 , 2 n + 1 , k X n , 1 , k X n , 2 n + 1 , k .
Here, i = 1 , , n denotes the element of the state vector, and j = 1 , , 2 n + 1 denotes the index of the sigma point. Let the step size be Δ t = h and the time instant be t k = k h .
When applying the 4th-order Runge–Kutta method, the time-update equation for the sigma points is expressed in the following general form:
X i , j , k + 1 = X i , j , k + h 6 ( a 1 , i j + 2 a 2 , i j + 2 a 3 , i j + a 4 , i j ) .
Here, a 1 , i j , a 2 , i j , a 3 , i j , a 4 , i j are the function evaluations at each stage of the RK method. The specific definitions and detailed derivations are provided in Appendix B.
By taking the weighted average of these updated sigma points, the predicted value of the state vector (Equation (A10)) and the predicted covariance matrix (Equation (A11)) are obtained.

3.3. Integration of UT and the Adams–Bashforth Method

This section describes the integration of the AB method with the UT, which is the core of this study. The ordinary AB method is a multi-step method that calculates the next point using information from multiple past points. In this study, we extend and apply this method to the sigma point matrix of the UKF.
First, the result of substituting each column (each sigma point) of the sigma point matrix X k at time k into the nonlinear function f c is defined as the following n × ( 2 n + 1 ) matrix:
F c ( X k ) = f 1 ( X 1 , 1 , k ) f 1 ( X 1 , 2 n + 1 , k ) f n ( X n , 1 , k ) f n ( X n , 2 n + 1 , k ) .
This F c ( X k ) is a matrix that stores the results of evaluating the nonlinear function for all sigma points at time k. While the ordinary AB method uses function evaluation values for past state vectors, the feature of the proposed method is that it stores function evaluation matrices for past sigma point matrices F c ( X k 1 ) , F c ( X k 2 ) , and uses them as “past information.”
Below, we present the time-update equations for sigma points using the 2nd- to 6th-order AB methods [36,37].
  • 2nd-order Adams–Bashforth method:
    X k + 1 = X k + h 2 3 F c ( X k ) F c ( X k 1 ) .
  • 3rd-order Adams–Bashforth method:
    X k + 1 = X k + h 12 23 F c ( X k ) 16 F c ( X k 1 ) + 5 F c ( X k 2 ) .
  • 4th-order Adams–Bashforth method:
    X k + 1 = X k + h 24 55 F c ( X k ) 59 F c ( X k 1 ) + 37 F c ( X k 2 ) 9 F c ( X k 3 ) .
  • 5th-order Adams–Bashforth method:
    X k + 1 = X k + h 720 ( 1901 F c ( X k ) 2774 F c ( X k 1 ) + 2616 F c ( X k 2 ) 1274 F c ( X k 3 ) + 251 F c ( X k 4 ) ) .
  • 6th-order Adams–Bashforth method:
X k + 1 = X k + h 1440 ( 4277 F c ( X k ) 7923 F c ( X k 1 ) + 9982 F c ( X k 2 ) 7298 F c ( X k 3 ) + 2877 F c ( X k 4 ) 475 F c ( X k 5 ) ) .
Here, X k and X k + 1 are n × ( 2 n + 1 ) matrices. These equations are an extension of the ordinary AB method formulas to the sigma point matrix, representing an original formulation for integrating the numerical integration method into the specific filtering method of UKF. In particular, the method of storing and utilizing the results of function evaluations for past sigma point matrices is a novel aspect of this approach not found in existing research.

3.4. Comparison of Computational Complexity: Runge–Kutta Method vs. Adams–Bashforth Method

We compare the computational complexity of the RK and AB methods in the UT from the following two perspectives.

3.4.1. Computational Complexity Comparison Based on “Number of Stages”

The difference width Δ t = h in discretization is generally called the step size in numerical computation. The RK method computes the derivative f i ( X ) multiple times while advancing one step (this is referred to as the “number of stages”). For example, the 4th-order RK method requires four stages of computation, and its global truncation error is O ( h 4 ) .
On the other hand, since the AB method utilizes previously computed sigma point matrices F c ( X k 1 ) , F c ( X k 2 ) , , only one computation of F c ( X k ) is sufficient to derive the time-update equation for the current sigma points. That is, regardless of the accuracy order of the AB method, the number of stages is always 1 / 4 that of the RK method.

3.4.2. Computational Complexity Comparison Based on “Number of Elements in the Sigma Point Set”

Generally, when simulating large-scale models in real space, the number of state variables n can become very large (millions to tens of millions). In the UKF, since the size of the sigma point set is ( 2 n + 1 ) , this effect becomes pronounced. The RK method performs four stages of derivative computation for each sigma point, for each element of the n-dimensional state vector and for each element of the sigma point set.
In contrast, the AB method requires only one stage of function computation for each element of the sigma point set. Furthermore, for past sigma point sets, it only involves multiplying the entire matrix by coefficients according to the accuracy order. Therefore, the impact of an increase in the number of state variables is significantly smaller compared to the RK method.
This theoretical comparison of computational complexity will be verified through numerical experiments presented later in Section 6 and Section 7.

4. Modeling of the Osprey-Type Drone

4.1. Definition of Coordinate Systems

Figure 1 shows the coordinate systems used in this study for the Osprey-type drone. The world coordinate system F W is a right-handed coordinate system with origin O W and axes X W , Y W , Z W , where Z W is positive vertically downward. The body coordinate system F B has its origin O B at the center of gravity of the vehicle. It is also a right-handed coordinate system with axes X B , Y B , Z B and Z B positive vertically downward. The positive direction of the X B axis is designated as the forward direction of the vehicle.
The coordinate system for the first coaxial rotor, F P 1 , has origin O P 1 and axes X P 1 , Y P 1 , Z P 1 . Similarly, the coordinate system for the second coaxial rotor, F P 2 , has origin O P 2 and axes X P 2 , Y P 2 , Z P 2 . The coordinate system for the i-th ( i = 1 , 2 ) coaxial rotor is integrated into F P i . In the body coordinate system F B , the angular velocities about the X B , Y B , Z B axes are ( p , q , r ) , respectively. Furthermore, in the rotor coordinate system F P i , the tilt angles about the X P i , Y P i axes are ( α i , β i ) . The initial tilt angles α i and β i are 0. Due to servo motor characteristics, the range of α i is 2 / π α i 2 / π , while β i is unlimited.
Let the Euler angles in the world coordinate system be η = [ ϕ θ ψ ] T . The rotation matrices about the x, y, z axes, R x , R y , R z , can be expressed as follows (S denotes sin, and C denotes cos):
R x = 1 0 0 0 C ϕ S ϕ 0 S ϕ C ϕ ,
R y = C θ 0 S θ 0 1 0 S θ 0 C θ ,
R z = C ψ S ψ 0 S ψ C ψ 0 0 0 1 .
From these R x , R y , R z , the transformation matrix from the body coordinate system to the world coordinate system, R B W , can be expressed as
R B W = R z ( ψ ) R y ( θ ) R x ( ϕ ) = C θ C ψ S ϕ S θ C ψ C ϕ S ψ C ϕ S θ C ψ + S ϕ S ψ C θ S ψ S ϕ S θ S ψ + C ϕ C ψ C ϕ S θ S ψ S ϕ C ψ S θ S ϕ C θ C ϕ C θ .
Also, let the transformation matrix for angular velocity from the world coordinate system to the body coordinate system be W η . Then, ω B [ p q r ] T is
ω B = W η η ˙
and its inverse is given by
η ˙ = W η 1 ω B .
Here, it is found in [38,39] that
W η = 1 0 S θ 0 C ϕ C θ S ϕ 0 S ϕ C θ C ϕ ,
W η 1 = 1 S ϕ T θ C ϕ T θ 0 C ϕ S ϕ 0 S ϕ / C θ C ϕ / C θ
where T x = tan ( x ) . Note that W η is invertible unless θ = ( 2 k 1 ) ϕ / 2 , ( k Z ) . That is, it is invertible as long as it does not take the specific ϕ = ± π / ( 2 k 1 ) where gimbal lock occurs.
From the tilt angles α i and β i , where ( i = 1 , 2 ) in each rotor coordinate system, the transformation matrix from each rotor coordinate system to the body coordinate system, R P i B , can be expressed as
R P 1 B = R z ( 0 ) R y ( β 1 ) R x ( α 1 ) = C β 1 S α 1 S β 1 C α 1 S β 1 0 C α 1 S α 1 S β 1 S α 1 C β 1 C α 1 C β 1 ,
R P 2 B = R z ( 0 ) R y ( β 2 ) R x ( α 2 ) = C β 2 S α 2 S β 2 C α 2 S β 2 0 C α 2 S α 2 S β 2 S α 2 C β 2 C α 2 C β 2 .

4.2. Rotational Motion

First, the angular velocity ω P i and angular acceleration ω ˙ P i of the i-th ( i = 1 , 2 ) coaxial rotor can be expressed as
ω P 1 = α ˙ 1 β ˙ 1 ω ¯ 2 ω ¯ 1 T ω P 2 = α ˙ 2 β ˙ 2 ω ¯ 3 ω ¯ 4 T ,
ω ˙ P 1 = α ¨ 1 β ¨ 1 ω ¯ ˙ 2 ω ¯ ˙ 1 T ω ˙ P 2 = α ¨ 2 β ¨ 2 ω ¯ ˙ 3 ω ¯ ˙ 4 T
where ω ¯ 1 , ω ¯ 2 are the angular velocities of each brushless motor in the first coaxial rotor, and ω ¯ 3 , ω ¯ 4 are those of the second coaxial rotor.
Next, the reaction torque τ c , i of the i-th ( i = 1 , 2 ) coaxial rotor can be expressed as
τ c , 1 = 0 0 k t ( ω 2 ¯ 2 ω ¯ 1 2 ) T τ c , 2 = 0 0 k t ( ω 3 ¯ 2 ω ¯ 4 2 ) T
where k t > 0 represents the torque coefficient.
Also, the thrust T i of the i-th ( i = 1 , 2 ) coaxial rotor can be expressed as
T 1 = 0 0 T 1 T = 0 0 k f ( ω ¯ 1 2 + ω ¯ 2 2 ) T T 2 = 0 0 T 2 T = 0 0 k f ( ω ¯ 3 2 + ω ¯ 4 2 ) T
where k f > 0 represents the thrust coefficient of the coaxial rotor.
Using the Newton–Euler method, the torque τ P i generated by the coaxial rotor can be expressed as
τ P i = I P ω ˙ P i + ω P i × I P ω P i + τ c , i .
Here, since the angular velocity and angular acceleration caused by the servo motor tilt are instantaneous and minute, they can be expressed as
α ˙ i = 0 , α ¨ i = 0 , β ˙ i = 0 , β ¨ i = 0 ( i = 1 , 2 ) ; ω ˙ P j = 0 ( j = 1 , 2 , 3 , 4 ) .
Therefore, ω P i and τ P i become as follows:
ω P 1 = 0 0 ω 2 ¯ ω ¯ 1 T ω P 2 = 0 0 ω 3 ¯ ω ¯ 4 T ,
τ P 1 = 0 0 k t ( ω ¯ 2 2 ω ¯ 1 2 ) T τ P 2 = 0 0 k t ( ω ¯ 3 2 ω ¯ 4 2 ) T .

4.2.1. Rotational Torque τ B Generated by Rotor Thrust

The rotational torque τ B generated on the vehicle by rotor thrust can be expressed using the position vector O r i B of each rotor in the body coordinate system as follows:
τ B = i = 1 2 ( O P i B × R P i B T i ) ,
O P i B = 0 ( 1 ) i l h o T .
The calculation details for i = 1 , 2 are shown below:
R P 1 B T 1 = C β 1 S α 1 S β 1 C α 1 S β 1 0 C α 1 S α 1 S β 1 S α 1 C β 1 C α 1 C β 1 0 0 T 1 = C α 1 S β 1 T 1 S α 1 T 1 C α 1 C β 1 T 1 , R r 2 B T 2 = C β 2 S α 2 S β 2 C α 2 S β 2 0 C α 2 S α 2 S β 2 S α 2 C β 2 C α 2 C β 2 0 0 T 2 = C α 2 S β 2 T 2 S α 2 T 2 C α 2 C β 2 T 2 ,
O P 1 B × R P 1 B T 1 = 0 l h o × C α 1 S β 1 T 1 S α 1 T 1 C α 1 C β 1 T 1 = l C α 1 C β 1 T 1 + h o S α 1 T 1 h o C α 1 S β 1 T 1 l C α 1 S β 1 T 1 , O P 2 B × R P 2 B T 2 = 0 l h o × C α 2 S β 2 T 2 S α 2 T 2 C α 2 C β 2 T 2 = l C α 2 C β 2 T 2 + h o S α 2 T 2 h o C α 2 S β 2 T 2 l C α 2 S β 2 T 2 .
Therefore, τ B = [ τ x B τ y B τ z B ] T can be expressed as
τ B = τ x B τ y B τ z B = ( l C α 1 C β 1 + h o S α 1 ) T 1 ( l C α 2 C β 2 h o S α 2 ) T 2 h o C α 1 S β 1 T 1 + h o C α 2 S β 2 T 2 l C α 1 S β 1 T 1 + l C α 2 S β 2 T 2 = k f ( l C α 1 C β 1 + h o S α 1 ) ( ω ¯ 1 2 + ω ¯ 2 2 ) ( l C α 2 C β 2 h o S α 2 ) ( ω ¯ 3 2 + ω ¯ 4 2 ) h o C α 1 S β 1 ( ω ¯ 1 2 + ω ¯ 2 2 ) + h o C α 2 S β 2 ( ω ¯ 3 2 + ω ¯ 4 2 ) l C α 1 S β 1 ( ω ¯ 1 2 + ω ¯ 2 2 ) + l C α 2 S β 2 ( ω ¯ 3 2 + ω ¯ 4 2 ) .

4.2.2. Reaction Torque τ c Generated by Rotor Rotation

The reaction torque τ c generated by rotor rotation can be expressed using the reaction torque τ P i of each rotor as follows:
τ c = i = 1 2 ( R P i B τ P i ) .
The calculation details for i = 1 , 2 are shown below:
R P 1 B τ P 1 = C β 1 S α 1 S β 1 C α 1 S β 1 0 C α 1 S α 1 S β 1 S α 1 C β 1 C α 1 C β 1 0 0 k t ( ω ¯ 2 2 ω ¯ 1 2 ) = k t C α 1 S β 1 ( ω ¯ 2 2 ω ¯ 1 2 ) S α 1 ( ω ¯ 2 2 ω ¯ 1 2 ) C α 1 C β 1 ( ω ¯ 2 2 ω ¯ 1 2 ) ,
R P 2 B τ P 2 = C β 2 S α 2 S β 2 C α 2 S β 2 0 C α 2 S α 2 S β 2 S α 2 C β 2 C α 2 C β 2 0 0 k t ( ω ¯ 3 2 ω ¯ 4 2 ) = k t C α 2 S β 2 ( ω ¯ 3 2 ω ¯ 4 2 ) S α 2 ( ω ¯ 3 2 ω ¯ 4 2 ) C α 2 C β 2 ( ω ¯ 3 2 ω ¯ 4 2 ) .
Therefore, τ c = [ τ x c τ y c τ z c ] T can be expressed as
τ c = τ x c τ y c τ z c = k t C α 1 S β 1 ( ω ¯ 2 2 ω ¯ 1 2 ) + C α 2 S β 2 ( ω ¯ 3 2 ω ¯ 4 2 ) S α 1 ( ω ¯ 2 2 ω ¯ 1 2 ) S α 2 ( ω ¯ 3 2 ω ¯ 4 2 ) C α 1 C β 1 ( ω ¯ 2 2 ω ¯ 1 2 ) + C α 2 C β 2 ( ω ¯ 3 2 ω ¯ 4 2 ) .

4.2.3. Vehicle Coriolis Force τ c o r i

The vehicle Coriolis force τ c o r i can be expressed using the vehicle’s angular velocity ω B and its inertia matrix I B as follows:
τ c o r i = ω B × I B ω B .
Here, since
I B = I B x x 0 0 0 I B y y 0 0 0 I B z z , ω B = p q r
we have
I B ω B = I B x x 0 0 0 I B y y 0 0 0 I B z z p q r = p I B x x q I B y y r I B z z .
Therefore, letting τ c o r i = [ τ x c o r i τ y c o r i τ z c o r i ] T , we obtain
τ c o r i = τ x c o r i τ y c o r i τ z c o r i = p q r × p I B x x q I B y y r I B z z = q r ( I B z z I B y y ) p r ( I B x x I B z z ) p q ( I B y y I B x x ) .

4.2.4. Vehicle Angular Acceleration ω ˙ B

Using the equations above, the vehicle’s angular acceleration ω ˙ B = [ p ˙ q ˙ r ˙ ] T can be expressed as
ω ˙ B = I B 1 ( τ B + τ c τ c o r i + τ e x t ) .
Furthermore, neglecting external disturbance torques τ e x t acting on the vehicle and gyroscopic effects (i.e., τ e x t = 0 ), we have
p ˙ q ˙ r ˙ = 1 I B x x ( τ x B + τ x c ) + q r I B y y I B z z I B x x 1 I B y y ( τ y B + τ y c ) + p r I B z z I B x x I B y y 1 I B z z ( τ z B + τ z c ) + p q I B x x I B y y I B z z .

4.3. Translational Motion

The thrust T B in the body coordinate system can be expressed using the thrust T i of each rotor as
T B = i = 1 2 ( R P i B T i ) .
Therefore, letting T B = [ T x T y T z ] T , we obtain
T B = T x T y T z = C α 1 S β 1 T 1 C α 2 S β 2 T 2 S α 1 T 1 + S α 2 T 2 C α 1 C β 1 T 1 C α 2 C β 2 T 2 = k f C α 1 S β 1 ( ω ¯ 1 2 + ω ¯ 2 2 ) C α 2 S β 2 ( ω ¯ 3 2 + ω ¯ 4 2 ) S α 1 ( ω ¯ 1 2 + ω ¯ 2 2 ) + S α 2 ( ω ¯ 3 2 + ω ¯ 4 2 ) C α 1 C β 1 ( ω ¯ 1 2 + ω ¯ 2 2 ) C α 2 C β 2 ( ω ¯ 3 2 + ω ¯ 4 2 ) .
Using the vehicle mass m and gravitational acceleration g = [ 0 0 g ] T , the vehicle’s translational acceleration ξ ¨ = [ x ¨ y ¨ z ¨ ] T can be expressed as
ξ ¨ = g + 1 m ( R B W T B + F e x t ) ,
x ¨ y ¨ z ¨ = 1 m C θ C ψ T x + ( S ϕ S θ C ψ C ϕ S ψ ) T y + ( C ϕ S θ C ψ + S ϕ S ψ ) T z C θ S ψ T x + ( S ϕ S θ S ψ + C ϕ C ψ ) T y + ( C ϕ S θ S ψ S ϕ C ψ ) T z S θ T x + S ϕ C θ T y + C ϕ C θ T z + m g
where F e x t is the external disturbance force acting on the vehicle. Neglecting effects such as friction, we set F e x t = 0 .

5. Controller Design and Control Allocation

5.1. Computed Torque Method

The computed torque method is a technique to determine the generalized force (comprising thrust and torque in the body coordinate system) from the desired translational and angular accelerations in the world coordinate system, given that the vehicle’s physical information is known. Utilizing the relation η ˙ = W η 1 ω B in the translational acceleration of Equation (44) and the rotational angular acceleration of Equation (40), and defining the generalized coordinates as X [ ξ T η T ] T , the system can be represented as
X ¨ = F ( X ˙ ) + G ( X ) u + D ( X ) d .
This is because, from Equation (20),
η ¨ = d d t ( W η 1 ) ω B + W η 1 ω ˙ B = d d t ( W η 1 ) W η η ˙ + W η 1 I B 1 ( τ B + τ c ) τ c o r i + τ e x t = d d t ( W η 1 ) W η η ˙ ( I B W η ) 1 [ ( W η η ˙ ) × I B ( W η η ˙ ) ] + ( I B W η ) 1 ( τ B + τ c ) + ( I B W η ) 1 τ e x t
and thus
F ( X ˙ ) = g d d t ( W η 1 ) W η η ˙ ( I B W η ) 1 [ ( W η η ˙ ) × I B ( W η η ˙ ) ] ,
G ( X ) = 1 m W R B 0 0 ( I B W η ) 1 , D ( X ) = 1 m I 3 × 3 0 0 ( I B W η ) 1 ,
u = [ T B T ( τ B + τ c ) T ] T , d = [ F e x t T τ e x t T ] T .
Here, since the rotation matrix R B W is orthogonal, R B 1 W = W R B T . Also, as each principal moment of inertia I B i i 0 ( i = x , y , z ) , G 1 ( X ) = diag ( m W R B T , W η I B ) . Then, the inverse system of Equation (46) is
u = G 1 ( X ) [ X ¨ F ( X ˙ ) D ( X ) d ] .
Let the target value for the generalized coordinate vector X be X d . Constructing its augmented acceleration vector X ¨ * using a PD servo system yields
X ¨ * = X ¨ d + K d e ˙ + K p e
where e = X d X , K d > 0 is the derivative gain, and K p > 0 is the proportional gain. Substituting X ¨ * from Equation (49) for X ¨ in Equation (48) gives
u * = G 1 ( X ) [ X ¨ d + K d e ˙ + K p e F ( X ˙ ) D ( X ) d ] .
Substituting this u * into the original plant Equation (46) yields
e ¨ + K d e ˙ + K p e = 0 .
Here, we set K p = diag ( K p 1 , , K p 6 ) and K d = diag ( K d 1 , , K d 6 ) . For application to actual vehicles, considering modeling errors, the condition K d i = 2 K p i , which ideally achieves a damping ratio of 1 (i.e., critical damping), is used as a base, but the damping condition for this error may need slight modification. In the simulations, the proportional gains for translational position and attitude angles are defined as K p = diag ( K p x , K p y , K p z , K p ϕ , K p θ , K p ψ ) , and the derivative gains as K d = diag ( K d x , K d y , K d z , K d ϕ , K d θ , K d ψ ) , with the following settings:
K p x = K p y = 3.0 ; K p z = 5 ; K p ϕ = K p θ = K p ψ = 2.0 ; K d x = K d y = 3.46 ; K d z = 5 ; K d ϕ = K d θ = K d ψ = 2.83 .

5.2. Control Input Allocation Problem

Appropriate rotor speeds and tilt angles are allocated to each coaxial rotor to achieve the generalized force in the body coordinate system, determined earlier by the computed torque method. A single coaxial rotor constructed in this study utilizes two brushless motors. The thrust of coaxial rotor 1 is T 1 = k f ( ω ¯ 1 2 + ω ¯ 2 2 ) , and that of coaxial rotor 2 is T 2 = k f ( ω ¯ 3 2 + ω ¯ 4 2 ) . The reaction torque for the first rotor is τ c , 1 = k t ( ω ¯ 2 2 ω ¯ 1 2 ) , and for the second rotor is τ c , 2 = k t ( ω ¯ 3 2 ω ¯ 4 2 ) . However, directly solving for the rotation speeds ω ¯ 1 2 ω ¯ 4 2 and tilt angles α i , β i , ( i = 1 , 2 ) results in an underdetermined problem: six generalized forces versus eight unknown decision variables. This would yield an effectiveness matrix of size 6 × 8 , requiring solution via pseudo-inverse or numerical optimization such as constrained QP. Below, we present a simpler method based on experimental results for coaxial rotor thrust.
Referring to the experimental results on coaxial rotors by Itakura et al. [40], for a total thrust of T t o t a l = 10.6 N of the coaxial rotor, the thrust of the upstream propeller alone was T u p s t r e a m = 7.3 N, and that of the downstream propeller alone was T d o w n s t r e a m = 8.0 N. Therefore, the thrust efficiency is
η t h r u s t = T t o t a l T u p s t r e a m + T d o w n s t r e a m = 10.6 7.3 + 8.0 = 0.693 .
This serves as an indicator of deviation from theoretical ideal conditions. On the other hand, the interference efficiency, which is the increase rate of total thrust relative to the upstream propeller’s thrust, is
η i f = T t o t a l T u p s t r e a m 1 = 10.6 7.3 1 = 0.452 .
Introducing this interference efficiency allows for the substitution of ω ¯ 2 2 with η i f ω ¯ 1 2 and ω ¯ 4 2 with η i f ω ¯ 3 2 , thereby eliminating ω ¯ 2 2 and ω ¯ 4 2 from the unknown variables.
With this interference efficiency, the reaction torque τ c from Equation (37) becomes
τ c = ( η i f 1 ) k t C α 1 S β 1 ω ¯ 1 2 C α 2 S β 2 ω ¯ 3 2 S α 1 ω ¯ 1 2 + S α 2 ω ¯ 3 2 C α 1 C β 1 ω ¯ 1 2 C α 2 C β 2 ω ¯ 3 2 .
Meanwhile, the rotational torque due to thrust τ B from Equation (35) becomes
τ B = ( η i f + 1 ) k f ( l C α 1 C β 1 + h o S α 1 ) ω ¯ 1 2 ( l C α 2 C β 2 h o S α 2 ) ω ¯ 3 2 h o C α 1 S β 1 ω ¯ 1 2 + h o C α 2 S β 2 ω ¯ 3 2 l C α 1 S β 1 ω ¯ 1 2 + l C α 2 S β 2 ω ¯ 3 2 .
Similarly, the thrust T B from Equation (43) is rewritten as
T B = ( η i f + 1 ) k f C α 1 S β 1 ω ¯ 1 2 C α 2 S β 2 ω ¯ 3 2 S α 1 ω ¯ 1 2 + S α 2 ω ¯ 3 2 C α 1 C β 1 ω ¯ 1 2 C α 2 C β 2 ω ¯ 3 2 .
Therefore, by introducing an intermediate 6-dimensional vector n = [ n 1 a n 1 b n 1 c n 2 a n 2 b n 2 c ] T , defining Ω 1 ω ¯ 1 2 , Ω 2 ω ¯ 3 2 , and for i = 1 , 2 ,
n i a = Ω i C α i S β i n i b = Ω i S α i n i c = Ω i C α i C β i ,
the relation [ T B T ( τ B + τ c ) T ] T finally reduces to a linear equation:
T B τ B + τ c = A n ( Ω i , α i , β i ) .
Here, the effectiveness matrix A is
A = ( 1 + η i f ) k f 0 0 ( 1 + η i f ) k f 0 0 0 ( 1 + η i f ) k f 0 0 ( 1 + η i f ) k f 0 0 0 ( η i f + 1 ) k f 0 0 ( 1 + η i f ) k f ( η i f 1 ) k t ( 1 + η i f ) h o k f ( 1 + η i f ) l k f ( 1 η i f ) k t ( 1 + η i f ) h o k t ( 1 + η i f ) l k f ( 1 + η i f ) h o k f ( 1 η i f ) k t 0 ( 1 + η i f ) h o k f ( η i f 1 ) k t 0 ( 1 + η i f ) l k f 0 ( η i f 1 ) k t ( 1 + η i f ) k f 0 ( 1 η i f ) k t .
Figure 2. Control allocation process.
Figure 2. Control allocation process.
Sensors 26 02009 g002
To generate control inputs for the actual vehicle, the intermediate variable vector n is obtained using A 1 , and then the squared rotation speeds Ω 1 = ω ¯ 1 2 , Ω 2 = ω ¯ 3 2 and tilt angles ( α 1 , β 1 ) , ( α 2 , β 2 ) for each rotor are generated via the following relations:
Ω i = n i a 2 + n i b 2 + n i c 2 α i = arcsin ( n i b / Ω i ) β i = arctan ( n i a / n i c ) .
Figure 2 illustrates the sequential calculation flow for this control allocation problem.

6. Preliminary Simulation: Application to the Falling Body Model

In this section, we describe state estimation for the falling body model [41] as a preliminary experiment. The falling body model is often used as a nonlinear model and was also employed as a simulation model by Takeno and Katayama [20]. The purpose here is to verify the basic effectiveness of the proposed method by performing state estimation under conditions similar to previous studies. Since the RK method used by Takeno et al. is a 4th-order discretization method, this section focuses on the 4th-order AB method for comparison.

6.1. Model Overview (Falling Body)

The differential equations for the falling body model are as follows [41]:
x ˙ 1 = x 2 ,
x ˙ 2 = ρ 0 e x 1 / k ρ x 2 2 2 β g .
Here, x 1 is the altitude of the falling object, g is the gravitational acceleration, ρ 0 is the atmospheric density at sea level (0 m), k ρ is the decay coefficient, and β is the ballistic coefficient.
The extended state vector is defined as follows:
x = x 1 x 2 β = x 1 x 2 x 3 ( 3-dimensional state vector ) .
Letting f = [ f 1 f 2 f 3 ] T , the state–space model becomes
d x 1 d t f 1 = x 2 ,
d x 2 d t f 2 = ρ 0 2 x 3 e x 1 / k ρ x 2 2 g ,
d x 3 d t f 3 = 0 .
The observation equation is nonlinear and is assumed to be as follows:
y = M 1 2 + ( x 1 M 2 ) 2 + v .
Here, M 1 is the horizontal distance between the falling object and the radar, and M 2 is the radar altitude. Furthermore, v is the observation noise, assumed to be Gaussian white noise with zero mean and variance R.

6.2. Estimation Algorithms (Falling Body)

In this study, we compare three types of numerical integration methods integrated with the UKF: the Euler method, the RK method, and the AB method. Hereafter, the UKF using the Euler method is called “Euler-UKF”, that using the RK method “RK-UKF”, and that using the AB method “AB-UKF”.
The detailed derivation and specific equations for the sigma point time update of each method are presented in Appendix C. This section provides only an overview of each method.

6.2.1. Euler-UKF (Falling Body)

In Euler-UKF, the Euler method is applied to Equations (64)–(66). The Euler method has first-order accuracy and requires one function evaluation per update step. The specific sigma point time-update equations are given in Appendix C.1.

6.2.2. RK-UKF (Falling Body)

In RK-UKF, the 4th-order RK method (hereafter denoted as RK4) is applied to Equations (64)–(66) [20]. The RK4 method has fourth-order accuracy and requires four function evaluations per update step. The specific sigma point time-update equations are given in Appendix C.2.

6.2.3. AB-UKF (Falling Body)

In AB-UKF, the 4th-order AB method (hereafter denoted as AB4) is applied to Equations (64)–(66). The AB4 method achieves fourth-order accuracy while requiring only one function evaluation per update step. Instead, it stores and utilizes the function evaluation results for past sigma point matrices, F c ( X k 1 ) , F c ( X k 2 ) , and F c ( X k 3 ) . The specific sigma point time-update equations are given in Appendix C.3.

6.3. Estimation Conditions (Falling Body)

State estimation simulations are performed using the three methods described above. The physical parameters are as follows: g = 9.8 [m/s2], ρ 0 = 2.202 [kg·s2/m4], k ρ = 1000 / 0.1558 [m]. The true ballistic coefficient is β = 2000 [kg/m2]. The horizontal distance between the falling object and the radar is M 1 = 10,000 [m], and the radar altitude is M 2 = 0 [m]. The step size is h = 0.1 [s], the total number of sampling points is N = 300 , and the UT parameter is λ = 2.0 . The initial state vector, system noise covariance, and observation noise covariance are as follows [20]:
x 1 ( 0 ) x 2 ( 0 ) x 3 ( 0 ) = 40000 m 3000 m / s 2000 kg / m 2 ,
Q = diag ( 0 , 0 , 10 kg 2 / m 4 ) ,
R = 3600 m 2 .
The initial state estimate and its covariance matrix are as follows:
x ^ ( 0 | 0 ) = 42000 m 3100 m / s 3000 kg / m 2 ,
P ( 0 | 0 ) = diag ( 10000 m 2 , 10000 m 2 / s 2 , 10000 kg 2 / m 4 ) .

6.4. Simulation Results

6.4.1. State Estimation Accuracy

Figure 3a shows the estimation results for the ballistic coefficient β , and Figure 3b shows the time evolution of the state estimation error. The state estimation error was calculated using the following RMSE (Root Mean Squared Error) formula:
E ( t k ) = i = 1 2 ( x i ( t k ) x ^ i ( t k | t k ) ) 2 .
The results are averages from 100 simulation runs for each method.
Figure 3a shows that the parameter β converges well for all three methods: Euler-UKF, RK-UKF, and AB-UKF. On the other hand, Figure 3b indicates that after the convergence of β , the state estimation error is suppressed more effectively in the order of Euler-UKF, RK-UKF, and AB-UKF.
Table 1 presents the average RMSE values of the state estimation error obtained from 100 simulation runs for each of the three methods. The computations were performed on a laptop with 16 GB RAM, an AMD Ryzen7 4800H with Radeon Graphics CPU, running Windows 10 and MATLAB 2022a.
As shown in Table 1, the Euler method exhibits the largest RMSE, while the RK and AB methods show smaller RMSE values than the Euler method. This result is attributed to the difference in discretization order: the Euler method has first-order accuracy, whereas the RK and AB methods have fourth-order accuracy.

6.4.2. Computation Time

To more clearly demonstrate the differences between the methods, the estimation conditions from Section 6.3 were modified: h = 0.01 and the total number of sampling points N = 5000 . Table 2 shows the comparison results for the total computation time of the entire UKF algorithm (from Equations (A3) to (A18)) and the computation time for the prediction step only (Equation (A9)).
Table 2 shows that the computation time is shortest for the Euler method, followed by the AB method, and then the RK method. The particularly short prediction time of the Euler method stems from the difference in discretization order.

6.5. Discussion

The results presented in Section 6.4 can be attributed to the following two factors.
  • Small number of state variables: The falling body model has three state variables, with x 3 representing a parameter estimation problem. Consequently, as is evident from the sigma point time-update equations, the discretization formulas are actually applied only to the state variables x 1 and x 2 , making this a model where differences between the RK and AB methods are less likely to manifest.
  • Small proportion of UT within the overall UKF algorithm: The falling body model has a relatively small number of state variables and simple discretization equations, making it difficult for differences in computational load to become pronounced. As a result, the time spent on UT constitutes a small proportion of the overall UKF estimation algorithm, and the differences in computation time due to the discretization method are less noticeable.
Considering the above two points, the next section, Section 7, addresses a state estimation problem for a UAV model, which is higher dimensional than the falling body model.

7. Application to the Osprey-Type Drone

7.1. Model Overview (Drone)

The UAV vehicle conditions are based on the Osprey-type drone with 2-DOF tiltable coaxial rotors by Itakura et al. [40]. The vehicle’s general appearance and the derivation of its dynamic model have already been detailed in Section 4.
The vehicle’s position in the world coordinate system, ξ = [ x y z ] T , follows the translational motion equation expressed by Equations (44) or (45).
On the other hand, the vehicle’s angular acceleration ω ˙ B = [ p ˙ q ˙ r ˙ ] T is given by Equations (40) or (41). Assuming the Euler angle variations are relatively small, i.e., W η I , then p ϕ ˙ , q θ ˙ , r ψ ˙ . Therefore, Equation (41) can be rewritten as
ϕ ¨ θ ¨ ψ ¨ = 1 I B x x ( τ x B + τ x c ) + θ ˙ ψ ˙ I B y y I B z z I B x x 1 I B y y ( τ y B + τ y c ) + ϕ ˙ ψ ˙ I B z z I B x x I B y y 1 I B z z ( τ z B + τ z c ) + ϕ ˙ θ ˙ I B x x I B y y I B z z .
Now, defining a 12-dimensional state vector as x = [ x x ˙ y y ˙ z z ˙ ϕ ϕ ˙ θ θ ˙ ψ ψ ˙ ] T = [ x 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 x 9 x 10 x 11 x 12 ] T , the continuous-time state equation for the UAV model can be derived from Equations (45) and (74) as follows:
d d t x 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 x 9 x 10 x 11 x 12 = x 2 A 1 ( x ) T x + A 2 ( x ) T y + A 3 ( x ) T z x 4 A 4 ( x ) T x + A 5 ( x ) T y + A 6 ( x ) T z x 6 A 7 ( x ) T x + A 8 ( x ) T y + A 9 ( x ) T z + g x 8 1 I B x x ( τ x B + τ x c ) + x 10 x 12 I B y y I B z z I B x x x 10 1 I B y y ( τ y B + τ y c ) + x 8 x 12 I B z z I B x x I B y y x 12 1 I B z z ( τ z B + τ z c ) + x 8 x 10 I B x x I B y y I B z z .
Here, A 1 ( x ) , A 2 ( x ) , , A 9 ( x ) in Equation (75) are defined as follows:
A 1 ( x ) = C x 9 C x 11 / m A 2 ( x ) = ( S x 7 S x 9 C x 11 C x 7 S x 11 ) / m A 3 ( x ) = ( C x 7 S x 9 C x 11 + S x 7 S x 11 ) / m A 4 ( x ) = C x 9 S x 11 / m A 5 ( x ) = ( S x 7 S x 9 S x 11 + C x 7 C x 11 ) / m A 6 ( x ) = ( C x 7 S x 9 C x 11 S x 7 C x 11 ) / m A 7 ( x ) = S x 9 / m A 8 ( x ) = S x 7 C x 9 / m A 9 ( x ) = C x 7 C x 9 / m .

7.2. Estimation Algorithms (Drone)

Similar to the falling body model, we compare three types of numerical integration methods integrated with the UKF for the UAV model: the Euler method, the RK method, and the AB method. The detailed derivation and specific equations for the sigma point time update of each method are presented in Appendix D. This section provides only an overview of each method.

7.2.1. Euler-UKF (Drone)

In Euler-UKF, the Euler method is applied to Equation (75). The Euler method has first-order accuracy and requires one function evaluation per update step. The specific sigma point time-update equations are given in Appendix D.1.

7.2.2. RK-UKF (Drone)

In RK-UKF, the RK4 method is applied to Equation (75). The RK4 method has fourth-order accuracy and requires four function evaluations per update step. The specific sigma point time-update equations are given in Appendix D.2.

7.2.3. AB-UKF (Drone)

In AB-UKF, the AB method is applied to Equation (75). Regardless of its order, the AB method requires only one function evaluation per update step and stores and utilizes the function evaluation results for past sigma point matrices. The specific forms of the sigma point time-update equations corresponding to the 2nd to 6th order AB methods are given in Appendix D.3.

7.3. Estimation Conditions (Drone)

This section describes the UAV physical parameters and the covariance of system and observation noise used in the estimation simulation.

7.3.1. Parameter Settings for the UAV Model

Similar to the falling body model, state estimation simulations are performed using the three methods described above. Table 3 summarizes the definitions and values of each parameter.
All initial states are set to x ( 0 ) = [ 0 0 ] T , and the initial estimation information is set to x ^ ( 0 | 0 ) = [ 0 0 ] T and P ( 0 | 0 ) = diag ( 1 , , 1 ) .

7.3.2. Determination of System Noise

In this simulation experiment, the system noise is set based on the global truncation error arising from discretization by the Euler, RK, and AB methods. When the step size is denoted by h, the global truncation error for the Euler method is proportional to h 1 , and for the RK4 and AB4 methods, it is proportional to h 4 . Therefore, letting the variance values of the respective system noises be Q E u l e r and Q R K , A B 4 , they can be expressed as
Q E u l e r = h × I 12 × 12 ,
Q R K , A B 4 = h 4 × I 12 × 12 .
Thus, for comparison purposes in this simulation experiment, the value Q is set as follows:
Q = h 5 / 2 × I 12 × 12 .
Here, the exponent 5 / 2 signifies taking an intermediate order of magnitude between Q E u l e r and Q R K , A B 4 .

7.3.3. Determination of Observation Noise

Typically, UAVs are equipped with GPS sensors for position observation and gyro sensors for attitude observation. Determining a precise noise value for GPS sensor error is difficult due to various influencing factors; thus, for simplicity, the noise value is set to 2 m here. For the gyro sensor, we assume the use of the MPU-9250, a 9-axis sensor module from InvenSense.
The MPU-9250 datasheet states a gyro sensor noise value of 0.01 [deg/ Hz ]. Using this noise value and the step size h [s], the observation noise variance R 1 [rad2] for attitude angles ϕ , θ , ψ and R 2 [rad2/s2] for attitude angular velocities ϕ ˙ , θ ˙ , ψ ˙ are determined.
First, convert the dimension 0.01 [deg/ Hz ] to [rad/ Hz ] to obtain
1.0 × 10 2 π 180 [ rad / Hz ] .
Squaring the value obtained in Equation (80) yields
1.0 × 10 4 π 180 2 [ rad 2 / Hz ] .
Here, the dimension [Hz] can also be expressed as [1/s]; thus, the dimension [rad2/Hz] can also be expressed as [rad2·s]. Therefore, the observation noise variance R 1 [rad2] for attitude angles ϕ , θ , ψ is obtained by dividing Equation (81) by h [s]:
R 1 = 1.0 × 10 4 π 180 2 / h [ rad 2 ] .
Then, the observation noise variance R 2 [rad2/s2] for attitude angular velocities ϕ ˙ , θ ˙ , ψ ˙ is obtained by dividing Equation (82) by h 2 [s]:
R 2 = 1.0 × 10 4 π 180 2 / h 3 [ rad 2 / s 2 ] .
Consequently, the observation equation is
y ( t k ) = H x ( t k ) + v ( t k ) ,
H = H p o s 0 0 I 6 × 6
where H p o s is the observation matrix for position ( x , y , z ) :
H p o s = 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 .
The covariance R of the observation noise v ( t k ) is represented by the following diagonal matrix:
R = diag ( 2 , 2 , 2 , R 1 , R 2 , R 1 , R 2 , R 1 , R 2 ) .

Remark

The observation setting used in this paper is linear (direct observation of position and attitude angles), and the advantages of nonlinear filtering are not fully utilized. In actual UAV navigation, nonlinear observations such as radar observations in GPS-denied environments are common. While the main focus of this paper is the analysis of the impact of state equation complexity on computational efficiency, and the linearity of observations is not an essential problem, extension to nonlinear observations is an important future task.

7.4. Target Trajectory

The simulation starts from the initial position [ x y z ] = [ 0 0 0 ] T and initial attitude angles [ ϕ θ ψ ] = [ 0 0 0 ] T . First, over 10 s from the start time, the vehicle moves to the target position [ x d y d z d ] = [ 0 0 1 ] T , while all target attitude angles remain zero. Subsequently, from 10 s to 70 s, the vehicle is commanded to follow the target position, velocity, and acceleration given below [42].
Target position X d :
X d = x d ( t ) y d ( t ) z d ( t ) ϕ d ( t ) θ d ( t ) ψ d ( t ) = sin π 10 ( t 10 ) cos π 4 1 + cos π 10 ( t 10 ) 1 + sin π 4 1 + cos π 10 ( t 10 ) π 4 sin π 40 ( t 10 ) π 4 sin π 40 ( t 10 ) 0 .
Target velocity X ˙ d :
X ˙ d = x ˙ d ( t ) y ˙ d ( t ) z ˙ d ( t ) ϕ ˙ d ( t ) θ ˙ d ( t ) ψ ˙ d ( t ) = π 10 cos π 10 ( t 10 ) π 10 cos π 4 sin π 10 ( t 10 ) π 10 sin π 4 sin π 10 ( t 10 ) π 2 160 cos π 40 ( t 10 ) π 2 160 cos π 40 ( t 10 ) 0 .
Target acceleration X ¨ d :
X ¨ d = x ¨ d ( t ) y ¨ d ( t ) z ¨ d ( t ) ϕ ¨ d ( t ) θ ¨ d ( t ) ψ ¨ d ( t ) = π 2 100 sin π 10 ( t 10 ) π 2 100 cos π 4 cos π 10 ( t 10 ) π 2 100 sin π 4 cos π 10 ( t 10 ) π 3 6400 sin π 40 ( t 10 ) π 3 6400 sin π 40 ( t 10 ) 0 .
This target trajectory is a circular path with a radius of 1 m and center ( x , y ) = ( 0 , 1 ) in the x y -plane, rotated 45 deg about the x-axis, and translated −1 m along the z-axis. Since this vehicle is left-right symmetric, independent control in three degrees of freedom (x, y, z directions) can be verified by following this circular path. The vehicle follows this trajectory with a period of 20 s per revolution. Simultaneously, the target roll angle changes every revolution: from 0 deg to 45 deg, 45 deg to 0 deg, and 0 deg to −45 deg. The target pitch angle changes every revolution: from 0 deg to −45 deg, −45 deg to 0 deg, and 0 deg to 45 deg. The target yaw angle is always 0 deg. Following this trajectory verifies the possibility of independent control in all six degrees of freedom.

7.5. Description of Comparative Experiments

This comparative experiment focuses on two aspects of the UKF based on each discretization method: “estimation accuracy” and “computational efficiency.” Details of the comparison methods are described below. Comparisons are performed in two patterns: “comparison of three methods: Euler, RK4, and AB4” and “comparison of 2nd to 6th-order AB methods.” The results of this comparative experiment are averages from 50 Monte Carlo simulations.

7.5.1. Estimation Accuracy Comparison Experiment

The estimation accuracy comparison is performed by calculating the RMSE values between the estimates from each discretization-based UKF and the true values.
The RMSE value at estimation time k ( k = 1 , , N ) is calculated using the following equations:
MSE x ( k ) = 1 k i = 1 k x ( t i ) x ^ ( t i | t i ) 2 ,
RMSE x ( k ) = MSE x ( k )
where x ( t i ) and x ^ ( t i | t i ) represent the true value and the estimate of position x at time i, respectively. Here, N is the total number of sampling points, determined from the simulation time of 70 s and the discretization period h [s] as N = 70 / h . For example, if h = 0.01 [s], then N = 7000 . Equations (91) and (92) are similarly applied to other variables: positions y , z , velocities x ˙ , y ˙ , z ˙ , attitude angles ϕ , θ , ψ , and attitude angular velocities ϕ ˙ , θ ˙ , ψ ˙ .
Furthermore, when comparing estimation accuracy under different discretization periods ( h = 0.01 , 0.02 , , 0.1 ), the sum of the individual RMSE values RMSE x ( N ) , RMSE y ( N ) , , RMSE ψ ˙ ( N ) for the 12 state variables at the final discrete time k = N is denoted as RMSE ( N ) , and this value is used for comparison.
Here, we discuss the theoretical meaning of RMSE ( N ) . In the UAV model, when the a priori error covariance matrix P ( t k | t k ) at time t k is expressed as
P ( t k | t k ) = p 1 , 1 p 1 , 2 p 1 , 12 p 2 , 1 p 2 , 2 p 2 , 12 p 12 , 1 p 12 , 2 p 12 , 12 ,
the trace of this error covariance matrix is denoted as tr ( P ( t k | t k ) ) . The aforementioned RMSE ( N ) is the sum of RMSE values based on actual sampled estimates, averaged over time up to k = N and averaged over the ensemble of 50 simulation results. Therefore, while transient values differ from the actual tr ( P ( t k | t k ) ) , they can be treated as equivalent values in the steady state.

7.5.2. Computational Efficiency Comparison Experiment

The computational efficiency comparison experiment measures and compares computation times at the following three points:
  • Measurement Time I: Computation time for sigma point time update (computation of Equation (A9)).
  • Measurement Time II: Computation time for the entire UKF algorithm (computation from Equations (A3) to (A18)).
  • Measurement Time III: Total computation time of the state estimation program for the UAV model.
Figure 4 shows the overall diagram of the state estimation program for the UAV model and the locations of “Measurement Time I”, “Measurement Time II”, and “Measurement Time III”.
The controller design for generating generalized forces follows the computed torque method described in Section 5. The target trajectory involves a circular path from 10 s to 70 s, with yaw angle always at 0 deg, and roll and pitch angles changing to specified angles each revolution. However, the control inputs are first transformed from the generalized forces (thrust and torque for the motion system) provided by the computed torque method into actuator commands (rotor speeds and tilt angles) via the control allocation law. These are then multiplied by the propeller thrust coefficient k f and torque coefficient k t to reproduce the thrust and torque (including reaction torque) from the actuators, which are applied as inputs to the plant.
Below, we detail the data collection methods for Measurement Times I, II, and III.
  • Measurement Time I: Since one simulation yields N measurement data points due to the total number of sampling points N, the average of all these is taken to calculate the average computation time per loop. However, due to the nature of the AB method, the average is taken over N 1 data points for 2nd order, N 2 for 3rd order, N 3 for 4th order, N 4 for 5th order, and N 5 for 6th order.
  • Measurement Time II: Similar to Measurement Time I, the average computation time per loop is calculated, and the total computation time for N loops is also calculated.
  • Measurement Time III: This is the total program computation time, so one simulation yields a single measurement data point.
Using these measurement methods, 50 simulations are repeatedly executed, and their average computation times are calculated for each case.

Remark

The purpose of this study’s computational efficiency evaluation is to compare algorithm-specific computational loads using the MATLAB environment. The validity of this approach is based on the following points:
  • Elimination of Hardware Dependence: MATLAB simulations eliminate hardware-dependent factors such as CPU architecture, memory bandwidth, and cache size, enabling a pure evaluation of the relative computational load differences between the proposed numerical integration method (the AB method) and the conventional method (the RK method).
  • Indicator of Computational Amount: In an onboard environment (flight control computer), the sampling frequency is high and computing resources are limited, making it important to reduce the number of floating-point operations and execution time to achieve the same accuracy. The reduction in computation time measured in MATLAB serves as a basic indicator of the effectiveness of processing speed improvement on an actual aircraft.
However, final verification requires implementation on an actual autopilot (e.g., Pixhawk) and benchmarking, which is considered a future challenge. This simulation demonstrates the theoretical and algorithmic advantages prior to actual implementation.

7.6. Results and Discussion of Estimation Accuracy

7.6.1. Comparison of Three Methods in Estimation Accuracy: Euler, RK4, and AB4

First, to show the estimates for the UAV model and to verify whether the UKF based on the multi-step AB method can perform estimation as stably as the single-step Euler and RK methods, Figure 5 shows the time evolution of state estimates by UKF based on the three methods for h = 0.01 .
As seen from Figure 5, the UKF estimates based on the AB method converge stably and achieve high-precision estimation. Also, no significant deviation from the RK method estimates is observed.
Next, Figure 6 shows the time evolution of the RMSE values for the state estimates by UKF based on the three methods for h = 0.01 , over the 70 s simulation period. From Figure 6, under the condition h = 0.01 , although the RMSE differences among the methods are very small for all state variables, relatively larger differences are observed in the RMSE values for positions x , y , attitude angles ϕ , θ , ψ , and attitude angular velocities ϕ ˙ , θ ˙ , ψ ˙ . Also, for all 12 state variables, the time variation of RMSE values becomes smaller after around 50 s of simulation time.
In addition, estimation accuracy is compared under different discretization periods: h = 0.01 , 0.02 , , 0.1 . Figure 7 shows the change in RMSE ( N ) with varying discretization period h. Figure 7 shows that as the discretization period h increases, the differences among the methods become larger, and ultimately the RMSE ( N ) value for the RK method is the smallest. Furthermore, for the AB4 method, estimation values could not be obtained (diverged) for h values greater than or equal 0.08. Details regarding this are discussed later.
The specific values for each point in Figure 7 are shown in Table 4. The “N/A” in Table 4 indicates that estimation values could not be obtained due to divergence.

7.6.2. RMSE Comparison of AB Methods with Different Orders of Accuracy

The estimation values are omitted, as their differences from Figure 6 were very small. Figure 8 shows the time evolution of the RMSE values for UKF estimates based on the second- to sixth-order AB methods for h = 0.01 . From Figure 8, under the condition h = 0.01 , all AB methods from the second to sixth order converge to values comparable to the RMSE values for UKF estimates based on the Euler and RK methods shown in Figure 6, without significant deviation.
Next, estimation accuracy is compared under different discretization periods: h = 0.01 , 0.02 , , 0.1 . Figure 9 shows the change in RMSE ( N ) with varying discretization period h. Similar to Figure 7, Figure 9 shows that as the discretization period h increases, the differences among the methods become larger. Also, the sixth-order AB method diverged for h greater than or equal 0.03; the fifth-order, for h greater than or equal 0.05; and the fourth-order, for h greater than or equal 0.08, preventing estimation value acquisition.
The specific values for each point in Figure 9 are shown in Table 5. Additionally, for the 2nd and 3rd-order AB methods, further verification confirmed that they similarly diverge for values greater than or equal h = 0.25 and h = 0.15 , respectively. Based on these results and additional experiments, the maximum step sizes at which each order can perform stable estimation without divergence are summarized as follows:
  • 2nd-order AB method: Stable up to h = 0.24 (verified by additional experiments up to h = 0.24 ). Divergence occurs at h 0.25 .
  • 3rd-order AB method: Stable up to h = 0.14 . Divergence occurs at h 0.15 .
  • 4th-order AB method: Stable up to h = 0.07 . Divergence occurs at h 0.08 .
  • 5th-order AB method: Stable up to h = 0.04 . Divergence occurs at h 0.05 .
  • 6th-order AB method: Stable up to h = 0.02 . Divergence occurs at h 0.03 .
These experimentally obtained stability limits are consistent with the theoretical property of linear multi-step methods that the absolute stability region shrinks as the order increases [36,37].
In practical applications, the choice of step size involves a trade-off between estimation accuracy and computational efficiency. A larger step size reduces computational load but may degrade accuracy or cause divergence, while a smaller step size improves stability and accuracy at the cost of increased computation time. Users should select the step size based on the specific requirements of their application, referring to the experimentally verified stability limits above as a guideline for the maximum allowable step size.

7.6.3. Comparative Analysis: RK Method vs. AB Method

Comparing the results in Table 4 (re-entry vehicle problem) and Table 5 (UAV problem) reveals the following:
  • Accuracy Difference Between the RK and AB Methods: At the same step size (e.g., h = 0.01 ), the RMSE of the RK4-UKF (UAV: 0.47646) is nearly identical to the RMSE of the AB4-UKF (UAV: 0.47304), indicating no significant difference in accuracy between the two. This indicates that the RK method achieves high-order accuracy through multiple evaluations within a single step, while the AB method achieves similar accuracy with fewer function evaluations by utilizing past information.
  • Relationship between Order and Stability: For both problems, the higher the order of the AB algorithm, the smaller the upper limit of the step size for stable estimation. This is due to the theoretical property of numerical analysis that the absolute stability region shrinks as the order of the linear multi-step algorithm increases.
  • Problem Complexity and Computational Efficiency: For the simple 3D reentry vehicle problem (Table 2), the computational time of the AB4-based UKF increased by approximately 2.9% compared to the Euler-based UKF, while for the complex 12D UAV model (Table 6), it was reduced by approximately 5.1%. This reversal phenomenon is thought to be due to the characteristics of matrix operations in high-dimensional models (regularity of memory access patterns, cache efficiency).
These results indicate a trade-off between computational efficiency and numerical stability. When applying this method to real problems, it is necessary to select an appropriate order based on the required estimation accuracy and acceptable step size.

7.7. Results and Discussion of Computational Efficiency

7.7.1. Comparison of Three Methods in Computational Efficiency: Euler, RK4, and AB4

Table 6 shows the computation times for Time I, Time II, and Time III for the three methods (Euler, RK4, and AB4) with step size h = 0.01 . From Table 6, the reduction rate in computation time for the 4th-order AB method is 12.3% compared to Euler and 41.1% compared to RK for Time I; 7.1% compared to Euler and 29.9% compared to RK4 for Time II; and 5.1% compared to Euler and 20.9% compared to RK4 for Time III.
Next, Figure 10 shows the change in computation time with varying discretization period h. Figure 10 shows that as h becomes smaller, the difference between the two methods increases. This is considered to be due to the influence of the increasing number of program loops as the total number of sampling points N becomes larger for smaller h.

7.7.2. Computational Time Comparison of AB Methods with Different Orders of Accuracy

Next, computation times for Time I, Time II, and Time III are compared under the same conditions for AB methods from 2nd to 6th order for h = 0.01 , not just the AB4 method. The result is given in Table 7. The computational difference among AB methods from 2nd to 6th order lies only in the number of past sigma point matrices used as “previous information”. Therefore, the differences among methods are smaller than the results shown in Table 6.
Next, Figure 11 shows the change in computation time with varying discretization period h. From Figure 11, unlike the comparison between RK and AB methods, almost no difference is seen among the methods. The reason for this result is considered to be that the difference in computational load due to the order of the AB method stems only from the difference in the number of sigma point matrices handled, and the number of derivative calculations per step is the same for any order. Also, from this result, it can be understood that while estimation with the AB method diverges if the step size is too large, it does not diverge under conditions with h values smaller than 0.01, allowing estimation with higher-order accuracy and shorter computation time compared to the RK method under those conditions.

8. Conclusions

This paper proposed a UKF that newly integrates the Adams–Bashforth method into the sigma point time-update equation of the UKF (AB-UKF) as an alternative to the Runge–Kutta method. The proposed method maintains estimation accuracy comparable to the RK-UKF proposed by Takeno and Katayama [20] while enabling estimation with more efficient computation time.
The main findings obtained from the numerical simulation results are summarized below.
  • Maintenance of estimation accuracy: For both models, AB-UKF achieved estimation accuracy comparable to RK-UKF. For the UAV model ( h = 0.01 ), no significant difference was observed between the RMSE of AB4-UKF (0.47304) and that of RK4-UKF (0.47646).
  • Comparison of computational efficiency: Comparison of total computation time relative to the Euler-based UKF confirmed the effectiveness of the proposed method.
    For the simple three-dimensional reentry vehicle problem (Table 2), the computation time of AB4-based UKF was approximately 2.9% longer than Euler-based UKF (slower than Euler), whereas RK4-based UKF was approximately 9.4% longer.
    For the complex 12-dimensional UAV model (Table 6), the computation time of AB4-based UKF was approximately 5.1% shorter than Euler-based UKF (faster than Euler). In contrast, RK4-based UKF exhibited a more pronounced slowdown, with an approximately 20.0% increase.
    These results demonstrate that the computational time reduction effect achieved by the proposed AB method integration becomes more pronounced for models with more complex state equations and higher dimensions.
  • Relationship between order and stability: Verification using the UAV model quantitatively showed that higher-order AB methods have a smaller upper limit on the step size that allows stable estimation. The maximum stable step sizes for each order are: AB2: h 0.24 , AB3: h 0.14 , AB4: h 0.07 , AB5: h 0.04 , and AB6: h 0.02 . Divergence occurs at step sizes exceeding these limits.
These results indicate that high-precision numerical integration methods are not necessarily superior in terms of computational efficiency; the RK4-based UKF was consistently slower than the Euler-based UKF in both problems (reentry problem: +9.4%, UAV problem: +20.0%). The proposed AB-UKF is an effective option for improving computational efficiency while maintaining estimation accuracy, particularly for high-dimensional models.

8.1. Limitations of This Study

This study has the following limitations:
  • Linearity of observations: The observations in the UAV model are linear (direct observation of position and attitude angles), and the advantages of nonlinear filtering are not fully utilized. In actual UAV navigation, nonlinear observations such as radar observations in GPS-denied environments are common.
  • Simulation environment: The evaluation of computational efficiency is based on MATLAB simulations and has not been verified for real-time operation on actual hardware (flight control computers).
  • Application to specific models: The effectiveness of this method has been verified on two models (the falling body model and the UAV model), but additional verification is required for generalization to other nonlinear systems.

8.2. Future Work

Based on the above limitations, future work includes the following:
  • Extension to nonlinear observations: Verify the effectiveness of the proposed method under nonlinear observations using only range and azimuth. Specifically, we will tackle the problem of estimating a 12-dimensional state vector using only range and azimuth information from one or two radars, and verify whether AB-UKF can maintain its advantage in terms of computational efficiency even under nonlinear observations.
  • Reduction of the number of sigma points: While the standard UKF uses ( 2 n + 1 ) sigma points, the number can be reduced to n + 2 or n + 1 by using the Spherical Simplex Unscented Transformation [15,43,44,45] or the Simplex Unscented Transformation [46]. Combining these methods with the AB method is expected to further improve computational efficiency.
  • Implementation on actual hardware: Implement the proposed algorithm on a microcontroller (e.g., Pixhawk) for the UAV model used in this simulation, and verify the degree of improvement in estimation accuracy and computational efficiency in actual flight environments.
  • Adaptive step size control: Integrate the adaptive step size control based on the degree of nonlinearity proposed by Wang et al. [25] into AB-UKF to further optimize estimation accuracy and computational efficiency.
The proposed method provides a new option for the trade-off between computational efficiency and estimation accuracy in state estimation for high-dimensional nonlinear systems, and its future development is expected to lead to applications in practical UAV navigation systems.

Author Contributions

Conceptualization, K.W.; methodology, K.W.; software, S.T.; validation, S.T.; formal analysis, S.T.; investigation, S.T.; data curation, S.T.; writing—original draft preparation, S.T.; writing—review and editing, K.W.; visualization, K.W.; supervision, K.W.; project administration, K.W.; resources and technical support, I.N. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Data Availability Statement

The data presented in this study are available on request from the corresponding author.

Conflicts of Interest

The authors declare no conflict of interest.

Appendix A. Unscented Kalman Filter Algorithm

This appendix presents the detailed computational procedure of the UKF algorithm outlined in Section 2.

Appendix A.1. Problem Formulation

Consider the following discrete-time state–space model:
x k + 1 = f ( x k , u k ) + w k ,
y k = h ( x k ) + v k
where x k R n is the state vector, u k R m is the input vector, and y k R p is the output vector. w k R n and v k R p are Gaussian white noises with zero mean and covariance matrices Q and R, respectively.

Appendix A.2. UKF Algorithm

Given the initial estimate x ^ 0 | 0 and initial covariance matrix P 0 | 0 , the following procedure is executed at each time step k = 0 , 1 , .

Appendix A.2.1. Prediction Step

Step 1: Generation of sigma points
X 0 , k | k = x ^ k | k ,
X i , k | k = x ^ k | k + ( n + λ ) P k | k i , i = 1 , , n ,
X i + n , k | k = x ^ k | k ( n + λ ) P k | k i , i = 1 , , n .
Here, ( n + λ ) P k | k i denotes the i-th column of the matrix square root of ( n + λ ) P k | k . λ = α 2 ( n + κ ) n is a scaling parameter, where α determines the spread of the sigma points (typically 10 4 α 1 ), and κ is a secondary scaling parameter (typically 0 or 3 n ).
The corresponding weights are as follows:
W 0 ( m ) = λ n + λ ,
W 0 ( c ) = λ n + λ + ( 1 α 2 + β ) ,
W i ( m ) = W i ( c ) = 1 2 ( n + λ ) , i = 1 , , 2 n
where β is a parameter used to incorporate prior knowledge of the distribution; for Gaussian distributions, β = 2 is optimal.
Step 2: Time update of sigma points
X i , k + 1 | k = f ( X i , k | k , u k ) , i = 0 , , 2 n .
Step 3: Computation of predicted state and predicted covariance
x ^ k + 1 | k = i = 0 2 n W i ( m ) X i , k + 1 | k ,
P k + 1 | k = i = 0 2 n W i ( c ) X i , k + 1 | k x ^ k + 1 | k X i , k + 1 | k x ^ k + 1 | k T + Q .

Appendix A.2.2. Update Step

Step 4: Generation of output sigma points
Y i , k + 1 | k = h ( X i , k + 1 | k ) , i = 0 , , 2 n .
Step 5: Computation of predicted output
y ^ k + 1 | k = i = 0 2 n W i ( m ) Y i , k + 1 | k .
Step 6: Computation of output covariance and cross-covariance
P y y = i = 0 2 n W i ( c ) Y i , k + 1 | k y ^ k + 1 | k Y i , k + 1 | k y ^ k + 1 | k T + R ,
P x y = i = 0 2 n W i ( c ) X i , k + 1 | k x ^ k + 1 | k Y i , k + 1 | k y ^ k + 1 | k T .
Step 7: Computation of Kalman gain
K k + 1 = P x y P y y 1 .
Step 8: Update of state estimate and covariance matrix
x ^ k + 1 | k + 1 = x ^ k + 1 | k + K k + 1 y k + 1 y ^ k + 1 | k ,
P k + 1 | k + 1 = P k + 1 | k K k + 1 P y y K k + 1 T .
The above constitutes the standard algorithm for the DD-UKF. In this study, we apply the Adams–Bashforth method described in Section 3 to the time update f in Equation (A9).

Appendix B. Details of the Runge–Kutta Method

This appendix provides the detailed derivation and specific equations for the integration of the Runge–Kutta method with the UT described in Section 3.2.

Appendix B.1. General Form of the 4th-Order Runge–Kutta Method

The numerical integration of the ordinary differential equation x ˙ = f c ( x ) using the 4th-order Runge–Kutta method is given by the following formulas:
k 1 = f c ( x k ) ,
k 2 = f c x k + h 2 k 1 ,
k 3 = f c x k + h 2 k 2 ,
k 4 = f c x k + h k 3 ,
x k + 1 = x k + h 6 ( k 1 + 2 k 2 + 2 k 3 + k 4 ) .

Appendix B.2. Extension to the Sigma Point Matrix

When applying the 4th-order RK method to the UKF sigma point matrix X k (Equation (7)), the following coefficients are defined for each sigma point j and each state variable i:
a 1 , i j = f i X 1 , j , k , , X n , j , k , t k ,
a 2 , i j = f i X 1 , j , k + h 2 a 1 , 1 j , , X n , j , k + h 2 a 1 , n j , t k + h 2 ,
a 3 , i j = f i X 1 , j , k + h 2 a 2 , 1 j , , X n , j , k + h 2 a 2 , n j , t k + h 2 ,
a 4 , i j = f i X 1 , j , k + h a 3 , 1 j , , X n , j , k + h a 3 , n j , t k + h .
Using these coefficients, the time-update equation for the sigma points is expressed as follows:
X i , j , k + 1 = X i , j , k + h 6 a 1 , i j + 2 a 2 , i j + 2 a 3 , i j + a 4 , i j
where i = 1 , , n and j = 1 , , 2 n + 1 . Equation (A28) corresponds to Equation (8) in the main text.

Appendix C. Details of Time-Update Equations for the Falling Body Model

This appendix presents the specific sigma point time-update equations for each method outlined in Section 6.2.

Appendix C.1. Time-Update Equations for Euler-UKF (Falling Body)

Applying the Euler method to Equations (64)–(66) yields the following sigma point time-update equations:
X 1 , j , k + 1 = X 1 , j , k + h X 2 , j , k ,
X 2 , j , k + 1 = X 2 , j , k + h ρ 0 2 X 3 , j , k e X 1 , j , k / k ρ X 2 , j , k 2 g ,
X 3 , j , k + 1 = X 3 , j , k ,
where j = 1 , , 7 .

Appendix C.2. Time-Update Equations for RK-UKF (Falling Body)

To apply the 4th-order Runge–Kutta method to Equations (64)–(66), the following coefficients are defined [20]:
c 1 = X 2 , j , k ,
q 1 = ρ 0 2 X 3 , j , k e X 1 , j , k / k ρ X 2 , j , k 2 g ,
c 2 = X 2 , j , k + h 2 q 1 ,
q 2 = ρ 0 2 X 3 , j , k e ( X 1 , j , k + h c 1 / 2 ) / k ρ X 2 , j , k + h 2 q 1 2 g ,
c 3 = X 2 , j , k + h 2 q 2 ,
q 3 = ρ 0 2 X 3 , j , k e ( X 1 , j , k + h c 2 / 2 ) / k ρ X 2 , j , k + h 2 q 2 2 g ,
c 4 = X 2 , j , k + h q 3 ,
q 4 = ρ 0 2 X 3 , j , k e ( X 1 , j , k + h c 3 / 2 ) / k ρ X 2 , j , k + h 2 q 3 2 g .
Using these coefficients, the sigma point time-update equations are given as follows:
X 1 , j , k + 1 = X 1 , j , k + h 6 ( c 1 + 2 c 2 + 2 c 3 + c 4 ) ,
X 2 , j , k + 1 = X 2 , j , k + h 6 ( q 1 + 2 q 2 + 2 q 3 + q 4 ) ,
X 3 , j , k + 1 = X 3 , j , k ,
where j = 1 , , 7 .

Appendix C.3. Time-Update Equations for AB-UKF (Falling Body)

From Equations (64)–(66), the nonlinear dynamics f c ( x ) of the continuous-time state equation are redefined as follows:
d d t x 1 x 2 x 3 = f 1 f 2 f 3 = x 2 ρ 0 2 x 3 e x 1 / k ρ x 2 2 g 0 f c ( x ) .
The sigma point matrix X k at time k and the matrix F c ( X k ) obtained by substituting X k into f c ( x ) are represented by the following 3 × 7 matrices:
X k = X 1 , 1 , k X 1 , 7 , k X 2 , 1 , k X 2 , 7 , k X 3 , 1 , k X 3 , 7 , k ,
F c ( X k ) = X 2 , 1 , k X 2 , 7 , k ρ 0 2 X 3 , 1 , k e X 1 , 1 , k / k ρ X 2 , 1 , k 2 g ρ 0 2 X 3 , 7 , k e X 1 , 7 , k / k ρ X 2 , 7 , k 2 g 0 0 .
To distinguish this F c ( X k ) specific to the falling body model from the general form in Equation (9), we redefine it as F c f b ( X k ) : = F c ( X k ) . Then, the sigma point update equation using the fourth-order Adams–Bashforth method is given as follows:
X k + 1 = X k + h 24 55 F c f b ( X k ) 59 F c f b ( X k 1 ) + 37 F c f b ( X k 2 ) 9 F c f b ( X k 3 ) .
Here, the superscript f b denotes the falling body model.

Appendix D. Details of Time-Update Equations for the UAV Model

This appendix presents the specific sigma point time-update equations for each method outlined in Section 7.2.

Appendix D.1. Time-Update Equations for Euler-UKF (UAV)

Applying the Euler method to Equation (75) yields the following discrete-time state equation:
x 1 , k + 1 x 2 , k + 1 x 11 , k + 1 x 12 , k + 1 = x 1 + h x 2 x 2 + h A 1 ( x ) T x + A 2 ( x ) T y + A 3 ( x ) T z x 3 + h x 4 x 4 + h A 4 ( x ) T x + A 5 ( x ) T y + A 6 ( x ) T z x 5 + h x 6 x 6 + h A 7 ( x ) T x + A 8 ( x ) T y + A 9 ( x ) T z + g x 7 + h x 8 x 8 + h 1 I B x x ( τ x B + τ x c ) + x 10 x 12 I B y y I B z z I B x x x 9 + h x 10 x 10 + h 1 I B y y ( τ y B + τ y c ) + x 8 x 12 I B z z I B x x I B y y x 11 + h x 12 x 12 + h 1 I B z z ( τ z B + τ z c ) + x 8 x 10 I B x x I B y y I B z z .
Therefore, by substituting X k into Equation (A47), the time-update equation for the sigma points is derived as follows:
X 1 , j , k + 1 = X 1 , j , k + h X 2 , j , k ,
X 2 , j , k + 1 = X 2 , j , k + h A 1 ( X ( 9 , 11 ) , j , k ) T x + A 2 ( X ( 7 , 9 , 11 ) , j , k ) T y + A 3 ( X ( 7 , 9 , 11 ) , j , k ) T z ,
X 3 , j , k + 1 = X 3 , j , k + h X 4 , j , k ,
X 4 , j , k + 1 = X 4 , j , k + h A 4 ( X ( 9 , 11 ) , j , k ) T x + A 5 ( X ( 7 , 9 , 11 ) , j , k ) T y + A 6 ( X ( 7 , 9 , 11 ) , j , k ) T z ,
X 5 , j , k + 1 = X 5 , j , k + h X 6 , j , k ,
X 6 , j , k + 1 = X 6 , j , k + h A 7 ( X 9 , j , k ) T x + A 8 ( X ( 7 , 9 ) , j , k ) T y + A 9 ( X ( 7 , 9 ) , j , k ) T z + g ,
X 7 , j , k + 1 = X 7 , j , k + h X 8 , j , k ,
X 8 , j , k + 1 = X 8 , j , k + h 1 I B x x ( τ x B + τ x c ) + X 10 , j , k X 12 , j , k I B y y I B z z I B x x ,
X 9 , j , k + 1 = X 9 , j , k + h X 10 , j , k ,
X 10 , j , k + 1 = X 10 , j , k + h 1 I B y y ( τ y B + τ y c ) + X 8 , j , k X 12 , j , k I B z z I B x x I B y y ,
X 11 , j , k + 1 = X 11 , j , k + h X 12 , j , k ,
X 12 , j , k + 1 = X 12 , j , k + h 1 I B z z ( τ z B + τ z c ) + X 8 , j , k X 10 , j , k I B x x I B y y I B z z .
Here, j = 1 , , 25 .

Appendix D.2. Time-Update Equations for RK-UKF (UAV)

To apply the fourth-order Runge–Kutta method to Equation (75), we define the derivatives a 1 ( x ) a 4 ( x ) , …, l 1 ( x ) l 4 ( x ) for each state variable. Due to space limitations, it is not possible to list all equations, but representative ones are shown below:
a 1 ( x ) = f 1 ( x 2 ) ,
a 2 ( x ) = f 1 x 2 + b 1 2 ,
a 3 ( x ) = f 1 x 2 + b 2 2 ,
a 4 ( x ) = f 1 ( x 2 + b 3 ) ,
l 1 ( x ) = f 12 ( x 8 , x 10 ) ,
l 2 ( x ) = f 12 x 8 + h 1 2 , x 10 + j 1 2 ,
l 3 ( x ) = f 12 x 8 + h 2 2 , x 10 + j 2 2 ,
l 4 ( x ) = f 12 ( x 8 + h 3 , x 10 + j 3 ) .
Using these derivatives, the time-update equations for the sigma points are derived as follows:
X 1 , j , k + 1 = X 1 , j , k + h 6 a 1 ( X 2 , j , k ) + 2 a 2 ( X 2 , j , k ) + 2 a 3 ( X 2 , j , k ) + a 4 ( X 2 , j , k ) ,
X 2 , j , k + 1 = X 2 , j , k + h 6 b 1 ( X ( 7 , 9 , 11 ) , j , k ) + 2 b 2 ( X ( 7 , 9 , 11 ) , j , k ) + 2 b 3 ( X ( 7 , 9 , 11 ) , j , k ) + b 4 ( X ( 7 , 9 , 11 ) , j , k ) ,
X 12 , j , k + 1 = X 12 , j , k + h 6 l 1 ( X ( 8 , 10 ) , j , k ) + 2 l 2 ( X ( 8 , 10 ) , j , k ) + 2 l 3 ( X ( 8 , 10 ) , j , k ) + l 4 ( X ( 8 , 10 ) , j , k ) .

Appendix D.3. Time-Update Equations for AB-UKF (UAV)

The sigma point matrix X k at time k and the matrix F c ( X k ) obtained by substituting X k into Equation (75) are represented by the following 12 × 25 matrices:
X k = X 1 , 1 , k X 1 , 25 , k X 12 , 1 , k X 12 , 25 , k ,
F c ( X k ) = f 1 ( X 1 , 1 , k ) f 1 ( X 1 , 25 , k ) f 12 ( X 12 , 1 , k ) f 12 ( X 12 , 25 , k ) .
To distinguish this F c ( X k ) specific to the UAV model from the general form in Equation (9), we redefine it as F c U ( X k ) : = F c ( X k ) . Then, the sigma point update equations using the second- to sixth-order Adams–Bashforth methods are given as follows:
2nd-order Adams–Bashforth method:
X k + 1 = X k + h 2 3 F c U ( X k ) F c U ( X k 1 ) .
3rd-order Adams–Bashforth method:
X k + 1 = X k + h 12 23 F c U ( X k ) 16 F c U ( X k 1 ) + 5 F c U ( X k 2 ) .
4th-order Adams–Bashforth method:
X k + 1 = X k + h 24 55 F c U ( X k ) 59 F c U ( X k 1 ) + 37 F c U ( X k 2 ) 9 F c U ( X k 3 ) .
5th-order Adams–Bashforth method:
X k + 1 = X k + h 720 ( 1901 F c U ( X k ) 2774 F c U ( X k 1 ) + 2616 F c U ( X k 2 ) 1274 F c U ( X k 3 ) + 251 F c U ( X k 4 ) ) .
6th-order Adams–Bashforth method:
X k + 1 = X k + h 1440 ( 4277 F c U ( X k ) 7923 F c U ( X k 1 ) + 9982 F c U ( X k 2 ) 7298 F c U ( X k 3 ) + 2877 F c U ( X k 4 ) 475 F c U ( X k 5 ) ) .

References

  1. Bar-Shalom, Y.; Li, X.R.; Kirubarajan, T. Estimation with Applications to Tracking and Navigation: Theory, Algorithms and Software; Wiley: Hoboken, NJ, USA, 2004. [Google Scholar]
  2. Liptser, R.S.; Shiryaev, A.N. Statistics of Random Processes II: Applications; Springer: Berlin/Heidelberg, Germany, 2001. [Google Scholar]
  3. Kalman, R.E. A New Approach to Linear Filtering and Prediction Problems. J. Basic Eng. 1960, 82, 35–45. [Google Scholar] [CrossRef]
  4. Jazwinski, A.H. Stochastic Processes and Filtering Theory; Academic Press: New York, NY, USA, 1970. [Google Scholar]
  5. Frogerais, P.; Bellanger, J.J.; Senhadji, L. Various Ways to Compute the Continuous-Discrete Extended Kalman Filter. IEEE Trans. Autom. Control 2012, 57, 1000–1004. [Google Scholar] [CrossRef]
  6. Kulikova, M.V. Accurate Numerical Implementation of the Continuous-Discrete Extended Kalman Filter. IEEE Trans. Autom. Control 2014, 59, 273–279. [Google Scholar] [CrossRef]
  7. Kulikov, G.Y.; Kulikova, M.V. The Accurate Continuous-Discrete Extended Kalman Filter for Radar Tracking. IEEE Trans. Signal Process. 2016, 64, 948–958. [Google Scholar] [CrossRef]
  8. Kulikova, M.V.; Kulikov, G.Y. On Derivative-Free Extended Kalman Filtering and Its MATLAB-Oriented Square-Root Implementations for State Estimation in Continuous-Discrete Nonlinear Stochastic Systems. Eur. J. Control 2023, 73, 100885. [Google Scholar] [CrossRef]
  9. Julier, S.J.; Uhlmann, J.K. A New Extension of the Kalman Filter to Nonlinear Systems. Proc. SPIE 1997, 3068, 182–193. [Google Scholar]
  10. Julier, S.J.; Uhlmann, J.K. Unscented Filtering and Nonlinear Estimation. Proc. IEEE 2004, 92, 401–421. [Google Scholar] [CrossRef]
  11. Julier, S.J.; Uhlmann, J.K.; Durrant-Whyte, H.F. A New Method for the Nonlinear Transformation of Means and Covariances in Filters and Estimators. IEEE Trans. Autom. Control 2000, 45, 477–482. [Google Scholar] [CrossRef]
  12. Särkkä, S. On Unscented Kalman Filtering for State Estimation of Continuous-Time Nonlinear Systems. IEEE Trans. Autom. Control 2007, 52, 1631–1641. [Google Scholar] [CrossRef]
  13. van der Merwe, R. Sigma-Point Kalman Filters for Probabilistic Inference in Dynamic State-Space Models. Ph.D. Thesis, OGI School of Science & Engineering at Oregon Health & Science University, Beaverton, OR, USA, 2004. [Google Scholar] [CrossRef]
  14. Ito, K.; Xiong, K. Gaussian Filters for Nonlinear Filtering Problems. IEEE Trans. Autom. Control 2000, 45, 910–927. [Google Scholar] [CrossRef]
  15. Julier, S.J. The Spherical Simplex Unscented Transformation. In Proceedings of the 2003 American Control Conference, Denver, CO, USA, 4–6 June 2003; pp. 2430–2434. [Google Scholar]
  16. Haykin, S. (Ed.) Kalman Filtering and Neural Networks; Wiley: New York, NY, USA, 2001. [Google Scholar]
  17. Elliott, R.J.; Aggoun, L.; Moore, J.B. Hidden Markov Models: Estimation and Control; Springer: New York, NY, USA, 1995. [Google Scholar]
  18. Singh, A.K. Major Development Under Gaussian Filtering Since Unscented Kalman Filter. IEEE/CAA J. Autom. Sinica 2022, 9, 1304–1325. [Google Scholar] [CrossRef]
  19. Gao, B.; Ma, P.; Hu, G.; Zhong, Y.; Liu, Z. Dual-event-triggering ANFIS-based unscented Kalman filter for cluster cooperative navigation with measurement anomalies. Chin. J. Aeronaut. 2025; in press. [Google Scholar] [CrossRef]
  20. Takeno, M.; Katayama, T. State and Parameter Estimation for Dynamical Systems by Using Unscented Kalman Filter. Trans. Inst. Syst. Control Inf. Eng. 2011, 24, 231–239. (In Japanese) [Google Scholar]
  21. Takeno, M.; Katayama, T. A Numerical Method for Continuous Discrete Unscented Kalman Filter. Int. J. Innov. Comput. Inf. Control 2012, 8, 2261–2274. [Google Scholar]
  22. Kulikov, G.Y.; Kulikova, M.V. Accurate Continuous–Discrete Unscented Kalman Filtering for Estimation of Nonlinear Continuous-Time Stochastic Models in Radar Tracking. Signal Process. 2017, 139, 25–35. [Google Scholar] [CrossRef]
  23. Kulikova, M.V.; Kulikov, G.Y. Continuous–Discrete Unscented Kalman Filtering Framework by MATLAB ODE Solvers and Square-Root Methods. Automatica 2022, 142, 110396. [Google Scholar] [CrossRef]
  24. Knudsen, T.; Leth, J. A New Continuous Discrete Unscented Kalman Filter. IEEE Trans. Autom. Control 2019, 64, 2198–2205. [Google Scholar] [CrossRef]
  25. Wang, A.; Zhang, H.; Huang, X.; Yang, Z. Adaptive unscented Kalman filter for nonlinear continuous-discrete systems based on the degree of nonlinearity. Phys. Scr. 2025, 100, 087001. [Google Scholar] [CrossRef]
  26. Wang, C.; Dai, H.; Yang, W.; Yue, X. High-efficiency unscented Kalman filter for multi-target trajectory estimation. Aerosp. Sci. Technol. 2025, 159, 109962. [Google Scholar] [CrossRef]
  27. Tobaly, L.; Yaniv, E.; Zalevsky, Z. Integrating GAN-based machine learning with nonlinear Kalman filtering for enhanced state estimation. Sci. Rep. 2025, 15, 42361. [Google Scholar] [CrossRef]
  28. Kulikova, M.V.; Kulikov, G.Y. Square-root information-type methods for continuous–discrete extended Kalman filtering. Eur. J. Control 2025, 85, 101358. [Google Scholar] [CrossRef]
  29. Al Ahdab, M.; Leth, J.; Tan, Z. Optimal Sensor Scheduling and Selection for Continuous-Discrete Kalman Filtering with Auxiliary Dynamics. arXiv 2025, arXiv:2507.11240. [Google Scholar] [CrossRef]
  30. Thieu, T.; Melnik, R. Estimation of 3D facial dynamics with nonlinear filters for position tracking. Appl. Math. Sci. Eng. 2025, 32, 2546793. [Google Scholar] [CrossRef]
  31. Chang, Y.; Cheng, Y.; Manzoor, U.; Murray, J. A Review of UAV Autonomous Navigation in GPS-Denied Environments. Robot. Auton. Syst. 2023, 170, 104533. [Google Scholar] [CrossRef]
  32. Jiang, C.; Zhou, X.; Chen, H.; Liu, T. UAV Positioning Using GNSS: A Review of the Current Status. Drones 2026, 10, 91. [Google Scholar] [CrossRef]
  33. Liu, H.; Long, Q.; Yi, B.; Jiang, W. A Survey of Sensor Based Autonomous Unmanned Aerial Vehicle (UAV) Localization Techniques. Complex Intell. Syst. 2025, 11, 371. [Google Scholar] [CrossRef]
  34. He, R.; Chen, S.; Wu, H.; Zhang, F.; Chen, K. Efficient Extended Cubature Kalman Filtering for Nonlinear Target Tracking. Int. J. Syst. Sci. 2021, 52, 392–406. [Google Scholar] [CrossRef]
  35. Kloeden, P.E.; Platen, E. Numerical Solution of Stochastic Differential Equations; Springer: Berlin/Heidelberg, Germany, 1999. [Google Scholar]
  36. Cellier, F.E.; Kofman, E. Continuous System Simulation; Springer: New York, NY, USA, 2006. [Google Scholar]
  37. Butcher, J.C. Numerical Methods for Ordinary Differential Equations; John Wiley & Sons: Hoboken, NJ, USA, 2016. [Google Scholar]
  38. Alderete, T.S. Simulator Aero Model Implementation; NASA Ames Research Center: Moffett Field, CA, USA, 1997.
  39. Luukkonen, T. Modelling and Control of Quadrotor; Aalto University: Espoo, Finland, 2011. [Google Scholar]
  40. Itakura, T.; Watanabe, K.; Nagai, I.; Shibanoki, T. Design and Production of an Osprey-Type Drone with 2-DOF Tiltable Mechanisms. In Proceedings of the JSME Annual Conference on Robotics and Mechatronics (Robomec), Sapporo, Japan, 1–4 June 2022; Session ID 1A1-J03. (In Japanese) [Google Scholar]
  41. Gelb, A. Applied Optimal Estimation; MIT Press: Cambridge, MA, USA, 1974. [Google Scholar]
  42. Yoshiwaki, N.; Watanabe, K.; Shibanoki, T.; Nagai, I. Research on a Fully Actuated UAV with Two 2-DOF Tiltable Rotors. In Proceedings of the JSME Annual Conference on Robotics and Mechatronics (Robomec), Sapporo, Japan, 1–4 June 2022; Session ID 1A1-J02. (In Japanese) [Google Scholar]
  43. Julier, S.J.; Uhlmann, J.K. Reduced Sigma Point Filters for the Propagation of Means and Covariances Through Nonlinear Transformations. In Proceedings of the 2002 American Control Conference (IEEE Cat. No. CH37301), Anchorage, AK, USA, 8–10 May 2002; pp. 887–892. [Google Scholar]
  44. Lozano, J.G.C.; Carrillo, L.R.G.; Dzul, A.; Lozano, R. Spherical Simplex Sigma-Point Kalman Filters: A Comparison in the Inertial Navigation of a Terrestrial Vehicle. In Proceedings of the 2008 American Control Conference, Seattle, WA, USA, 11–13 June 2008; pp. 4857–4862. [Google Scholar]
  45. Fu, K.; Zhao, G.; Li, X.; Tang, Z.-L.; He, W. Iterative Spherical Simplex Unscented Particle Filter for CNS/Redshift Integrated Navigation System. Sci. China Inf. Sci. 2017, 60, 042201. [Google Scholar] [CrossRef]
  46. Li, W.-C.; Wei, P.; Xiao, X.-C. A Novel Simplex Unscented Transform and Filter. In Proceedings of the 2007 International Symposium on Communications and Information Technologies, Sydney, NSW, Australia, 17–19 October 2007; pp. 926–931. [Google Scholar]
Figure 1. Definition of the coordinate systems of the Osprey-type drone. The red arrows represent the thrust generated by each coaxial rotor.
Figure 1. Definition of the coordinate systems of the Osprey-type drone. The red arrows represent the thrust generated by each coaxial rotor.
Sensors 26 02009 g001
Figure 3. Comparison of estimation results.
Figure 3. Comparison of estimation results.
Sensors 26 02009 g003
Figure 4. Overall diagram of the state estimation program for the UAV model and the location of measurement times I–III.
Figure 4. Overall diagram of the state estimation program for the UAV model and the location of measurement times I–III.
Sensors 26 02009 g004
Figure 5. UKF estimates based on three discretization methods ( h = 0.01 ).
Figure 5. UKF estimates based on three discretization methods ( h = 0.01 ).
Sensors 26 02009 g005
Figure 6. RMSE of UKF estimates based on three discretization methods ( h = 0.01 ).
Figure 6. RMSE of UKF estimates based on three discretization methods ( h = 0.01 ).
Sensors 26 02009 g006
Figure 7. RMSE value change with step size change for three methods.
Figure 7. RMSE value change with step size change for three methods.
Sensors 26 02009 g007
Figure 8. RMSE of UKF estimates for 2nd-order to 6th-order AB-based UKFs ( h = 0.01 ).
Figure 8. RMSE of UKF estimates for 2nd-order to 6th-order AB-based UKFs ( h = 0.01 ).
Sensors 26 02009 g008
Figure 9. RMSE value change with step size change for different order AB-based UKFs.
Figure 9. RMSE value change with step size change for different order AB-based UKFs.
Sensors 26 02009 g009
Figure 10. Calculation time change with step size change for RK4-based UKF and AB4-based UKF.
Figure 10. Calculation time change with step size change for RK4-based UKF and AB4-based UKF.
Sensors 26 02009 g010
Figure 11. Calculation time change with step size change for different order AB-based UKFs.
Figure 11. Calculation time change with step size change for different order AB-based UKFs.
Sensors 26 02009 g011
Table 1. Comparison of RMSE among the three methods.
Table 1. Comparison of RMSE among the three methods.
Method
Euler-UKFRK-UKFAB4-UKF
RMSE125.585116.826115.537
Table 2. Comparison of computation time among the three methods.
Table 2. Comparison of computation time among the three methods.
Method
Euler-UKFRK-UKFAB4-UKF
Alg. total time ( × 10 2 ) [s]8.46129.25428.7108
Pred. time only ( × 10 6 ) [s]58.384277.869870.6750
Table 3. Simulation parameters of the UAV.
Table 3. Simulation parameters of the UAV.
VariableDefinitionValue
m [kg]Mass of UAV1.5
g [m/s2]Acceleration of gravity9.81
I B x x [kg·m2]Moment of inertia around X B axis0.01
I B y y [kg·m2]Moment of inertia around Y B axis0.01
I B z z [kg·m2]Moment of inertia around Z B axis0.006
l [m] Y B axis distance between O B and O P i 0.24
h o [m] Z B axis distance between O B and O P i 0.045
k f [Ns2/rad2]Thrust coefficient of the propeller 1.784 × 10 5
k t [Nms2/rad2]Drag coefficient of the propeller 4.379 × 10 7
Table 4. Comparison of RMSE ( N ) with different step size for three methods.
Table 4. Comparison of RMSE ( N ) with different step size for three methods.
Method
EulerRK4AB4
h = 0.01 0.479610.476460.47304
h = 0.02 0.671670.661210.66235
h = 0.03 0.831020.826950.81186
h = 0.04 0.961790.949710.94171
h = 0.05 1.079921.072121.07913
h = 0.06 1.198911.181971.19785
h = 0.07 1.311531.288891.37018
h = 0.08 1.410161.39465N/A
h = 0.09 1.523781.49280N/A
h = 0.10 1.620671.58091N/A
N/A indicates that the computation could not be performed.
Table 5. RMSE ( N ) values for 2nd- to 6th-order AB-based UKFs with different step sizes.
Table 5. RMSE ( N ) values for 2nd- to 6th-order AB-based UKFs with different step sizes.
AB Method with Different Order
AB2AB3AB4AB5AB6
h = 0.01 0.471400.478910.473040.478780.47409
h = 0.02 0.666190.669200.662350.668160.68082
h = 0.03 0.813270.808400.811860.82628N/A
h = 0.04 0.944320.937550.941711.00880N/A
h = 0.05 1.060201.054211.07913N/AN/A
h = 0.06 1.172431.174601.19785N/AN/A
h = 0.07 1.275151.268571.37018N/AN/A
h = 0.08 1.376611.37650N/AN/AN/A
h = 0.09 1.477091.49280N/AN/AN/A
h = 0.10 1.593631.60998N/AN/AN/A
N/A: Not available (calculation could not be performed).
Table 6. Comparison of computational time among Euler-based UKF, RK4-based UKF and AB4-based UKF ( h = 0.01 ).
Table 6. Comparison of computational time among Euler-based UKF, RK4-based UKF and AB4-based UKF ( h = 0.01 ).
Method
EulerRK4AB4
Time I ( × 10 4 ) [s]3.75935.60783.2978
Time II ( × 10 4 ) [s]6.04118.00645.6144
Time III [s]6.37857.65206.0550
Table 7. Comparison of computational time for 2nd-order to 6th-order AB-based UKFs.
Table 7. Comparison of computational time for 2nd-order to 6th-order AB-based UKFs.
AB Method with Different Order
AB2AB3AB4AB5AB6
Time I ( × 10 4 ) [s]3.21253.28393.32123.34783.4263
Time II ( × 10 4 ) [s]5.51075.61665.63535.60815.7562
Time III [s]6.17996.29906.18566.14276.3341
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Watanabe, K.; Takeda, S.; Nagai, I. An Unscented Kalman Filter Based on the Adams–Bashforth Method with Applications to the State Estimation of Osprey-Type Drones Composed of Tiltable Rotor Mechanisms. Sensors 2026, 26, 2009. https://doi.org/10.3390/s26062009

AMA Style

Watanabe K, Takeda S, Nagai I. An Unscented Kalman Filter Based on the Adams–Bashforth Method with Applications to the State Estimation of Osprey-Type Drones Composed of Tiltable Rotor Mechanisms. Sensors. 2026; 26(6):2009. https://doi.org/10.3390/s26062009

Chicago/Turabian Style

Watanabe, Keigo, Soma Takeda, and Isaku Nagai. 2026. "An Unscented Kalman Filter Based on the Adams–Bashforth Method with Applications to the State Estimation of Osprey-Type Drones Composed of Tiltable Rotor Mechanisms" Sensors 26, no. 6: 2009. https://doi.org/10.3390/s26062009

APA Style

Watanabe, K., Takeda, S., & Nagai, I. (2026). An Unscented Kalman Filter Based on the Adams–Bashforth Method with Applications to the State Estimation of Osprey-Type Drones Composed of Tiltable Rotor Mechanisms. Sensors, 26(6), 2009. https://doi.org/10.3390/s26062009

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop