고급협동조합의 OSM
article thumbnail

9월 27일부터 우아한형제들(배달의민족 개발/운영사)에서 배달의민족(배민)에 적용되는 라이더 내비게이션을 국산으로 교체한다고 합니다.
https://n.news.naver.com/mnews/article/008/0004798441?sid=105

 

배민 '라이더 내비' 바꾼다는데…소비자 배달비 오르나

[우아한청년들, 라이더 내비엔진 글로벌→국내로 변경 국내 도로상황 반영 빨라질듯…아이나비시스템즈 유력] 배달의민족이 라이더 '거리깎기' 논란을 불렀던 내비게이션(내비) 시스템을 대폭

n.news.naver.com

 

배민 라이더의 배달료를 산정하는 방식은 이전에도 한 번 바뀐 적이 있습니다. 2021년 12월 이전에는 단순히 출발지와 목적지의 직선거리에 따라 요금을 산정했지만, 이동 거리를 보다 정확히 반영하기 위해 경로 탐색 엔진(내비게이션)을 도입한 것이죠.
https://www.donga.com/news/article/all/20211226/110959441/1

 

배민 배달료, 직선거리→내비 실거리로 기준 변경

배달 애플리케이션 ‘배달의민족’의 배달료 산정 기준이 직선거리에서 내비게이션 실거리로 바뀐다. 이에 따라 라이더들에게 지급하는 배달료가 전반적으로 오를 것으로 보인다. 배민을…

www.donga.com


이때 도입한 것이 OSRM(Open Source Routing Machine)입니다. OSRM은 말 그대로 오픈소스 경로 탐색 엔진의 일종으로, 원하는 지도 데이터베이스를 넣어 두고 출발지, 경유지, 목적지를 입력하면 적절한 경로를 반환하는 프로그램입니다. 네이버 지도나 카카오맵, 구글 지도 등은 기업에서 지리 정보와 경로 탐색 알고리즘[각주:1]을 소유하고 관리하기 때문에 관리 주체와 책임 소재가 명확하다는 장점이 있죠. 다만 API 호출 건수에 따라 비용을 내야 하고, 지도에 오류가 있어도 지도 제공사에 수정 요청을 넣는 것 말고는 능동적으로 대처할 수 있는 방법이 사실상 없다시피 합니다.

  • 구글 지도(Direction API): 10만회 호출까지 5달러/1000회, 50만회 호출까지 4달러/1000회, 그 이상은 영업팀 문의
  • 네이버 지도(Direction 5): 5원/1회(5000원/1000회)
  • 카카오맵: 별도 문의 필요(1일 30만회 무료)

카카오맵도 네이버 지도와 비슷하거나 약간 더 저렴한 수준일 것으로 추측합니다.

반면 OSRM을 직접 서버에서 돌리면 API 호출 비용을 낼 필요 없이 서버 구동비만 부담하면 됩니다. 자체 서버와 프로그래머를 이미 갖추고 있는 배민 입장에서는 OSRM을 쓰는 것이 매우 경제적이죠. 서버로 드나드는 트래픽을 줄일 수도 있고요.

그런데 이렇게 도입한 경로 탐색 시스템을 또 바꾸는 이유가 무엇일까요? 바로 배민에서 사용하는 시스템이 좌회전 금지, 유턴 금지, P턴과 같은 교통 규제를 제대로 반영하지 못한다는 비판이 나왔기 때문입니다.
https://m.khan.co.kr/national/labor/article/202204251535001

배달 노동자로 일하기 전에 IT 업종에서 일했던 김문성 배달플랫폼지부 북부분회 부분회장은 “배민이 OSRM이라는 오픈 소스를 이용해 지도 정보 시스템을 구축했다는데 OSRM이라는 시스템은 도로의 어떤 교통 관련 정보도 입력되어 있지 않는 그냥 말 그대로 순수한 지도일 뿐”이라며 “좌회전 금지와 P턴 구간이 많은 서울 도심의 상황에서 적합하지 않은 시스템”이라고 말했다.
- 기사 내용 중


엄밀히 따지자면 OSRM 알고리즘의 문제가 아니라 지도 데이터베이스(여기서는 오픈스트리트맵으로 추정)의 문제이고, 오픈스트리트맵은 단순한 지도가 아닌 다양한 교통 규제 정보를 입력할 수 있는 지리 데이터베이스이긴 하지만 발언자의 요지는 이게 아니니 여기서는 따지지 않겠습니다.

