Abstract
In this paper we consider the problem of state estimation of a dynamic system whose evolution is described by a nonlinear continuous-time stochastic model. We also assume that the system is observed by a sensor in discrete-time moments. To perform state estimation using uncertain discrete-time data, the system model needs to be discretized. We compare two methods of discretization. The first method uses the classical forward Euler method. The second method is based on the continuous-time simulation of the deterministic part of the nonlinear system between consecutive times of measurement. For state estimation we apply an unscented Kalman Filter, which—as opposed to the well known Extended Kalman Filter—does not require calculation of the Jacobi matrix of the nonlinear transformation associated with this method.
Access provided by Autonomous University of Puebla. Download conference paper PDF
Similar content being viewed by others
Keywords
- Continuous-time stochastic systems
- Nonlinear dynamics
- Discrete-time measurements
- State estimation
- Kalman filtering
1 Introduction
The main tool for state estimation of dynamic systems is Kalman filtering [4, 8, 9]. If the system observed is described by continuous-time equations there are two main approaches to state estimation. In the first method one derives discrete-time model describing the process and uses a standard method for estimating it [4, 10], namely the Kalman Filter for a linear approach, or one of its variants for a nonlinear approach: for example the Extended Kalman Filter [2, 4], the Unscented Kalman Filter [7, 14], or the Particle Filter [1, 3, 6, 12]. The second method consists in directly utilizing a continuous-time estimator: the Kalman-Bucy Filter [4] in a linear approach or various nonlinear filters [3, 13].
Both approaches have their merits. Implementation of discrete-time filters is straightforward, yet the discrete-time model is only an approximation dependent on the sampling period. Thus another layer of design uncertainty is introduced. On the other hand, implementation of continuous-time filters is more complex (moreover, the measurement equations are also given in continuous time).
For most physical systems the respective continuous-time (CT) description gives best approximation of the actual phenomena which govern the process behavior. On the other hand, it is the discrete-time (DT) measurement process which is typically associated with the principle of operation of sensors. There is therefore a need for a so-called hybrid CT/DT method of state estimation.
In this article we will investigate some hybrid method in which a predictive part of the estimation algorithm is performed by continuous-time simulation of a deterministic part of a stochastic differential equation that describes an analyzed system. In the stochastic differential equations modeling the process, the stochastic part has the zero mean (in the probabilistic sense), thus we assume that it does not contribute to the evolution of the predictionFootnote 1. We will compare this method with a classical one using the standard forward Euler discretization. Though the simulation-based method is computationally more expensive than the Euler method, it gives accurate results independent of the sampling time.
The paper is organized as follows. In Sect. 2 a nonlinear continuous-time stochastic system model and a discrete-time measurement equation are presented. Two methods for discrete-time discretization are described in Sect. 3. The Unscented Kalman filter which is a basis for state estimation is recalled in Sect. 4. A simulation example is presented in Sect. 5. Section 6 contains conclusions.
2 System Model
We consider a dynamic system described by the following nonlinear stochastic differential equation:
where an independent variable t is interpreted as time, \(d\varvec{x} \in \mathbb {R}^{n}\) is an infinitesimal increment of the system state \(\varvec{x} \in \mathbb {R}^{n}\), \(d\varvec{w} \in \mathbb {R}^{r}\) is an infinitesimal increment of r-dimensional Wiener process \(\varvec{w} \in \mathbb {R}^{r}\) describing the uncertainty, \(\varvec{a}: \mathbb {R}^{n} \rightarrow \mathbb {R}^{n}\) is a nonlinear vector function describing the dynamics of the system, and \(\varvec{b}: \mathbb {R}^{n} \rightarrow L(\mathbb {R}^{r}, \mathbb {R}^{n})\) is a nonlinear map describing the influence of the noise on the systemFootnote 2, where \(L(\mathbb {R}^{r}, \mathbb {R}^{n})\) is the space of \(n \times r\) matrices.
3 Model Discretization
To be able to perform state estimation using Kalman methods, we need to obtain a discrete-time version of the model (1). However, due to the nonlinearity of (1), only approximate methods are applicable. As has been mentioned we will apply two different methods: the forward Euler method and the simulation method.
The well-known forward Euler method results in the following discrete-time version of (1):
where T is the sampling time (in seconds), \(\varvec{x}_{k} \in \mathbb {R}^{n}\) is the state of the discrete-time model (2) at time kT, and \(\varDelta \varvec{w}_{k} \in \mathbb {R}^{r}\) is a vector random variable with a multivariate normal distribution \(\mathcal {N}(\varvec{0}, \varvec{Q})\), with the zero mean and the covariance matrix
where \(\varvec{I}_{r}\) is the \(r \times r\) identity matrix.
Based on (2), since \(\varDelta \varvec{w}\) is a zero mean noise, the model-based prediction equation needed for estimation has the following (homogeneous) form:
The second discretization method is based on simulation of the deterministic part of model (1). In this method the following (homogeneous) deterministic ordinary differential equation is simulated between consecutive sampling instants:
A numerical solution to equation (5) can be computed, for example, using one of the standard Runge-Kutta methods, to obtain a prediction of the state \(x_{k}\) for the time instant kT based on the state \(x_{k-1}\) computed at the time instant \((k-1)T\).
Besides the fact that the simulation method gives more accurate results of the prediction, it has two drawbacks, as compared to the forward Euler discretization. First, it is computationally more expensive. Second, the simulation method ignores the random part of the model (1), and thus the noise covariance matrix of the discrete noise is not computed. A simple, yet not faultless solution to this problem is to assume the same noise component \(\varvec{b}(\varvec{x_{k-1}}) \varDelta \varvec{w}_{k-1}\) as for the Euler method (2). Other, more suitable solutions of this problem will be investigated in the future work.
Finally, we supplement both the discrete-time models with a standard discrete-time measurement equation
where \(\varvec{y}_{k} \in \mathbb {R}^{p}\) is the measurement vector, \(\varvec{c}: \mathbb {R}^{n} \rightarrow \mathbb {R}^{p}\) is (in general) a nonlinear vector function describing the measurement principle, and \(\varvec{\zeta }_{k} \in \mathbb {R}^{p}\) is a vector random variable (measurement noise) with a multivariate normal distribution \(\mathcal {N}(\varvec{0}, \varvec{R})\), with the zero mean and a known covariance matrix \(\varvec{R}\).
4 State Estimation
To perform state estimation we use the discrete-time model (2)–(6) and an Unscented Kalman Filter described below.
4.1 Unscented Kalman Filter
Calculation of the Jacobi matrix for the nonlinear functions \(\varvec{a}\), \(\varvec{b}\) and \(\varvec{c}\) can be a difficult task (for the discrete-time model based on the Euler method) or even not feasible (for the simulation method, since the explicit form of the discrete-time model is not available). To overcome this problem we utilize an approach which does not require the computation of Jacobi matrix—the Unscented Kalman Filter (UKF).
The UKF is based on an unscented transform that is used to determine the mean value and the covariance matrix of a random variable subjected to a nonlinear transformation. In this method, the multivariate normal probability density function of a random variable (before the nonlinear transformation) is represented by a specific, small set of the so-called \(\sigma \)-points. Next, each of these points is transformed using the nonlinear function (the Euler discrete-time model (4)) or each is simulated using the differential equation (5). From the transformed points, the mean value of the random variable and its covariance matrix can next be easily computed.
The UKF has some similar features to particle filters (PF). There are, however, two significant differences described below.
-
1.
The number of the UKF \(\sigma \)-points is not large, and they are chosen ‘optimally’ so as to best preserve the shape of the multivariate normal distribution, whereas in the particle filter the number of particles is large and they are sampled from some initial distribution. Thus the UKF is less computationally expensive.
-
2.
In the UKF, the initial (pre nonlinear transformation) and the final (post nonlinear transformation) random variables are assumed to have multivariate normal distribution, thus the \(\sigma \)-points (post nonlinear transformation) are ‘fitted back’ into the multivariate normal distribution, whereas in the PF the particles determine the resulting probability distribution function (it can thus be arbitrary, not normal, multimodal, etc.). Therefore, using UKF it is not possible to model other probability distributions than multivariate normal distribution. It is a significant simplification, as a nonlinear transformation of a normal random variable is generally not normal.
One step of the UKF algorithm for discrete-time models presented in Sect. 2 is described below.
First, based on the results from the previous step, i.e. the state \(\varvec{x}_{k-1|k-1}\) and the corresponding covariance matrix \(\varvec{P}_{k-1|k-1}\), a new set of \(\sigma \)-points is computed. If the state is an n-dimensional multivariate normal random variable, then this set contains \((2n+1)\) \(\sigma \)-points \(\varvec{x}_{k-1|k-1}^{i}\), \(i = 0, 1, 2,\ldots , 2n\) with the corresponding weights \(W^{i}\), calculated as [7]
where a new index j is introduced to emphasize the symmetry of the points, the vector
is the j-th row (and the j-th column) of the square root (in the matrix sense) of the matrix
The value of the weight \(W^{0} \in (-1, 1)\) controls the position of \(\sigma \)-points. For \(W^{0} > 0\) the \(\sigma \)-points are further from the central \(\sigma \)-point \(x^{0}\), whereas for \(W^{0}<0\) they are closer to the central \(\sigma \)-point \(x^{0}\). For a more detailed discussion on the choice of weights refer to [7] and [14]. Note that, naturally, the weights satisfy the relationship \(\sum _{i=0}^{2n} W^{i} = 1\).
Next, the \(\sigma \)-points \(\left\{ \varvec{x}^{j}_{k-1|k-1} \right\} \) are transformed to the new state according to (4) or using (5). In such a way a new set of the transformed points \(\left\{ \varvec{x}_{k|k-1}^{i} \right\} \) is obtained (the weights of the \(\sigma \)-points remain unchanged).
The predicted state \(\hat{\varvec{x}}_{k|k-1}\) is computed as the weighted sum of the transformed \(\sigma \)-points
To compute a predicted measurement, the set of the transformed \(\sigma \)-points is transformed again, this time using the nonlinear function adequate for observations (6). This results in the ‘measurement’ points
The predicted measurement is calculated similarly as the predicted state:
Using the above results we calculate the covariance matrix of the predicted state
where \(\varvec{Q}\) is the covariance matrix (3), and the covariance matrix of the predicted measurement
where \(\varvec{R}\) is the covariance matrix of the measurement noise \(\varvec{\zeta }_{k}\) in (6).
The gain of the UKF is:
The UKF innovation is
where \(\varvec{z}_{k}\) is the ‘true’ measurement collected by a sensor.
The updated state estimate is calculated according to the following equation:
with the corresponding covariance matrix
5 Simulation Example
In this section we present an exemplary process model and a simulation example.
5.1 Process Model
We consider a nonlinear continuous-time stochastic model of a mobile robot shown in Fig. 1. The robot has two wheels of radius r, which are connected by axle of an length l. Both wheels can rotate at different speeds, thereby changing the orientation of the robot. We assume that the wheels do not slip and that the robot moves only in the direction of the body orientation. The angle between the body orientation and the x-axis is denoted as \(\theta \). The model is based on [5, 11, 15], however we add two additional state variables (\(\omega _{1}\) and \(\omega _{2}\)) describing the angular velocities of the wheels.
The position x-y of each wheel (\(i=1,2\)) of the robot evolves according to the equations
where (\(\phi _{i}\), \(i=1,2\)) are the angles by which the wheels rotate about their axes.
Thus the equations describing the motion of the robot are
where x and y yield the position of the middle point of the axle, l is the length of the axle and \(\theta \) is the angle of orientation of the robot.
By substituting (17) into (18) one obtains
The angles (\(\phi _{i}\), \(i=1,2\)) by which the wheels rotate about their axes are described by the following differential equations
where \(\omega _{1}\) and \(\omega _{2}\) are the angular velocities of the corresponding wheels.
We assume that the angular velocities of the wheels can be described by the following stochastic differential equations:
where \(\kappa _{i}\) (\(i=1,2\)) describes the rate of the ith velocity mean reversion, \(\mu _{i}\) is the long-term mean of the ith velocity, \(dw_{1}\) and \(dw_{2}\) are infinitesimal increments of two independent one-dimensional Wiener processes, respectively, and \(\sqrt{D}\) is a (modeling) noise scaling factor. Using the above equations, the trajectory of the mobile robot can be described by the following set of stochastic differential equations:
where the state of the robot is its position (x, y), the angle of the body orientation \(\theta \) and the angular velocities of the wheels (\(\omega _{1},\omega _{2}\)).
We assume that the position (x, y) and the angle \(\theta \) are measured. Therefore the map \(\varvec{c}(\varvec{x}_{k})\) in (6) is linear and is independent of the state \(x_{k}\), and can be consequently described by the following matrix:
The covariance matrix of the measurement noise \(\zeta \) is
The initial state is
and the other parameters of the model are as follows:
The process was simulated for \(0 \le t \le 50\), and 500 trajectories were generated. The estimation results represent the average of the results obtained in all the simulation runs.
An exemplary trajectory of the robot positions (x, y) on the plane with the corresponding measurements is presented in Fig. 2.
5.2 Estimation Results
The outcomesFootnote 3 of the estimation of position x, position y, angle \(\theta \) and the angular velocity \(\omega _{1}\), for both methods are presented in Figs. 3, 4, 5 and 6, respectively. The results for the forward Euler method are marked with dashed lines and the results for the simulation-based method are denoted by solid lines.
The observed correlation between the errors of both methods results from the fact that the two estimators were tested for the same set of 500 trajectories.
Based on the presented example we can conclude that the estimation errors for the simulation-based approach are smaller than the errors gained with the forward Euler method. Clearly, the resulting difference in performance depends on the process under estimation and the sampling period T. Nevertheless, the estimates for the angular velocity are almost the same for both methods. This is because the velocities were modeled as the Wiener processes, for which better prediction has no effect.
6 Conclusions
To draw a general conclusion about the performance quality of both methods, an analytic method for determining bounds on the errors is needed. For the Euler method, the one-step local error is of the order \(O(T^2)\). Thus, for example, a two times smaller sampling period leads to a four times smaller prediction error, approximately. Whereas in the simulation-based method the local error can be made arbitrary small, depending on the chosen integration step, which can be much smaller than T. With proper optimization using adaptive methods of integration of ordinary differential equations (eg. ODE23, ODE45), the increase in the computational cost of the simulation-based method need not to be high. Moreover, the simulation-based method yields an additional degree of freedom. By choosing a method of integration and its parameters one can trade-off between better estimation performance and lower computational costs.
Notes
- 1.
This assumption is only valid for linear models, since in the general case, one can not find an explicit equation describing the evolution of the mean value for a stochastic differential equation. For nonlinear systems this means an approximation whose impact will be studied in future work.
- 2.
We assume that maps \(\varvec{a}\) and \(\varvec{b}\) fulfill the necessary conditions so an appropriate solution to (1) exists for \(t \ge 0\).
- 3.
As the results concerning the velocity \(\omega _{2}\) are almost identical to the results for \(\omega _{1}\), they are not included here.
References
Arulampalam, S., Maskell, S., Gordon, N., Clapp, T.: A tutorial on particle filters for on-line non-linear/non-gaussian Bayesian tracki ng. IEEE Trans. Signal Process. 50(2), 174–188 (2002)
Athans, M., Wishner, R., Bertolini, A.: Suboptimal state estimation for continuous-time nonlinear systems from discrete noisy measurements. IEEE Trans. Autom. Control 13, 504–514 (1968)
Bain, A., Crisan, D.: Fundamentals of Stochastic Filtering. Springer, New York (2009)
Bar-Shalom, Y., Li, X.R.: Estimation and Tracking: Principles, Techniques, and Software. Artech House, Boston (1993)
Chirikjian, G.S.: Stochastic Models, Information Theory, and Lie Groups. Birkhauser, Boston, USA (2009)
Gordon, N., Salmond, D., Smith, A.: Novel approach to nonlinear/non-gaussian bayesian state estimation. IEEE Proc. F, Radar Signal Process. 140(2), 107–113 (1993)
Julier, S., Uhlmann, J.: A new extension of the Kalman Filter to nonlinear systems. In: Proceedings of the 11th International Symposium on Aerospace/Defense Sensing, Simulation and Controls (1997)
Kalman, R.: A New Approach to Linear Filtering and Prediction Problems. J. Basic Eng. Trans. ASME’82 (Series D), 34–45 (March 1960)
Kay, S.: Fundamentals of Statistical Signal Processing: Estimation Theory, vol. I. Prentice Hall, Englewood Cliffs (1993)
Kowalczuk, Z., Domżalski, M.: Optimal asynchronous estimation of 2D Gaussian-Markov processes. Int. J. Syst. Sci. 43(8), 1431–1440 (2012)
Long, A.W., Wolfe, K.C., Mashner, M.J., Chirikjian, G.S.: The Banana Distribution is Gaussian: A Localization Study with Exponential Coordinates, pp. 265–272. MIT (2013)
Ristic, B., Arulampalam, S., Gordon, N.: Beyond the Kalman Filter: Particle Filters for Tracking Applications. Artech House, Boston (2004)
Sarkka, S.: On unscented Kalman filtering for state estimation of continuous-time nonlinear systems. IEEE Trans. Autom. Control 52(9), 1631–1641 (2007)
Wan, E., van der Merwe, R.: The unscented Kalman filter for nonlinear estimation. In: The IEEE 2000 adaptive systems for signal processing, communications, and control symposium AS-SPCC. Lake Louise, Alberta, USA (October 2000)
Zhou, Y., Chirikjian, G.S.: Probabilistic models of dead-reckoning error in nonholonomic mobile robots. In: Proceedings of the IEEE International Conference on Robotics and Automation, ICRA’03, Taipei, Taiwan (September 2003)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2016 Springer International Publishing Switzerland
About this paper
Cite this paper
Domżalski, M., Kowalczuk, Z. (2016). Discrete-Time Estimation of Nonlinear Continuous-Time Stochastic Systems. In: Kowalczuk, Z. (eds) Advanced and Intelligent Computations in Diagnosis and Control. Advances in Intelligent Systems and Computing, vol 386. Springer, Cham. https://doi.org/10.1007/978-3-319-23180-8_7
Download citation
DOI: https://doi.org/10.1007/978-3-319-23180-8_7
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-23179-2
Online ISBN: 978-3-319-23180-8
eBook Packages: EngineeringEngineering (R0)