توازن الإعدادات المفضّلة لحركة المرور التي تختارها بين دقة تفاصيل المسار وأداء الطلب. فعندما تقدم طلبًا، فإنك تفضِّل ما إذا كان من الأفضل عرض النتائج الأكثر دقةً أو عرض النتائج في أسرع وقت ممكن. توفّر Routes API خيارات تتيح لك التحكّم في جودة بيانات الردّ مقابل وقت استجابة الردّ.
ضبط مستوى بيانات حركة المرور
توفر واجهة برمجة تطبيقات Routes Route Preferences (REST) (REST) والإجرائي التوجيهي (gRPC) اللتين تتيح لك تحديد الإعدادات المفضّلة للتوجيه لحساب المسارات. تختلف هذه التفضيلات في مدى وضعها في الاعتبار لظروف حركة المرور عند احتساب المسار. ينتج عن كل تفضيل للتوجيه نتائج تختلف بدرجة تختلف من حيث جودة المسار والوقت المقدر للوصول ووقت الاستجابة.
تميز ظروف حركة المرور معدل تدفق حركة المرور. مثلاً:
- وعندما لا يكون هناك ازدحام، تعتبر ظروف حركة المرور طبيعية، وتدفقات حركة المرور بالسرعة العادية دون عوائق.
- عند اقتراب ساعة الذروة، تزداد كثافة حركة المرور، مما يتسبب في بطء حركة المرور، ما ينتج عنه ظروفًا خفيفة إلى متوسطة في ظروف حركة المرور.
- في حركة المرور من الملصقات الصغيرة إلى الدوّارة، يتوقّف معدّل التدفق، ما يؤدّي إلى حدوث ظروف كثيفة لحركة المرور.
عدم وعي الزيارات
عند ضبط الإعدادات المفضّلة للتوجيه TRAFFIC_UNAWARE
، يتم حساب المسارات
بدون مراعاة ظروف حركة المرور الحالية. يوفر تفضيل التوجيه هذا
وقت استجابة أقل (يتم عرض الردود أسرع).
TRAFFIC_UNAWARE
هو الإعداد التلقائي.
في الرد:
يجب إدراج الوقت المقدّر للوصول في سمة الاستجابة
duration
.تحتوي خاصية الاستجابة
duration
وstaticDuration
على القيمة نفسها.
استخدم تفضيل التوجيه هذا عندما تريد عرض الردود بأسرع شكل، وكانت تفاصيل التوجيه التقريبية جيدة بما يكفي.
إدراك الكثافة في حركة المرور
عند ضبط الإعدادات المفضَّلة للتوجيه TRAFFIC_AWARE
، يتم احتساب المسارات مع مراعاة ظروف حركة المرور الحالية. ونتيجة لذلك، تعكس تفاصيل المسار
والمسار بشكل أكثر دقة الظروف الواقعية. وبما أنّ هذه الزيادة في جودة البيانات تنتج على حساب وقت استجابة الاستجابة، يتم تطبيق تحسينات على الأداء لتقليل وقت الاستجابة.
في الرد:
ويتم عرض الوقت المقدّر للوصول الذي يضع الزيارات في الوقت الفعلي في الاعتبار في موقع الاستجابة
duration
.تحتوي سمة الاستجابة
staticDuration
على مدة التنقّل في المسار بدون مراعاة ظروف حركة المرور.
استخدِم هذا الإعداد المفضّل للتوجيه إذا أردت تفاصيل توجيه أكثر دقة عن
TRAFFIC_UNAWARE
، ولا تمانع إذا تم عرض الاستجابات بزيادة متوسطة في وقت الاستجابة.
الهدف الأمثل وإدراكي للزيارات
عند ضبط الإعدادات المفضّلة للتوجيه TRAFFIC_AWARE_OPTIMAL
، يتم احتساب المسارات مع مراعاة ظروف حركة المرور الحالية، ولكن لا يتم تطبيق أي تحسينات على الأداء. في هذا الوضع، يُجري الخادم بحثًا أكثر شمولاً عن شبكة الطرق للعثور على المسار الأمثل.
إنّ الإعداد المفضّل للتوجيه TRAFFIC_AWARE_OPTIMAL
معادٍ للوضع الذي يستخدمه maps.google.com وتطبيق "خرائط Google" المتوافق مع الأجهزة الجوّالة.
عند استخدام هذا الخيار مع مصفوفة مسار Compute، لا يمكن أن يتجاوز عدد العناصر في الطلب (عدد الأصول × عدد الوجهات) 100. للحصول على مزيد من المعلومات حول حدود مصفوفة مسار Compute، يمكنك الاطّلاع على حساب مصفوفة مسار.
في الرد:
ويتم عرض الوقت المقدّر للوصول الذي يضع الزيارات في الوقت الفعلي في الاعتبار في موقع الاستجابة
duration
.تحتوي سمة الاستجابة
staticDuration
على مدة التنقّل في المسار بدون مراعاة ظروف حركة المرور.
ويوفّر خيار التوجيه المفضّل هذا أعلى وقت استجابة للاستجابة (أي أنّ الردود ترجع بأطول مهلة للاستجابة). استخدم تفضيل التوجيه هذا عندما تريد الحصول على نتائج بأعلى جودة، بغض النظر عن المدة التي تستغرقها الردود.
تأثير ضبط وقت المغادرة
يمكنك اختياريًا استخدام السمة departureTime
لتحديد وقت المغادرة
للرحلة. وإذا لم يتم ضبط السمة departureTime
، يتم ضبطها تلقائيًا على
وقت تقديم الطلب.
بالنسبة إلى
TRAFFIC_UNAWARE
، لا يمكنك ضبطdepartureTime
لأن اختيار المسار والمدة يعتمد على شبكة الطرق ومتوسط ظروف حركة المرور التي لا تعتمد على الوقت.بالنسبة إلى
TRAFFIC_AWARE
وTRAFFIC_AWARE_OPTIMAL
، واللذين يأخذان ظروف حركة المرور المباشرة في الاعتبار، تصبح حركة المرور المباشرة أكثر أهمية كلما اقتربdepartureTime
من الآن. كلما قمت بتعيين وقت المغادرة في المستقبل، أُعطى المزيد من الاهتمام لشروط حركة المرور السابقة.
مثال على إعداد التوجيه المفضّل
يوضح رمز JSON التالي كيفية ضبط الإعدادات المفضّلة للتوجيه في نص كيان رسالة الطلب.
{ "origin":{ "location":{ "latLng":{ "latitude":37.419734, "longitude":-122.0827784 } } }, "destination":{ "location":{ "latLng":{ "latitude":37.417670, "longitude":-122.079595 } } }, "travelMode":"DRIVE", "routingPreference":"TRAFFIC_AWARE_OPTIMAL" }
ضبط جودة الخطوط المتعددة
تتيح لك Routes API طلب معلومات عن أحوال حركة المرور من خلال خط متعدد للهواتف الذكية. راجِع طلب الأرقام المتعددة للحصول على مزيد من المعلومات.
ويمكن وصف جودة الخط المتعدد في المصطلحات التالية:
عدد النقاط التي تشكّل الخطوط المتعددة
كلما زاد عدد النقاط، كان الخط المتعدد أكثر سلاسة (خصوصًا في المنحنيات).
دقة النقطة العائمة للنقاط
يتم تحديد النقاط كقيم لخطوط الطول والعرض، والتي يتم تمثيلها بتنسيق النقطة العائمة أحادية الدقة. يعمل هذا بشكل جيد مع القيم الصغيرة (التي يمكن تمثيلها بدقة)، ولكن تقل الدقة مع زيادة القيم بسبب أخطاء تقريب النقطة العائمة.
تتيح طريقة computeRoutes (REST)
وطريقة ComputeRoutes (gRPC) خيار الطلب polylineQuality
للتحكم في
جودة الخطوط المتعددة.
مثال على إعداد جودة الخطوط المتعددة
تحدّد السمة polylineQuality
جودة الخط المتعدد كـ HIGH_QUALITY
أو
OVERVIEW
(الخيار التلقائي). باستخدام OVERVIEW
، يتم إنشاء الخطوط المتعددة باستخدام عدد قليل
من النقاط ويكون وقت استجابة الطلب أقل من HIGH_QUALITY
.
على سبيل المثال، في نص الطلب:
{ "origin":{ "location":{ "latLng":{ "latitude": 37.419734, "longitude": -122.0827784 } } }, "destination":{ "location":{ "latLng":{ "latitude": 37.417670, "longitude": -122.079595 } } }, "travelMode": "DRIVE", "routingPreference": "TRAFFIC_AWARE", "polylineQuality": "HIGH_QUALITY", "polylineEncoding": "ENCODED_POLYLINE", "departureTime": "2023-10-15T15:01:23.045123456Z", ... }