An IMM Filter Defined in the Linear-Circular Domain, Application to Maneuver Detection with Heading Only

In this article, we propose a multimodel filter for circular data. The so-called Circular Interacting Multimodel filter is derived in a Bayesian framework with the circular normal von Mises distribution. The aim of the proposed filter is to obtain the same performance in the circular domain as the classical IMMfilter in the linear domain. In our approach, themixing and fusion stages of the Circular InteractingMultimodel filter are, respectively, defined from the a priori and from the a posteriori circular distributions of the state angle knowing the measurements and according to a set of models. We propose in this article a set of circular models that will be used in order to detect the vehicle maneuvers from heading measurements.The Circular Interacting Multimodel filter performances are assessed on synthetic data and we show on real data a vehicle maneuver detection application.


Introduction
Heading or direction is an important information for target tracking [1], navigation [2][3][4][5], flight control [6], and wind monitoring [7]. In these applications, it is necessary to have an accurate estimation of the direction and its change. However, these parameters are angular and defined on a circular domain. They must be processed with specific nonlinear tools that take the 2 -periodic nature of the data into account. The linear domain often fails at interpreting the transition between the beginning and the end of a 2 -period. Linear stands for variables defined on the real line while circular stands for variables defined on the unit circle [8]. The aim of this article is to propose an IMM filter able to process data of circular nature.
According to the works of [9][10][11], the multimodel approach is the best way to solve the change point detection problem in a dynamic estimation case. Three generations of Multiple-Model (MM) algorithms have been developed over the last decades. The first generation, Autonomous MM estimation (AMM) [12,13], uses several filters evolving independently. The second generation, the cooperative MM (CMM), improves the estimation by applying effective cooperation strategies between filters. The Interactive Multimodel (IMM) filter [14] belongs to this category. The third generation is the Variable Structure MM (VSMM) [15], in which the model set is time varying. The basic functional component of VSMM is model set adaptation that aims to determine the model set at each time. Multitarget tracking applications often need the use of nonlinear models that require extended versions of the IMM filter [16]. The Gaussian Mixture Filter such as the one described in [17] is another way to handle multimodel estimation in nonlinear filtering problems. In this case the estimation problem is considered but not the model detection. We can find in [18] a complete discussion on IMM filters with modified Kalman filter and particle filter implementations for the bearing-only maneuvering target tracking problem. One of the difficulties of this application is that the observations are angular. In this case, the measurement model is circular, so nonlinear, and the noise is non-Gaussian. The aim of this article is to address the same kind of problem with an IMM filter. We want to process the circular data in order to detect the maneuvers of the target with heading only observations. For one target and several models it is shown in the linear case that the Interactive Multimodel (IMM) filter is the most effective algorithm for change detection [14,19,20]. In this article we derive a Circular Interacting Multimodel (CIMM) filter for the linear-circular case and we show that the proposed filter is the most effective algorithm for change detection and model identification in the circular domain.
There has always been an interest for circular data processing since such periodic observations are involved in many applications [5,21,22]. In the circular case, we can distinguish different linear models. These models change whether the abscissa and the ordinate are circular. They are classified into a linear-circular model, a circular-linear model, and a circular-circular model. We can find in the published works several contributions about circular data estimation for systems described by a state and a measurement equations in the linear-circular domain. These contributions differ by the distribution used to model the state and measurement noise. In [23,24], it is proposed to model the state and measurement noise with a Wrapped Normal distribution. A Kalman like circular filter is then derived in the monodimensional case. In [4], the Bingham distribution is used to model periodic data with 180 degree of symmetry. A recursive implementation of the filter is proposed for quaternion data. In [25], a recursive filter with a Kalman like structure is derived in a Bayesian framework with the circular normal von Mises distribution. The proposed two-dimensional filter with a constant-velocity model is applied to the estimation of the direction and rotation rate of a mobile. When the a posteriori distribution of the state is multimodal, it is proposed in [26] to use a mixture of von Mises distributions. A circular particle filter is proposed in [22] for nonlinear measurement equation and an adaptive filter in combination with a change point detector is proposed in [2,11] for piecewise constant and linear evolution of angular data. Reference [3] considers a vehicle localization problem close to the classical nonlinear "Ship Azimuth Problem" [27]. For this application, the angular estimation problem was due to a nonlinear link between the vehicle direction and its position. In [3] a particle filter is defined in both linear and circular domains in order to fuse the observations of direction and localization and to estimate a vehicle position. However, in the literature, to the best knowledge of the author, there is no contribution about Multiple-Model filter design and evaluation in the linearcircular domain.
In this article, we propose a circular version of the Interacting Multiple-Model filter that fuses different models of rotation with the direction observations. The proposed filter is derived in a Bayesian framework based on the circular normal von Mises distribution. The von Mises distribution is the model of choice for circular data in most applied problems [28]. We show in [25] that this distribution can accurately model the noises on azimuth measurements that are processed with data provided by a magnetometer and an accelerometer. Furthermore, the circular normal distribution has been extensively studied and inference techniques have been well developed [28]. For example, it has been shown in [22] that a Circular General Likelihood Ratio change point estimator can be derived using this distribution in order to detect outliers in the measurements and thus improve the estimation robustness. The application of the proposed circular IMM filter aims at detecting a vehicle maneuvers through the use of models probabilities. The output of the filter is used to provide the best estimate of the vehicle direction.
A preliminary study of the proposed IMM filter was presented in [29]. In this article, a complete and corrected version of the filter is proposed.
(i) We correct the mixing and the fusion steps of the CIMM filter. We derive in Appendix the statistic parameters of the weighted sum of von Mises distributions. These parameters are used to redefine the mixing and fusion steps of the proposed filter.
(ii) We complete the characterization of the filter. We indeed show the equivalence between the reference IMM filter in the linear domain and the proposed CIMM filter in the linear-circular domain. We show that the CIMM filter is optimal in the linear-circular domain similarly to the IMM filter in the linear domain.
(iii) A complete assessment of the method in terms of direction estimation and model detection with synthetic and real data is provided.
This article is organized as follows: The second section is dedicated to the definition of the circular Bayesian tools used in the article. The circular IMM filter is described in the third section. The fourth and last section present the experimental assessment on synthetic and real data.

