ตามที่ได้อธิบายไว้คร่าวๆ ในภาพรวมการเพิ่มประสิทธิภาพเส้นทาง คำขอพื้นฐาน ประกอบด้วยรุ่น การจัดส่ง และยานพาหนะเป็นเอนทิตีที่ต้องระบุ ดังนี้
- โมเดลจะบันทึกการตั้งค่าและข้อจำกัดสำหรับทั้งคำขอ
ซึ่งรวมทั้ง
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) ที่พักจะแสดงปริมาณบรรทุกของยานพาหนะที่รองรับได้ต่อ 1 ครั้ง อ่านเพิ่มเติมเกี่ยวกับการโหลดในความต้องการและข้อจำกัดในการโหลดpenalty_cost
แสดงถึงค่าใช้จ่ายที่เกิดขึ้นหากข้ามการจัดส่ง อ่านแล้ว ข้อมูลเพิ่มเติมเกี่ยวกับต้นทุนในพารามิเตอร์รูปแบบต้นทุน
คุณสมบัติของยานพาหนะ
พร็อพเพอร์ตี้ที่ใช้กันโดยทั่วไปของข้อความ Vehicle
(REST, gRPC)
รวมข้อมูลต่อไปนี้
startLocation
แสดงถึงตำแหน่งที่ยานพาหนะต้องเริ่มต้นเส้นทาง ช่วงเวลานี้ หรือไม่ใส่ก็ได้ หากไม่ได้ระบุ เส้นทางของยานพาหนะเริ่มต้นที่ สถานที่จัดส่งครั้งแรกendLocation
แสดงถึงสถานที่ที่ยานพาหนะต้องสิ้นสุดเส้นทาง พร็อพเพอร์ตี้นี้ จะระบุหรือไม่ก็ได้ หากไม่ได้ระบุ เส้นทางของยานพาหนะจะสิ้นสุดที่ตำแหน่งของ การจัดส่งพัสดุครั้งล่าสุดstartTimeWindows[]
แสดงถึงเวลาที่ยานพาหนะสามารถเริ่มต้นเส้นทางได้ ช่วงเวลานี้ หรือไม่ใส่ก็ได้endTimeWindows[]
แสดงถึงเวลาที่ยานพาหนะสามารถเริ่มต้นและสิ้นสุดเส้นทางได้ พร็อพเพอร์ตี้ทั้ง 2 รายการเป็นตัวเลือกที่ไม่บังคับ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
จะใช้ข้อความคำขอ เช่น
ตัวอย่างด้านบน
แต่ในรูปแบบที่ต่างกัน ก่อนทำการเพิ่มประสิทธิภาพเส้นทาง
คุณจำเป็นต้องเข้าใจความแตกต่างระหว่าง 2 วิธีการดังนี้