점유격자지도 (Occupancy Grid Map)

로봇공학
한 줄 정의: 환경을 일정 크기의 격자 셀로 나누고 각 셀이 장애물로 점유되어 있을 확률을 저장하여 표현하는 확률적 지도 표현 방식.
점유격자지도점유격자지도: 왼쪽 점유격자지도와 오른쪽 위상지도를 비교한다. 격자 셀 대 노드·엣지, 점유 확률 대 연결성 중심.지도 표현 방식점유격자지도위상지도vs격자 셀일정 크기로 분할노드·엣지장소와 연결관계점유 확률셀마다 저장연결성 중심정확한 거리 생략

쉽게 풀면

바닥을 바둑판처럼 칸으로 나누고, 각 칸에 '여기 벽이 있을 확률이 몇 %'라고 적어 넣어 지도를 만드는 방법입니다.

왜 중요한가

환경을 격자로 나누고 각 셀의 점유 확률을 저장하는 지도로, 2D 라이다 기반 실내 로봇의 사실상 표준 지도 표현이며 AMCL 위치추정과 격자 기반 경로 계획이 이 위에서 동작합니다. ROS 내비게이션 스택의 지도 형식이 바로 이것입니다. 경로계획 알고리즘 대부분이 이 격자 표현을 입력으로 받도록 설계되어 있어, 다른 방식으로 지도를 만들었더라도 최종적으로는 이 형태로 변환해 계획 모듈에 넘기는 경우가 많다.

핵심 정리

예시로 보기

가상의 예(계산) 한 셀의 초기값은 p = 0.5이므로 로그 오즈는 0입니다. 센서가 이 셀을 ‘점유’라고 보고할 때의 역센서 모델을 p = 0.7(로그 오즈 ≈ +0.847)이라고 가정하면, 같은 셀에 관측이 누적될 때 점유 확률은 다음처럼 변합니다.

점유 관측 횟수누적 로그 오즈점유 확률
10.8470.700
21.6950.845
32.5420.927
43.3890.967

여기에 ‘비어 있음’ 관측(p = 0.4, 로그 오즈 ≈ −0.405) 한 번이 들어오면 4회 누적 후 확률이 0.967에서 약 0.952로 내려갑니다. 즉 한 번의 반대 관측으로 뒤집히지 않고, 관측이 쌓일수록 확신이 커집니다. 동적 장애물이 지나가면 이 누적 때문에 잔상이 남을 수 있어 실제 시스템은 값의 상·하한을 두어 ‘잊을’ 수 있게 합니다.

자주 하는 오해

오해바로잡기
격자 값은 ‘장애물의 크기’나 ‘높이’를 나타낸다.각 셀의 점유 확률(또는 그 로그 오즈)이며 높이가 아닙니다. 높이 지도는 별개의 표현입니다.
셀 값이 0.5면 반쯤 막혀 있다는 뜻이다.0.5는 ‘아직 모른다’를 뜻합니다. 부분 점유와는 다른 개념입니다.
해상도는 높을수록 좋다.메모리와 계산량이 해상도의 제곱(3차원은 세제곱)으로 늘고 센서 잡음 수준을 넘는 해상도는 이득이 없습니다.
점유격자지도 = SLAM이다.지도 표현일 뿐입니다. 로봇 위치를 함께 추정하는 문제는 SLAM이고, 점유격자는 그 지도 표현으로 쓰입니다.

논문에서는 이렇게 쓰입니다

실제 논문에서

이 용어를 직접 쓴 국내 논문 문장을 아직 수집하지 못했습니다. 수집되는 대로 출처와 함께 싣겠습니다.

예시 문장

아래는 용어의 쓰임을 보여 주려고 만든 예시로, 실제 논문에서 가져온 문장이 아닙니다.

점유 격자 지도는 각 셀의 점유 여부를 이진 확률 변수로 모델링하고, 센서 관측을 베이즈 갱신 규칙으로 누적하여 확률 값을 정련한다.

새 센서 값이 들어올 때마다 각 칸의 '장애물 있음' 확률을 베이즈 정리로 계속 업데이트해 점점 더 정확한 지도가 만들어진다는 뜻입니다.

점유격자지도는 센서에서 얻은 거리 측정값을 베이즈 필터를 이용해 각 셀의 점유 확률로 갱신함으로써, 잡음이 있는 측정에서도 안정적인 지도를 구축할 수 있게 한다.

베이즈 필터를 이용한 점유 확률 갱신 방식이 잡음에 강건한 이유를 설명한 문장이다.

조금 더 깊게 보면

셀이 독립이라는 가정으로 베이지안 갱신을 단순화하지만 실제로는 인접 셀이 상관되어 있고, 해상도를 높이면 메모리가 제곱으로 늘어 3D 확장에는 옥트리 같은 구조가 필요합니다.

동적 물체가 지나가면 잔상이 남고 유리벽은 비어 있는 것으로 기록되는 등 센서 특성이 그대로 지도에 반영되므로, 지도 갱신 정책이 장기 운용의 관건입니다.

각 셀의 점유 확률은 로그 오즈(log-odds) 형태로 저장해 여러 센서 관측을 단순한 덧셈으로 누적할 수 있게 만드는 것이 일반적인 구현 방식이며, 이는 확률 곱셈보다 수치적으로 안정적이고 계산이 빠르다.

3차원으로 확장할 때는 균일 격자 대신 옥트리 구조를 써서, 비어 있는 넓은 공간은 큰 블록 하나로, 물체가 있는 영역은 세밀한 블록으로 나누어 메모리를 절약한다.

주의할 점

격자 해상도를 지나치게 세밀하게 하면 메모리와 계산량이 급증하므로 로봇 크기와 환경 규모에 맞는 균형이 필요합니다.

동적으로 지나가는 사람이나 물체가 있으면 그 순간의 관측이 지도에 반영되어 나중에는 사라진 장애물의 잔상이 남을 수 있어, 오래된 관측의 신뢰도를 서서히 낮추는 갱신 정책이 필요하다.

헷갈리기 쉬운 용어

로봇 지도 표현의 종류를 비교합니다.

용어저장하는 것특징
점유격자지도셀별 점유 확률경로 계획에 바로 쓰기 쉬움, 해상도에 따라 메모리 증가
위상지도장소(노드)와 연결(엣지)정확한 거리는 생략, 크기가 작음
점군지도측정된 3차원 점들원본 형상 유지, 점유·빈 공간 정보는 따로 필요
SLAM위치추정과 지도 작성 문제점유격자는 그 결과물의 한 형태

참고 문헌

  1. Elfes, A. (1989). Using occupancy grids for mobile robot perception and navigation. Computer, 22(6), 46–57.
  2. Moravec, H., & Elfes, A. (1985). High resolution maps from wide angle sonar. Proceedings of the IEEE International Conference on Robotics and Automation.
  3. Thrun, S., Burgard, W., & Fox, D. (2005). Probabilistic Robotics. MIT Press.
  4. Hornung, A., Wurm, K. M., Bennewitz, M., Stachniss, C., & Burgard, W. (2013). OctoMap: An efficient probabilistic 3D mapping framework based on octrees. Autonomous Robots, 34(3), 189–206.

표의 기준값은 위 문헌에 근거한 관례이며, 분야·학술지마다 다른 기준을 쓸 수 있습니다.

개념 계통

상위 개념
같은 갈래

분야 전체 개념 지도 보기 →

관련 용어