מודלים של תנועה משתמשים באלגוריתמים ובגורמים ספציפיים כדי לחזות איך תנאי התנועה משפיעים על זמן הנסיעה הכולל במסלול נתון. ממשק ה-API של Routes
מציע סוגים שונים של מודלים של תנועה כדי לתת עדיפות לגורמים שונים שמשמשים
חישוב משך הזמן בתנועה. אתם יכולים לציין את סוג מודל התנועה שבו תרצו להשתמש במסלולים שלכם כשמחשבים את משך הזמן של המסלולים או של מטריצת המסלולים. כשמגדירים את סוג מודל התנועה, הערך המוחזר בפונקציה
השדה duration
משתנה בהתאם למודל התנועה שבוחרים.
גם ה-API של המסלול Compute Routes
וגם
השיטות של Compute Route Matrix
תומכות בסוגים של מודלים של תנועה.
כברירת מחדל, בשתי השיטות נעשה שימוש בסוג מודל התנועה BEST_GUESS
.
כדי לציין סוג תנועה
מגדירים את המוצא ואת היעד.
אם שעת היציאה היא בעתיד, יש לציין את השעה באמצעות הפרמטר
departure_time
. אם לא תציינו שעת יציאה, מוגדר כברירת מחדל עכשיו.בוחרים את מודל התנועה שרוצים להשתמש בו עם הפרמטר
trafficModel
ואחד מהסוגים הבאים:BEST_GUESS
(ברירת המחדל) כדי לבקש שהערך המוחזר שלduration_in_traffic
יהיה האומדן הטוב ביותר של זמן הנסיעה, על סמך המידע הידוע על תנאי התנועה ההיסטוריים ועל התנועה בזמן אמת. ככל ש-departure_time
קרוב יותר לזמן הנוכחי, התנועה בזמן אמת נעשית חשובה יותר. השימוש בסוג ברירת המחדל שלBEST_GUESS
מניב את התחזיות השימושיות ביותר ברוב המכריע של תרחישי השימוש.PESSIMISTIC
כדי לבקש שהערך המוחזר שלduration_in_traffic
ידגם את הזמן על סמך תנאי התנועה ההיסטוריים בימים שבהם התנועה הייתה גרועה. הסוג הזה מספק משך זמן משוער שככל הנראה ארוך יותר מ- זמן הנסיעה בפועל ברוב הימים. ימים מדי פעם עם בעיות קשות במיוחד והתנאים עדיין עשויים לחרוג מהאומדן הזה.OPTIMISTIC
כדי לבקש שהערך המוחזר שלduration_in_traffic
ידגם את הזמן על סמך תנאי התנועה ההיסטוריים בימים שבהם התנועה הייתה נוחה. בסוג זה, משך הזמן המשוער שסביר להניח שהוא קצר יותר מ- זמן הנסיעה בפועל ברוב הימים. מדי פעם עם שתנאים טובים עדיין עשויים להיות מהירים יותר מהאומדן הזה.
לדוגמה:
"trafficModel": "OPTIMISTIC"
מציינים את השדה
routes.duration
במסכת השדה.REST
-H X-Goog-FieldMask: routes.duration
RPC
const (fieldMask = "routes.duration")
כש-Routes API מעריך את משך הזמן בפקקים, הוא משתמש בסוג של מודל התנועה שביקשת.
דוגמה: בקשה למודל תנועה
לדוגמה, הבקשה הזו מציינת את משך הזמן המשוער באמצעות
סוג מודל תנועה אחד (OPTIMISTIC
) בזמן יציאה ספציפי:
curl -X POST -H 'content-type: application/json' -d ' { "origin": { "address": "Kyoto, Japan" }, "destination": { "placeId": "ChIJrYtcv-urAWAR3XzWvXv8n_s" }, "travelMode": "DRIVE", "routingPreference": "TRAFFIC_AWARE_OPTIMAL", "trafficModel": "OPTIMISTIC" }' \ -H 'Content-Type: application/json' \ -H 'X-Goog-Api-Key: YOUR_API_KEY' \ -H 'X-Goog-FieldMask: routes.duration' \ 'https://routes.googleapis.com/directions/v2:computeRoutes'
הבקשה הזו מחזירה את משך הזמן המשוער לפי סוג מודל התנועה OPTIMISTIC
של הנסיעה:
"duration": "1238s"
אם משנים את סוג מודל התנועה ל-PESSIMISTIC
, משך הזמן המוחזר הוא
older:
"duration": "2436s"