/Tourist-Identification-V1

암호화된 대중교통 교통카드 빅데이터에서의 관광객 O-D 통행패턴 추출 알고리즘

Primary LanguageJupyter NotebookMIT LicenseMIT

암호화된 대중교통 교통카드 빅데이터에서의 관광객 O-D 통행패턴 추출 알고리즘: 관광도시, 제주에의 적용

Novelty

  • 암호화된 대중교통 이용 데이터에서 어떻게 관광객의 통행 기록추출할 것인가?
  • 자세한 알고리즘은 논문 (🏆 2021년 한국정보과학회 우수논문상)을 참고하시기 바랍니다.
  • 알고리즘 Version 2이 완성되었습니다: 이 Github를 참고하시기 바랍니다.

Prerequisites

  • Python
  • Pandas
  • Tqdm

Cautions

  • 이 알고리즘은 제주 빅데이터 센터에서 제공하는 제주 대중교통 버스 교통카드 빅데이터(tb_bus_user_usage, 버스 이용 데이터)에 최적화되어 있습니다.
  • 만약 제주 빅데이터 센터에서 제공하는 데이터 파일의 스키마가 변경될 경우, # 컬럼 상수 하단의 코드를 수정하면 됩니다. 예로, 'user_id'라는 필드가 'bus_user_id'로 변경된 경우,
user_id = 'bus_user_id'

Example

  • 하단 그림은 위 알고리즘을 이용하여 추출한 한 관광객 추정 버스 이용 승객(id: ‘055373583405cd9f943d40b199d52570332f3ac91e2f85b726e67da48284d2a8')의 이동 패턴을 시각화한 것입니다. tourist-od-pattern-visualization1 tourist-od-pattern-visualization2 tourist-od-pattern-visualization3

How to use

  • 임의로 디렉토리를 생성한 뒤, 다음과 같이 1개 이상의 제주 대중교통 버스 교통카드 데이터 파일(확장자: csv)을 배치합니다.
  • 참고로, 제주 빅데이터 센터는 일일단위로 버스 교통카드 이용 데이터 파일을 제공합니다.
  • 하단과 같이 파일에 이름을 부여하면 직관적일 것입니다. 다만, 파일 이름은 중복만 되지 않는다면, 분석에 어떠한 상관도 없습니다.
  • 단, 논문에 제시한 알고리즘 근거에 따라 1년을 초과하는 기간 범위의 데이터 파일들의 배치는 잘못 분석될 가능성이 높습니다.
tb_bus_user_usage_190601.csv
tb_bus_user_usage_190602.csv
tb_bus_user_usage_190603.csv
... 중략 ...
  • path 변수에 디렉토리의 주소를 삽입합니다.
# 예로, d 드라이브 밑 tb_bus_user_usage 디렉토리에 분석할 데이터 파일(들)을 저장한 경우,
### (1) 이하 전처리
path = 'd:/tb_bus_user_usage'
  • 알고리즘의 세부적인 사항을 필요하면 수정합니다.
# 예로, 연속으로 15일 미만이 아니라, 10일 미만인 버스 이용자를 필터링하고자 할 경우,
... 중략 ...
# 관광객 연속 체류 기간 ('day'의 변수 값(int형)만 수정하면 됩니다! 15 -> 10)
day = 10
... 중략 ...
  • 알고리즘을 실행합니다. 알고리즘은 관광객으로 추정된 버스 이용자의 USER_ID를 추출하여 U3 변수에 저장합니다.
  • U3 변수에 담긴 각 USER_ID에 대응하는 버스 이용자의 통행 기록을 분석하면 됩니다.

Cite this paper:

[Korean] 김예찬, 김철수, 김성백, "암호화된 대중교통 교통카드 빅데이터에서의 관광객 O-D 통행패턴 추출 알고리즘: 관광 도시, 제주에의 적용," 정보과학회 컴퓨팅의 실제 논문지, Vol. 26, No. 8, pp. 349-361, 2020.

[English] Yechan Kim, Chul-Soo Kim, and Seong-Baeg Kim, "An Algorithm for Extracting Tourists’ O-D Patterns Using Encrypted Smart Card Data of Public Transportation: Application to Tourist City, Jeju," KIISE Transactions on Computing Practices, Vol. 26, No. 8, pp. 349-361, 2020. (in Korean)

Acknowledgement

  • 본 연구는 과학기술정보통신부 및 정보통신기술진흥센터의 SW중심대학 지원사업(No. 2018-0-01863)으로 수행되었습니다.
  • 본 연구를 위해 제주 지역 교통카드 빅데이터를 제공한 JTP-제주특별자치도 빅데이터 센터에 감사의 말씀을 전합니다.