以下の内容はhttps://blog.control-theory.com/entry/2026/03/04/084603より取得しました。


State Estimation Method Using Median of Multiple Candidates for Observation Signals Including Outliers

This article provides a detailed explanation of a state observer that eliminates the influence of outliers in sensor outputs using a median-based selection from multiple estimation candidates. Related articles, related papers, and MATLAB links are placed at the bottom.

Author: Hiroshi Okajima, Associate Professor, Kumamoto University, Japan — 20 years of control engineering research

This article is based on the following paper.

  1. Okajima, Y. Kaneda and N. Matsunaga, State estimation method using median of multiple candidates for observation signals including outliers, SICE Journal of Control, Measurement, and System Integration, Vol. 14, No. 1, pp. 257–267 (2021) (Open Access)

MATLAB Code (MATLAB File Exchange)

This paper is co-work with Dr. Yasuaki Kaneda (Tokyo Metropolitan Industrial Technology Research Institute) and Prof. Nobutomo Matsunaga (Professor, Kumamoto University).


Contents


Why Outlier-Robust State Estimation Matters

In control systems, state observers estimate internal states from measured inputs and outputs. However, in practice, sensor outputs may contain outliers — values that are drastically different from the true signal. Outliers arise from various sources:

  • In visual sensors, dramatic changes in luminance or communication obstruction by moving objects can cause temporary anomalous readings.
  • In networked control systems, packet loss causes missing data, which can be regarded as a type of outlier.
  • In cyber-physical systems, data tampering due to security breaches can introduce arbitrary erroneous values.

When outliers enter a conventional state observer (e.g., a Luenberger observer), the estimation accuracy degrades dramatically, because the observer directly uses the corrupted measurement for correction. Even if the outlier is temporary, its influence propagates through the observer dynamics and can persist over time.

This paper proposes the MCV (Median of Candidate Vectors) observer, a novel state observer that eliminates the influence of outliers by creating multiple candidates of the estimated state along the time axis and selecting the appropriate one via a median operation. The observer gains are designed using LMI (Linear Matrix Inequality) optimization based on a robust invariant set analysis.


Plant Model and Outlier Formulation

Plant

Consider the discrete-time LTI system:

 \displaystyle x_p(k+1) = Ax_p(k) + B_u u(k) + B_d d(k)
 \displaystyle y(k) = Cx_p(k) + Dw(k) + y_{\mathrm{out}}(k)

where  x _p(k) \in \mathbb{R}^{m} is the state of order  m,  u(k) \in \mathbb{R}^{m _{i1}} is the control input,  y(k) \in \mathbb{R}^{m _{o1}} is the observed output,  d(k) \in \mathbb{R}^{m _{i2}} and  w(k) \in \mathbb{R}^{m _{o2}} are the process noise and sensing noise, respectively. The observability of the pair  (C, A) is assumed.

The disturbances are assumed to be peak-bounded: the maximum absolute values of each element in  d(k) and  w(k) are less than or equal to 1.

Outlier Signal

The term  y _{\mathrm{out}}(k) characterizes the outliers. Under normal conditions,  y _{\mathrm{out}}(k) = 0. When an outlier occurs at time  k = k _1, the magnitude of  y _{\mathrm{out}}(k _1) has no size limit — it can be arbitrarily large. This formulation also covers packet loss by setting  y _{\mathrm{out}}(k) = -Cx _p(k) - Dw(k), which makes  y(k) = 0.


Observation Frequency of Outliers

The paper characterizes outlier frequency using two integers  F _1 and  F _2:

  • For any time interval  \lbrack k, \ldots, k + F _1 - 1 \rbrack, the maximum number of outliers appearing is  F _2.

For example, if outliers occur at most once every 10 time steps, then  F _1 = 10 and  F _2 = 1. The key assumption is:

 \displaystyle F_1 \geq 2F_2 + 1

This means outliers must occur sparsely relative to the time window. This condition ensures that, among a sufficient number of estimation candidates, the majority are not contaminated by outliers.


Median of Candidate Vectors (MCV) Observer

Core Idea

A standard state observer uses the observation  y(k) at the current time to update the state estimate. If  y(k) is corrupted by an outlier, the estimate is immediately degraded. The MCV observer overcomes this by creating multiple candidates of the estimated state, each using the observation from a different past time. Among these candidates, those not affected by outliers will provide accurate estimates. The median operation then selects a candidate that is not influenced by the outlier.

Candidate State Estimates

The  i-th candidate of the estimated state at time  k+1 is defined as:

 \displaystyle \hat{x}_i(k+1) = (A^{i+1} - L_i C) \bar{x}(k-i) + L_i y(k-i) + \sum_{j=0}^{i} A^j B_u u(k-j)

