숭실대 2024-1학기 캡스톤디자인종합프로젝트2에서 진행한 프로젝트 입니다.


1. 프로젝트 개요

  • 수행 기간 : 2023년 7월 ~ 2024년 8월
  • 팀 구성: 4명

2. 나의 역할

  • 일반 도보 경로 및 뽀송 도보 경로의 OSRM 서버 구축
  • 뽀송 도보 경로의 가중치 조정 및 최적화
  • 뽀송길 API 개발
  • Docker 환경 구축 및 통합

3. 개발 환경

  • Intellij, VSCode

4. 사용 기술

  • Spring, Node.js(향후 Spring으로 대체 예정), NGINX, MySQL, React, Docker, OSRM, JOSM, QGIS

5. API

  • 공공데이터(기상청_단기예보 조회서비스), KAKAO, ODsay

주요 용어 정의

  • 뽀송길 : 강수의 영향이 최소화된 대중교통 경로
  • 뽀송 도보 경로 : 뽀송길 내 도보 경로 중 터널(tunnel)이나 비를 막아주는 객체(covered)속성을 가져 강수의 영향을 덜 받는 도보 경로
  • 뽀송 타임 : 강수의 영향이 최소화된 출발 시각
  • OSRM : Open Source Routing Machine, 기존 길찾기 애플리케이션들이 경로 탐색에 사용하는 알고리즘인 CH 기반의 라우팅 오픈소스로 도로 유형별로 가중치를 줄 수 있고 시설물 진입 패널티를 부과할 수 있다.

프로젝트 배경

  • 현재 대중교통 이용자들이 주로 활용하는 길 찾기 애플리케이션들인 네이버 지도, 카카오맵, TMAP 대중교통은 강수의 영향을 크게 받는 도보 구간에서의 기상 정보를 제공하지 않고 있다. 또한, 강수의 영향을 가장 덜 받는 출발 시각에 대한 정보 역시 제공되지 않고 있다.
  • 이에 따라 대중교통 이용자들은 더 자세한 기상 정보를 얻기 위해 별도로 찾아야 하며, 기존 애플리케이션이 제공하는 대중교통 경로 내 도보 경로는 기상 정보를 고려하지 않은 단일 최적 경로에 한정되어 있다.
  • 강수에 대응하기 위해 도보 구간별 기상 정보, 뽀송 도보 경로가 추가된 대중교통 경로 그리고 강수의 영향을 최소로 받는 출발 시각을 제공하는 기능을 가진 서비스를 개발한다.
  • 뽀송 도보 경로를 제공하기 위해 OSRM(Open Source Routing Machine)을 활용하여, 터널, 건물 통로 등 비를 막아주는 구조물이 있는 길의 가중치를 낮추며 어드밴티지를 부여하고, 비를 막아주는 구조물이 없는 길의 가중치를 높이는 시스템을 개발한다.

목표

  • 비 오는 날 서울의 대중교통 이용자들을 위해 비를 덜맞는 대중교통 경로(뽀송길)와 강수에 최소한으로 노출되는 출발 시각, 구간별 기상 정보를 제공하는 서비스를 개발한다.