배민이 배달로봇을 위한 지도를 만드는 법

“기존 지도 서비스는 여럿 있습니다. 그런데 차, 사람, 자전거를 위한 지도는 있지만, 로봇의 자율주행을 위한 데이터를 담은 지도는 없습니다.”(황순영 우아한형제드 로보틱스 엔지니어)

사람이 두 발로 걷는다면, 조금 울퉁불퉁한 길 정도는 걸어지나갈 수 있다. 연석도 한 발이면 걸어올라갈 수 있다.

자율주행 배달 로봇은 다르다. 만일 주차장으로 들어가는 길을 지나간다면 차량이 갑자기 올 수 있는 환경이라는 사실을 인지해야 한다. 또 주차장으로 가는 차량 진입로가 울퉁불퉁한지, 아니면 앞에 볼라드와 연석이 있는지 등이 여러 요인이 이동에 문제가 될 수 있다. 카메라가 신호등을 인식해도, 트럭에 가려지면 무용지물이다.

이같은 요소는 자율주행 배달 로봇을 운영하는 배달의민족(배민) 입장에서 적잖은 고민이다. 우아한형제들이 서울 강남구 그랜드 인터컨티넨탈 서울 파르나스에서 연 ‘우아한테크콘퍼런스2025’(우아콘)에서 황순영 로보틱스 엔지니어는 ‘배달 로봇을 위한 맵 서비스’ 주제로 발표했다. 앞서 배민은 올해 2월 말부터 서울 강남구 일부 지역에서 30~40분 내로 배송 가능한 경우, 자사의 완전 자율주행 배달 로봇 ‘딜리’를 이용해 B마트 상품을 배달하고 있다.

완전 자율주행 배달로봇을 위해 필요한 기술 중 하나는 자율주행 로봇 맞춤형 지도, 즉 맵 서비스다. 배민은 딜리를 위한 맵 서비스를 별도로 구축했다. 황 엔지니어는 “로봇 배달 맵 서비스가 필요한 이유는 로봇의 정확한 위치를 파악하기 위해 사전처리된 데이터를 받을 수 있어야 하고, 도로 정보와 반응형 사물에 대해 정보를 인식해야 하며, 딜리가 한번에 이동 가능한 경로를 제공해야 하기 때문이다”고 설명했다. 

배민은 딜리 서비스 운영 및 확장을 고려해 맵 서비스 제작 당시  ▲글로벌 좌표계 도입 ▲맵 데이터 분류 및 정의 ▲맵 데이터 제작 ▲맵 데이터 기반 서비스 제작 등 과정을 거쳤다.

황 엔지니어는 “기존에는 포인트 클라우드 데이터 임의 지점을 원점으로 지정하는 로컬 좌표계를 이용했다면, 글로벌 좌표계 도입으로 다른 지도 서비스 또는 배달의민족과 연동하고 이를 기반으로 어디서든 배달을 수행할 수 있도록 했다”고 설명했다. 또 맵 데이터를 정의할 때 도로의 지리적 특성에 집중했다. 맵 데이터 제작 시, 3D 공간 데이터인 포인트 클라우드 데이터(PCD)를 기반으로 해 지역별 타일 맵 또한 사전 제작한다. 이 타일 맵은 로봇의 GPS 센서를 통한 실시간 위경도와 라이다로 보는 실시간 포인트 클라우드 데이터와 비교해 정확한 위치를 파악하는 데 활용된다.

실제 서비스와 연동되는 맵 서비스 역할은 4가지로 나뉜다. 배민 앱에는 고객이 주문할 때 딜리로 주행이 가능한지 여부와 정확한 예상시간을 제공해야 하며, 로봇에게는 실시간 최적 경로와 최신 PCD 타입 맵을 제공해야 한다.

배민은 맵 서비스 확장성을 높이기 위한 향후 과제도 고민하고 있다. 먼저 현재 일부 수동으로 작업하고 있는 맵 생성 프로세스를 자동화 파이프라인화해, 수집한 데이터를 업로드하기만 해도 서비스할 수 있는 데이터가 자동으로 나올 수 있는 방안을 고심하고 있다.

또 적극적으로 주행 데이터를 활용해 맵 서비스를 고도화하고 운영 및 유지 보수 리소스를 최소화하는 방안도 보고 있다. 주행 중 수집한 PCD를 매일 또는 실시간으로 맵 서비스가 관리하는 PCD 업데이트에 활용하는 방법이 대표적인 예시다.

황 엔지니어는 “관제사 개입 기록과 배달 목적지 수정, 고객 피드백 등이 맵 서비스에 자동 업데이트 방안 또한 시도해 볼 수 있다”며, “배달 지연 예상으로 우회 경로를 제공하면 해당 경로 데이터의 가중치를 높여 자동 업데이트를 해 추후 우회 경로를 더 자주 제공할 수 있게 시도하거나 경로별 주행 기록을 분석해 예상시간을 더 정확하게 알릴 수 있을 것”이라고 설명했다. 또 딜리의 하드웨어가 바뀔 경우를 대비해 맵 서비스의 구상을 지속적으로 고민하고 개선해야 한다고 덧붙였다.

. 바이라인네트워크
<성아인 기자> aing8@byline.network

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다


The reCAPTCHA verification period has expired. Please reload the page.