OSRM이 교통 규제를 제대로 반영하지 못하는 사례 중 하나를 가져와 보았습니다.

카카오맵의 모습. 회전 제한을 정확히 반영하고 있다.

 

OSRM+OSM의 조합. 회전 제한이 OSM에 입력되어 있지 않아 잘못된 경로를 생성한다.

위 스크린샷은 카카오맵에서, 아래 스크린샷은 OSRM+OSM의 조합에서 동일한 출발지와 도착지를 지정한 후 자동차 경로를 생성한 모습입니다. 보다시피 카카오맵에는 좌회전 금지가 반영되어 우회 경로를 보여주는 반면 OSRM은 그렇지 않습니다. 오픈스트리트맵에 해당 교차로의 회전 제한 정보가 없기 때문입니다.

그렇다면 오픈스트리트맵에 회전 제한 정보가 입력되면 어떻게 될까요?

카카오맵.
오픈스트리트맵.

이번에는 OSRM도 회전 제한을 이용해 최단 경로가 아닌 우회 경로를 탐색합니다.

osm.org에 표시되는 지도 이미지가 오픈스트리트맵의 전부가 아닙니다. 지도 이미지는 오픈스트리트맵의 활용 사례 중 하나일 뿐이며, 오픈스트리트맵의 본질은 지리공간 데이터베이스입니다. 회전 제한은 osm.org의 '표준 레이어'인 OSM Carto에는 표시되지 않지만, 지리공간 데이터베이스에는 꼭 있어야 할 중요한 정보입니다(실제로 OSM Carto에 표시되지 않는 정보의 기여가 적은 건 전 세계적인 현상입니다. 이를 해결하기 위해 여러 방안이 제안되었고, 지금도 제안되고 있습니다).

외국에서는?

그런데 유럽권 등지에서는 정부 및 기업들도 오픈스트리트맵을 적극적으로 쓰고 있습니다. 그 이유는 여러 가지가 있습니다.

첫 번째, 오픈스트리트맵 데이터를 날것 그대로 가져와서 쓰는 경우도 많지만, 오픈스트리트맵을 단순한 배경 이미지로 깐 후 그 위에 지리 정보를 추가로 얹어 쓰는 경우가 많다.

실제로 스페인의 에어 유로파를 비롯한 50곳 이상의 항공사가 오픈스트리트맵 기반 지도를 기내 모니터에 띄우고 있으며, 벨기에 국철의 실시간 열차 위치 추적 시스템의 배경 지도도 오픈스트리트맵입니다. 이 외에도 주간OSM의 Switch2OSM 단락을 보면 오픈스트리트맵을 이용하는 서비스, 타사 지도에서 오픈스트리트맵으로 갈아탄 사례를 기업, 정부를 막론하고 무수히 많이 볼 수 있습니다.

실제로 앞서 언급한 배달의민족은 단순한 지도 이미지가 아니라 정확한 경로 탐색 기능이 필요했고, 전국 곳곳의 회전 제한, 차로 수, 제한 속력을 전부 고려해야 하는 경로 탐색의 특성상 단순히 지도 이미지가 필요한 서비스에 비해 오픈스트리트맵을 도입하기 훨씬 까다롭습니다. 최근 일본의 한 시스템 업체에서도 오픈스트리트맵에 도로 폭 정보가 빈약해 어려움을 겪었고, 결국에는 지자체와 협력해 도로 폭 정보를 오픈스트리트맵에 추가한 사례가 있습니다(이번 글의 주제에서 벗어나는 이야기지만 이렇게 데이터 수요자가 동시에 공급자가 될 수 있고, 이렇게 함으로써 데이터베이스가 발전하는 순환 구조는 개방형 데이터의 관점에서 보았을 때 굉장히 바람직하고 이상적인 모습입니다).

다만 국내에서는 단순히 지도 이미지만 필요한 경우에도 네이버나 카카오 API를 이용해 네이버 지도, 카카오맵을 불러와 쓰는 경우가 많습니다(정부는 자체적으로 개발해 배포하는 Vworld를 이용하기도 합니다).

https://www.hankyung.com/it/article/202210214475i

 

'먹통 사태' 단 며칠 만에 백기…카카오 전략에 당했다? [선한결의 IT포커스]

'먹통 사태' 단 며칠 만에 백기…카카오 전략에 당했다? [선한결의 IT포커스], 장애 사태 후에도 지자체 등 API 공유 문의 잇따라 카카오, 2014년부터 API 공개 "로그인·지도·검색 카카오 생태계 벗

