Justin

Command Palette

Search for a command to run...

返回作品典藏庫
已完成2026ai-data

CommuteReliability 通勤可靠度分析

以可解釋的基線統計評估多模式通勤路線的準點與轉乘風險

整合台灣 TDX 公共運輸即時資料的多模式通勤可靠度分析平台。先以可解釋的基線統計(非機器學習)量化公車 ETA 準確度、轉乘失敗風險與路線穩定度,並透過 FastAPI 服務與輕量儀表板提供路線可靠度排名與多段通勤計畫評分,回答「哪條路線最可靠」而非僅是「最快」。

已驗證 Demo 錄影 1

由 portfolio quality pass 從既有專案 demo 素材複製。

12 張截圖2 支 Demo 影片

媒體總覽

快速瀏覽這個專案的截圖與錄影展示。

專案連結與 Demo 狀態

專案概覽

## 專案概述 CommuteReliability 是一套多模式通勤可靠度分析平台,刻意在 MVP 階段「先做可解釋的基線統計,不引入機器學習」。它整合台灣 TDX 公共運輸開放資料,回答「哪條通勤路線最可靠」這類問題——重點不是最快,而是最穩定、最不容易錯過轉乘。 ## 資料與方法 系統以 TDX 公車客戶端定時擷取路線、站牌與 ETA 快照,存入 SQLite 的時間窗儲存層。由於公開資料通常沒有真實到站時間,專案採用代理法:當估計時間低於設定門檻時判定為到站事件,並在固定回看時間窗內以最接近的快照評估預測準確度。分析層計算 ETA 偏誤與誤差,並以歷史誤差分布估計公車轉乘捷運的轉乘失敗機率。 ## 評分與建議 路線可靠度評分結合 MAE、絕對誤差百分位與絕對偏誤的加權組合,並以樣本量因子在資料不足時自動降低分數。多段通勤計畫再聚合各段的公車可靠度與轉乘成功機率,輸出整體建議。系統也能從起訖座標自動生成 bus_direct、bus_to_bus、bus_to_metro 候選並評分。 ## 工程實作 後端採 FastAPI + Pydantic v2,分為 ingestion / preprocessing / analytics / api 分層架構;所有門檻、時間窗與權重集中於 YAML 設定,支援不重啟熱套用。前端為輕量靜態儀表板,內建控制中心(背景輪詢/快取任務、設定熱更新、命令面板與座標微調)。專案以 Docker 容器化並部署於作品集閘道後。

我的角色

獨立開發者,負責資料擷取、分析方法設計、API 與儀表板的全端實作及容器化部署

問題背景

日常通勤的痛點往往不是平均時間,而是準點度與轉乘銜接的不確定性。一般導航只給最快路線,缺乏對 ETA 偏誤、轉乘失敗機率與路線穩定度的量化與可解釋說明。

解決方案

以 TDX 公車客戶端定時擷取 ETA 快照存入 SQLite 時間窗儲存層,從快照推斷到站事件作為地面真值代理;再以基線統計計算 ETA 偏誤/誤差、以歷史誤差分布估計轉乘失敗機率、並用 MAE 與偏誤加權搭配樣本量因子產生路線可靠度評分,最終聚合成多段通勤計畫分數。所有門檻與權重集中於 YAML 設定,可不重啟熱套用。

目前成果

完成可運行的 MVP 並部署於作品集閘道後;提供公車 ETA 準確度、轉乘風險、路線排名與通勤建議等 API,附帶含控制中心(背景排程、快取狀態、設定熱更新、命令面板)的儀表板,並可從起訖座標自動生成 bus_direct / bus_to_bus / bus_to_metro 候選路線。

作品亮點

  • 以 ETA 快照推斷到站事件的代理方法,在缺乏地面真值下仍可評估預測準確度
  • 轉乘失敗風險採機率模型,結合步行與月台緩衝時間
  • 分層架構(ingestion / preprocessing / analytics / api)將資料擷取、清洗與計分明確解耦
  • 所有門檻、時間窗與權重外部化至 YAML,支援 /settings/apply 不重啟熱更新
  • 儀表板控制中心整合背景輪詢/快取任務、命令面板(Ctrl/Cmd+K)與座標微調操作
  • 以快取站點幾何自動生成多模式通勤候選並批次評分

技術挑戰

  • 公共 ETA 資料缺乏真實到站時間,需以快照門檻推斷到站事件作為代理並控制評估誤差
  • 多段通勤的可靠度需同時聚合公車準點與轉乘成功機率,且在低樣本時避免過度自信評分

目標使用者

  • 作品集審閱者與面試官
  • 需要快速理解專案目的、技術棧與成熟度的技術讀者

技術亮點

  • 偵測到的主要技術線索:Python, FastAPI, Pydantic v2, httpx, SQLite, PyYAML, Uvicorn, Docker, TDX Open API, Vanilla JS
  • 已有 README 作為後續補齊案例研究的依據
  • 已連接公開 GitHub repository,可從作品集追溯原始碼

系統架構

此專案目前由 portfolio catalog pipeline 依 README、Git metadata、package/build 設定與素材線索建立案例頁。正式架構說明仍需依實際 source code 補齊;目前可確認的技術線索包含:Python, FastAPI, Pydantic v2, httpx, SQLite, PyYAML, Uvicorn, Docker, TDX Open API, Vanilla JS。

資料流程

目前尚未完成可公開的資料流程說明。若此專案含資料處理、AI pipeline 或後端 API,後續應補上 input、processing、storage、UI/output 的端到端流程。

專案結構

commute-reliability-analysis/
  README.md              # project documentation, when available
  source files           # implementation reviewed by local audit
  package/build config   # detected capability signals

安裝與執行

This project does not expose a verified runnable web command yet. Review the README/source tree and add exact install, run, test, and build commands before interview use.
No verified build command was detected. Treat the current portfolio page as a case-study placeholder until build steps are reviewed.

後續改進

  • 補齊正式 README、截圖與 demo recording
  • 補上架構圖、資料流程與關鍵技術決策
  • 確認 build/test 狀態並更新 portfolio release report

面試說明重點

  • 先說明此專案目前的成熟度與可展示範圍
  • 聚焦在可驗證的技術棧、程式結構與已完成部分
  • 不要宣稱尚未部署、尚未錄影或尚未測試的能力已完成

後續規劃

  • 導入服務中斷/誤點訊號與更進階的時間序列建模(目前刻意保持基線、無 ML)
  • 加入使用者個人化(步行容忍度、轉乘容忍度)與多城市資料覆蓋

相關作品