728x90

10.3 대응관계가 주어지지않을때 EKF SLAM

10.3.1 EKF SLAM 기본 알고리즘

 대응 관계가 주어진 EKF SLAM을 더 일반적인 EKF SLAM 알고리즘으로 대응 관계를 구하는 최대 우도 maximum likelihood ML 근사기를 사용하여 확상시켜보겠습니다. 표 10.2는 이 알고리즘을 보여주고 있는데, 이제 여기에는 대응관계 변수 $c_t$가 빠지게 됩니다. 대신 지도의 순간적인 크기인 $N_{t-1}$가 들어가게 됩니다.

표 10.2는 아웃라이어 제거가 가능한 ML 대응관계 근사기를 가진 EKF SLAM 알고리즘

 

 표 10.1의 대응관계가 주어진 경우 EKF SLAM과 마찬가지로 3~6번째 줄에서 동작 갱신은 동일합니다. 하지만 관측 갱신 루프가 다른데, 8번째 줄부터 보면 우선 새 랜드마크의 인덱스 $N_{t}$ + 1를 생성시킵니다. 이 인덱스는 기존의 지도 랜드마크의 개수 보다 하나가 더 큰것으로 새 랜드마크의 위치는 9번째 줄에서 로봇의 근사 자세와 측정으로 얻은 거리와 방위각을 계산한 기대치로 초기화 시킵니다. 9번째 줄에서는 새 랜드마크에 관측된 시그니처 값도 주게 됩니다.

 

 다음으로 10~19번째 줄 사이에는 새로운 랜드마크를 포함해서 모든 가능한 랜드마크에 대해 갱신 값들이 계산되는데, 19번째 줄에서는 새 랜드마크 생성시의 임계치를 설정합니다. 새 랜드마크는 지도 상에 존재하는 모든 랜드마크의 마할라노비스 거리가 임계치값 $\alpha$를 초과하면 생성이 됩니다.

 

 ML 대응관계는 20번째 줄에서 선택이 되는데, 관측치가 이전에 본적이 없는 랜드마크로 판단된다면 21번째 줄에서 랜드마크 카운터는 증가하게 되고, 벡터와 행렬은 증가한 수에 따라 커지게 됩니다. EKF의 갱신은 24, 25번째 줄에서 수행되는데, EKF SLAM 알고리즘은 새로운 랜드마크들 $N_t$의 평균 $\mu_t$, 공분산 $\Sigma_t$를 반환하게 됩니다.

 

 EKF SLAM의 정리는 이전 정리를 참고하면 되는데 9번째 줄에서 초기화는 대응 관계가 주어진 경우의 10번째 줄과 동일하며, 10 ~ 18번째 줄은 대응관계가 주어진 경우의 12 ~ 17번째 줄과 비슷하나 ML 대응관계를 계산하기 위해서 변수 $\pi_{k}$가 추가되었습니다. 가장 가능성 있는 랜드마크를 찾는데는 7.3장에서 살펴본 EKF 위치 추정기의 것을 사용하였습니다.  표 10.2의 24~,25번째 줄의 관측 갱신은 대응 관계가 주어진 경우와 동일하며 지도가 커지는 경우에도 적절한 형태의 백터와 행렬이 사용됩니다.

 

 EKF SLAM 구현시에는 10~18번째 줄사이에서 로봇 주위의 랜드마크로 제한시키면 더 효율적으로 만들수가 있습니다. 더 나아가 이 내부루프에서 계산된 값들과 행렬은 하나의 특징 벡터 $z_{t}^{i}$보다 여러개를 다룰때 더 빨리 계산될수 있으며, 지도 상에 특징들을 잘 관리하고 이러한 루프 최적화로 동작시간을 크게 줄일수 있습니다.

 

 

 

 

그림 10.2 대응관계가 주어진 경우 EKF SLAM. 

- 지도는 왼쪽의 것으로 각 랜드마크의 불확실성 정도에 따라 회색 레벨로 보여주고있습니다.

- 오른쪽의 행렬은 상관관계 행렬로 사후 확률 근사치의 정규화된 공분산 행렬이 됩니다.

- 일정 시간이 지난후 모든 x-y 좌표 근사치들은 완전 상관관계를 갖게 됩니다.

 

10.3.2 예제

 그림 10.2는 대응관계가 알려진 경우 EKF SLAM 알고리즘의 시뮬레이션을 보여주고 있습니다. 왼쪽의 3그림은 로봇의 자세와 각 랜드마크 주변의 사후확률 분포를 보여주고 있으머ㅕ, 우측의 그림들은 혼합 상태 백터 $y_t$의 상관관계 행렬을 보여주고 있으며, 이 상관관계는 정규화된 공분산이 됩니다. 그림 10.c에서는 결과를 볼수 있는데, 시간에 대해 x, y 좌표 근사치들이 완전 상관관계가 됨을 볼수 있습니다. 이 의미는 지도가 상관 관계에 대해서 다 구해진 것으로 더이상 불확실한 전역 자세를 구할수 없습니다. 이는 SLAM 문제의 중요한 특성을 강조하고 있는데, 로봇의 초기 자세로 정의되는 지도의 절대 좌표계는 근사를 통해서 결정되며, 상대 좌표계들은 점근적으로 결정됩니다.

 

 현실 상에서 EKF SLAM은 비행이나 잠수, 실내, 그리고 다른 기체들을 사용한 다ㅇ야한 범위의 주행 문제에 적용을할수 있는데, 그림 10.3은 오스트레일리아의 시드니 대학교에서 개발한 잠수함 로봇 오베론(그림 10.4)를 사용하여 얻은 결과를 보여주고 있습니다.

 

 

그림 10.3 칼만 필터를 이용한 지도와 기체 자세의 근사 예시.

 

그림 10.4 시드니 대학에서 개발한 잠수학 로봇 오베론

 

 이 잠수함은 펜실 소나가 장착되어 50m까지 장애물을 고해상도로 스캔할수 있습니다. 지도작성 문제를 다루기 위해 연구자들은 소나 스캔으로 특징을 추출해낼만한 길고 작은 수직 물체를 물 안에다가 넣었는데, 이 실험에서 이런 물체의 길이는 10m정도 차지하고 있습니다. 게다가 멀리 떨어진 절벽이 펜실 소나로 감지할수있는 점특징을 제공하고 있습니다.

 

 이 실험은 그림 10.3에서 보여주고 있으며 로봇은 이런 랜드마크까지 움직였다가 되돌아 오는 모습을 보여주고 있습니다. 이렇게 하는동안 이번에 살펴본 칼만 필터 방법들을 이용하여 랜드마크가 감지되고 지도상에 추가되었습니다.

 

 그림 10.3의 지도는 로봇의 경로를 선에 연결된 삼각형으로 표시해두었는데, 각 삼각형 주위에는 로봇의 x y 자세가 사영되는 칼만 필터 추정의 공분산 행렬을 나타내고 있습니다. 이 타원은 분산을 보여주며 이게 커질수록 연재 로봇의 자세가 덜 확실해지게 됩니다. 그림 10.3에는 많은 작은 점들이 나타나는대 이는 소나 스캔으로 감지한 매우 작고 반사하는 물체들입니다. 이들 대다수는 다음 장에서 살펴볼 기술을 사용하여 제거되었습니다. 하지만 이들의 일부는 랜드마크로 판단하여 지도상에 추가시켰습니다. 동작의 끝으로 로봇은 14개의 물체를 랜드마크로 분류하였으며 각각의 불확실성 타원을 그림 10.3에서 볼수 있습니다. 이 랜드마크들은 연구자들이 넣은 인공적인 랜드마크도 있지만 로봇 부근의 환경적인 특징들도 포함되고 있습니다. 이 예제에서 로봇은 노이즈가 크기는하지만 성공적으로 인공적인 랜드마크를 찾아내고 지도를 작성하였습니다. 

 

 

 

 

300x250

+ Recent posts