הגדרת הרמה של נתוני התנועה

מפתחים באזור הכלכלי האירופי (EEA)

העדפות התנועה שאתם בוחרים מאזנות בין הדיוק של פרטי המסלול לבין ביצועי הבקשה באחת משתי דרכים:

  • מודע לתנועה – החזרת התוצאות הכי מדויקות שאפשר (חביון גבוה יותר).

  • לא מודע לעומס התנועה – החזרת התוצאות במהירות האפשרית (החביון הנמוך ביותר).

כשאתם שולחים בקשה, כדאי לשקול אם עדיף להחזיר את התוצאות הכי מדויקות שאפשר או להחזיר תוצאות כמה שיותר מהר. ממשק Routes API מספק אפשרויות שמאפשרות לכם לשלוט באיכות של נתוני התגובה לעומת זמן האחזור של התגובה.

איך מגדירים את רמת התנועה

‫Routes API מספק את האפשרויות RoutingPreference (REST) ו-RoutingPreference (gRPC) שמאפשרות לכם לציין העדפות ניתוב לחישוב מסלולים.

ברירת המחדל היא תוצאות שלא מודעות לתנועה. אפשר לבחור אפשרויות תנועה באמצעות ההעדפות של ניתוב TRAFFIC_UNAWARE, TRAFFIC_AWARE ו-TRAFFIC_AWARE_OPTIMAL. כל העדפת ניתוב מניבה תוצאות שונות מבחינת איכות המסלול, זמן ההגעה המשוער וחביון התגובה.

מצב התנועה

מצב התנועה מאפיין את קצב זרימת התנועה:

  • תנועה רגילה: אין עומס תנועה והתנועה זורמת במהירות רגילה.

  • עומס תנועה קל עד בינוני: עומס התנועה גדל, והתנועה זורמת במהירות מופחתת.

  • עומס תנועה כבד: עומס כבד מאוד, עם מהירות תנועה נמוכה מאוד.

לא מודע לתנועה

TRAFFIC_UNAWARE היא הגדרת ברירת המחדל. משתמשים בהעדפת הניתוב הזו כשרוצים לקבל תשובות במהירות האפשרית, ופרטי ניתוב משוערים מספיקים.

המסלולים של TRAFFIC_UNAWARE מחושבים בלי להתחשב בתנאי התנועה הנוכחיים. העדפת הניתוב הזו מניבה את התגובה המהירה ביותר לבקשה (זמן האחזור הנמוך ביותר).

אם בוחרים באפשרות TRAFFIC_UNAWARE, המסלול והמשך שנבחרו מבוססים על רשת הכבישים ועל תנאי התנועה הממוצעים שלא תלויים בזמן, ולא על תנאי הכבישים הנוכחיים. לכן, יכול להיות שהמסלולים יכללו כבישים שסגורים באופן זמני. התוצאות של בקשה מסוימת עשויות להשתנות לאורך זמן בגלל שינויים ברשת הכבישים, עדכונים בתנאי התנועה הממוצעים והאופי המבוזר של השירות. התוצאות עשויות להשתנות גם בין מסלולים כמעט זהים בכל זמן או תדירות.

אלה התשובות שיוצגו לכם:

  • duration – מכיל את זמן ההגעה המשוער למסלול.

  • staticDuration: זמן ההגעה המשוער למסלול, בהתבסס רק על נתוני תנועה היסטוריים. בשביל TRAFFIC_UNAWARE, הערך כאן זהה לערך של duration.

מודעות למצב התנועה

משתמשים בהעדפת הניתוב הזו כשרוצים פרטי ניתוב מדויקים יותר מאשר TRAFFIC_UNAWARE, אבל לא אכפת לכם אם התשובות יוחזרו עם עלייה מתונה בחביון.

כשמגדירים את העדפת הניתוב TRAFFIC_AWARE, השירות מחשב את המסלול בהתחשב בתנאי התנועה הנוכחיים. כתוצאה מכך, המסלול והפרטים שלו משקפים בצורה מדויקת יותר את התנאים בעולם האמיתי. השיפור באיכות הנתונים בא על חשבון זמן האחזור של התגובה, ולכן מבוצעות אופטימיזציות של הביצועים כדי לצמצם את זמן האחזור.

