เป้าหมายหลักของ Route Optimization API คือการค้นหาเส้นทางที่มีต้นทุนต่ำที่สุด ดังนั้น โมเดลต้นทุนจึงเป็นตัวขับเคลื่อนหลักในการเพิ่มประสิทธิภาพเส้นทาง
โมเดลต้นทุนคือชุดพร็อพเพอร์ตี้ที่ระบุต้นทุนทั่วโลก ต้นทุนยานพาหนะ และต้นทุนการจัดส่ง
พร็อพเพอร์ตี้โมเดลต้นทุนรองรับวัตถุประสงค์ในการเพิ่มประสิทธิภาพประเภทต่อไปนี้
- การกำหนดยานพาหนะและเส้นทางที่มีประสิทธิภาพ
- เวลาไปรับและเวลาจัดส่งที่คุ้มค่า
- การจัดลำดับความสำคัญของการจัดส่งที่สำคัญ
โครงสร้าง
ดังที่แสดงในแผนภาพ พร็อพเพอร์ตี้โมเดลต้นทุนมีโครงสร้างดังนี้
Shipmentมีพร็อพเพอร์ตี้penaltyCostVehicleมีพร็อพเพอร์ตี้ต่อไปนี้
เอกสารนี้จะเน้นเฉพาะพารามิเตอร์โมเดลต้นทุนที่สำคัญ ดูชุดพารามิเตอร์ต้นทุนทั้งหมดได้ในเอกสารอ้างอิง
รายการตรวจสอบข้อมูลสำคัญ
รายการตรวจสอบต่อไปนี้อธิบายความรู้ที่จำเป็น ซึ่งจะช่วยป้องกันข้อผิดพลาดที่อาจเกิดขึ้นเกี่ยวกับต้นทุน รายการนี้จะช่วยคุณตรวจสอบคำขอและแก้ปัญหาการตอบกลับ
พร็อพเพอร์ตี้
ตารางต่อไปนี้แสดงและอธิบายพร็อพเพอร์ตี้โมเดลต้นทุน
| ผู้ปกครอง | ชื่อพร็อพเพอร์ตี้ | ประเภทพร็อพเพอร์ตี้ | ต้นทุนต่อ | คำอธิบายพร็อพเพอร์ตี้ |
|---|---|---|---|---|
Shipment |
penaltyCost |
ตัวเลข | การจัดส่งที่ข้ามไป | ต้นทุนที่เกิดขึ้นจากการข้ามการจัดส่ง API จะข้ามการจัดส่งเมื่อต้นทุนในการดำเนินการให้เสร็จสมบูรณ์สูงกว่าต้นทุนค่าปรับ
|
Vehicle |
fixedCost |
ตัวเลข | การจัดส่ง | ต้นทุนคงที่ที่ใช้หากยานพาหนะนี้ใช้จัดการการจัดส่ง |
costPerHour |
ตัวเลข | ชั่วโมง | ต้นทุนการใช้งานยานพาหนะต่อชั่วโมง ซึ่งรวมถึงเวลาเดินทาง เวลาพัก เวลาแวะ และเวลาหยุด เมื่อต้นทุนนี้เพิ่มขึ้น ตัวเพิ่มประสิทธิภาพจะพยายามค้นหาเส้นทางที่เร็วกว่าซึ่งอาจไม่ใช่เส้นทางที่สั้นที่สุด พร็อพเพอร์ตี้นี้อาจเป็นต้นทุนแบบสแตนด์อโลนที่มีประสิทธิภาพต่อยานพาหนะแต่ละคันเนื่องจากมีความเรียบง่ายและครบถ้วน |
|
costPerKilometer |
ตัวเลข | กิโลเมตร | ต้นทุนต่อกิโลเมตรที่ยานพาหนะเดินทาง ซึ่งอาจแสดงถึงต้นทุนเชื้อเพลิงหรือต้นทุนค่าบำรุงรักษายานพาหนะที่คิดค่าเสื่อมราคา | |
costPerTraveledHour |
ตัวเลข | ชั่วโมง | ต้นทุนการใช้งานยานพาหนะต่อชั่วโมงเฉพาะขณะเดินทาง โดยไม่รวมเวลาพัก เวลาแวะ และเวลาหยุด ซึ่งจะจัดลำดับความสำคัญของเส้นทางการเดินทางที่เร็วกว่าเส้นทางที่สั้นกว่า |
ตัวอย่าง
ส่วนนี้ครอบคลุมตัวอย่าง 3 ประเภท ได้แก่
- **ตัวอย่างโค้ด** ที่แสดงโครงสร้างของพร็อพเพอร์ตี้โมเดลต้นทุน
- สถานการณ์ตัวอย่าง ที่แสดงวิธีหนึ่งในการใช้พร็อพเพอร์ตี้โมเดล ต้นทุนเพื่อให้บรรลุวัตถุประสงค์ทางธุรกิจ
- ตัวอย่างคำขอ ที่มีค่าที่ตั้งไว้ใน สถานการณ์ตัวอย่าง
ตัวอย่างโค้ด
ตัวอย่างโค้ดต่อไปนี้แสดงโครงสร้างของพร็อพเพอร์ตี้โมเดลต้นทุนใน
Shipment
{ "model": { "shipments": [ ... { "penaltyCost": PENALTY_COST } ], "vehicles": [ ... ] } }
ตัวอย่างโค้ดต่อไปนี้แสดงโครงสร้างของพร็อพเพอร์ตี้โมเดลต้นทุนใน
Vehicle
{ "model": { "shipments": [ ... ], "vehicles": [ ... { "fixedCost": FIXED_COST, "costPerKilometer": KILOMETER_COST, "costPerHour": HOUR_COST, "costPerTraveledHour": TRAVELED_HOUR_COST } ] } }
สถานการณ์ตัวอย่าง
ส่วนนี้จะอธิบายสถานการณ์ที่คุณมีธุรกิจรับฝากเลี้ยงสุนัข คุณกำลังเพิ่มประสิทธิภาพเส้นทางสำหรับรถบรรทุกที่ใช้รับสุนัขจากบ้าน ในสถานการณ์นี้ คุณต้องการให้ตัวเพิ่มประสิทธิภาพพิจารณาต้นทุนที่เกี่ยวข้องกับการรับสุนัขและการใช้งานยานพาหนะเมื่อแสดงเส้นทาง
สำหรับตัวอย่างนี้ หน่วยต้นทุน 1 หน่วยแสดงถึง 1 ดอลลาร์ ซึ่งหมายความว่าค่าพร็อพเพอร์ตี้โมเดลต้นทุนในคำขอของคุณมีดังนี้
| พร็อพเพอร์ตี้ | ค่า | สถานการณ์ |
|---|---|---|
penaltyCost |
10 | แสดงถึงค่าปรับที่คุณเสนอให้ลูกค้าที่ไม่มารับสุนัขในวันที่กำหนด ทุกครั้งที่คุณไม่มารับสุนัขในวันที่กำหนด ลูกค้าจะได้รับส่วนลด 40 ดอลลาร์จากยอดรวมค่าบริการ |
fixedCost |
30 | แสดงถึงต้นทุนรายวันของการผ่อนชำระสินเชื่อยานพาหนะ ซึ่งอยู่ที่ 30 ดอลลาร์ต่อวัน |
costPerKilometer |
0.08 | แสดงถึงปริมาณน้ำมันเบนซินที่ยานพาหนะใช้ต่อกิโลเมตร ยานพาหนะของคุณต้องใช้น้ำมัน 0.04 แกลลอนต่อกิโลเมตรในการเคลื่อนที่ และต้นทุนต่อแกลลอนในภูมิภาคของคุณคือ 2 ดอลลาร์ |
costPerHour |
27 | แสดงถึงจำนวนเงินที่คุณจ่ายให้คนขับสำหรับการขับยานพาหนะ คุณจ่ายให้คนขับ 27 ดอลลาร์ต่อชั่วโมง |
costPerTraveledHour |
2.5 | แสดงถึงจำนวนเงินที่คุณต้องจ่ายสำหรับเครื่องปรับอากาศของยานพาหนะต่อชั่วโมงสำหรับสุนัขขณะอยู่บนท้องถนน เมื่อยานพาหนะไม่เคลื่อนที่ คนขับสามารถเปิดประตูหลังและปิดเครื่องปรับอากาศได้ |
ตัวเพิ่มประสิทธิภาพอาจทำการแลกเปลี่ยนที่ไม่ชัดเจนสำหรับผู้ใช้ แต่สามารถพบได้ผ่านการเพิ่มประสิทธิภาพโดยพิจารณาจากพารามิเตอร์ต้นทุน
แผนภาพต่อไปนี้แสดงตัวอย่างที่ตัวเพิ่มประสิทธิภาพอาจเลือกเส้นทางที่ยาวกว่าแต่เร็วกว่าผ่านเส้นประสีเขียวเพื่อหลีกเลี่ยงการจราจรบนเส้นประสีแดง

