택시 기사의 수익 증대를 위한 수요 예측 기반 추천-최적 배차 일원화 시스템, 앱 개발
1_v2.1.mp4
python(3.11.9)
- 필수 라이브러리 설치
cd server/scripts
pip install -r requirements.txt- XGB 모델 훈련 진행 (.py, .ipynb 모두 지원)
# config_train에서 훈련 관련 세부 사항 수정 가능
cd server/src
python train.py # 또는 notebooks/train.ipynb 실행- 시뮬레이션 시각화 진행 (Optional)
# config_simulation에서 시뮬레이션 시각화 관련 세부 사항 수정 가능
python simulation -c ../scripts/config_simulation.ini [-d <distance_rate>] [-dr <demand_rate>] [-cr <competition_rate>] -m simulation
Arguments
-d <distance_rate>거리에 부여할 가중치 (required, 0~1 사이의 float)-dr <demand_rate>예상 수요량에 부여할 가중치 (required, 0~1 사이의 float)-cr <competition_rate>클러스터 주변 경쟁률에 부여할 가중치 (required, 0~1 사이의 float)
- 가중치 최적화 진행
python simulation [-c <config_file>] -m optimization [-n <naive>]
Arguments
-c <config_file>최적화 하고 싶은 상황 (required, ../scripts/config_holidays.ini, ../scripts/config_weekdays.ini, ../scripts/config_weekends.ini 중 선택)-n <naive>배차 알고리즘 없이 실험하고 싶은지 여부 (optional, True시 배차 알고리즘 없이 1회 진행)
python(3.10 이상 권장)node.js
- 모델
src디렉토리의 서버 파일taxi_server.py실행 (기본 포트5980) dashboard/src/socket.js의URL변수를 앞서 실행한 서버 파일이 구동되는 IP 주소와 포트 번호로 수정- 아래 코드 실행
npm install
npm start- Flutter 구동이 가능한
Android버전 - Flutter SDK (3.22 이상 권장)
- Android SDK
prebuilt.apk설치
client디렉토리에서 아래 코드 실행
flutter pub get
dart run build_runner build -d
flutter build apk
adb install build/app/outputs/flutter-apk/app-release.apk # 혹은 해당 apk 파일을 직접 휴대폰에서 설치- 앱이 실행되면 위치 권한 부여 및 소켓 URL 주소를 앞서 실행한 서버 파일이 구동되는 IP 주소와 포트 번호로 수정
Client버튼을 눌러 실행