Circular Bayesian Estimation
According to the development and derivation described in [30], an Interactive Multimodel filter is defined in the Bayesian framework by the following equation: where is the circular state to estimate at instant . { } is a set of models and Φ is the measurements between 1 and . is an observation at instant . This weighted sum of the state distributions knowing the model and its probability to fit the observations describes the fusion operator in Figure 2. This operator fuses the state estimate obtained for each model. We can indeed derive the following expression that defines the state filter for each model: The circular state filter associated with each model and described by the a posteriori law of expression (2) is derived for a von Mises distribution in [25]. In an IMM filter, the a priori law of the state is obtained with the following weighted sum of distributions: This weighted sum describes the statistic of the output of the mixing operator in Figure 2. In order to complete the implementation of the filter in the circular domain with von Mises distributions, we derive in what follows the statistical property of a circular random variable distributed according to a weighted sum of von Mises distributions. The IMM filter redefined in the circular domain is denoted as CIMM. Let us consider a set of noisy observations of an angle following the circular distribution of von Mises. This distribution of the variable is defined by is the mean of the distribution and its concentration parameter. 0 is the modified Bessel function of the first kind and order zero. Figure 1 clearly shows that when the mean is not centered on the considered measurement interval, in this case [0, 2 [, the distribution does not have a unique maximum. This requires the use of statistical tools defined in the circular domain in order to take into account the periodic nature of this distribution.
The maximum likelihood estimator of the mean of several angles following a von Mises distribution is defined in [28] by the equation̂= where is the complex number such that 2 = −1. arctan * is the four-quadrant inverse tangent that is also known as 2.
In the case of heteroscedastic measurements (1) , . . . , ( ) , we assume that the observations are independent and follow a von Mises distribution of mean and respective concentration parameters (1) , . . . , ( ) . It is shown in [25] that the maximum likelihood estimator of the mean value is defined by The concentration parameter of the estimated mean is defined by [25] It is shown in [25] that the circular variance of the mean estimate is in this case always less than the circular variance of each measurement. We can conclude that expression (6) defines the weighted sum in the circular domain.
In the case of a weighted sum of independent circular von Mises distribution we derive in Appendix the following statistic parameters: where the expressions of and are obtained using the approximation of a von Mises distribution by a Wrapped Normal distribution. In this expression, (. . .) = 1 ( )/ 0 ( ) where 1 (. . .) is the modified Bessel function of the first kind and order 1. −1 (. . .) is computed by the approximation provided in [28]. Sub-step 2c Step 3

Definition of the Circular Models.
In our implementation, we consider several models of vehicle rotation. We use the CIMM filter to estimate the vehicle direction during maneuvers. We also use the models probabilities provided by the CIMM filter to detect the vehicle behavior.
As we are only interested in the direction, the models we consider can be described by the following general equation: ∈ [− , ] and −1 ∈ [− , ] are the vehicle directions at the respective instants and − 1. ] −1 is the noise contribution. This additive noise is distributed according to a zero centered von Mises distribution with concentration parameter . Let us consider the following models: (i) Movement with no maneuver: where the direction angle is constant and the angular velocity null. This movement is modeled by = 0. (ii) Movement with a rotation maneuver: to the left or to the right. This movement is modeled by a rotation rate assumed to be constant and defined by the command > 0 for a right turn and < 0 for a left turn.

Implementation of the Circular IMM Filter (CIMM)
3.2.1. Principle of the CIMM Filter. Let us consider a system and its model defined from models { 1 , . . . , }. We assume that the initial probability 0 = { 0 } of each model is known. The transition probability = { | −1 } of model at time − 1 to model at time is also assumed to be known.
Like the IMM, the CIMM filter is executed in three stages: interaction/mixing, filtering and combination/fusion. At each time step , the previous states are mixed then used by the circular filters defined in [25]. A circular filter is associated with each model to create estimates. These estimates are combined to produce a single final estimate. The weights in the combination/fusion are the probabilities of each model. The architecture of the CIMM filter is illustrated in Figure 2.
Each model of the CIMM filter is described by a state and a measurement equation.

State Equation.
The direction represents the state at time : ] −1 is the noise on the state model. As explained earlier in Section 3.1, = 0 stands for a movement without maneuver, and ̸ = 0 for a movement with a turn maneuver.