ในสถานการณ์นี้ ความสมดุลของต้นทุนของเส้นทางทั้ง 2 เส้นทางมีดังนี้
เส้นประสีเขียวมี
costPerHourและcostPerTraveledHourต่ำเนื่องจากเป็นเส้นทางที่รวดเร็วและหลีกเลี่ยงการจราจร ซึ่ง คุ้มค่ากว่า แม้ว่าcostPerKilometerจะสูงก็ตามเส้นประสีแดงมี
costPerKilometerต่ำเนื่องจากเป็น เส้นทางตรง แต่costPerHourและcostPerTraveledHourสูง เกินไปเนื่องจากเวลาที่ต้องรอในการจราจร ทำให้เส้นทางนี้มีราคาแพงที่สุด
นอกจากจะแสดงเส้นทางที่คุ้มค่าแล้ว ตัวเพิ่มประสิทธิภาพยังแสดงผลรวมของต้นทุนทั้งหมดของเส้นทางการจัดส่งในพร็อพเพอร์ตี้การตอบกลับด้วย
ตัวอย่างคำขอ
ตัวอย่างต่อไปนี้แสดงโครงสร้างของคำขอพื้นฐาน optimizeTours
ที่รวมค่าที่ตั้งไว้ในสถานการณ์ตัวอย่าง
{ "model": { "shipments": [ { "pickups": [ { "arrivalLocation": { "latitude": 37.8024, "longitude": -122.4058 } } ], "deliveries": [ { "arrivalLocation": { "latitude": 37.759773, "longitude": -122.427063 } } ] "penaltyCost": 40 } ], "vehicles": [ { "startLocation": { "latitude": 37.759773, "longitude": -122.427063 }, "endLocation": { "latitude": 37.759773, "longitude": -122.427063 }, "fixedCost": 30, "costPerKilometer": 0.08, "costPerHour": 27, "costPerTraveledHour": 2.5 } ] } }
พร็อพเพอร์ตี้การตอบกลับ
ข้อความ OptimizeToursResponse มีพร็อพเพอร์ตี้ต้นทุน
ที่อธิบายต้นทุนที่เกิดขึ้นในกระบวนการดำเนินการเส้นทางให้เสร็จสมบูรณ์
metrics.costs: ต้นทุนทั้งหมดในทุกเส้นทางที่แบ่งตามช่องคำขอที่เกี่ยวข้องกับต้นทุนmetrics.totalCost: ต้นทุนทั้งหมดในทุกเส้นทางรวมกัน