[뉴스토마토 배덕훈 기자] 배달 시장의 ‘게임 체인저’를 자신한 배달의민족의 자율주행 배달 로봇 ‘딜리’에 적용된 주요 기술이 공개됐습니다.
30일 배민의 운영사 우아한형제들이 주최한 ‘우아한테크콘퍼런스2024’에서 진행된 세부세션에서는 ‘자율주행 로봇’을 주제로 배민의 자율주행 로봇 기술과 노하우가 공유됐습니다. 배민의 현직 엔지니어들이 연사로 나선 로봇 관련 세부 세션은 ‘자율주행 로봇을 위한 위치 인식 및 동작 계획 기술’과 ‘자율주행 로봇을 위한 머신러닝(ML) 모델의 추론 성능 최적화’를 주제로 진행됐습니다.
우아한테크콘퍼런스 세부 세션 '자율주행 로봇을 위한 위치 인식 및 동작 계획 기술' 강연 모습. (사진=배덕훈 기자)
‘자율주행 로봇을 위한 위치 인식 및 동작 계획 기술’ 세션에서는 감제원·김동혁 우아한형제들 로보틱스 소프트웨어 엔지니어가 연사로 나섰는데요. 감 엔지니어는 “우아한형제들에서 로봇을 개발하고 있는 이유는 음식 배달을 목표로 하고 있기 때문”이라며 자율주행 로봇 개발 시 필수적인 위치 정보·동작 기술을 소개했습니다.
감 엔지니어는 “보통 사람이 자신의 위치를 알기 위해서는 지도 앱을 주로 사용하는데, 지도 앱은 인터넷 지도와 GPS 센서를 활용해 자신의 위치를 추정한다”라며 “하지만 이러한 방법은 굉장히 오차가 커지는 단점이 있어 로봇 개발에 좀 더 정밀한 ‘점군 지도’를 사용한다”라고 설명했습니다. 점군 지도는 건물, 볼라드, 표지판 등 사물에 대한 3차원 정보를 지도 속에 담고 있는데요. 오차는 약 20cm 정도로 높은 위치 추정 성능이 보장됩니다.
배민은 이러한 점군 지도 생성에 자체 개발한 ‘슬램(SLAM)’ 기술을 사용하고 있는데요. 슬램은 임의의 공간에서 로봇이 이동을 하면서 주변 환경에 대한 지도를 만들고 그 지도의 위치를 추정하는 작업을 수행합니다. 구체적으로 센서 데이터에 입력이 들어오면 이는 오도메트리(odometry) 모듈로 전달이 되고 모듈은 위치 변화를 매 순간 추정합니다. 추정된 위치에서 발생하는 오차는 옵티마이제이션(optimization) 모듈을 통해 교정이 되는데요. 이 같은 과정을 통해 오차가 적은 점군 지도가 생성됩니다.
배민은 이렇게 만들어진 점군 지도를 토대로 로봇의 위치를 추정하는데요. 역시 자체 개발한 ‘로컬라이제이션(localization)’ 기술이 쓰입니다. 해당 기술은 슬램의 오도메트리 기능과 흡사한데요. 다만, 오도메트리는 이전에 만들어 놓은 지도를 사용하지만, 로컬라이제이션은 슬램 기술을 통해 생성된 점군 지도를 이용한다는 차이점이 있습니다.
로컬라이제이션 과정에서 역시 글로벌 위치 추정, 메모리 부족, 위치 추정 실패 등 세 가지 문제가 발생할 수 있는데요. 이를 해결하기 위해 ‘리로컬라이저(relocalizer)’ 모듈, ‘서브맵 매니저(submap manager)’ 기능, ‘로컬라이저빌리티 에스티메이터(localizability estimator)’기능을 개발했다고 감 엔지니어는 설명했습니다.
김 엔지니어는 로봇의 움직임을 다루는 모션 플래닝에 사용된 기술을 소개했는데요. 모션 플래닝은 배달 로봇이 이동하는 경로를 생성하고 장애물 등을 피해 안전하게 목표에 도착할 수 있는 일련의 과정을 뜻합니다. 김 엔지니어는 모션 플래닝 문제 해결 관련 접근법에 대해 “저희는 최적화 기반과 학습 기반을 중점적으로 다루고 있다”라고 설명했는데요. 최적화 기반을 통해 안정적 운영을, 학습 기반을 통해 초기 경로를 빠르게 생성하는 연구 개발을 진행하고 있다고 덧붙였습니다.
우아한테크콘퍼런스 세부 세션 '자율주행 로봇을 위한 머신러닝(ML) 모델의 추론 성능 최적화' 강연 모습. (사진=배덕훈 기자)
'엣지 디바이스' 최적화 노하우 공유
이에 앞서 진행된 자율주행 로봇 세션에서는 자율주행 로봇을 위한 머신러닝 모델의 추론 성능 최적화에 대한 배민의 노하우가 공유됐습니다. 연사로는 박준수·문종식 우아한형제들 컴퓨터비전 및 머신러닝 엔지니어가 나섰습니다. 문 엔지니어는 “피해야 할 위험들을 극복하면서 로봇이 안정적으로 배달을 수행하기 위해서는 내구성은 물론이고 호환성과 자율주행 소프트웨어의 지연 시간을 낮게 유지해야 한다”라며 “이를 위해 만들어진 것이 ‘엣지 디바이스(edge device)’”라고 설명했습니다. 엣지 디바이스는 클라우드 등에서 사용되는 고성능·고사양 컴퓨터와는 대조되는 개념으로 저전력·고효율의 컴퓨터를 뜻합니다.
엣지 디바이스라는 한정된 자원 속 자율주행 배달이라는 특정 기능을 안정적으로 수행하기 위해서는 ‘최적화’가 가장 중요한데요. 문 엔지니어와 박 엔지니어는 엔비디아의 ‘텐서알티(TensorRT)’솔루션의 최적화 중 ‘퀀타이제이션(quantization)’을 통한 추론 속도 최적화, ‘레이어 텐서 퓨전(layer tensor fusion)’을 통한 메모리 IO 최적화, ‘커널 오토 튜닝(kernel auto tuning)’을 이용한 GPU플랫폼 최적화, ‘딥러닝 엑셀러레이터(deep learning accelerator)’에서 추론 가능 모델 변환 등을 소개하며 배민의 개발 노하우를 공유했습니다.
배덕훈 기자 paladin703@etomato.com