كما هو موضّح بشكل موجز في نظرة عامة على تحسين المسار، يتألّف الطلب الأساسي من النموذج والشحنات والمركبات بصفتها كيانات مطلوبة:
- يُسجِّل النموذج الإعدادات والقيود للطلب بأكمله،
بما في ذلك كلّ من
Shipments
وVehicles
. - تمثّل الشحنات المهام أو الشحنات الفعلية التي تتضمّن
VisitRequest
جمع الطلبات ونقلها. تتضمّن الشحنات إعدادات وقيودًا محلية. - تمثّل المركبات المركبات أو السائقين أو الموظفين. تحتوي المركبات أيضًا على إعدادات وقيود محلية.
تصف سمات كلّ عنصر جزءًا من مشكلة التحسين على مستوى تحديدٍ معيّن للدقة. يتم تطبيق القيود على مستوى الطراز على جميع الشحنات والمركبات، في حين أنّ القيود والخصائص المحدّدة للشحنات أو المركبات تكون خاصة بشحنة أو مركبة واحدة.
للحصول على مستندات كاملة عن كل نوع من الرسائل، اطّلِع على المستندات المرجعية
لرسائل ShipmentModel
(REST وgRPC) وShipment
(REST وgRPC)
وVehicle
(REST وgRPC).
OptimizeToursRequest
مكانًا للإقامة
في ما يلي بعض السمات الشائعة الاستخدام لرسالة OptimizeToursRequest
(REST وgRPC) ذات المستوى الأعلى:
- يشير الخيار
searchMode
إلى ما إذا كان سيتم عرض أول حل يستوفي القيود المحدّدة أو العثور على أفضل حل ممكن في مهلة زمنية محدّدة. - يحدد
considerRoadTraffic
ما إذا كان سيتم استخدام الزيارات المباشرة لتوجيه التوجيه وتقدير الوقت المقدّر للوصول أم لا. - يحدِّد الخيار
populateTransitionPolylines
ما إذا كان سيتم عرض مضلّعات المسار وعلامات المسار في الاستجابة أم لا.
خصائص التصميم
تشمل بعض السمات الشائعة الاستخدام لرسالة ShipmentModel
(REST،
gRPC) ما يلي:
- يمثّل
globalStartTime
أقرب وقت لبدء المسارات لجميع المركبات والشحنات. ولا يجوز لأي مركبة بدء عمليات النقل والتحميل الأولى قبل هذا الوقت. - يمثّل
globalEndTime
آخر وقت لانتهاء المسارات لجميع المركبات والشحنات. يجب إكمال جميع عمليات الشحن والنقل المخصّصة قبل هذا الوقت.
سمات الشحن
في ما يلي بعض السمات الشائعة الاستخدام لرسالة Shipment
(REST وgRPC):
- تمثّل السمتان
pickups[]
وdeliveries[]
المكان الذي يمكن استلام شحنة فيه أو تسليمه. وتستخدم السمتانpickups[]
وdeliveries[]
رسالةVisitRequest
(REST وgRPC). - يمثّل
loadDemands
الحمولة المطلوبة لمركبة لإكمال شحن. تمثّل السمةload_limits
(REST, gRPC) مقدار الحمولة الذي يمكن أن تتسع للمركبة في وقت واحد. يمكنك قراءة المزيد من المعلومات عن التحميل في مقالة تحميل الطلبات والحدود. - يمثّل
penalty_cost
التكلفة المتكبّدة في حال تخطّي شحنة. يمكنك الاطّلاع علىمزيد من المعلومات عن التكاليف في مَعلمات نموذج التكلفة.
سمات المركبات
تشتمل بعض السمات الشائعة الاستخدام لرسالة Vehicle
(REST وgRPC) على ما يلي:
- يمثّل الرمز
startLocation
المكان الذي يجب أن تبدأ فيه المركبة مسارها. هذا السمة اختيارية. إذا لم يتم تحديده، يبدأ مسار المركبة من موقع الشحنة الأولى التي تم إسنادها إليها. - تشير السمة
endLocation
إلى المكان الذي يجب أن تنهي فيه المركبة مسارها. هذه الخاصية اختيارية. في حال عدم تحديده، ينتهي مسار المركبة عند الموقع الجغرافي لشحنتها الأخيرة المحدّدة لها. - يمثّل
startTimeWindows[]
الوقت الذي يمكن فيه للمركبة بدء مسارها. هذه الخاصية اختيارية. - يمثّل
endTimeWindows[]
وقت بدء مركبة مسارها وانتهائها منه. وكلا السمتَين اختياريَين. - يمثّل
loadLimits
سعة المركبة المتاحة لتلبية متطلبات حمولة الرسائل. يمكنك الاطّلاع على مزيد من المعلومات عن متطلبات الحمل وحدوده في مقالة متطلبات الحمل وحدوده.
في ما يلي مثال كامل لطلب بتنسيق JSON:
{
"model": {
"shipments": [
{
"pickups": [
{
"arrivalLocation": {
"latitude": 37.73881799999999,
"longitude": -122.4161
}
}
],
"deliveries": [
{
"arrivalLocation": {
"latitude": 37.79581,
"longitude": -122.4218856
}
}
]
}
],
"vehicles": [
{
"startLocation": {
"latitude": 37.73881799999999,
"longitude": -122.4161
},
"endLocation": {
"latitude": 37.73881799999999,
"longitude": -122.4161
},
"costPerKilometer": 1.0
}
],
"globalStartTime": "2024-02-13T00:00:00.000Z",
"globalEndTime": "2024-02-14T06:00:00.000Z"
}
}
يستخدم كلّ من OptimizeTours
وBatchOptimizeTours
رسائل الطلبات مثل المثال الموضح أعلاه، ولكن بطرق مختلفة. قبل تقديم طلب تحسين مسار، من المهم فهم الفرق بين الطريقتَين التاليتَين: