GPS 기반 위치 파악 기술의 한계
이제 내비게이션은 일상생활에서 없어서는 안 될 필수품이 됐다. 스마트폰은 자동차 내비게이션 장치로도 사용되며 스마트 워치는 등산 길잡이로도 사용할 수 있다. 그렇다면 이러한 장치는 우리의 위치를 어떻게 파악할 수 있을까? 가장 일반적인 기술은 GPS(Global Positioning System) 즉, 위성 위치 확인 시스템이다.
우리 머리 위 수백 킬로미터 상공에 떠있는 GPS 위성들은 지구 궤도를 돌며 전자기(EM, Electromagnetic) 신호(Signal)를 방출한다. GPS 수신기의 위치에 따라 GPS 위성들로부터 송신된 각 신호들의 도착시간이 세밀하게 달라지는데, GPS 수신기는 이들의 세밀한 시간차를 측정해 지구 상에 있는 사람의 위치를 정확히 파악한다. 기본적으로 이 기술은 별도의 가입 없이 무료로 사용할 수 있지만 GPS 신호를 읽기 위한 장치가 필수적이다.
이 기술의 핵심은 우리가 제어할 수 없는 외부 요소 – 위성 그 자체이다. 위성이 없다면 이 기술은 무용지물이며, 우리의 맨눈으로는 보이지 않겠지만 위성까지 시야(Line-of-sight)가 확보돼야 기술이 제대로 작동할 수 있다. 따라서 터널, 주차장, 울창한 숲과 산악 지역 또는 고층 빌딩이 있는 혼잡한 도시에서 GPS 내비게이션 기능은 오작동할 확률이 높다. GPS 신호는 전파방해나 공격에도 취약하지만, 제대로 작동한다면 비교적 정확한 결과를 제공한다. GPS가 추정한 현재 ‘위치(Position)’를 지도 위에 표기하는 것이 바로 근래 내비게이터의 기반이며, 실생활에 적용하기 위해 해야 할 일은 ‘위치 파악(Positioning)’과 디스플레이 업데이트를 “자주” 하는 것이다.
어떤 경우라도 ‘위치 파악’을 하고자 한다면 GPS 위성과 같은 지속적인 외부 지원이 있어야만 할까? 인간은 쉽게 “아니오”라고 답할 수 있다. 동네에서 아침 조깅을 할 때에 우리가 외부 전자기파(EM Wave)에 의존하지 않더라도 집에 돌아올 수 있기 때문이다. 인간은 방문해 본 적이 없는 지역이라도 외부 지원 없이 종이지도만 있으면 충분히 현재의 위치에서부터 가고자 하는 목적지까지 이동할 수 있다.
우리의 눈(Vision)과 뇌는 우리가 얼마나 빨리 움직이고 있는지, 인식한 기준점이 얼마나 먼지, 행동의 변화를 가져와야 하는 결정적 지점(회전, 표지판, 목적지)이 얼마나 가까운지를 쉽게 관측 및 추론할 수 있다. “위치 파악(Positioning)”에 필요한 모든 시스템은 이미 우리의 몸 안에 내재돼 있으며 GPS와 같은 지속적인 외부 자원 없이 자립적으로 동작한다.
자동차 및 로봇 진공청소기와 같은 최신 전자 장치는 이 비전 기반 접근 방식(Vision-based Approach)을 모방해 개발되고 있으며, 주변 환경의 “시각화”를 더 효율적으로 하기 위해 적외선, 레이저와 같이 사람의 눈에는 보이지 않는 광 스펙트럼 및 RF(Radio Frequency, 무선 주파수)까지도 활용한다. 하지만 비전 시스템의 단점은 센서에서 데이터를 수집하고 해석해야 한다는 것이다. 비전 데이터에서 행동의 방향과 속도를 추론하는 작업은 간단하지 않다. 이에 필요한 계산들은 강력한 프로세서와 대용량 저장소 및 메모리를 사용하기 때문에 고가의 시스템이 필요하고, 높은 전력/에너지 소비가 뒤따른다.
위치 파악을 위한 간단한 접근 방법, 가속도계
과도한 양의 계산 없이 위치 파악을 하는 더 간단한 방법이 있을까? 이론적으로 우리 주변의 가장 보편적인 센서 중 하나인 가속도계(Accelerometer)를 사용할 수 있다. 가속도계는 움직임 기반 센서이므로 위치 결정에 필요한 계산의 부하가 비전 기반 접근 방식과 비교했을 때 무시할 수 있을 정도로 낮은 편이며 이론적 작동 원리도 직관적이고 간단하다.
가속도는 단위 시간 동안(a=Δv/Δt)의 속도 변화이고 속도는 단위 시간 동안(v=Δs/Δt)의 위치 변화이다. 이 두 관계를 병합하고 비선형 이동에 대해 일반화하면 가속도와 위치는 다음과 같이 연결된다.
이 관계식이 알려주는 바는 시간 경과에 따른 위치 데이터 “s(t)”가 있다면, 이를 이중미분 함으로써 가속도 “a(t)”를 정확하게 계산할 수 있다는 것이다. 이 수학적인 관계식을 바탕으로 역산도 가능해, “a(가속도)”에서 “s(위치)”값을 계산할 수도 있다. 이 경우 이중적분이 필요하다.
이론적으로 말하자면, 이는 시간에 따른 가속도 데이터를 이용해 이중적분을 수행하게 되면 특정 물체의 위치 정보를 얻을 수 있음을 나타낸다. 하지만, 이 간단해 보이는 이중적분에 자립적 관성 항법(Self-sufficient Navigation)이 여태 실패해왔던 큰 이유가 숨어있다. 이해를 돕기 위해 대학의 기초 수업으로 돌아가 보겠다. 미분은 상수를 제거하고 수식을 축소하는 반면 적분은 상수를 생성시키고 수식을 증가시킨다. 이중미분을 한다면 상수들과 일차항들까지 제거되지만 이중적분을 한다면 상수들과 일차항들이 생성된다. 만약 오류가 존재할 경우 그 오류가 이중적분을 통해 확대되면서 엄청나게 빠른 속도로 참 결과값과의 편차를 증가시킨다.
이 기술을 어렵게 만드는 핵심은 이 이중적분과 가속 데이터 샘플에 존재할 수밖에 없는 불가피한 오류 때문이다. s에서 a를 만들어낸다고 생각해보자. 만약 이미 존재하는 s안에 예측 불가능한 위치 측정 오차가 존재하더라도, s를 미분하면 오차의 영향이 사라지기 시작하며, 이중미분을 하면 그 영향이 급속도로 제거되기 때문에 s에서 추출해 낸 a는 상당히 신뢰도가 높은 데이터가 된다. 반면 a를 적분한다면 가속도 데이터 내에 존재하던 각종 측정오류가 확대되기 시작하며, 이중적분을 한다면 이 측정오류가 확대되는 속도가 급격히 빨라져 참 위치값에서부터 오류 편차가 폭발적으로 증가한다. 가속 데이터의 측정오류에는 양자화 오류(Quantization Error), 가속도계의 기계적 편차, 잘못된 보정, 제조 허용 오차 미만으로 감지할 수 없는 결함 등이 있으며 어떤 가속도계를 쓰더라도 이들은 언제나 존재할 수밖에 없다.
이러한 피할 수 없는 작고 예측불가능한 오류들 때문에, 책상 위 정지해 있는 물체라도 가속도를 이중적분하는 즉시 움직이는 궤적을 갖게 된다. 관찰시간이 길수록 이중적분이 길어지므로 물체는 3차원적으로 끊임없이 가속되며, 결국 몇 초 지나지 않아 책상 위에 정지해 있던 물체는 달에 가 있다고 계산될 수도 있다. 이러한 ‘드리프트(Drift)’ 현상은 추측항법(Dead-reckoning)이라고도 알려진 관성항법(Inertial Navigation)에서 반드시 해결해야 할 중요한 문제다.
관성항법의 오류를 줄이는 방법, 칼만 필터
관측 대상의 물리적 한계(예: 사람은 한 걸음당 특정 거리보다 빠르게 이동할 수 없음) 및 불가능한 동작범위 감지(예: 가속도계, 자이로스코프 및 자력계를 포함하는 다중 관성 측정 장치 ‘IMU, Inertial Measurement Units’를 움직이는 물체의 여러 위치에 배치해 불가능한 동작을 감지하고 제한함) 등을 통해 이중적분 후 각 표본의 오류의 최대값을 제한하려는 노력이 있었다. 이러한 방법들을 쓴다면 드리프트가 천문학적 속도로 가속되지 않기 때문에 측정이 “이전”보다는 정확해질 수밖에 없다. 하지만 적분 시 증가하는 오류에 대한 문제는 근본적으로 해결되지 않았기 때문에, 시간과 속도의 차이만 있을 뿐 이중적분의 드리프트는 영원히 실위치에서 멀어질 수밖에 없으며, 근본적으로 정확한 위치 파악이 불가능하다.
오류를 완전히 억제하기 위한 전통적인 접근 방식은 더 많은 하드웨어, 특히 비전 및 레이저와 같은 무동작 기반 센서에 투자하는 것이었다.
그러나 다른 종류의 센서들이 추가됨에 따라 움직임 기반의 센서만 사용하면서 얻을 수 있었던 ‘계산 복잡성 감소, 저비용, 저전력’ 등의 장점이 사라진다. 따라서 관성항법 시스템은 이러한 복잡하고 고가의 센서 시스템을 위치 추정을 위해 운영할 수 있는 우주선 및 항공기 애플리케이션이나 응용프로그램에 사용이 제한됐으며, 실례로 아폴로 우주 왕복선, 보잉 747 및 미국 항공기의 비행 자동화 및 내비게이션 시스템에 쓰였다.
실제 애플리케이션에서 가속 데이터의 적분은 칼만 필터(Kalman Filter)에서 통상적으로 수행되며, 여기에 자이로스코프(Gyroscope) 또는 자력계와 같은 추가 센서를 사용한다면 위치 추정 성능을 더욱 향상시킬 수 있다. 이중적분에서 발생하는 오류로 인해 입력에 따른 결과값이 예측 불가능한 경우 확장 칼만 필터(EKF: Extended Kalman Filter)가 사용된다.
EKF를 사용한다면 ‘오류’ 또는 ‘노이즈’ 특성을 자연스럽게 입력 값으로 모델링하게 된다. 그러나 앞서 언급한 측정 시의 작은 노이즈들(예: 양자화 오류, 가속도계의 기계적 편차, 오보정, 제조 허용 오차 미만인 감지할 수 없는 결함)은 센서 작동 중이나 센서 작동 사이에 특성이 끊임없이 동적으로 바뀔 수 있으므로, 정확한 위치 측정을 하고자 한다면 이론적으로 매 순간 EKF에 정확한 노이즈 모델링을 제공해주어야 한다. 하지만 우리가 모든 경우의 노이즈 특성을 미리 파악하고 매 순간 그 환경에 부합하는 노이즈 모델로 EKF를 업데이트해준다는 것은 현실적으로 불가능하다.
인공지능 기반 추측항법을 통한 위치 파악 정확도 향상
최근 인공지능(AI, Artificial Intelligence)과 심층 신경망(DNN, Deep Neural Network)의 출현으로 관성항법을 위한 IMU(Inertial Measurement Unit, 관성 측정장치)의 노이즈 특성 자동학습 및 IMU의 다양한 기능과 요소들의 맞춤화와 최적화가 훨씬 쉬워졌다.
[그림 1]은 IMU 측정, 노이즈 모델링 및 EKF를 사용한 전통적인 접근 방식을 보여 주는 반면에, [그림 2]는 머신 러닝 엔진을 기반으로 노이즈 특성을 자동으로 모델링하는 새로운 방식을 보여준다. 사람이 개입해야 했던 노이즈 모델링 스테이지가 완전히 없어지는 방식이다. “AI-IMU 추측항법(Dead-reckoning)” 논문1) 에서 발췌한 [그림 3]은 자동차 애플리케이션에 활용된 후 결과를 보여주고 있다.
1) 참고문헌: M. Brossard, A. Barrau and S. Bonnabel, "AI-IMU Dead-Reckoning," in IEEE Transactions on Intelligent Vehicles, vol. 5, no. 4, pp. 585-595, Dec. 2020, doi: 10.1109/TIV.2020.2980758.
비교를 위해 ‘GPS’로 표시된 검은 실선은 GPS를 사용해 얻은 지상 실측 궤적(Ground Truth)이다. ‘IMU’로 표시된 빨간 점선은 가속도를 직접 이중적분한 결과이다. 예상대로 이중적분의 드리프트로 인해 측정 초기 단계부터 지상 실측 궤적에서 완전히 벗어난다. ‘AI 엔진’으로 표시된 노란 점선은 AI 엔진의 도움을 받아 노이즈 특성을 자동으로 학습하고 그 노이즈를 제거시킨 후에 얻은 EKF 시스템의 결과이다. 두 궤적을 겹쳐보았을 때 AI 접근 방식은 이중적분을 기반으로 시작했음에도 불구하고 GPS를 사용하는 지상 실측 자료와 흡사한 결과를 보인다.
이 실험에서 흥미로운 점은 실측 중에 GPS가 오작동 한 구간이 있다는 것이다. [그림 3]에서 ‘GPS 중단’으로 표기된 부분은 GPS가 위성들과의 연결을 잠시 잃고 정확한 위치를 보고할 수 없었던 구간을 나타낸다. 따라서 이 구간 동안 GPS의 “지상 실측 궤적”은 역설적으로 실제 이동 궤적이 아니며, 반면 AI로 강화된 IMU 추측 항법은 GPS가 중단됐던 구간 동안 정확한 위치를 제공했다. AI 기반 추측 항법은 LiDAR 및 비전 기반 접근 방식과도 비교할 수 있을 정도의 성능을 보여주었으며 심지어 물리적 크기, 전력 소비량, 가격적인 측면에서 비교가 불가능할 정도의 강점을 가진다.
[그림 3]은 km, km/h 및 m(해상도) 단위를 사용해 차량 운행의 스케일에서 2차원으로 구현된 것이다. 차량이 아닌 인체 활동의 스케일에서 3차원으로 이를 구현하기 위해서는 AI 엔진 설계 및 센서 기능에 또 다른 요구사항이 필요하다. 이런 부분을 해결하기 위해 다방면으로 연구가 진행되고 있다
인공지능 소프트웨어 기술의 무한한 영향력, 반도체와 함께 성장
AI로 강화된 IMU 추측 항법 기술 성능과 적용 가능성은 무궁무진하다. 기존의 내비게이션 기술과 비교할 때, 이 기술은 자체적으로 작동할 수 있으며 저전력과 경제성을 지니며 주변 환경(예: 날씨, 전자기 간섭, 나무, 건물, 가시거리 등)에 구애받지 않고 위치를 추정할 수 있다.
차량, 로봇 또는 자전거와 같은 자율 이동 물체들을 위해 아주 저렴한 추가 비용으로 기존 내비게이션 보조 기기 위에 자립형 내비게이션 기술을 적용할 수 있다. 사람, 반려동물, 카트 등을 위한 실내 내비게이션 또한 다양한 형태의 끊임없는 융합을 통해 사용 범위가 무한히 증가할 것이다. 또한 위치 추정 엔진은 소프트웨어로 변경할 수 있어 기존 기기의 특성(예: 센서의 종류, 성능, 제조사 등)에 맞게 쉽게 개조할 수 있다. 이미 우리 주변에는 스마트폰을 통한 가속계와 자이로스코프가 많다. 아마도 조만간 이 놀라운 기술을 활용한 재미있는 앱이 개발될 것이다.
AI 소프트웨어 기술은 현재 예상치 못한 방식으로 어려운 엔지니어링 문제들을 해결해가고 있다. 최근의 반도체 기술의 발전은 낮은 비용으로도 폭발적으로 증가하는 컴퓨팅 성능과 메모리 용량을 가능케 하면서 이러한 소프트웨어 기술의 혁신을 근본적으로 뒷받침하고 있다.
SK하이닉스를 포함한 하드웨어 제조업체들은 △NAND 플래시와 통합된 SSD 카드 △고속-대용량 DRAM(DDR4, DDR5, HBM2E, GDDR6 등) △초고속 프로세서/심층 신경망에 사용되어 방대한 데이터를 저장할 수 있는 스토리지 등 AI 소프트웨어 기술들이 끊임없이 요구하는 보다 빠르고 넉넉한 하드웨어를 제공하기 위한 연구와 개발에 분주할 것이다.