8.88 확률론적 위치 추정과 지도 작성
1. 개요
확률론적 위치 추정(probabilistic localization)과 지도 작성(mapping)은 로봇이 환경 내에서 자신의 위치를 추정하거나 환경의 지도를 구축하는 문제이다. 두 문제는 확률론적 프레임워크에서 자연스럽게 정식화되며, 결합된 형태가 SLAM(Simultaneous Localization and Mapping)이다.
2. 위치 추정 문제의 분류
2.1 추적(Tracking)
로봇의 초기 위치가 알려진 경우, 센서 관측과 제어로부터 위치를 지속적으로 추적한다. 초기 불확실성이 작고 점진적으로 변화하므로 단봉 분포(통상 가우시안)로 근사할 수 있다.
2.2 글로벌 위치 추정(Global Localization)
초기 위치가 알려지지 않은 경우이다. 전체 지도에 걸쳐 가능한 위치를 탐색해야 하므로 다봉 분포를 표현할 수 있는 방법(입자 필터, 히스토그램 필터)이 필요하다.
2.3 납치 로봇 문제(Kidnapped Robot Problem)
로봇이 위치 추적 중에 갑자기 다른 위치로 이동된 경우이다. 추적 시스템이 이러한 큰 변화를 감지하고 글로벌 위치 추정으로 전환할 수 있어야 한다.
3. 마르코프 위치 추정(Markov Localization)
3.1 개요
베이즈 필터의 직접적 적용으로, 로봇 위치에 대한 믿음을 확률 분포로 유지하고 재귀적으로 갱신한다.
3.2 구현 방법
- 격자 기반: 상태 공간을 격자로 이산화. 히스토그램 필터.
- 가우시안 기반: 단봉 가우시안 분포. 칼만 필터, EKF.
- 입자 기반: 가중 샘플. 입자 필터, MCL.
4. 지도 작성 문제
4.1 지도의 표현
점유 격자 지도(Occupancy Grid Map): 환경을 이산 셀로 분할하고 각 셀의 점유 확률을 유지한다.
p(m_i \vert \mathbf{z}_{1:t}, \mathbf{x}_{1:t})
특징 기반 지도(Feature-based Map): 환경의 주요 특징(모서리, 라인, 평면 등)과 그 위치를 저장한다.
점군 지도(Point Cloud Map): 라이다 등으로 수집된 3차원 점의 집합이다.
토폴로지 지도(Topological Map): 장소를 노드로, 연결을 에지로 표현한 그래프이다.
4.2 알려진 자세에서의 지도 작성
로봇 자세 \mathbf{x}_{1:t}가 정확히 알려진 경우, 지도 작성은 다음의 사후 분포를 추정하는 문제이다.
p(\mathbf{m} \vert \mathbf{z}_{1:t}, \mathbf{x}_{1:t})
점유 격자의 경우 각 셀을 독립으로 가정하고 개별적으로 베이즈 갱신을 수행한다. 로그 오즈 표현이 효율적이다.
l_i^t = l_i^{t-1} + \log\frac{p(m_i \vert \mathbf{z}_t, \mathbf{x}_t)}{1 - p(m_i \vert \mathbf{z}_t, \mathbf{x}_t)} - l_0
5. SLAM: 결합 문제
SLAM은 로봇 궤적과 지도를 동시에 추정한다.
p(\mathbf{x}_{1:t}, \mathbf{m} \vert \mathbf{z}_{1:t}, \mathbf{u}_{1:t})
5.1 완전 SLAM과 온라인 SLAM
완전 SLAM(Full SLAM): 전체 궤적 \mathbf{x}_{1:t}와 지도를 추정. 오프라인 처리에 적합하며, 최적화 기반 방법(그래프 SLAM)이 표준이다.
온라인 SLAM: 현재 자세 \mathbf{x}_t와 지도만 추정. 이전 자세들은 주변화된다. 필터 기반 방법(EKF-SLAM)에 적합하다.
5.2 닭과 달걀 문제
SLAM의 어려움은 위치 추정과 지도 작성이 상호 의존적이라는 점이다. 정확한 지도가 있으면 위치 추정이 용이하고, 정확한 위치가 있으면 지도 작성이 용이하지만, 둘 다 동시에 미지이다. 확률론적 프레임워크가 두 불확실성을 동시에 관리한다.
5.3 데이터 연관(Data Association)
관측된 특징과 지도상의 랜드마크의 대응을 결정하는 문제이다. 마할라노비스 거리 기반 문 검정, JCBB(Joint Compatibility Branch and Bound) 등의 방법이 사용된다.
5.4 루프 폐합(Loop Closure)
로봇이 이전에 방문한 장소로 돌아왔을 때 이를 인식하는 것이다. 루프 폐합의 감지는 누적 오차를 제거하는 강력한 제약을 제공하며, SLAM 시스템의 정확도를 크게 향상시킨다.
6. 대표적 SLAM 방법
6.1 EKF-SLAM
상태 벡터에 로봇 자세와 모든 랜드마크 위치를 포함하고 확장 칼만 필터로 추정한다. 단봉 가우시안 분포를 유지하며, 상태 크기가 랜드마크 수에 비례하므로 확장성에 한계가 있다.
6.2 FastSLAM
Rao-Blackwellized 입자 필터에 기반한다. 각 입자가 로봇 궤적의 가설을 나타내고, 궤적이 주어진 조건부 랜드마크 분포는 가우시안(독립)으로 유지된다.
6.3 그래프 SLAM
로봇 자세와 랜드마크를 노드로, 오도메트리 및 관측 제약을 에지로 하는 포즈 그래프를 구성하고, 비선형 최소 제곱으로 전체 궤적과 지도를 최적화한다. g2o, GTSAM, iSAM2 등의 해법기가 있다.
7. 참고 문헌
- Thrun, S., Burgard, W., & Fox, D. (2005). Probabilistic Robotics. MIT Press.
- Durrant-Whyte, H., & Bailey, T. (2006). “Simultaneous Localization and Mapping: Part I.” IEEE Robotics and Automation Magazine, 13(2), 99–110.
- Bailey, T., & Durrant-Whyte, H. (2006). “Simultaneous Localization and Mapping: Part II.” IEEE Robotics and Automation Magazine, 13(3), 108–117.
- Grisetti, G., Kümmerle, R., Stachniss, C., & Burgard, W. (2010). “A Tutorial on Graph-Based SLAM.” IEEE Intelligent Transportation Systems Magazine, 2(4), 31–43.
version: 1.0