where  \bar{x}(k-i) is the estimated state at time  k-i, and  L _i is the observer gain for the  i-th candidate. Each candidate uses only one observation  y(k-i) from a different time instant.

For  i = 0, this reduces to the standard Luenberger observer structure:

 \displaystyle \hat{x}_0(k+1) = (A - L_0 C) \bar{x}(k) + B_u u(k) + L_0 y(k)

For  i = 1, 2, \ldots, N-1, the candidates use observations further back in time and propagate the state forward using the plant model in a feedforward manner.

The number of candidates  N is chosen to satisfy:

 \displaystyle N \leq F_1, \quad 2F_2 + 1 \leq N

This guarantees that among the  N candidates, the number affected by outliers is strictly less than half, so the median selects a non-contaminated candidate.


Evaluating Outlier Contamination via ye(i)

To determine which candidates are affected by outliers, the following evaluation signal is defined:

 \displaystyle y_e(i) = y(k-i) - CA\bar{x}(k-i-1) - CB_u u(k-i-1)

This signal can be rewritten as:

 \displaystyle y_e(i) = CAe(k-i-1) + Dw(k-i) + CB_d d(k-i-1) + y_{\mathrm{out}}(k-i)

where  e(k) = x _p(k) - \bar{x}(k) is the estimation error. When an outlier occurs, the  y _{\mathrm{out}}(k-i) term dominates, making the magnitude of  y _e(i) much larger than in outlier-free cases. By taking the median of  y _e(i) over all candidates, the index  i^{\ast} corresponding to a non-contaminated candidate is identified.


MCV Observer Algorithm

Using a weighting vector  T \in \mathbb{R}^{1 \times m _{o1}}, the MCV observer algorithm is:

Algorithm (MCV Observer):

  1. Calculate  \hat{x} _i(k+1) for all  i = 0, \ldots, N-1 and compute  y _e(i).
  2. Find  i^{\ast} as the index corresponding to the median of  Ty _e(i) over  i = 0, \ldots, N-1.
  3. Set  \bar{x}(k+1) = \hat{x} _{i^{\ast}}(k+1) and proceed to the next step.

The weighting vector  T should be chosen so that the outlier component is not canceled in the product  Ty _e(i).


Observer Gain Design via LMI (Theorem 4.2)

The observer gains  L _i are designed based on a robust invariant ellipsoid approach. The error system for each candidate is:

 \displaystyle \hat{e}_i(k+1) = (A^{i+1} - L_i C) e(k-i) - L_i D w(k-i) + \sum_{j=0}^{i} A^j B_d d(k-j)

With the evaluation output  z _e(k) = Ee(k), the design goal is to minimize the upper bound  \gamma such that the evaluation signal satisfies the peak-bounded condition for all time.

Theorem 4.2: Assuming  d(k) and  w(k) are peak-bounded by 1, if there exist  P > 0, scalars  \alpha _i, and  \gamma > 0 satisfying certain matrix inequality conditions for all  i, then the evaluation signal of the MCV observer satisfies:

 \displaystyle |z_e(k)| \leq \gamma, \quad \forall k

For the explicit matrix inequality conditions, see Theorem 4.2 (Eqs. (32)–(33)) in the paper.

Design Problem (Problem 4.1)

By introducing the change of variables  Y _i = -PL _i, the design problem becomes: minimize  \gamma subject to LMI conditions involving  P,  Y _i, and fixed scalar parameters  \alpha _i. This is a standard SDP (semidefinite programming) problem when  \alpha _i are fixed, and the optimal  \alpha _i can be found by a hyperplane search within  \lbrack 0, 1 \rbrack. The observer gains are recovered as  L _i = -P^{-1}Y _i.


Weighted Median Extension

The paper also extends the MCV observer to use a weighted median instead of a standard median. In the weighted median, nonnegative integer weights  W = \lbrack w _0, \ldots, w _{N-1} \rbrack are assigned to each candidate, and candidates with larger weights are given more influence in the selection.

The condition on  W for  F _2 = 1 is:

 \displaystyle 2 \max_i w_i + 1 \leq \sum_{i=1}^{N} w_i

For example, with  N = 4, the weight  W = \lbrack 4, 3, 1, 1 \rbrack satisfies this condition.

To design appropriate weights, the paper evaluates each candidate individually using Problem 4.2, which assigns a separate Lyapunov matrix  P _i to each candidate and computes the individual performance bound  \gamma _i. Candidates with smaller  \gamma _i (i.e., better estimation performance) are assigned larger weights. In general, candidates with smaller index  i tend to have better performance because they are less affected by accumulated process noise.


