นี่เป็นตัวแปรของเมธอด locations.optimizeTours ที่ออกแบบมาเพื่อการเพิ่มประสิทธิภาพที่มีค่าระยะหมดเวลาสูง ควรใช้เมธอดนี้แทนเมธอด locations.optimizeTours สำหรับการเพิ่มประสิทธิภาพที่ใช้เวลานานกว่า 2-3 นาที
long-running operation (LRO) ที่แสดงผลจะมีชื่อในรูปแบบ <parent>/operations/<operation_id> และสามารถใช้เพื่อติดตามความคืบหน้าของการคำนวณได้ ประเภทฟิลด์ metadata คือ OptimizeToursLongRunningMetadata ประเภทฟิลด์ response คือ OptimizeToursResponse หากสำเร็จ
คำขอ HTTP
POST https://routeoptimization.googleapis.com/v1/{parent=projects/*/locations/*}:optimizeToursLongRunning
URL ใช้ไวยากรณ์การแปลงรหัส gRPC
พารามิเตอร์เส้นทาง
| พารามิเตอร์ | |
|---|---|
parent |
ต้องระบุ กำหนดเป้าหมายโปรเจ็กต์หรือสถานที่เพื่อโทรออก รูปแบบ:
ระบบไม่รองรับค่า |
เนื้อความของคำขอ
เนื้อหาของคำขอมีข้อมูลซึ่งมีโครงสร้างดังต่อไปนี้
| การแสดง JSON |
|---|
{ "timeout": string, "model": { object ( |
| ช่อง | |
|---|---|
timeout |
หากตั้งค่าการหมดเวลานี้ เซิร์ฟเวอร์จะแสดงการตอบกลับก่อนที่ระยะเวลาหมดเวลาจะผ่านไปหรือถึงกำหนดเวลาของเซิร์ฟเวอร์สำหรับคำขอที่โหลดแบบซิงโครนัส แล้วแต่ว่าอย่างใดจะถึงก่อน สำหรับคำขอที่โหลดแบบอะซิงโครนัส เซิร์ฟเวอร์จะสร้างโซลูชัน (หากเป็นไปได้) ก่อนที่ระยะหมดเวลาจะสิ้นสุดลง |
model |
โมเดลการจัดส่งที่ต้องการแก้ปัญหา |
solvingMode |
โดยค่าเริ่มต้น โหมดการแก้โจทย์คือ |
searchMode |
โหมดการค้นหาที่ใช้เพื่อแก้ปัญหาคำขอ |
injectedFirstSolutionRoutes[] |
แนะนําอัลกอริทึมการเพิ่มประสิทธิภาพในการค้นหาโซลูชันแรกที่คล้ายกับโซลูชันก่อนหน้า โมเดลจะถูกจำกัดเมื่อสร้างโซลูชันแรก ระบบจะข้ามการจัดส่งที่ไม่ได้ดำเนินการในเส้นทางโดยนัยในโซลูชันแรก แต่อาจดำเนินการในโซลูชันต่อๆ ไป โซลูชันต้องเป็นไปตามสมมติฐานความถูกต้องพื้นฐานบางประการ ดังนี้
หากโซลูชันที่แทรกไม่สามารถทำได้ ระบบอาจไม่แสดงข้อผิดพลาดในการตรวจสอบความถูกต้อง และอาจแสดงข้อผิดพลาดที่ระบุว่าไม่สามารถทำได้แทน |
injectedSolutionConstraint |
จำกัดอัลกอริทึมการเพิ่มประสิทธิภาพเพื่อค้นหาโซลูชันสุดท้ายที่คล้ายกับโซลูชันก่อนหน้า ตัวอย่างเช่น อาจใช้เพื่อตรึงบางส่วนของเส้นทางที่เสร็จสมบูรณ์แล้วหรือที่กำลังจะเสร็จสมบูรณ์แต่ต้องไม่มีการแก้ไข หากโซลูชันที่แทรกไม่สามารถทำได้ ระบบอาจไม่แสดงข้อผิดพลาดในการตรวจสอบความถูกต้อง และอาจแสดงข้อผิดพลาดที่ระบุว่าไม่สามารถทำได้แทน |
refreshDetailsRoutes[] |
หากไม่ว่างเปล่า ระบบจะรีเฟรชเส้นทางที่ระบุโดยไม่แก้ไขลำดับการเข้าชมหรือระยะเวลาเดินทางที่เกี่ยวข้อง โดยจะอัปเดตเฉพาะรายละเอียดอื่นๆ การดำเนินการนี้ไม่ได้แก้ปัญหาโมเดล ตั้งแต่เดือนพฤศจิกายน 2020 เป็นต้นมา ฟิลด์นี้จะสร้างเฉพาะเส้นประกอบของเส้นทางที่ไม่ว่างเปล่าและกำหนดให้ ช่อง ต้องไม่ใช้ช่องนี้ร่วมกับ
|
interpretInjectedSolutionsUsingLabels |
หากเป็นจริง ให้ทำดังนี้
การตีความนี้มีผลกับช่อง หากเป็นจริง ป้ายกำกับในหมวดหมู่ต่อไปนี้ต้องปรากฏในหมวดหมู่ของตนเองไม่เกิน 1 ครั้ง
หาก การนำการเข้าชมเส้นทางหรือทั้งเส้นทางออกจากโซลูชันที่แทรกอาจส่งผลต่อข้อจำกัดโดยนัย ซึ่งอาจทำให้เกิดการเปลี่ยนแปลงในโซลูชัน ข้อผิดพลาดในการตรวจสอบ หรือไม่สามารถทำได้ หมายเหตุ: ผู้โทรต้องตรวจสอบว่า |
considerRoadTraffic |
พิจารณาการประมาณการเข้าชมในการคำนวณช่อง |
populatePolylines |
หากเป็น "จริง" ระบบจะป้อนข้อมูลเส้นประกอบใน |
populateTransitionPolylines |
หากเป็น "จริง" ระบบจะป้อนข้อมูลเส้นประกอบและโทเค็นเส้นทางในการตอบกลับ |
allowLargeDeadlineDespiteInterruptionRisk |
หากตั้งค่านี้ คำขอจะมีกำหนดเวลา (ดู https://grpc.io/blog/deadlines) ได้สูงสุด 60 นาที ไม่เช่นนั้น กำหนดเวลาสูงสุดจะอยู่ที่ 30 นาทีเท่านั้น โปรดทราบว่าคำขอที่ใช้เวลานานมีความเสี่ยงที่จะถูกขัดจังหวะมากกว่า (แต่ก็ยังน้อยอยู่) |
useGeodesicDistances |
หากเป็นจริง ระบบจะคำนวณระยะทางในการเดินทางโดยใช้ระยะทางแบบจีโอเดสิกแทนระยะทางของ Google Maps และจะคำนวณระยะเวลาเดินทางโดยใช้ระยะทางแบบจีโอเดสิกด้วยความเร็วที่กำหนดโดย |
label |
ป้ายกำกับที่อาจใช้เพื่อระบุคำขอนี้ ซึ่งรายงานกลับมาใน |
geodesicMetersPerSecond |
เมื่อ |
maxValidationErrors |
ตัดจำนวนข้อผิดพลาดในการตรวจสอบที่แสดงผล โดยทั่วไปข้อผิดพลาดเหล่านี้จะแนบมากับเพย์โหลดข้อผิดพลาด INVALID_ARGUMENT เป็นรายละเอียดข้อผิดพลาด BadRequest (https://cloud.google.com/apis/design/errors#error_details) เว้นแต่ว่า solvingMode=VALIDATE_ONLY: โปรดดูช่อง |
เนื้อหาการตอบกลับ
หากทำสำเร็จ เนื้อหาการตอบกลับจะมีอินสแตนซ์ Operation
ขอบเขตการให้สิทธิ์
ต้องใช้ขอบเขต OAuth ต่อไปนี้
https://www.googleapis.com/auth/cloud-platform
สิทธิ์ IAM
ต้องมีสิทธิ์ IAM ต่อไปนี้ในทรัพยากร parent
routeoptimization.operations.create
ดูข้อมูลเพิ่มเติมได้ที่เอกสารประกอบของ IAM