Measurement Equation.
The measurements of the angle are obtained by a compass. The measurement equation is given by is the measurement noise. It is distributed according to a centered von Mises distribution with concentration parameter . In the following, we describe each component of the CIMM architecture shown in Figure 2. The CIMM algorithm steps are further explained in Algorithm 1 and Figure 3.

Step 1: Interaction/Mixing
Substep 1a: Computation of the Conditional Model Probability. Let us define the conditional model probability | which is foreach model and model do Conditional probability: Intermediate concentration parameter witĥ0 −1 , 0 −1 , respectively, being the intermediate angle (after mixing) and the concentration parameter provided to filter and̂− 1 , −1 respectively, being the estimated state and the state concentration parameter associated with the circular filter with model .

Step 2: Filtering
Substep 2a: Filter Associated with Each Model. Each model is associated with a circular recursive filter described by a prediction step and a correction step. 6 Mathematical Problems in Engineering Its concentration parameter is The likelihood function in the circular domain is defined with a von Mises distribution as The value Λ is higher when the measurement is close to the estimatê| −1 obtained with model .

3.2.4.
Step 3: Fusion. The estimates provided by each filter are combined using a weighted sum in the circular domain. The weights are the models probabilities. They are used to increase the contribution of the most probable model in the processing of the final estimate: The concentration parameter of the final estimate is given by In the following section, we assess the CIMM algorithm with experimental data.

Experimentation
The aim of this experimentation is first to assess the method with synthetic data and second to show the interest of the proposed approach with real data. In the synthetic case, we evaluate the proposed CIMM filter in terms of heading estimation accuracy and maneuvers detection. In the real case, we use the proposed approach to detect the maneuvers of a vehicle.

