ค่ากำหนดการจราจรที่คุณเลือกจะสร้างสมดุลระหว่างความถูกต้องของรายละเอียดเส้นทางกับประสิทธิภาพของคำขอ เมื่อส่งคำขอ คุณต้องการชั่งน้ำหนักว่าควรส่งคืนผลลัพธ์ที่แม่นยำที่สุดเท่าที่ทำได้ หรือจะให้ได้ผลลัพธ์โดยเร็วที่สุดหรือไม่ Routes API มีตัวเลือกที่ช่วยให้คุณควบคุมคุณภาพของข้อมูลการตอบกลับเทียบกับเวลาในการตอบสนองของการตอบกลับได้
ตั้งค่าระดับข้อมูลการเข้าชม
Routes API มี RoutingPreference (REST) และRoutingPreference (gRPC) ที่ช่วยให้คุณระบุค่ากำหนดการกำหนดเส้นทางสำหรับการคำนวณเส้นทางได้ ค่ากำหนดเหล่านี้จะต่างกันตรงที่ปัจจัยดังกล่าวจะนำสภาพการจราจรมาพิจารณาในการคำนวณเส้นทาง ค่ากำหนดการกำหนดเส้นทางแต่ละรายการจะให้ผลลัพธ์ที่แตกต่างกันตามระดับคุณภาพของเส้นทาง เวลาถึงโดยประมาณโดยประมาณ และเวลาในการตอบสนอง
สภาพการจราจรเป็นตัวกำหนดอัตราการไหลของการเข้าชม เช่น
- เมื่อไม่มีการจราจรคับคั่ง สภาพการจราจรจะอยู่ในระดับปกติ และการจราจรจะคล่องตัวด้วยความเร็วปกติ
- เมื่อใกล้ถึงช่วงชั่วโมงเร่งด่วน ความหนาแน่นของการจราจรจะเพิ่มขึ้น ซึ่งทำให้การจราจรช้าลง และทำให้สภาพการจราจรคล่องตัวถึงปานกลาง
- ในการรับส่งข้อมูลระหว่างบัมเปอร์ต่อบัมเปอร์ อัตราการไหลจะหยุดชะงัก และทำให้เกิดสภาพการจราจรที่หนาแน่น
ไม่ทราบข้อมูลการจราจร
เมื่อตั้งค่าการกำหนดเส้นทาง TRAFFIC_UNAWARE
ระบบจะคำนวณเส้นทางโดยไม่พิจารณาสภาพการจราจรปัจจุบัน ค่ากำหนดการกำหนดเส้นทางนี้ให้เวลาในการตอบสนองต่ำที่สุด (ระบบจะตอบกลับเร็วที่สุด)
TRAFFIC_UNAWARE
คือการตั้งค่าเริ่มต้น
คำตอบ:
เวลาถึงโดยประมาณอยู่ในพร็อพเพอร์ตี้การตอบกลับ
duration
พร็อพเพอร์ตี้การตอบกลับ
duration
และstaticDuration
มีค่าเดียวกัน
ใช้ค่ากำหนดการกำหนดเส้นทางนี้เมื่อต้องการให้ระบบแสดงคำตอบที่เร็วที่สุดและรายละเอียดการกำหนดเส้นทางโดยประมาณก็เพียงพอแล้ว
การรับรู้เกี่ยวกับการจราจร
เมื่อตั้งค่ากำหนดการกำหนดเส้นทาง TRAFFIC_AWARE
ระบบจะคำนวณเส้นทางตามสภาพการจราจรปัจจุบัน ด้วยเหตุนี้ รายละเอียดเส้นทางและ
เส้นทางจะแสดงสภาพจริงได้แม่นยำขึ้น เนื่องจากการเพิ่มขึ้นของข้อมูลมีคุณภาพนี้ต้องลดเวลาในการตอบสนองของการตอบกลับ การเพิ่มประสิทธิภาพจึงใช้เพื่อลดเวลาในการตอบสนองลงมาก
คำตอบ:
เวลาถึงโดยประมาณที่พิจารณาการเข้าชมแบบเรียลไทม์จะอยู่ในพร็อพเพอร์ตี้การตอบกลับ
duration
พร็อพเพอร์ตี้การตอบกลับ
staticDuration
มีระยะเวลาการเดินทางผ่านเส้นทางโดยไม่คํานึงถึงสภาพการจราจร
ใช้ค่ากำหนดการกำหนดเส้นทางนี้เมื่อคุณต้องการรายละเอียดการกำหนดเส้นทางที่แม่นยำยิ่งขึ้นมากกว่า TRAFFIC_UNAWARE
แต่คุณยังไม่ต้องกังวลหากการตอบกลับมีเวลาในการตอบสนองที่เพิ่มขึ้นปานกลาง
ประสิทธิภาพสูงสุดของการรับรู้เกี่ยวกับการจราจร
เมื่อคุณตั้งค่าค่ากำหนดการกำหนดเส้นทาง TRAFFIC_AWARE_OPTIMAL
ระบบจะคำนวณเส้นทางโดยพิจารณาจากสภาพการจราจรปัจจุบัน แต่จะไม่ใช้การเพิ่มประสิทธิภาพ ในโหมดนี้ เซิร์ฟเวอร์จะทำการค้นหาเครือข่ายถนนอย่างละเอียดมากขึ้นเพื่อค้นหาเส้นทางที่ดีที่สุด
ค่ากำหนดการกำหนดเส้นทาง TRAFFIC_AWARE_OPTIMAL
จะเทียบเท่ากับโหมดที่ maps.google.com และในแอป Google Maps บนอุปกรณ์เคลื่อนที่ใช้
เมื่อใช้ตัวเลือกนี้กับเมทริกซ์เส้นทาง Compute จำนวนองค์ประกอบในคำขอ (จำนวนต้นทาง x จำนวนปลายทาง) ต้องไม่เกิน 100 ดูข้อมูลเพิ่มเติมเกี่ยวกับขีดจำกัดของเมทริกซ์เส้นทาง Compute ได้ที่คำนวณเมทริกซ์เส้นทาง
คำตอบ:
เวลาถึงโดยประมาณที่พิจารณาการเข้าชมแบบเรียลไทม์จะอยู่ในพร็อพเพอร์ตี้การตอบกลับ
duration
พร็อพเพอร์ตี้การตอบกลับ
staticDuration
มีระยะเวลาการเดินทางผ่านเส้นทางโดยไม่คํานึงถึงสภาพการจราจร
ค่ากำหนดการกำหนดเส้นทางนี้ให้เวลาในการตอบสนองสูงสุด (กล่าวคือ การตอบกลับจะแสดงพร้อมกับการหน่วงเวลานานที่สุด) ใช้ค่ากำหนดการกำหนดเส้นทางนี้เมื่อคุณต้องการผลการค้นหาที่มีคุณภาพสูงที่สุดโดยไม่คำนึงถึงระยะเวลาการตอบกลับ
ผลกระทบของการตั้งค่าเวลาออกเดินทาง
คุณจะใช้พร็อพเพอร์ตี้ departureTime
เพื่อกำหนดเวลาออกเดินทางสำหรับการเดินทางได้ หากไม่ได้ตั้งค่าพร็อพเพอร์ตี้ departureTime
ไว้ ค่าเริ่มต้นจะเป็นเวลาที่คุณสร้างคำขอ
สำหรับ
TRAFFIC_UNAWARE
คุณจะตั้งค่าdepartureTime
ไม่ได้เนื่องจากตัวเลือกเส้นทางและระยะเวลาอิงตามเครือข่ายถนนและสภาพการจราจรที่ไม่ขึ้นอยู่กับเวลาโดยเฉลี่ยสำหรับ
TRAFFIC_AWARE
และTRAFFIC_AWARE_OPTIMAL
ซึ่งคำนึงถึงเงื่อนไขการเข้าชมแบบสด การเข้าชมแบบสดจึงมีความสำคัญมากขึ้นเมื่อเทียบกับdepartureTime
ในปัจจุบัน ยิ่งคุณกำหนดเวลาออกเดินทางในอนาคตไว้ไกลเพียงใด ก็จะทำให้พิจารณาเงื่อนไขการเข้าชมที่ผ่านมาได้มากขึ้น
ตัวอย่างการตั้งค่าการกำหนดเส้นทาง
โค้ด JSON ต่อไปนี้จะสาธิตวิธีตั้งค่ากำหนดการกำหนดเส้นทางในเนื้อหาเอนทิตีข้อความคำขอ
{ "origin":{ "location":{ "latLng":{ "latitude":37.419734, "longitude":-122.0827784 } } }, "destination":{ "location":{ "latLng":{ "latitude":37.417670, "longitude":-122.079595 } } }, "travelMode":"DRIVE", "routingPreference":"TRAFFIC_AWARE_OPTIMAL" }
กำหนดค่าคุณภาพโพลีไลน์
Routes API ให้คุณขอข้อมูลเกี่ยวกับสภาพการจราจรพร้อมกับโพลีไลน์ที่รับรู้การจราจรได้ ดูข้อมูลเพิ่มเติมได้ที่ขอโพลีไลน์
คุณภาพของโพลีไลน์สามารถอธิบายได้ดังนี้
จำนวนจุดที่เป็นเส้นประกอบ
ยิ่งมีจุดมาก เส้นประกอบก็ยิ่งนุ่มนวล (โดยเฉพาะเส้นโค้ง)
ความแม่นยำของจุดลอยตัวของจุด
จะมีการระบุจุดเป็นค่าละติจูดและลองจิจูดซึ่งแสดงในรูปแบบจุดลอยตัวที่มีความแม่นยำเดียว วิธีนี้ใช้ได้ดีกับค่าขนาดเล็ก (ซึ่งแสดงได้อย่างแม่นยำ) แต่ความแม่นยำจะลดลงเมื่อค่าเพิ่มขึ้นเนื่องจากข้อผิดพลาดในการปัดเศษที่เป็นจุดลอยตัว
เมธอด computeRoutes (REST) และเมธอด ComputeRoutes (gRPC) รองรับตัวเลือกคําขอ polylineQuality
สําหรับการควบคุมคุณภาพโพลีไลน์
ตัวอย่างการตั้งค่าคุณภาพของเส้นประกอบ
polylineQuality
ระบุคุณภาพของโพลีไลน์เป็น HIGH_QUALITY
หรือ OVERVIEW
(ค่าเริ่มต้น) เมื่อใช้ OVERVIEW
โพลีไลน์จะเขียนโดยใช้จุดเพียงไม่กี่จุดและมีเวลาในการตอบสนองคำขอต่ำกว่า HIGH_QUALITY
ตัวอย่างเช่น ในเนื้อหาคำขอ:
{ "origin":{ "location":{ "latLng":{ "latitude": 37.419734, "longitude": -122.0827784 } } }, "destination":{ "location":{ "latLng":{ "latitude": 37.417670, "longitude": -122.079595 } } }, "travelMode": "DRIVE", "routingPreference": "TRAFFIC_AWARE", "polylineQuality": "HIGH_QUALITY", "polylineEncoding": "ENCODED_POLYLINE", "departureTime": "2023-10-15T15:01:23.045123456Z", ... }