English
Sensors & Time Series

State Estimation상태 추정

센서 값에는 늘 잡음이 있고, 때로는 끊기거나 엉뚱한 값이 섞입니다. 여러 번의 측정과 움직임에 대한 지식을 합쳐 지금 상태를 가장 그럴듯하게 어림하는 방법을 직접 움직이며 봅니다.

잡음과 평균

같은 값을 여러 번 재서 평균하면 잡음이 줄어듭니다. 서로 독립인 잡음이라면 평균의 표준편차는 σ/√n입니다. 정밀도를 두 배로 하려면 네 배를 재야 합니다.

정밀도가 다른 센서 둘을 합칠 때는 덜 흔들리는 쪽에 더 큰 무게를 줍니다. 분산의 역수에 비례하게 무게를 주면, 합친 값이 둘 중 좋은 센서보다도 정확해집니다. 이 생각이 칼만 필터의 한가운데에 있습니다.

Var(x̄) = σ²/n · x̂ = w·z₁ + (1−w)·z₂, w = σ₂²/(σ₁²+σ₂²) · 1/σ̂² = 1/σ₁² + 1/σ₂²

체험: 재면 잴수록

참값 20을 표준편차 σ인 잡음과 함께 n번 쟀습니다. 금색이 지금까지의 평균, 파란 점선이 σ/√n의 두 배 띠입니다. 같은 실험을 300번 되풀이해 평균이 실제로 얼마나 퍼지는지도 쟀습니다.

체험: 센서 두 개 합치기

같은 양을 재는 센서 두 개가 있습니다. 그림을 눌러 센서 1에 줄 무게 w를 고르면, 합친 값의 표준편차가 나옵니다. 초록 점이 역분산 가중의 답입니다. 아주 나쁜 센서라도 버리는 것보다 작은 무게로 넣는 쪽이 낫습니다.

요약독립인 잡음은 평균하면 σ/√n로 줄어듭니다.정밀도가 다른 측정은 분산의 역수로 무게를 줍니다.합친 값은 어느 한쪽보다도 정확합니다.

참고문헌

  1. Gauss, C.F. (1823). Theoria combinationis observationum erroribus minimis obnoxiae. Göttingen.
  2. Taylor, J.R. (1997). An Introduction to Error Analysis (2nd ed.), ch. 5 and 7. University Science Books.

칼만 필터

움직이는 물체는 같은 값을 여러 번 잴 수 없습니다. 칼만 필터는 두 단계를 되풀이합니다. 예측: 움직임 모형(여기서는 등속)으로 다음 위치와 그 불확실성을 내다봅니다. 갱신: 새 측정과 예측을 역분산 가중으로 합칩니다. 측정을 얼마나 믿을지(칼만 이득 K)는 예측의 불확실성 P와 측정 잡음 R의 비율로 정해집니다.

필터는 움직임이 얼마나 흔들리는지(Q)와 측정이 얼마나 흔들리는지(R)를 알아야 합니다. Q를 너무 크게 잡으면 측정을 따라 출렁이고, 너무 작게 잡으면 실제 움직임을 늦게 따라갑니다.

x̂⁻ = F x̂ · P⁻ = F P Fᵀ + Q · K = P⁻Hᵀ(H P⁻Hᵀ + R)⁻¹ · x̂ = x̂⁻ + K(z − H x̂⁻) · P = (I − K H) P⁻

체험: Q와 R을 잘못 알려 주기

등속으로 움직이다 가끔 흔들리는 물체를 잡음 섞인 위치 측정으로 쫓습니다. 위 두 슬라이더는 실제 세상, 아래 두 슬라이더는 필터가 믿는 값의 배수입니다(×1이면 정확히 앎). 측정 끊기를 켜면 60–85 시점에 측정이 없어 예측만으로 가고, 불확실성 띠가 넓어집니다.

체험: 직접 움직이는 물체 쫓기

위 띠 위에서 포인터를 좌우로 움직이면 초록 공(참 위치)이 따라 옵니다. 초당 20번 잡음 섞인 측정(회색 점)이 들어오고, 금색 선이 칼만 추정, 금색 상자가 ±2σ입니다. 측정 끊기 단추를 누르고 있는 동안은 측정이 오지 않습니다. 그동안 추정이 마지막 속도로 미끄러지고 상자가 커지는 것을 보세요.

요약예측과 측정을 불확실성에 따라 섞는 것이 칼만 필터입니다.Q와 R을 잘못 알면 출렁이거나 늦습니다.측정이 끊겨도 예측으로 버티며, 그동안 불확실성이 커집니다.

참고문헌

  1. Kalman, R.E. (1960). A new approach to linear filtering and prediction problems. Journal of Basic Engineering 82(1).
  2. Welch, G., Bishop, G. (2006). An Introduction to the Kalman Filter. UNC-Chapel Hill TR 95-041.
  3. Bar-Shalom, Y., Li, X.R., Kirubarajan, T. (2001). Estimation with Applications to Tracking and Navigation, ch. 5–6. Wiley.

