바르셀로나 시민 이동 패턴 분석을 위한 안드로이드 앱 MobilitApp 설계와 구현

바르셀로나 시민 이동 패턴 분석을 위한 안드로이드 앱 MobilitApp 설계와 구현

초록

본 논문은 바르셀로나 대도시권 시민들의 이동 데이터를 수집·분석하기 위해 Android 기반 MobilitApp을 설계·구현한 내용을 다룬다. 앱은 백그라운드에서 주기적인 위치 업데이트와 사용자의 활동 인식을 동시에 수행하고, 일일 데이터를 서버에 전송해 이동 패턴을 추출한다. 현재 시스템은 안정적으로 동작하지만, 활동 인식 정확도와 배터리 효율성 등 개선 여지가 남아 있다.

상세 분석

본 연구는 스마트폰 센서를 활용한 대규모 시민 이동 데이터 수집 플랫폼을 제안한다. Android OS의 FusedLocationProvider와 ActivityRecognition API를 결합해, 위치와 활동(걷기, 달리기, 차량, 정지 등)을 실시간으로 수집한다. 데이터는 로컬 SQLite에 임시 저장된 뒤, 하루 단위로 JSON 형태로 압축·암호화되어 HTTPS를 통해 중앙 서버에 전송된다. 서버 측에서는 PostgreSQL/PostGIS를 이용해 공간‑시간 데이터베이스를 구축하고, 이동 경로와 활동 유형을 매핑해 히트맵, 흐름 그래프 등 시각화 자료를 생성한다.

핵심 기술적 특징은 다음과 같다. 첫째, 백그라운드 서비스는 Android 8.0 이상에서 요구되는 제한된 배터리 정책을 고려해 JobScheduler와 Foreground Service를 혼합 사용, 과도한 전력 소모를 방지한다. 둘째, 위치 업데이트 주기는 이동 속도와 활동 상태에 따라 동적으로 조절되어, 정지 상태에서는 30분 간격, 이동 중에는 5분 간격으로 수집한다. 셋째, 활동 인식은 Google Play Services의 머신러닝 모델을 그대로 활용하지만, 자체적인 필터링 로직(예: 연속 3번 동일 활동 검증)을 추가해 오탐을 감소시켰다.

시스템 검증에서는 150명 이상의 자원봉사자를 대상으로 2주간 파일럿 테스트를 진행했으며, 평균 위치 정확도는 12 m, 활동 인식 정확도는 78 %를 기록했다. 그러나 도심 고층 건물 사이에서는 GPS 신호 약화로 정확도가 떨어지고, 대중교통(지하철) 이용 시 활동이 ‘정지’로 오분류되는 문제가 발견되었다. 또한, 데이터 전송량이 하루 평균 2 MB에 머물러 네트워크 부하가 낮은 편이지만, 장시간 백그라운드 실행 시 배터리 소모가 5 % 정도 증가한다는 점이 실용성에 영향을 미친다.

향후 개선 방향으로는 현행 Google Activity API 대신 TensorFlow Lite 기반 맞춤형 딥러닝 모델을 탑재해 활동 인식 정확도를 90 % 이상으로 끌어올리는 것이 제시된다. 또한, Edge 컴퓨팅을 활용해 데이터 전처리를 디바이스에서 수행하고, 차등 프라이버시 기법을 적용해 개인식별 정보를 보호하는 방안도 논의된다.