Assessment on Synthetic Data.
In this experimentation, we consider the mobile trajectory presented in Figure 4(a). The mobile carries a sensor that provides observations of its heading. The real heading and an example of the observations are presented Figure 4(b). During the trajectory, the mobile makes several maneuvers. For this application, we use three models associated with three different motions: the first model assumes that the heading is constant ( = 0), the second assumes that the mobile turns to its left relatively to its current direction ( < 0), and the third assumes that the mobile turns to its right relatively to its current direction ( > 0). We show in Figure 4(c) the probability of each model as a function of time.
We assess the proposed CIMM filter in terms of heading estimation accuracy and maneuver detection robustness. In the linear case, IMM filtering is the best way to solve a dynamic estimation problem when several models can be observed. We want to show through this experimentation that the CIMM filter is an extension of the IMM filter to the linearcircular case. In this context, we consider two areas of study in Figure 4 For this experimentation, we define in Table 1 the filters parameters. and are, respectively, the covariance of the process noise and the covariance of the observation noise for the IMM filter. For the CIMM filter, and are, respectively, the concentration parameter of the process noise and the concentration parameter of the observation noise. For both filters, , is the probability to stay in the same model and , ̸ = the probability of transition from one model to another. | | is the absolute value of the decrement in model 2 and of the increment in model 3.
To assess the estimation accuracy, we process the circular distance between the true and the estimated directions. This distance is defined by the following expression: where is the true direction of the mobile and̂its estimate. The circular distance can take values between zero and two. We show in Figures 5(a)   In Figures 5(a) and 5(b), we note that the accuracies of the IMM and the CIMM filters are very close. The circular distances are indeed almost the same for the two filters. This result concerns area 1 that can be considered as a linear case given the angle observations. We can conclude that the CIMM filter acts as an IMM in this linear-circular case. In Figures 5(c) and 5(d), we observe that the accuracy of the CIMM filter is higher than that of the IMM. The circular distances are indeed higher for the latter. This result concerns area 2, a linear-circular case, where a transition between and − occurs at time = 250 ( ). Unlike the CIMM, this transition is seen by the IMM filter as an abrupt change and the related estimation is wrong. We observe that, in this linear-circular case, the CIMM is not affected by the direction transition and acts as the IMM filter in the linear case.
We show in Figure 6 the models probabilities in both areas as a function of time. With Figures 6(a) and 6(b), we observe that the probabilities of the IMM and the CIMM filters are close in area 1. However, Figures 6(c) and 6(d) show that the probabilities are different for the two filters at the transition instant = 250 ( ). By comparison of Figures 6(c) and 6(d) with the true models probabilities of Figure 4(c), we can conclude that the estimated CIMM probabilities are not affected by the transition between and − unlike the IMM.
To assess the accuracy of both filters in the two areas, we calculate the circular dispersion which is the sum of the circular distances. We report in Table 2 the circular dispersions in the two areas for different noise powers defined by , the IMM models probabilities in area 1  concentration parameter of the von Mises distribution of the noise. We observe from Table 2 that the circular dispersions for both filters in area 1 are very close. This result confirms that the CIMM is as accurate as the IMM filter when the linearcircular domain is similar to the linear domain. However, the circular dispersion in area 2 is different for the two filters. For = 50, this difference is due to a transition in the true heading at time = 250 . For = 10 and 1, this difference is not only due to this transition but also to the important variations in the noisy observations. Given the results shown in Table 2 in area 2, we can conclude that the CIMM filter is more accurate than the IMM in the linear-circular domain. Furthermore, the circular dispersions in areas 1 and 2 are similar for the CIMM filter; we conclude that the CIMM filter acts in the linear-circular domain as the IMM filter in the linear domain.
To evaluate the proposed filter in terms of maneuver detection, we calculate the probability to detect the model of a maneuver. A maneuver is detected when its estimated model probability is greater than 1/2. We show in Figure 4(c) the true models probabilities as a function of time. In this context, the probability of detection is defined as follows: we sum the number of detections obtained when the true model probability is equal to 1 with the number of nondetection when the true probability is equal to 0. We report in Table 3 the probability of detection of each model in the different areas and for different values of .
We observe in Table 3 that, for area 1, like for the circular dispersion case of Table 2, the probability to detect a model with the IMM and the CIMM filters is close. In area 2, for = 50 we observe in Table 3 a small difference for the two filters and for models 2 and 3. In this case, the smaller probability of detection of the IMM filter is due to the heading transition at = 250 . When = 10 the probability of detection of the CIMM filter is higher. In this case the IMM filter fails because of the transitions in the noisy observations. When = 1, the detection fails for both filters due to the high noise power. Finally, we can observe that, in Table 3 for the CIMM filter, the probabilities of detection are close in areas 1 and 2 for all models. These results confirm the ones already obtained by analysing the circular dispersion, thus allowing to conclude again that the CIMM filter acts in the linear-circular domain as the IMM filter in the linear domain.

