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

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

คุณสามารถทำให้ 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
            ]