مدلهای ترافیک از الگوریتمها و عوامل خاصی برای پیشبینی تأثیر شرایط ترافیک بر کل زمان سفر برای یک مسیر مشخص استفاده میکنند. «میانای برنامه کاربردی مسیرها»
انواع مختلف مدل ترافیک را برای اولویتبندی عوامل مختلف مورداستفاده در
محاسبه مدت زمان در ترافیک ارائه میدهد. میتوانید نوع مدل ترافیکی را که میخواهید مسیرهایتان هنگام محاسبه مدت زمان مسیرها یا ماتریس مسیر استفاده کنند مشخص کنید. وقتی نوع مدل ترافیک را تنظیم میکنید، مقدار برگرداندهشده در فیلد
duration بسته به مدل ترافیکی که انتخاب میکنید متفاوت است.
هم «میانای برنامه کاربردی مسیرها» Compute Routes و هم روشهای Compute Route Matrix از انواع مدل ترافیک پشتیبانی میکنند.
بهطور پیشفرض، هر دو روش از نوع مدل ترافیک BEST_GUESS استفاده میکنند.
برای مشخص کردن نوع ترافیک
مبدأ و مقصدتان را تنظیم کنید.
اگر زمان حرکت شما در آینده است، زمان را بااستفاده از پارامتر
departure_timeاضافه کنید. اگر زمان خروجی را مشخص نکنید، بهطور پیشفرض روی زمان فعلی تنظیم میشود.پارامتر
routingPreferenceرا رویTRAFFIC_AWARE_OPTIMALتنظیم کنید. تنظیم کردنroutingPreferenceرویTRAFFIC_UNAWAREیاTRAFFIC_AWAREبا پارامترtrafficModelسازگار نیست.مدل ترافیک را انتخاب کنید تا با پارامتر
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 تغییر دهید، مدت زمان برگرداندهشده طولانیتر است:
"duration": "2436s"