אלה התשובות שיוצגו לכם:

  • duration: זמן ההגעה המשוער בהתחשב במידע על התנועה בזמן אמת.

  • staticDuration זמן ההגעה המשוער במסלול, על סמך מידע היסטורי על מצב התנועה בלבד.

אופטימלי עם התחשבות במצב התנועה

משתמשים בהעדפת הניתוב הזו כשרוצים לקבל תוצאות באיכות הכי גבוהה בלי להתחשב בזמן התגובה. העדפת הניתוב הזו גורמת לעיכוב הכי ארוך בהחזרת תשובות (החביון הכי גבוה).

כשמגדירים את TRAFFIC_AWARE_OPTIMAL העדפת הניתוב, השירות מחשב את המסלול בהתחשב בתנאי התנועה הנוכחיים, אבל לא מבצע אופטימיזציות של הביצועים. במצב הזה, השרת מבצע חיפוש מקיף יותר ברשת הכבישים כדי למצוא את המסלול האופטימלי.

העדפת המסלול TRAFFIC_AWARE_OPTIMAL שווה למצב שבו נעשה שימוש בכתובת maps.google.com ובאפליקציית מפות Google לנייד.

כשמשתמשים באפשרות הזו עם Compute Route Matrix, מספר האלמנטים בבקשה (מספר נקודות המוצא × מספר היעדים) לא יכול להיות גדול מ-

  1. מידע נוסף על המגבלות של Compute Route Matrix זמין במאמר חישוב מטריצת מסלולים.

אלה התשובות שיוצגו לכם:

  • duration: זמן ההגעה המשוער למסלול, בהתחשב במידע על התנועה בזמן אמת.

  • staticDuration: זמן ההגעה המשוער למסלול, בהתבסס רק על נתוני תנועה היסטוריים.

הגדרת שעת יציאה (אופציונלי)

אפשר להשתמש במאפיין הזה רק לבקשות שמתחשבות בתנועה, שבהן שעת היציאה צריכה להיות בעתיד. אם לא מגדירים את המאפיין departureTime, ברירת המחדל היא השעה שבה הבקשה נשלחת.

משתמשים במאפיין departureTime יחד עם האפשרויות TRAFFIC_AWARE ו-TRAFFIC_AWARE_OPTIMAL כשרוצים לשנות את האופן שבו השירות חוזה את מצב התנועה כשבוחרים מסלול.

  • TRAFFIC_UNAWARE: לא מומלץ כי הבחירה של המסלול ומשך הנסיעה מבוססים על רשת הכבישים ועל תנאי התנועה הממוצעים שלא תלויים בשעה.

  • TRAFFIC_AWARE ו-TRAFFIC_AWARE_OPTIMAL: מומלץ להשתמש בהן כשמדובר ביציאות שיתרחשו בעתיד הקרוב כי ההעדפות האלה מתחשבות בתנאי התנועה בזמן אמת. התנועה בשידור חי חשובה ורלוונטית יותר ככל שהמועד departureTime קרוב יותר לזמן הנוכחי. ככל שתגדירו את שעת היציאה מוקדם יותר, כך המערכת תתחשב יותר בתנאי התנועה ההיסטוריים בבחירת המסלולים.

דוגמה: איך בוחרים ניתוב שמודע לתנועה

קוד ה-JSON הבא מדגים איך להגדיר את TRAFFIC_AWARE_OPTIMAL העדפת הניתוב בגוף של ישות הודעת בקשה.

{
  "origin":{
    "location":{
      "latLng":{
        "latitude":37.419734,
        "longitude":-122.0827784
      }
    }
  },
  "destination":{
    "location":{
      "latLng":{
        "latitude":37.417670,
        "longitude":-122.079595
      }
    }
  },
  "travelMode":"DRIVE",
  "routingPreference":"TRAFFIC_AWARE_OPTIMAL"
}