www.hankyung.com


위 기사에서 볼 수 있듯이 부동산 매물 검색 서비스를 운영하는 직방은 배경 지도로 카카오맵을 이용하고 있습니다.

이러한 차이가 나타나는 근본적인 원인이 바로 두 번째 이유입니다.

두 번째, 국내 오픈스트리트맵의 완성도가 상대적으로 낮다.

다행인 점은 한국 오픈스트리트맵이 '도로밖에 없는 지도'의 단계는 어느 정도 넘어섰다는 사실입니다. 2022년 10월 21일 기준으로 한국 지역 OSM에는 총 64만 8463개의 건물이 존재하며, 이는 실제로 대한민국에 존재하는 건물의 8.45%입니다. 8.45%면 매우 작은 값처럼 보이지만 한국 OSM에 존재하는 건물의 상당수가 많은 인구가 거주하고, 넓은 공간을 차지하는 아파트(106,132개, 전체의 16.37%)라는 사실을 감안하면 그리 낮지 않은 비율입니다.

물론 이 사실을 역으로 뒤집으면 일반 상가, 원룸, 시골 단독주택, 공업단지 건물은 부실하다는 말도 됩니다. 실제로 위의 직방 지도도 도로와 건물만 그려져 있으면 제 역할을 할 수 있기 때문에, 오픈스트리트맵에 건물이 많이 그려져 있었다면 카카오맵 대신 오픈스트리트맵을 도입했을지도 모르는 일이죠.

또한 오픈스트리트맵의 본질은 지도 이미지가 아닌 다양한 지리 정보가 들어 있는 지리 공간 데이터베이스인 만큼 오픈스트리트맵은 도로와 건물 말고도 다양한 상점 정보, 회전 제한, 차로 수, 휠체어 접근성과 같은 다양한 정보를 수용할 수 있습니다. 회전 제한 정보가 충실하면 이번 배달의민족 논란이 일어나지 않았을 것이고, 휠체어 접근성 정보가 충실하면 지체 장애인들을 위한 애플리케이션, 서비스를 손쉽게 제작할 수 있습니다.

이뿐만 아니라 오픈스트리트맵이 충실해지면 오픈스트리트맵을 쓰는 곳이 늘어나고, 그러면 오픈스트리트맵의 존재를 아는 사람이 늘어나고, 그러면 (개인 및 기업의) 오픈스트리트맵 기여가 많아지고, 그러면 오픈스트리트맵이 충실해지고, ...와 같은 선순환이 일어납니다. 문제는 오픈스트리트맵이 충실하지 않으면 이와 정반대의 악순환이 일어난다는 점입니다. 결국 오픈스트리트맵의 이용처가 늘어나도록 행사나 홍보 등으로 기여자를 모으고, 오픈스트리트맵으로 지도를 전환하려는 기업에 적극적으로 개발 지원을 제공하는 식의 행동이 있어야 앞서 언급한 선순환을 돌릴 수 있습니다. 유럽, 미국, 일본도 맨바닥에서 시작했으니 한국도 충분히 가능합니다.

코로나로 인해 그동안 대면 행사를 열지 못해 기여자를 끌어 모으고 결집하기가 어려웠지만, 내년부터는 제대로 오픈스트리트맵 한국 커뮤니티의 존재감을 알리고, 의미 있는 활동을 주도해 갈 수 있기를 바랍니다.

참고 자료

https://n.news.naver.com/mnews/article/008/0004798441?sid=105
https://www.donga.com/news/article/all/20211226/110959441/1
https://deview.kr/2020/sessions/376

https://developers.google.com/maps/billing/gmp-billing?hl=ko
https://www.fin-ncloud.com/product/applicationService/maps
https://www.mapbox.com/pricing
https://m.khan.co.kr/national/labor/article/202204251535001
https://twitter.com/mistp0uffer/status/1575481201238093825?s=20&t=rwmJiHNhcVbioVGNte-PWA
https://blog.openstreetmap.org/2020/12/27/휠체어 이용자들을 위한 최고의 세계지도/?lang=ko

  1. 하술하겠지만 네이버 지도의 도보 경로 탐색 서비스는 OSRM을 기반으로 하고 있습니다. OSRM은 서비스가 아닌 단지 프로그램일 뿐이기 때문에 삽입하는 지도 데이터베이스에 따라 다른 결과를 낼 수 있습니다. [본문으로]
profile

고급협동조합의 OSM

@고급협동조합

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!