เพิ่มประสิทธิภาพลําดับของจุดแวะบนเส้นทางของคุณ

โดยค่าเริ่มต้น Compute Routesวิธีของ Routes API จะคำนวณเส้นทางผ่านจุดแวะพักหลายแห่ง ซึ่งเรียกว่าจุดแวะพักกลางทาง ตามลำดับที่คุณระบุ

คุณสามารถทำให้ Routes API เพิ่มประสิทธิภาพเส้นทางที่ระบุได้ด้วยการจัดเรียงจุดแวะพักใหม่ตามลำดับที่มีประสิทธิภาพมากขึ้น การเพิ่มประสิทธิภาพจุดแวะพักจะเพิ่มประสิทธิภาพเพื่อเวลาเดินทาง แต่ก็พิจารณาปัจจัยอื่นๆ ด้วย เช่น ระยะทางและจำนวนทางโค้ง เมื่อตัดสินใจว่าเส้นทางใดมีประสิทธิภาพสูงสุด

เพื่อเพิ่มประสิทธิภาพจุดอ้างอิง

  1. ตรวจสอบว่าไม่มีจุดแวะพักในเส้นทางใดที่ via ตั้งค่าเป็น true เช่น {"address": "Clare,SA", "via": true} ดูข้อมูลเพิ่มเติมเกี่ยวกับจุดแวะพักกลางทางได้ที่ระบุจุดแวะพักกลางทาง

  2. ตรวจสอบว่าไม่ได้ตั้งค่า routing_preference เป็น TRAFFIC_AWARE_OPTIMAL

  3. ตั้งค่า optimize_waypoint_order เป็น true เช่น

    "optimizeWaypointOrder": "true",
    
  4. ระบุช่อง routes.optimizedIntermediateWaypointIndex ในช่องหน้ากาก ดังนี้

    REST

    -H X-Goog-FieldMask: routes.optimizedIntermediateWaypointIndex

    RPC

    const (fieldMask = "routes.optimizedIntermediateWaypointIndex")

ทําความเข้าใจวิธีเพิ่มประสิทธิภาพลําดับของจุดแวะพัก

Routes API จะเพิ่มประสิทธิภาพลําดับของจุดแวะพักในเส้นทางดังนี้

  1. จัดทําดัชนีจุดแวะพักโดยอัตโนมัติตามลําดับที่คุณระบุไว้ในคําขอ โดยเริ่มจาก 0

  2. เพิ่มประสิทธิภาพลําดับของจุดแวะพักโดยใช้หมายเลขดัชนีที่กําหนดให้กับจุดแวะพักในคําขอ

  3. แสดงผลลำดับของจุดอ้างอิงที่เพิ่มประสิทธิภาพในออบเจ็กต์ routes ในช่อง waypoint_order ภายใต้ routes.optimizedIntermediateWaypointIndex

ตัวอย่าง

คำขอนี้ขอให้เพิ่มประสิทธิภาพเส้นทางจากแอดิเลด รัฐเซาท์ออสเตรเลีย ไปยังภูมิภาคไวน์หลักแต่ละแห่งของรัฐเซาท์ออสเตรเลีย แล้วกลับไปยังแอดิเลด

curl -X POST -H 'content-type: application/json' -d ' {
  "origin": {
    "address": "Adelaide,SA"
  },
  "destination": {
    "address": "Adelaide,SA"
  },
  "intermediates": [
    {"address": "Barossa+Valley,SA"},
    {"address": "Clare,SA"},
    {"address": "Coonawarra,SA"},
    {"address": "McLaren+Vale,SA"}
  ],
  "travelMode": "DRIVE",
  "optimizeWaypointOrder": "true"
  }' \
-H 'Content-Type: application/json' \
-H 'X-Goog-Api-Key: YOUR_API_KEY' \
-H 'X-Goog-FieldMask: routes,geocodingResults.intermediates.intermediateWaypointRequestIndex' \
'https://routes.googleapis.com/directions/v2:computeRoutes'

Routes API จะจัดทำดัชนีจุดอ้างอิงระหว่างกลางที่ระบุในคำขอ โดยเริ่มต้นที่ 0 เช่น

0    {"address": "Barossa+Valley,SA"},
1    {"address": "Clare,SA"},
2    {"address": "Coonawarrav,SA"},
3    {"address": "McLaren+Vale,SA"}

บริการจะแสดงผลลัพธ์ที่เพิ่มประสิทธิภาพโดยใช้หมายเลขดัชนีของจุดแวะพัก 4 จุดที่ระบุในคำขอ ดังนี้

"optimizedIntermediateWaypointIndex": [
                3,
                2,
                0,
                1
            ]