Abstract
In this paper, robots equipped with two complementary typologies of redundant sensors are considered: one typology provides sharp measures of some geometrical entity related to the robot pose (e.g., distance or angle) but is not univocally associated with this quantity; the other typology is univocal but is characterized by a low level of precision. A technique is proposed to properly combine these two kinds of measurement both in a stochastic and in a deterministic context. This framework may occur in robotics, for example, when the distance from a known landmark is detected by two different sensors, one based on the signal strength or time of flight of the signal, while the other one measures the phase-shift of the signal, which has a sharp but periodical dependence on the robot-landmark distance. In the stochastic case, an effective solution is a two-stage extended Kalman filter (EKF) which exploits the precise periodic signal only when the estimate of the robot position is sufficiently precise. In the deterministic setting, an approach based on a switching hybrid observer is proposed, and results are analyzed via simulation examples.
Introduction
Recent technology advances allow to create robots equipped with several kinds of sensors, often providing measures related to the same physical quantity but characterized by quite different and complementary characteristics. The problem of fusing this rich and heterogeneous amount of information can be sometimes far from trivial, and specific techniques, in some cases inspired by biological systems, can be adopted to obtain an effective solution.
An illustrative example in this direction which can be used to introduce the subject is a RFID (radio-frequency identification-based robot localization problem where a reader, installed on the robot, can measure some quantities depending on the distance from a set of RFID tags located in the environment, which act as known landmarks. The use of the RFID technology for robot localization is a recent and promising line of research. RFID data used for localization vary from a binary information (i.e., the tag detection), e.g., [1, 2, 3, 4, 5], to a more complete set of information, like received signal strength indication (RSSI), e.g., [6, 7, 8], or phase shift of the signal, e.g., [9, 10]. The RSSI, often available through quantized levels (e.g., of 1 dBm), usually presents a low sensitivity on the robot-tag distance, with a variation of a few dBm typically only for displacements of the robot in the order of 1 m. The phase shift, on the contrary, is very sharp (typically one degree corresponds to displacements of the robot in the order of 1 mm) but presents a cycle ambiguity, since an unknown number of full wavelengths is contained in the tag-reader distance. Both the measures are then related to the tag-reader distance but present different and, to some extent, complementary characteristics, which should be properly combined to obtain an effective estimation of the robot state.
Redundant and complementary measurements also characterize the perception system of humans and animals, mainly ensuring robustness and reliability. However, more interesting and rich consequences often characterize redundant senses as, e.g., in humans and animals, the presence of two eyes does not simply imply robustness against accidents but also allows to obtain a stereoscopic vision. However, handling this rich set of redundant information can be not trivial from a data processing point of view. More importantly, the information of some senses may be misleading in some situations, and, for this reason, the brain of humans and animals usually faces the problem by inhibiting or activating senses according to the expected importance of the information they can deliver [11]. Well known in this regard is the human pathology known as lazy eye where the brain almost ignores the information coming from a less efficient eye.
Inspired by this biological solution of the problem, we have decided to use this kind of approach to combine redundant sensors with complementary characteristics. In particular, dealing with the RFID-based robot localization problem previously discussed, the direct fusion of the information coming from RSSI and from the phase shift in an extended Kaiman filter does usually provide scarce estimation results. The solution approach proposed here is based on the following scheme: in a first stage, only the imprecise but univocal measurement (e.g., the RSSI in our illustrative example) is used in an extended Kaiman filter to estimate the state of the robot. Only when the estimate starts to become reliable (in a sense that will be specified in the paper), also the other non-univocal measurement (i.e., the phase shift in the considered example) will be incorporated in the Kaiman filter together with the other measure. A dynamic criterion to evaluate the time to switch between the two stages is part of the filtering approach. Notice in fact that also the possibility of resuming the first stage is contemplated by the algorithm. In the deterministic case, a similar approach is proposed by developing a switched observer that exploits both the measures.
Alternative approaches to face the estimation problem addressed in this paper can be developed, resorting to general purpose filtering techniques, e.g., particle filters [12] or multi-hypothesis Gaussian filters (e.g., [13]). These methods may in fact handle the multivariate nature of the measurements considered in this paper. However, these general purpose approaches do not exploit the specific structure of the considered sensory system, whose optimal handling represents a problem dual in a sense to the dynamic allocation of redundant actuators [14]. As a consequence, these approaches usually suffer from a computational complexity point of view, in particular when the size of the state of the system to be estimated becomes large (this occurs, e.g., in a robot localization context where also the coordinates of the landmarks in the environment would be part of the estimation problem).
The paper is organized as follows: in Section II, the problem formulation is provided in the stochastic and deterministic frameworks; the proposed solutions are described in Section III for the two frameworks and numerical simulations are shown and discussed in Section IV.
Problem formulation
We consider dynamic systems described by the following set of equations:
where x ∊ ℝ n is the robot state, u ∊ ℝ p is a control (or in general a known) input, w ∊ ℝ p w is an unknown disturbance acting on the dynamics of the system, z ij are scalar measures depending on the state, gij(x) are scalar functions of the state x (e.g., gij(x)= ∥ x ∥), hij(⋅) are invertible for i = 1 and periodical with some period Yj for i = 2 (i.e., h2j (y + kY j ) = h2j(y) for all y ∊ ℝ and k ∊ ℤ), and dij are unknown disturbances acting on the measures zij.
The idea of the model is that the set of measures Z1: = {z1j}j=1, …, q1 is such that every measure z1j ∊ Z1 is a univocal transformation of some scalar function g1j of the state x but is affected by a relatively strong disturbance d1j and/or can be characterized by a low sensitivity on the typical robot displacements in the considered environment. On the contrary, the set of measures Z2: = {z2j}j=1, …, q2 is such that every measure z2j ∊ Z2 is more sensitive and/or presents a better signal-to-noise ratio (i.e., the disturbance d2j is small if not completely negligible compared to the typical excursion of the signal) but is characterized by a non-univocal dependence on the scalar function g2j of the state of the system.
The stochastic scenario will be presented by considering a discrete time version of the original problem. This can be obtained by discretizing (e.g., using an Eulero approximation with some sampling time δ t ) the continuous time model (1)–(2). In the discrete approximation, any discrete time quantity rk denotes the corresponding sampled quantity r(kδ t ). The dynamics reported in Eq. (1) will then be written as follows:
The unknown disturbances reported in (3) and in (2) (i.e., wk and dij, for j = 1, …, qi, i = 1,2) will be assumed 0 -mean Gaussian: wk ∼ N (0, Qk) with Qk a covariance matrix and dij ∼ N (0, σ d ij 2).
Moreover, the two sets of measurements Z1 and Z2 will be considered coupled in the sense that q: = q1 ≡ q2 and, for all j = 1, …, q, g1j(x)=g2j(x). To fix ideas, if xp represents the position of the robot (xp is usually a subset of the robot state x), these functions will be taken as the distance of the robot from a set of landmarks, i.e., g1j(x) = g2j(x) = ∥ xp − x L j ∥, for j = 1, …, q, where xLj are the coordinates of landmark j.
While σ d 2j are assumed negligible, σ d 1j are quite large compared to the typical excursion of the signal (low signal-to-noise ratio). At this regard, for a satisfactory behavior of the estimation process, a key element is the relation between the size of σd1j with respect to the h2j(⋅) period Yj. As shown in simulation, and as intuitively can be expected, the larger is Yj w.r.t. σ d 1j for all j, the more effective will be the filtering procedure.
In the deterministic case, all the variables are not described as random process but deterministic ones. Nevertheless, it is possible to consider unknown disturbances acting on the system dynamics such as w and on the available (redundant) measurements, namely, d. Also in the deterministic case, it is assumed that the magnitude of the measurement disturbances d1j is considerably larger than d2j. In particular, d1j(t) can be even discontinuous in time. Then, we are able to model sensors’ dead zones, letting h1j(⋅) be continuous with respect to their arguments, even linear if needed, and confine the nonlinear behavior to the signals d1j's. As an example, if the j-th sensor is affected by a discontinuous dead-zone nonlinearity defined as
for some positive scalar σ, we could assume that d1j(t) is such that
holds true, with a continuous function hij(⋅). Dead-zone and saturation nonlinearities are often associated with low-cost sensors that generally have a (time-varying) nonlinear characteristic for large readings, requiring the use of a saturation, or when high-level noise makes readings close to zero too inaccurate to be acceptable and it is preferable to let the measure equal to zero via a dead-zone nonlinearity. An example that falls into this framework, in case of frequency estimation, is proposed in [15, 16]. In here, which is our starting point with respect to work on multiple output allocation for state estimation and which is far from complete, we consider a very simple system, namely, a first-order LTI (linear time invariant) SISO (single-input-single-output, i.e., p = 1 and q1 = q2 in our notation) described by
where A ∊ ℝnxn, B ∊ ℝ n , C ∊ ℝ1xn, g21(⋅): ℝ n → ℝ, and the function mod (s, Y) evaluates the modulus after division of s where Y is the periodicity interval. It is assumed that the output disturbances satisfy the following inequalities:
Despite the simplicity of the considered plant, a number of different considerations can be derived.
Stochastic scenario
The idea of the approach is that in a first stage, only the imprecise but univocal measurements z1, j, j = 1,2, …, q are used in an extended Kaiman filter (EKF) algorithm to estimate the state of the robot x. Only when the estimate starts to become reliable (in the sense specified below), also the other non-univocal measurements z2, jj = 1, 2, …, q will be incorporated in the extended Kaiman filter together with z1, j. A dynamic criterion to evaluate the time to switch between the two stages is part of the filtering approach. Notice in fact that also the possibility of resuming the first stage is contemplated by the algorithm. In the case of q > 1, a different stage can be defined for each couple of measures (z1j,z2j), i.e., for each landmark j = 1,2, …, q, and the dynamic switching rule could be performed independently on each landmark. This will be discussed below by introducing a simultaneous switching version of the algorithm (where the switching to the second stage is performed simultaneously for all j = 1,2, …, q) and a distributed switching version where the switching to the second stage is performed on a landmark-to-landmark basis.
The following algorithm summarizes the filtering approach. The algorithm is based on a q -dimensional vector, sk, which denotes the current stage of the filter: s j,k = 1 if at time step k the algorithm is considering only z1,j (we say that landmark j is in Stage 1), while sj,k = 2 if at time step k the algorithm is considering both z1, j, and z2, j (we say in this case that landmark j is in Stage 2). In the simultaneous version of the algorithm, the elements of vector sk are all simultaneously 1 or 2 (a scalar sk could be actually used in this case), and it is possible to say, without possibility of confusion, that the algorithm is in Stage 1 or 2.
Given the robot state estimate
The switching step presented in the algorithm is a crucial ingredient. A detailed explanation of this part will be reported after the algorithm.
Initialization: Let At each time step k, do the following:
Prediction:
where Fk and Wk are, respectively, the Jacobian of fd (x,u,w) w.r.t. the state x and to the noise w computed in the current estimate.
Correction step:
where R1 is a diagonal q × q covariance matrix with diagonal elements given by
If s
j,k
= 2 for at least one j ∊ {1,2, …, q], let Sk be the set of landmarks in Stage 2 and let
where z2k+1 = h2[g2(xk+1)] + d2k+1 is the vector of measurements z2j = h2, j[g2, j(xk+1)] + d2j for j ∊ S
k
, ž2, k+1 is the vector of the corresponding expected measures ž2, j (obtained according to Eqs. (7)–(8)), H2,k+1 is the Jacobian of h2 w.r.t. the state computed in the current estimate, R2
Let finally
* Simultaneous switching (D2SEKFs)
If s j,k = 1 for all j ∊ {1,2, …, q} and
is met for all j ∊ {1,2, …, q} (where nσ is a positive constant which value will be discussed in Section 4.1), perform the switching, i.e., set sj,k+1 = 2 for all j ∊ {1,2, …, q}. Define a counter kw and set it to 0.
If sj,k = 2 for all j ∊ {1,2, …, q} and
is met for some ja ∊ {1,2, …, q} or
is met for some jb ∊ {1,2, …, q}, then set k w = k w + 1; otherwise, set kw = 0. If kw ≥ np (where np is a positive integer, e.g., np = 20 has been considered in the simulative results), return to the first stage, i.e., perform the switching sj,k+1 = 1 for all j ∊ {1,2, …, q}, and reinitialize the covariance matrix Pk+1 (as discussed below, at the end of Section 3.1).
* Distributed switching (D2SEKFd)
For every index
If
The idea of the switching step is as follows. First of all, the quantity

Due to a large uncertainty in the position estimate, a cycle ambiguity afflicts the estimation process (green square, true robot position; red circle, robot position estimate)
As for the switching from Stage 2 to 1, a similar approach has been considered in the two versions, and, in any case, all s j,k are simultaneously set to 1 (a more complex approach could be considered where also the switching from Stage 2 to 1 is performed independently landmark by landmark). The idea is that if, for a certain number n p of consecutive steps (starting from the step where at least one landmark is switched to Stage 2), the innovation of one of the active measurements (i.e., all z1, j with j ∊ {1,2, …, q} and all z2, j with j ∊ S k ) falls outside a confidence interval, it is necessary to restore Stage 1.

When the position estimate is precise enough with respect to the period of function h2j, the probability of incurring in a cycle ambiguity becomes negligible (green square, true robot position; red circle, robot position estimate)
The confidence interval of the innovations is computed as follows. For the measurements z1, j the innovation at time step k can be written as follows:
Hence
The confidence interval for the innovations on the z1, j measurements is then taken as
Reinitialization of matrix P k . After the switching from Stage 2 to 1, the covariance matrix Pk is usually a too optimistic indicator of the real uncertainty associated with the estimate of the robot state. It is for this reason that it is important to reinitialize (increase) its elements. One way could be to reinitialize Pk by taking into account the story of the innovations in the last steps of the filter. A simpler (even if more conservative) way has been adopted in this paper which is based on the fact that, usually, measurements z1, j, due to their univocity, remain reliable during all the execution of the filter. So the uncertainty in the robot state estimate should always remain in the order of the uncertainties associated with these measurements. It is for this reason that in Section 4.1, where a unicycle-like robot is considered, the following choice has been adopted to reinitialize Pk: if xr = (x, y, θ) denotes the robot state (with xp = (x, y) being the position of the robot and 0 its orientation), Pk, after the reinitialization, is taken diagonal with elements (1, 1) and (2, 2) (respectively associated with the x − and y -coordinates) given by σ d 2, where σ d = max j σd1,j. As for the orientation, assuming θ uniformly distributed in (−π, π), a value (2π)2/12 is considered for the element (3, 3) of P k .
Our approach resembles a switched linear observer that can be associated with biological systems that exploit rough measurements to obtain a coarse estimate of the interested quantity (for snakes, it could be represented by odor), and then it is improved by means of more accurate sensors (thermic and tactile perception). Then, we exploit a standard linear observer with output injection formed only by z1, namely,
with a selection of the gain matrix K1 ∊ ℝ
n
such that A – K1C is Hurwitz. Note that, defining the estimation error e = x −
then sign (z1 −
so that the observer in (20) is considered when
for some unknown staircase function ℓ*(⋅): ℝ≥0 → ℤ. Then, we propose to use a different output injection whenever
for all integer
that contains all possible integers ℓ defining the multiple estimates
where ζ is such that the new measure
where z2(t±): =
where the initial values of ζℓ(0) = ℓ, for ℓ ∊ P, and its flow and jump dynamics are given as in (3.2).
Define a copy
where
Once the observer dynamics are (26), the output estimation error z1(t) − C
Note that we do not attempt here to identify the disturbance signal z1, given that it could be the signal introduced to model a dead-zone nonlinearity, whose time derivative is represented by means of differential inclusion and not by differential equation, introducing considerable difficulties. This allows also to consider discontinuous signals d1(t).
For t > t1, the observer dynamics are (26), and even if (A, C) is observable or detectable, the attractivity of the origin of the estimation error can be lost. Certainly, with the previous assumptions, the estimation error e(t) tends to zero as t goes to infinity if
which is unobservable for any α ∊ ℝ when only the measure z1 is considered.
These properties noticed by numerical simulations and motivated by intuitive reasoning will be formally addressed in the future.
Stochastic scenario
The robot considered in the simulations is a unicycle-like vehicle with a differential drive kinematics. If
with u
R,k
and u
L,k
being the distances covered in the time interval (kδ
t
, (k + 1)δ
t
) by the right and the left wheels, respectively. The distance uR,k covered at time step k by the right wheel is related to a noisy encoder reading u
R,k
e
by u
R,k
e
= uR,k + nR,k, where the noise term nR,k is assumed a 0 mean Gaussian random variable with variance given by KR | uR,k |, being KR a positive constant. A similar argument applies to the left wheel. The noise term wk of equation (3) is then related to the vector of noises (nR,k,nL,k). The covariance matrix Qk associated with (n
R,k
, n
L,k
) is a 2 × 2 diagonal matrix with diagonal elements KR | uR,k | and KL | uL,k |. Similarly, the known input uk of equation (3) is related to the encoder readings
The robot moves in a rectangular room with dimensions L1 × L2 (with L1 = 450 cm and L2 = 350 cm). Assume that there are three landmarks in the environment, with coordinates, respectively, given by [x1,y1] = [0,0], [x2,y2] = [L1,0], and [x3,y3] = [0,L2]. The robot measures the distance to each landmark j = 1,2,3:
and a periodic function of the distance:
So z2j ∊ [0,2π]. The quantity Yj represents the metric period of z2j, that is, two points with distances from landmark j which differ by a multiple of Yj will have the same measure z2j. The value of Yj will be specified below in the different simulations considered. The noise terms
In Fig. 3, considering only landmark 1 and a measurement z2,1 = 90.8°, it is reported the set of points characterized by this value of z2,1 (in absence of noise): that is, in all the circles (dashed and solid) reported in the figure, z2,1 = 90.8°. The circles have radius a + i ⋅ Y1, i = 1,2, …, where a = 5.04 cm is the radius of the smallest circle corresponding to a phase of 90.8° and Y1 = 20 cm. Notice how the periodicity Y1 is such that, due to the standard deviation of d1,1 (which is 50 cm), several circles may correspond with high probability to a given couple (z1,1,z2,2). For example, if the observed z1,1 was 285 cm and, due to the noise in z1,1, all the distances in the interval [z1,1 − σd1,1,z1,1 + σd1,1] = [235,335] cm are considered possible with high probability, the solid circles in the figure represent the robot positions associated with the couple (z1,1,z2,2) = (285cm, 90.8°).
Under this setting a first simulation is considered where the robot covers a random path of 1000 steps, assuming Yj = Y = 20 cm for all j = 1,2,3. The random path of the robot is obtained as follows: the robot moves on straight lines (covering 1 cm in each simulation step) and performs a random curve whenever its distance from the border of the environment becomes less than 1 m. The initial pose of the robot x
r
,0 = [100cm,70cm,0°]
T
is completely unknown, and the algorithm is initialized, taking as initial estimate

Landmark 1: in all the circles represented in the figure (dashed and solid), z2,1 = 90.8°. Here, the periodicity is Y1 = 20 cm. The solid circles are the more likely circles associated with the couple (z1,1,z2,2) = (285 cm, 90.8°)
obtained when using an EKF based only on z1j(j = 1,2,3) and the error obtained using the simultaneous switching version of Algorithm 1, with nσ = 4 (the figure also reports the error obtained by integrating the encoder readings starting from the correct initial pose of the robot). It can be observed how the estimation error of the proposed approach gets much smaller at step 229 where the switching from Stage 1 to 2 occurs. Notice that an EKF which uses both z1j and z2j (j = 1,2,3) from the beginning would produce a very poor performance (average estimation error in the order of 80 cm) since it would reconstruct a parallel robot trajectory starting from the considered initial position estimate (0,0).

The position estimation error e k produced by an EKF exploiting only measurements z1,j (blue dashed), using the simultaneous switching version of Algorithm 1 (red solid) and the odometry integration from the correct robot pose (black dotted)
In Fig. 5, the same path of Fig. 4 has been considered, but a jump of 20 cm in the y -coordinate of the robot position has been introduced at step 500. The size of the jump and the time when it occurs are completely unknown to the estimation algorithm (kidnapping problem) which is able to automatically detect it through a persistent inconsistency in the innovations. In fact, from Fig. 5, it is possible to see the capability of the algorithm to restore Stage 1 a few steps after the jump.

Kidnapping problem: a jump has been introduced on the robot path (blue curve) at step 500. The simultaneous switching version of Algorithm 1 is able to detect it and to restore Stage 1. The red plot is the estimated robot position with the algorithm in Stage 1 and the green plot with the algorithm in Stage 2. The red stars are the three landmarks.
Considering a longer random path (5000 steps), the steady-state performance (defined as the mean of the position estimation errors ek in the last 2500 steps of the simulation) of the simultaneous switching version of Algorithm 1 has been evaluated by performing 100 independent simulation runs for each value of nσ ∊ {1,2,4,6} and Y ∊ {1,2, …, 50} cm. In Fig. 6, the ratio p between this performance and the one given by an EKF which only uses z1j for the considered values of nσ and Y is reported. A ratio equal to 1 means that the proposed approach does not improve the estimate obtained by the EKF which only uses z1j, and this corresponds to the fact that a switching to the second stage of the filter did not occur. A value less than 1 means that the filter is switched to Stage 2. From the figure, it can be seen how, increasing nσ, a larger period Yj is required to allow the switching from Stage 1 to 2 (according to Eq. (17)). However, small values of nσ may cause a too optimistic switching: the filter enters Stage 2, but the estimate is yet not enough precise to allow the use of the measurements z2j. This causes the filter to return to Stage 1.
For Y > 20 cm, all the simulations, with any value of nσ, have switched to Stage 2 and provide a similar performance, with an error which is less than 5% of the error obtained with the EKF based only on the z1j. Notice however that,

Ratio ρ between the performance of the simultaneous switching version of Algorithm 1 and the one given by an EKF which only uses z1 j for different values of nσ and Y
for Y < 20 cm, all the curves are slightly increasing: this depends on the fact that the standard deviation on the z2j measurements has been taken of 5° which corresponds to a larger distance as Y increases. More in detail, if Δ Y represents the metric standard deviation in the z2 j measurements corresponding to sd2 j, we have Δ Y = 5Y /360. So, with Y = 20 cm, a standard deviation of 5° corresponds to Δ Y = 0.28 cm, while for Y = 50 cm, we have Δ Y = 0.69 cm.
It is also interesting to examine the average of the switching times from Stage 1 to 2 of the proposed approach for different values of n σ and Y. The average of the switching times has been computed over the same set of simulations considered in Fig. 6 and is reported in Fig. 7. From the figure, as expected, it can be seen how the switching times are decreasing with Y and increasing with nσ. For small values of Y and/or large values of nσ, the switching did not occur in all or some of the 100 simulations: in these cases, the average is not defined and is then not reported in Fig. 7.
It has been mentioned how the switching time from Stage 1 to 2 becomes larger when the value of nσ is increased and how small values of nσ may cause too premature switchings with the consequence that the algorithm is forced to return to Stage 1. In Table 1, the percentage of the correct switchings from Stage 1 to 2 performed by the proposed approach as a function of nσ is reported. A switching from Stage 1 to 2 is considered correct if it is not followed in the considered simulation by a switching from 2 to 1. The percentages reported in Table 1 have been computed over the same set of simulations considered in Figs. 6 and 7. Actually, in the simultaneous switching version of the approach, a value of nσ = 4 allows to obtain a correct switching in the 100% of the cases. The minimum period Y required to obtain a safe switching turns out to be about 13 cm (i.e., Y = 13 cm is the minimum value of Y which, with nσ = 4, allowed to obtain

Average switching times from Stage 1 to 2 of the proposed approach (simultaneous switching version) for different values of nσ and Y
in all the 100 simulations considered a switching to Stage 2, while for all Y < 13 cm, a switching was never obtained in all the 100 simulations). Notice that the minimum Y is very small if compared to the standard deviation σd1j which is 50 cm. This depends on the fact that more landmarks are considered and a filtering approach in general allows to significantly reduce the uncertainty associated with each single measurement (more precisely, the steady-state covariance matrix associated with the estimate of the robot position is such that the steady-state variance of the estimates of the distances to the landmarks is less than Y / 4 for Y ≥ 13 cm).
Table 2 reports the percentage of success obtained if considering the distributed switching version of Algorithm 1 (a 0 percentage of correct switching has been observed with nσ = 1 and 2). It is interesting to see how larger values of nσ are required when considering the distributed approach if compared to the simultaneous approach. This depends on the fact that when the switching is performed on a landmark by landmark basis, it is sufficient that the variance of the estimate of the distance to just one landmark j becomes smaller than Yj/nσ to perform the switching from Stage 1 to 2 of that landmark. Instead, in the simultaneous version of the algorithm, the variance of the estimate of the distances to all the landmarks must become less than Y j /nσ simultaneously.
Percentage of correct switchings from Stage 1 to 2 when using the simultaneous switching version of Algorithm 1
Percentage of correct switchings from Stage 1 to 2 when using the distributed switching version of Algorithm 1

The quantity

The quantity
According to the tables, a value of nσ = 4 has been adopted when using the simultaneous switching version of Algorithm 1, and nσ = 15 has been adopted in the other case. These values of nσ allow to obtain, using the corresponding approach, a correct switching from Stage 1 to 2 with a probability close to 1. However, the distributed switching version of the algorithm is usually characterized by a smaller switching time being the switching from Stage 1 to 2 of a landmark triggering in a few steps the switching of all other landmarks. For example, considering again the simulation of Fig. 4, while the switching from Stage 1 to 2 of the simultaneous approach occurred at step 229 (as seen in Fig. 4), using the distributed switching approach, the following switching times for landmarks 1, 2, and 3 were, respectively, observed: 69, 72, and 72.
In any case, the real advantage of the distributed switching version of the algorithm, as explained in Section 3.1, can be appreciated when the Yj are different. For example, in the same setting of Fig. 4, assume now that Y1 = 4 cm, Y2 = 30 cm and Y3 = 50 cm. All other parameters remain as in the simulation of Fig. 4. The very small value of Y1 implies that the simultaneous version of Algorithm 1 will never be able to switch to Stage 2: in fact, the projection on the distance to the first landmark of the steady-state covariance matrix associated with the robot position estimate based only on the measurements z1j, j = 1,2,3, never becomes less than Y1/4 (see Fig. 8). On the contrary, the distributed version of the algorithm allows to obtain rather quickly the switching to Stage 2 of landmarks 2 and 3. Thanks to these additional precise measurements, the covariance gets reduced and, after some steps, also the switching to Stage 2 of the first landmark becomes possible. This is illustrated in Fig. 9, which reports the behavior of the quantity
To provide a simple and intuitive example to appreciate the interesting properties of the proposed solutions, we have considered a simple first-order system with A = 0, B = 1, and C = 1, the control u = sin(2πt), the disturbance acting on the measure z1 such as
The second simulation shows in Fig. 11 that if a tight bound on the z1 amplitude is known, i.e.,

Top plot: the measures z1(t) and z2(t) are shown in black and red solid lines, respectively. Approximately at time t1 = 0.5 s, the observer dynamics is switched from (20) to (26) and some of the estimates
In this paper, the problem of fusing the information coming from two typologies of redundant sensors with complementary characteristics has been considered. The two types of sensors provide a measure related to the same quantity but possess different and, to some extent, complementary characteristics: the first one is rough and may be large grain and/or present a low sensitivity on the dynamics of the robot. The second type of sensor, on the contrary, even if precise, is supposed to present a non-univocal dependence on the robot state. This kind of situation also characterizes humans and animals where some perception organs are duplicated. In some cases, the biological solution adopted to face the problem of fusing the information is to inhibit or activate senses based on the expected importance of the information they deliver at the moment. Inspired by this approach, in the stochastic context, a two-stage extended Kaiman filtering algorithm is proposed which, in a first stage, only uses the imprecise but univocal measurement and, only when the estimate starts to become reliable, also incorporates the other non-univocal measurement in the filter. The direct fusion of the two measures in a standard Kaiman filter would often provide scarce results. In the deterministic setting, a similar approach has been shown to yield effective results and stimulating new possible strategies and interesting properties of the considered problem. Future developments could include an analytical investigation of the observability and the detectability properties of the considered problem.

Contrary to Fig. 10,

In this case, we considered a disturbance with no zero mean value, namely, d1(t) = 0.7sin(2π1.5t) + 0.3 and
Footnotes
6.
This article is a revised and expanded version of a paper entitled “Complementary redundant sensors for robot localization” presented at IARP Conference on “Bio-inspired Robotics,” ENEA-Frascati (Rome, Italy), May 14–15, 2014 (see Ref. [
]). This work has been partially supported by ENEA-EUROFUSION and by Università Italo-Francese (Galileo Program, G13-53).
1
The operator [s] evaluates the upper integer number closer to s.