Application to Maneuver Detection.
The proposed filter is applied to maneuver detection with real data obtained from a vehicle trajectory. Sensors observations are provided by Xsens device MTi-G-710 [31]. This device provides measurements of acceleration (accelerometers), rotation rate (Rate Gyro), magnetic field (magnetometer), and position (GNSS receiver). In this context, we process the heading directions with the measurements of acceleration and magnetic field. These noisy observations are applied to the IMM and CIMM filters to estimate the heading directions and to detect the maneuvers. The Xsens device MTi-G-710 also provides an estimate of the heading direction through an integrated Kalman filter that fuses the measurements provided by the accelerometers, Rate Gyro, magnetometer, and the GNSS receiver. This estimated heading direction is considered as the reference in this experimentation. In this context, the reference trajectory can be considered as a smoothed trajectory. In our approach, the data provided by the sensors were stored during the experimentation. The algorithm was not implemented in real time, but it processed the data on line.
We show in Figure 7(a) the reference heading direction as a function of time. We show in Figure 7(b) the trajectory of the vehicle. We define in Figure 7(a) the different areas of study that will be used to compare the two filters. These areas focus on the turns where most of the difference between the two filters is observed. We define in Figure 7(b) the various maneuvers of the vehicle on the trajectory. We show in Figure 8 the direction of reference and the observations in area 1. The maneuvers detected by the IMM and CIMM filters are, respectively, presented in Figures 9(a) and 9(b). In this experiment, a maneuver is detected when its model probability is greater than 1/2. We can observe that the detected maneuvers are different for the IMM and CIMM filter when there is a transition between and − . This effect is observed in area 1. The differences in detection are indicated by arrows in Figure 9. As in the synthetic case, the IMM filter fails in the presence of transitions in the observations of direction.
In order to evaluate the filters with the direction of reference, we compute the circular distance and the probabilities of detection for the different areas of study. We report in Table 4 the circular dispersion between the direction of reference and the estimated directions obtained with the IMM and CIMM filters. The circular dispersion is processed in all areas.
We report in Table 5 the probabilities of detection processed with the models probabilities provided by the IMM and CIMM filter and the models probabilities of reference defined with the direction of reference presented in Figure 7(b).
As in the synthetic case, we observe that the proposed CIMM filter is more accurate in terms of estimation and detection than the classical IMM filter. In area 2 where there are turns with no transitions between and − the two filters have a more similar accuracy compared to area 1. In area 1, when a transition appears in the observations, the CIMM filter does not fail due to its circular nature and provides more accurate results.

Analysis of Complexity.
This theoretical analysis considers the scalar case that is studied in this article for both the linear IMM filter and the Circular CIMM filter. The two filters have the same structure and their complexity differs  in terms of the complexity of the computational operators but not in terms of the memory space. The implementation of the CIMM filter is more complex. In the scalar case, the IMM filter uses only multiplications, divisions, and additions. However, the CIMM filter uses more complex operators like the trigonometric functions sin(), cos(), and arctan * () and the exponential function exp() as well as an approximation of the Bessel functions 0 () and 1 (). The computation of the Bessel function is indeed 17 times longer than the computation of an addition.
Let us compare the implementations of the filters step by step: (i) Interaction/Mixing, Section 3.2.2, Substep 1a. The processing complexity is the same for the two filters.
(iv) Filtering Section 3.2.3, Substep 2b. The CIMM filter is more complex because it uses the trigonometric function cos() and an approximation of the Bessel function 0 () to process the likelihood.
(v) Filtering Section 3.2.3, Substep 2c. The processing complexity is the same for the two filters.
In order to assess the difference of complexity between the IMM filter and the CIMM filter, we compare the processing time of the experimentation on synthetic and real data. We report in Table 6 the time of execution measured for each filter. In the synthetic case, the experimentation lasts 350 ( ) and the sampling frequency is 10 ( ) so the filter processes 3500 observations. The filters are implemented with Matlab and run on an Intel(R) Xeon(R) CPU E3-1505M @ 2.80 ( ). In conclusion, regarding the analysis of complexity and the results shown in Table 6, the CIMM filter is more complex than the IMM filter. However, this increase in complexity does not prevent the CIMM filter implementation in real time.

Conclusion
In this article we propose an Interacting Multimodel filter for circular data. The aim of the proposed filter is to detect rotations of a mobile in the linear-circular domain where observations of angles between − and are defined as a function of time. In our application, we detect maneuvers of the mobile with heading observations. We consider three models: no-turn, turn to the right, and turn to the left. The aim of the filter is to provide an estimate of the mobile direction and to detect its different maneuvers.
The proposed filter is defined in a Bayesian framework with the circular normal distribution of von Mises. In this article, we derive an approximation of the statistic parameters of a weighted sum of von Mises distributions. This approximation is used in the definition of the fusion and mixing steps of the Circular IMM filter.
The experimentation on synthetic data shows that the proposed CIMM filter acts in the linear-circular domain as the IMM filter in the linear domain. The interest of the proposed filter is that the transitions between and − of the direction and the noisy observations do not affect the estimation process unlike the IMM filter. An experimentation on real data confirms that the proposed CIMM filter, compared to the IMM filter, improves the heading direction estimation and the maneuver detection.
The prospects of this work are about drone attitude heading estimation with multimodel approaches. In this context, several states and measurements will have to be considered for the pitch, roll, and yaw angles. The research will focus on the correlation between the state components in the filtering process in order to model the dependence between these three circular states.

Distribution of a Weighted Sum of von Mises Distributions
In this appendix we assume a set of independent von Mises distribution; we show

Data Availability
The data in the experimental section used to support the findings of this study are available from the corresponding author upon request.