🤖 3パターンを並行生成・最短距離を初期選択
🚶 パターン1(距離最短優先):移動可の参加者に積極的に集合してもらい総走行距離を最小化。逆方向の参加者は未割り当てにする場合あり
👥 パターン2(全員乗車優先):多少遠回りでも全員をどこかの車に割り当てることを優先。30分以内の移動は参加者にお願いする場合あり
🚗 パターン3(ドライバー負担最小):各ドライバーの走行距離を均等化。ドライバーの出発地から合理的な方向の参加者のみ乗せ、逆方向は積極的に未割り当て
💡 生成後はパターンを切り替えて比較できます。手動調整パネルで個別に移動することも可能です。
📋 配車ルールの優先順位
1️⃣ NG指定の回避(最優先・絶対厳守)
2️⃣ 移動不可(待機)の参加者は必ずドライバーが迎えに行く(NG同等の優先度)
3️⃣ 定員・バッグ積載数の遵守(物理制約のため例外なし)
4️⃣ 備考欄の希望・NGをできる限り反映
5️⃣ 逆方向・大きく遠回りになる参加者は未割り当てにして管理者が手動調整
6️⃣ ピックアップ順序はゴルフ場方向への一方向の流れになるよう最適化
7️⃣ レンタカーは席・バッグが不足する場合のみ使用
🛣️ 距離・時間データについて
Google Maps Distance Matrix APIで出発当日の交通状況を考慮した実測値を取得しAIに渡しています。距離・時間の計算はAIによる推定ではなく実測値ベースです。ピックアップ順序も実測値をもとにコードで最適化しています。
⚠️ 配車アラートの基準
🔴 要確認(赤枠):走行距離または所要時間が全車平均の1.5倍超
🟡 注意(黄枠):走行距離または所要時間が全車平均の1.3倍超
⚠️ 区間アラート:1区間のピックアップ距離が30km超の場合
🔴 未割り当て:配車に入れられなかった参加者がいる場合
※全車が均等な場合はアラートなし
時刻はティーオフ1時間前のゴルフ場到着を目標に逆算して計算しています。実際の道路状況により変動します。