صفحه زیر حاوی جدولهای پارامتر بهترتیب حروف الفبا برای مؤلفههای زیر از روش optimizeTours در Route Optimization API است:
این جدولهای پارامتر فقط اشیای سطح بالا و پارامترهای اصلی را برای سهولت در یافتن فهرست میکنند و بهطور خلاصه شرح میدهند. برای فهرست کامل با توضیحات کامل و همه پارامترهای تودرتو، به سند مرجع API مراجعه کنید.
متن درخواست
بدنه درخواست شامل عناصر زیر است که در نمودار سمت راست نشان داده شده و در جدول زیر فهرست شده است:
OptimizeToursRequest: شیء درخواست سطح بالا که حاوی مدل و پارامترهای حل است.-
ShipmentModel: ساختار داده اصلی حاوی محمولهها، وسایل نقلیه، و محدودیتهای جهانی.-
Shipment: تکلیفی با تحویل و ارسال.-
VisitRequest: مکان و محدودیتهای تحویل گرفتن یا تحویل دادن.
-
-
Vehicle: وسیله نقلیهای که برای انجام ارسالها دردسترس است.
-
-
| والدین | پارامتر | نوع ملک | شرح |
|---|---|---|---|
OptimizeToursRequest |
allowLargeDeadlineDespiteInterruptionRisk |
بولی (true/false) |
اگر true، درخواست پردازش میشود حتی اگر زمان استراحت روی مقدار بزرگی (بیشتر از ۳۰ دقیقه) تنظیم شده باشد که خطر اختلال احتمالی سرور را بههمراه دارد. |
considerRoadTraffic |
بولی (true/false) |
اگر true، از دادههای ترافیک برای مسیریابی استفاده میکند. اگر نادرست باشد، فقط از سرعت شبکه جادهای استفاده میکند. |
|
geodesicMetersPerSecond |
شماره | وقتی useGeodesicDistances درست باشد، از این سرعت برای محاسبه مدت سفر استفاده میشود. |
|
injectedFirstSolutionRoutes[] |
آرایه اشیا (ShipmentRoute) |
مسیرهای راهحل قبلی برای شروع بهینهسازی از آن. | |
injectedSolutionConstraint |
شیء (InjectedSolutionConstraint) |
راهحل را محدود میکند تا شبیه به مسیرهای موجود باشد، و مشخص میکند کدام ویژگیها باید حفظ شوند و کدامیک میتوانند کاهش یابند. | |
interpretInjectedSolutionsUsingLabels |
بولی (true/false) |
اگر true، محمولهها/خودروها را در مسیرهای تزریقشده براساس label آنها بهجای نمایه آرایه مطابقت میدهد. |
|
label |
رشته | برچسب دلخواه برای شناسایی درخواست، که در پاسخ برگردانده میشود. | |
maxValidationErrors |
عدد صحیح | حداکثر تعداد خطاهای اعتبارسنجی را برای برگرداندن مشخص میکند. اگر مشخص نشده باشد، محدودیت پیشفرض اعمال میشود. | |
model |
شیء (ShipmentModel) |
الزامی. مجموعه خودروها و محمولههایی که باید بهینهسازی شوند. | |
populatePolylines |
بولی (true/false) |
اگر true باشد، چندخطیهای کدگذاریشده را برای مسیرها برمیگرداند. |
|
populateTransitionPolylines |
بولی (true/false) |
اگر true باشد، چندخطیهای کدگذاریشده را برای انتقالهای تکی بین بازدیدها برمیگرداند. |
|
refreshDetailsRoutes[] |
آرایه اشیا (ShipmentRoute) |
فهرستی از مسیرها برای بازآوری. این کار چندخطیها، مدتها، و فاصلهها را برای مسیرهای موجود بدون تغییر دادن توالی بازدید دوباره محاسبه میکند. | |
searchMode |
شمارشی (SearchMode) |
RETURN_FAST (نتایج سریع) یا CONSUME_ALL_AVAILABLE_TIME (بهترین کیفیت در زمان وقفه). |
|
solvingMode |
شمارشی (SolvingMode) |
DEFAULT_SOLVE (پیشفرض) یا VALIDATE_ONLY برای اعتبارسنجی مدل بدون حل کردن. |
|
timeout |
مدت | حداکثر مدت زمانی که حلکننده باید اجرا شود (مثلاً «۳۰ ثانیه»، «۳۰۰ ثانیه»). | |
useGeodesicDistances |
بولی (true/false) |
اگر true، مسافتها و زمانهای سفر بااستفاده از مسافتهای ژئودزیک (خط مستقیم) و سرعت geodesicMetersPerSecond محاسبه میشود. |
|
ShipmentModel(بخشی از OptimizeToursRequest) |
durationDistanceMatrices[] |
آرایه اشیا (DurationDistanceMatrix) |
ماتریسهای سفارشی مدت و فاصله را که برای مسیریابی بین مکانها استفاده میشود مشخص میکند. |
durationDistanceMatrixDstTags[] |
آرایه رشتهها | برچسبهایی که مقصدها (ستونها) را برای ماتریسهای مدت و مسافت سفارشی تعریف میکنند. | |
durationDistanceMatrixSrcTags[] |
آرایه رشتهها | برچسبهایی که منابع (ردیفها) را برای ماتریسهای فاصله و مدت سفارشی تعریف میکنند. | |
globalDurationCostPerHour |
شماره | هزینه ساعتی بازه زمانی جهانی مسیر، از زودترین شروع وسیله نقلیه تا دیرترین پایان وسیله نقلیه. | |
globalEndTime |
مُهر زمان | آخرین زمان پایان برای هر رویداد در مدل. | |
globalStartTime |
مُهر زمان | زودترین زمان شروع برای هر رویداد در مدل. | |
maxActiveVehicles |
عدد صحیح | حداکثر تعداد وسایل نقلیه مجاز برای فعال بودن در راهحل. | |
precedenceRules[] |
آرایه اشیا (PrecedenceRule) |
قوانینی که محدودیتهای سفارش را بین محمولههای خاص تعریف میکنند. | |
shipments[] |
آرایه اشیا (Shipment) |
فهرست محمولههایی که باید سرویس شوند. | |
shipmentTypeIncompatibilities[] |
آرایه اشیا (ShipmentTypeIncompatibility) |
قوانینی که از ارائه خدمات به انواع خاصی از محمولهها توسط یک وسیله نقلیه جلوگیری میکنند. | |
shipmentTypeRequirements[] |
آرایه اشیا (ShipmentTypeRequirement) |
قوانینی که ملزم میکنند محمولههای انواع خاصی از کالاها توسط یک خودرو سرویسدهی شوند. | |
transitionAttributes[] |
آرایه اشیا (TransitionAttributes) |
هزینههای اضافی، تأخیرها، و محدودیتهای مسافت را برای انتقال بین بازدیدها با برچسبهای خاص مشخص میکند. | |
vehicles[] |
آرایه اشیا (Vehicle) |
فهرست وسایل نقلیه دردسترس برای انجام ارسالها. | |
Shipment(بخشی از ShipmentModel) |
allowedVehicleIndices[] |
آرایه اعداد صحیح | شاخصهای خودروهایی که مجاز به انجام این ارسال هستند. |
costsPerVehicle[] |
نقشه (کلید: عدد صحیح، مقدار: عدد) | هزینههای اضافی که درصورت ارائه این محموله توسط خودرویی خاص متحمل میشوید. | |
costsPerVehicleIndices[] |
آرایه اعداد صحیح | شاخصهای خودروهایی که مقادیر costsPerVehicle برای آنها اعمال میشود. |
|
deliveries[] |
آرایه اشیا (VisitRequest) |
جایگزینهایی برای تحویل محموله. | |
ignore |
بولی (true/false) |
اگر true، محموله نادیده گرفته میشود و در بهینهسازی استفاده نمیشود. |
|
label |
رشته | برچسب تعریفشده توسط کاربر برای شناسایی محموله، که در پاسخ برگردانده میشود. | |
loadDemands |
map (key: string, value: Load) |
ظرفیت موردنیاز (مثلاً وزن، حجم) برای حمل این محموله. | |
penaltyCost |
شماره | هزینه درصورتیکه ارسال کالا انجام نشود. اگر تنظیم نشده باشد، ارسال اجباری است. | |
pickups[] |
آرایه اشیا (VisitRequest) |
جایگزینهایی برای تحویل گرفتن محموله. | |
pickupToDeliveryAbsoluteDetourLimit |
مدت | حداکثر زمان انحراف مطلق مجاز بین سوار کردن و رساندن درمقایسه با مسیر مستقیم. | |
pickupToDeliveryRelativeDetourLimit |
شماره | حداکثر انحراف نسبی مجاز برای محموله (برای مثال، مقدار ۲٫۰ یعنی کل زمان میتواند حداکثر ۲ برابر مدت سفر مستقیم باشد). | |
pickupToDeliveryTimeLimit |
مدت | حداکثر مدت مجاز از شروع تحویل گرفتن تا شروع تحویل دادن. | |
shipmentType |
رشته | طبقهبندی نوع که برای قوانین ناسازگاری و الزامات استفاده میشود. | |
VisitRequest(بخشی از pickups و deliveries در Shipment) |
arrivalLocation |
شیء (LatLng) |
مکان جغرافیایی ورود بهصورت مختصات عرض جغرافیایی/طول جغرافیایی. |
arrivalWaypoint |
شیء (Waypoint) |
مکانی که خودرو برای انجام بازدید به آنجا میرسد. با مختصات یا شناسه مکان تعریف میشود. | |
cost |
شماره | هزینه متحملشده درصورت انتخاب این درخواست بازدید خاص توسط حلکننده. | |
departureLocation |
شیء (LatLng) |
مکان جغرافیایی عزیمت بهصورت مختصات عرض جغرافیایی/طول جغرافیایی. | |
departureWaypoint |
شیء (Waypoint) |
مکانی که خودرو پساز تکمیل بازدید از آنجا حرکت میکند. اگر حذف شود، فرض میشود که همان arrivalWaypoint است. |
|
duration |
مدت | مدت بازدید (زمان سرویس)، مثلاً مدت زمان لازم برای بارگیری/ تخلیه بار. | |
label |
رشته | برچسب تعریفشده توسط کاربر برای این درخواست بازدید خاص، که در پاسخ برگردانده شده است. | |
loadDemands |
map (key: string, value: Load) |
درخواستهایی که تغییر بار را در این بازدید مشخص میکنند (مثلاً، ۱- برای تحویل بسته). | |
tags[] |
آرایه رشتهها | برچسبهای پیوستشده به این درخواست بازدید. از اینها برای محاسبه مدت سفر بین این بازدید و بازدیدهای دیگر بااستفاده از transitionAttributes استفاده میشود. |
|
timeWindows[] |
آرایه اشیا (TimeWindow) |
بازه زمانی مجاز برای رسیدن به این بازدید. | |
visitTypes[] |
آرایه رشتهها | رشتههایی که نوع بازدید را توصیف میکنند (مثلاً «تحویل»، «نصب»). برای اعمال extraVisitDurationForVisitType از مدل خودرو استفاده میشود. |
|
Vehicle(بخشی از ShipmentModel) |
breakRule |
شیء (BreakRule) |
قوانین مربوط به استراحتها را تعریف میکند (مثلاً استراحت اجباری برای ناهار). |
costPerHour |
شماره | هزینه هر ساعت از کل مدت مسیر. | |
costPerKilometer |
شماره | هزینه بهازای هر کیلومتر طیشده. | |
costPerTraveledHour |
شماره | هزینه هر ساعت درحین حرکت خودرو. | |
endLocation |
شیء (LatLng) |
مکان جغرافیایی پایان بهصورت مختصات عرض جغرافیایی/طول جغرافیایی. | |
endTags[] |
آرایه رشتهها | برچسبهایی که وضعیت نهایی خودرو را تعریف میکنند و برای مشخصههای انتقال استفاده میشوند. | |
endTimeWindows[] |
آرایه اشیا (TimeWindow) |
پنجرههای مجاز برای وسیله نقلیه برای پایان دادن به مسیر خود. | |
endWaypoint |
شیء (Waypoint) |
مکان جغرافیایی پایان بااستفاده از «نقطهمسیر» (مختصات یا شناسه مکان). | |
extraVisitDurationForVisitType |
map (key: string, value: Duration) | مدتزمان بیشتری را براساس visitType به بازدیدها اضافه میکند. |
|
fixedCost |
شماره | هزینه ثابتی که درصورت استفاده از خودرو، صرفنظر از مسافت یا مدت مسیر، اعمال میشود. | |
ignore |
بولی (true/false) |
اگر true، خودرو نادیده گرفته میشود و در بهینهسازی استفاده نمیشود. |
|
label |
رشته | برچسب تعریفشده توسط کاربر برای خودرو، در پاسخ برگردانده میشود. | |
loadLimits |
map (key: string, value: LoadLimit) |
ظرفیتهای خودرو (مثلاً حداکثر وزن، حداکثر حجم). | |
routeDistanceLimit |
شیء (DistanceLimit) |
محدودیت سخت یا نرم در کل مسافت مسیر خودرو. | |
routeDurationLimit |
شیء (DurationLimit) |
محدودیت سخت یا نرم بر مدت کل مسیر خودرو. | |
routeModifiers |
شیء (RouteModifiers) |
یک یا چند محدودیت مثل اجتناب از عوارضی، بزرگراه، یا کشتی. | |
startLocation |
شیء (LatLng) |
مکان شروع جغرافیایی بهصورت مختصات عرض جغرافیایی/طول جغرافیایی. | |
startTags[] |
آرایه رشتهها | برچسبهایی که وضعیت شروع خودرو را تعریف میکنند و برای ویژگیهای انتقال استفاده میشوند. | |
startTimeWindows[] |
آرایه اشیا (TimeWindow) |
پنجرههای مجاز برای شروع مسیر خودرو. | |
startWaypoint |
شیء (Waypoint) |
مکان شروع جغرافیایی بااستفاده از «نقطهمسیر» (مختصات یا شناسه مکان). | |
travelDurationLimit |
شیء (DurationLimit) |
محدودیت سخت یا نرم در کل مدت سفر (بهاستثنای زمان انتظار/خدمات) خودرو. | |
travelDurationMultiple |
شماره | ضریب اعمالشده بر مدت سفر (مثلاً ۱٫۵ سفر را ۵۰٪ کندتر میکند). | |
travelMode |
شمارشی (TravelMode) |
حالت سفر (مثلاً DRIVING، WALKING). بر زمان و مسافت سفر تأثیر میگذارد. |
|
unloadingPolicy |
شمارشی (UnloadingPolicy) |
ترتیب تخلیه بار را تعریف میکند (مثلاً LIFO یا LAST_IN_FIRST_OUT). |
|
usedIfRouteIsEmpty |
بولی (true/false) |
اگر true، خودرو حتی بدون ارسال محموله، استفادهشده درنظر گرفته میشود. این وسیله نقلیه هزینههای ثابتی دارد و بین مکانهای شروع و پایان خود حرکت میکند. |
بدنه پاسخ
بدنه پاسخ شامل عناصر زیر است که در نمودار سمت چپ نشان داده شده و در جدول زیر فهرست شده است:
OptimizeToursResponse: شیء پاسخ سطح بالا که حاوی مسیرها و سنجههای بهینهشده است.Metrics: هزینه کلی و آمار اجرای راهکار.ShipmentRoute: توالی بازدیدها و مسیر سفر اختصاصدادهشده به یک وسیله نقلیه.-
Visit: توقفی در مسیر برای انجام تحویل گرفتن یا تحویل دادن. Transition: مسیر سفر و مدت زمان بین دو ایستگاه مسیر.AggregatedMetrics: مجموع کل مدت، مسافت، و سنجههای دیگر. این عنصر میتواند هم درMetricsو هم درShipmentRouteوجود داشته باشد.
-
| والدین | پارامتر | نوع ملک | شرح |
|---|---|---|---|
OptimizeToursResponse |
metrics |
شیء (Metrics) |
سنجههای انبوهشی برای راهحل، ازجمله هزینه کل، مسافت کل، مدت کل، و تعداد دفعات استفاده از خودرو. |
requestLabel |
رشته | برچسب کپیشده از فیلد label درخواست. برای مرتبط کردن پاسخ با درخواست اصلی استفاده میشود. |
|
routes[] |
آرایه اشیا (ShipmentRoute) |
فهرست مسیرهای محاسبهشده برای هر خودرو. حاوی ورودی برای هر خودرو، صرفنظر از استفاده. | |
skippedShipments[] |
آرایه اشیا (SkippedShipment) |
فهرست محمولههایی که رد شدهاند (خدمات دریافت نکردهاند)، بههمراه دلایل رد شدن آنها. | |
validationErrors[] |
آرایه اشیا (OptimizeToursValidationError) |
فهرستی از خطاهای اعتبارسنجی که در مدل ورودی پیدا شده است. اگر solvingMode روی VALIDATE_ONLY تنظیم شده باشد یا اگر درطول حل کردن خطایی رخ دهد، این مورد پر میشود. |
|
Metrics(بخشی از OptimizeToursResponse) |
aggregatedRouteMetrics |
شیء (AggregatedMetrics) |
آمار انبوهشی در همه مسیرها، مانند کل مسافت سفر، کل مدت، و زمانهای انتظار. |
costs |
map (key: string, value: number) | تفکیک هزینهها براساس نوع (مثلاً «model.vehicles.cost_per_kilometer»، «model.shipments.penalty_cost»). | |
earliestVehicleStartTime |
مُهر زمان | زودترین زمان شروع در میان همه خودروهای استفادهشده. | |
latestVehicleEndTime |
مُهر زمان | آخرین زمان پایان در میان همه وسایل نقلیه استفادهشده. | |
skippedMandatoryShipmentCount |
عدد صحیح | تعداد ارسالهای اجباری که نادیده گرفته شده است. | |
totalCost |
شماره | هزینه کل راهحل، مجموع همه هزینههای مسیر و جریمههای ارسالهای نادیدهگرفتهشده. | |
usedVehicleCount |
عدد صحیح | تعداد خودروهای استفادهشده در راهحل. | |
AggregatedMetrics(بخشی از Metrics و ShipmentRoute) |
breakDuration |
مدت | مدت کل استراحتهای گرفتهشده در همه مسیرها. |
costs |
map (key: string, value: number) | تفکیک هزینهها براساس نوع (مثلاً «model.vehicles.cost_per_kilometer»، «model.shipments.penalty_cost»). | |
delayDuration |
مدت | کل مدت تأخیر در همه مسیرها. | |
earliestVehicleStartTime |
مُهر زمان | زودترین زمان شروع در میان همه خودروهای استفادهشده. | |
latestVehicleEndTime |
مُهر زمان | آخرین زمان پایان در بین همه وسایل نقلیه استفادهشده. | |
maxLoads |
map (key: string, value: VehicleLoad) |
حداکثر باری که هر خودرو در هر نقطهای از راهحل حمل میکند، که براساس نوع بار کلیدگذاری شده است. | |
performedShipmentCount |
عدد صحیح | تعداد کل ارسالهای انجامشده در همه خودروها. | |
skippedMandatoryShipmentCount |
عدد صحیح | تعداد ارسالهای اجباری که نادیده گرفته شده است. | |
totalCost |
شماره | هزینه کل راهحل، مجموع همه هزینههای مسیر و جریمههای ارسالهای نادیدهگرفتهشده. | |
totalDuration |
مدت | مدت کل همه مسیرها (سفر + انتظار + تأخیر + استراحت + بازدید). | |
travelDistanceMeters |
شماره | کل مسافت سفر به متر در همه مسیرها. | |
travelDuration |
مدت | کل مدت سفر در همه مسیرها. | |
usedVehicleCount |
عدد صحیح | تعداد خودروهای استفادهشده در راهحل. | |
visitDuration |
مدت | کل مدتزمان صرفشده برای انجام بازدیدها (بارگیری/تخلیه بار) در همه مسیرها. | |
waitDuration |
مدت | کل مدت انتظار در همه مسیرها. | |
ShipmentRoute(بخشی از OptimizeToursResponse) |
breaks[] |
آرایه اشیا (Break) |
فهرستی از وقفههایی که خودرو درطول مسیر داشته است. |
hasTrafficInfeasibilities |
بولی (true/false) |
نشان میدهد که آیا مسیر دارای هرگونه عدم امکان مرتبط با ترافیک است یا نه. | |
metrics |
شیء (AggregatedMetrics) |
سنجههای مختص این مسیر، مثل کل مسافت و مدت سفر. | |
routeCosts |
map (key: string, value: number) | تفکیک هزینههای این مسیر. کلیدها انواع هزینه هستند (مثلاً «cost_per_hour»)، و مقادیر مبالغ هستند. | |
routePolyline |
شیء (EncodedPolyline) |
چندخطی کدگذاریشده که مسیر کامل را ازنظر جغرافیایی نشان میدهد. | |
routeTotalCost |
شماره | کل هزینه مسیر، مجموع همه هزینهها در نقشه routeCosts. |
|
transitions[] |
آرایه اشیا (Transition) |
فهرست مرتبشدهای از انتقالها (بخشهای سفر) که بازدیدها را بههم متصل میکند. | |
vehicleEndTime |
مُهر زمان | زمانی که خودرو مسیرش را بهپایان میرساند. | |
vehicleIndex |
عدد صحیح | نمایه خودرو در منبع ShipmentModel که این مسیر را انجام میدهد. |
|
vehicleLabel |
رشته | برچسب تعریفشده توسط کاربر برای خودرو، کپیشده از مدل درخواست. | |
vehicleStartTime |
مُهر زمان | زمانی که خودرو مسیرش را شروع میکند. | |
visits[] |
آرایه اشیا (Visit) |
ترتیب منظم بازدیدها (تحویل گرفتنها و تحویل دادنها) که توسط خودرو در این مسیر انجام شده است. | |
Visit(بخشی از ShipmentRoute) |
detour |
مدت | زمان انحراف اضافی ناشی از این بازدید در مقایسه با مسیر مستقیم بین بازدیدهای قبلی و بعدی. |
isPickup |
بولی (true/false) |
اگر true باشد، این بازدید از نوع تحویل است. اگر نادرست باشد، تحویل است. |
|
loadDemands |
map (key: string, value: Load) |
تقاضاهای بار که با این بازدید برآورده شده است (مثلاً -۱ برای تحویل). این نسخهای از درخواستهای بارگذاری VisitRequest مربوطه است. |
|
shipmentIndex |
عدد صحیح | نمایه فیلد Shipment در مدل منبعی که این بازدید به آن خدمات ارائه میدهد. |
|
shipmentLabel |
رشته | برچسب محموله، کپیشده از ShipmentModel. |
|
startTime |
مُهر زمان | زمانی که بازدید برای شروع زمانبندی شده است. | |
visitLabel |
رشته | برچسب درخواست بازدید، کپیشده از VisitRequest در مدل. |
|
visitRequestIndex |
عدد صحیح | نمایه VisitRequest در فهرست تحویل یا ارسال محموله که این بازدید با آن مطابقت دارد. |
|
Transition(بخشی از ShipmentRoute) |
breakDuration |
مدت | مدت زمان وقفههایی که درطول این انتقال گرفته شده است. |
delayDuration |
مدت | مدت تأخیر ایجادشده درطول این انتقال (مثلاً زود رسیدن و منتظر ماندن برای پنجره زمانی). | |
routePolyline |
شیء (EncodedPolyline) |
چندخطی کدگذاریشده که مسیر این انتقال خاص را نشان میدهد. | |
routeToken |
رشته | یک توکن مات که میتواند به Google Navigation SDK ارسال شود تا مسیر را درطول ناوبری بازسازی کند. | |
startTime |
مُهر زمان | زمان شروع این گذار. | |
totalDuration |
مدت | مدت کل انتقال، شامل سفر، انتظار، استراحت، و تأخیر. | |
trafficInfoUnavailable |
بولی (true/false) |
اگر true باشد، نشان میدهد که دادههای ترافیک برای این انتقال دردسترس نبوده است. |
|
travelDistanceMeters |
شماره | مسافت طیشده درطول این انتقال، به متر. | |
travelDuration |
مدت | مدت سفر درطول این انتقال. | |
vehicleLoads |
نقشه (کلید: رشته، مقدار: VehicleLoad) |
باری که خودرو درطول این انتقال حمل میکند، که با نوع بار (مثلاً «وزن») کلیدگذاری شده است. | |
waitDuration |
مدت | مدتزمانی که باید منتظر بمانید تا بازدید بعدی شروع شود. |