Numerical Examples

The paper demonstrates the MCV observer on a 3rd-order, 2-output plant. The plant matrices are given in Eqs. (39)–(40) of the paper, with a sinusoidal test input  u(k) = \sin(0.01k).

Effect of MCV Observer

With  F _1 = 5,  F _2 = 1, and  N = 3, the MCV observer successfully eliminates the influence of periodic outliers in the sensor output. The traditional Luenberger observer exhibits large estimation errors when outliers occur, while the MCV observer maintains accurate estimation throughout.

The achieved performance bound is  \gamma = 1.4064, guaranteeing that the evaluation signal satisfies the peak bound for all time.

Effect of Number of Candidates

N  \gamma
1 0.7511
2 1.1077
3 1.4064
4 1.6053

As  N increases, the performance bound  \gamma becomes larger. This shows that it is better to select a small  N under the constraint of the condition  2F _2 + 1 \leq N. A smaller  N means fewer candidates are needed, which reduces the conservatism introduced by ensuring robustness across all candidates.

Individual Candidate Performance

i  \gamma _i
0 0.8014
1 1.1084
2 1.4070
3 1.6053

Candidates with smaller index  i (closer to the current time) achieve better individual performance, confirming that using the most recent observation leads to the best estimate when no outlier is present.

Effect of Weighted Median

Using the weighted median with  W = \lbrack 4, 3, 1, 1 \rbrack, the selection frequency of the best candidate  \hat{x} _0 increases from 121 (standard median) to 240 (weighted median) out of a total selection count. The weighted median achieves slightly better performance because the candidate with the best estimation accuracy is selected more frequently.


Multi-Rate State Observer — H. Okajima, Y. Hosoe and T. Hagiwara, State Observer Under Multi-Rate Sensing Environment and Its Design Using l2-Induced Norm, IEEE Access (2023). Addresses state estimation when sensors operate at different sampling rates, using periodically time-varying observer gains optimized via LMI. The multi-rate observer and the MCV observer address complementary challenges in multi-sensor systems.

Observer-Based Feedback Control for Multi-Rate Systems — H. Okajima, K. Arinaga and A. Hayashida, Design of observer-based feedback controller for multi-rate systems with various sampling periods using cyclic reformulation, IEEE ACCESS (2023). Extends to a complete observer-based feedback controller for systems where both sensors and actuators operate at different rates.

Model Error Compensator (MEC) — The MCV observer can be combined with the Model Error Compensator to achieve robust control in environments where both model errors and sensor outliers exist.

Navigation System Using MCV Observer — N. Matsunaga, I. Yamamoto and H. Okajima, Navigation System for Personal Mobility Vehicles Following a Cluster of Pedestrians in a Corridor Using Median of Candidate Vectors Observer, Journal of Robotics and Mechatronics, Vol. 35, pp. 1562–1572 (2023). Applies the MCV observer to remove outliers in pedestrian tracking for personal mobility vehicle navigation.


MATLAB Code


Blog Articles (blog.control-theory.com)

Research Web Pages (www.control-theory.com)

Video


Paper Information

  1. Okajima, Y. Kaneda and N. Matsunaga, "State estimation method using median of multiple candidates for observation signals including outliers", SICE Journal of Control, Measurement, and System Integration, Vol. 14, No. 1, pp. 257–267, 2021. DOI: 10.1080/18824889.2021.1985702 (Open Access). MATLAB Code

Co-authors: Yasuaki Kaneda (Tokyo Metropolitan Industrial Technology Research Institute), Nobutomo Matsunaga (Professor, Kumamoto University)

Earlier Japanese papers:

    1. Okajima, Y. Kaneda and N. Matsunaga, "State Estimation by Observer Using Median Operation for Observed Output with Outliers," Proceedings of the SICE Annual Conference 2019, pp. 877–882 (2019)
    1. Okajima, "状態のロバスト不変集合を用いた外れ値除去機能を有するMCVオブザーバの解析とオブザーバゲイン設計," 計測自動制御学会論文集, Vol. 55, No. 12, pp. 823–829 (2019)

Self-Introduction

Hiroshi Okajima — Associate Professor, Graduate School of Science and Technology, Kumamoto University. Member of SICE, ISCIE, and IEEE.


If you found this article helpful, please consider bookmarking or sharing it.

StateEstimation #StateObserver #Outliers #Median #RobustEstimation #ControlEngineering #LMI #LinearMatrixInequality #KalmanFilter #MATLAB




以上の内容はhttps://blog.control-theory.com/entry/2026/03/04/084603より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14