센서 융합: 자이로와 가속도계

휴대폰과 드론은 기울기를 두 센서로 잽니다. 자이로는 회전 속도를 재므로 적분하면 각도가 되지만, 작은 편향이 쌓여 각도가 점점 흘러갑니다. 가속도계는 중력 방향으로 각도를 바로 주지만, 잡음이 크고 움직일 때 흔들립니다. 하나는 길게 보면 틀리고, 다른 하나는 짧게 보면 틀립니다.

상보 필터는 빠른 변화는 자이로에서, 느린 기준은 가속도계에서 가져옵니다. α가 1에 가까울수록 자이로를 오래 믿습니다. 칼만 필터로 같은 일을 하면 α를 잡음 크기에서 계산해 정해 줍니다.

θ̂k = α·(θ̂k−1 + ωk·Δt) + (1−α)·θacc,k · τ = Δt·α/(1−α)

체험: 직접 기울여 보기

왼쪽 원 안을 끌어 막대를 기울이면, 초록 막대(참 각도)가 관성을 가지고 따라옵니다. 빨간 선은 자이로를 적분만 한 것, 파란 선은 가속도계만, 금색은 상보 필터입니다. 자이로 편향을 키우면 빨간 선이 점점 흘러가고, 가속도계 잡음을 키우면 파란 선이 떨립니다.

체험: 가장 좋은 α 찾기

정해진 30초 움직임을 시뮬레이션해 α마다 오차를 계산했습니다. α가 작으면 가속도계 잡음이, 크면 자이로 편향이 오차를 지배합니다. 편향이 클수록 가장 좋은 α가 작아집니다.

요약자이로는 짧게, 가속도계는 길게 믿을 만합니다.상보 필터는 둘을 주파수로 나눠 합칩니다.가장 좋은 섞는 비율은 잡음과 편향 크기에 달렸습니다.

참고문헌

  1. Mahony, R., Hamel, T., Pflimlin, J.-M. (2008). Nonlinear complementary filters on the special orthogonal group. IEEE Transactions on Automatic Control 53(5).
  2. Madgwick, S.O.H., Harrison, A.J.L., Vaidyanathan, R. (2011). Estimation of IMU and MARG orientation using a gradient descent algorithm. IEEE ICORR.
  3. Higgins, W.T. (1975). A comparison of complementary and Kalman filtering. IEEE Transactions on Aerospace and Electronic Systems AES-11(3).

2차원 추적

GPS 같은 위치 측정은 몇 m씩 흔들리고, 터널에서는 끊기며, 가끔은 반사파 때문에 엉뚱한 곳을 가리킵니다. 등속 칼만 필터를 x·y에 함께 쓰면 측정이 끊겨도 움직임을 이어 가고, 예측에서 너무 먼 측정(마할라노비스 거리가 큰 것)은 버릴 수 있습니다(게이트).

필터는 지금까지의 측정만 씁니다. 기록을 다 받은 뒤라면 뒤의 측정까지 써서 과거 위치를 다시 고칠 수 있는데, 이것이 RTS 평활입니다. 끊김 구간에서 차이가 가장 큽니다.

d² = νᵀS⁻¹ν, ν = z − H x̂⁻, S = H P⁻ Hᵀ + R · d² > 13.8 (χ²₂, 99.9%) ⇒ z ✗ · x̂k|N = x̂k + Ck(x̂k+1|N − x̂⁻k+1)

체험: 길을 그리고 쫓기

그림 위를 끌어 길(초록)을 그리면, 그 길을 따라 측정(회색 점, 엉뚱한 측정은 빨강)을 만들고 칼만 필터(금색)로 쫓습니다. 금색 타원은 2σ 불확실성입니다. 게이트를 끄면 엉뚱한 측정에 필터가 끌려가고, 끊김을 켜면 길 가운데에서 측정이 사라집니다. 아래 그림은 시점마다 오차입니다.

요약2차원도 같은 식이며, 위치와 속도를 함께 추정합니다.게이트는 예측과 너무 먼 측정을 버립니다.나중 측정까지 쓰는 평활은 실시간 필터보다 정확합니다.

참고문헌

  1. Rauch, H.E., Tung, F., Striebel, C.T. (1965). Maximum likelihood estimates of linear dynamic systems. AIAA Journal 3(8).
  2. Bar-Shalom, Y., Li, X.R., Kirubarajan, T. (2001). Estimation with Applications to Tracking and Navigation, ch. 6 and 8. Wiley.
  3. Särkkä, S. (2013). Bayesian Filtering and Smoothing, ch. 8. Cambridge University Press.

교육용 페이지입니다. 센서 값은 모두 브라우저에서 만든 시뮬레이션입니다.