Distance Matrix API và bài toán tối ưu lộ trình giao hàng
Khi cần biết khoảng cách giữa 1 điểm và 1 điểm, gọi Direction API là đủ. Khi cần biết khoảng cách giữa 30 tài xế và 200 đơn hàng, gọi 6.000 lần Direction là cách chắc chắn làm sập hệ thống. Đó là lúc cần ma trận khoảng cách.
Một request thay cho hàng nghìn lượt gọi
Distance Matrix nhận danh sách điểm đi và danh sách điểm đến, trả về ma trận NxM chứa khoảng cách và thời gian di chuyển của mọi cặp. Hàng nghìn điểm được xử lý trong khoảng 50ms.
curl "https://routing.vigodev.online/v2/distancematrix\
?origins=21.0285,105.8542|21.0122,105.8250\
&destinations=20.9915,105.8000|21.0450,105.7900|21.0301,105.8500\
&vehicle=bike\
&api_key=API_KEY"Ma trận 30x200 tương đương 6.000 lượt gọi Direction. Distance Matrix gộp lại thành một request, vừa nhanh hơn nhiều bậc vừa rẻ hơn hẳn về số lượt tính phí.
Từ ma trận tới lộ trình tối ưu
Ma trận khoảng cách là đầu vào, không phải đáp án. Bước tiếp theo là sắp xếp thứ tự các điểm dừng — chính là bài toán người giao hàng (Travelling Salesperson Problem). Trip Optimization API làm sẵn bước này:
curl "https://routing.vigodev.online/trip\
?origin=21.0285,105.8542\
&waypoints=21.0122,105.8250|20.9915,105.8000|21.0450,105.7900\
&destination=21.0285,105.8542\
&vehicle=bike\
&api_key=API_KEY"Đặt destination trùng origin nếu tài xế phải quay về kho sau khi giao xong. Phản hồi trả về thứ tự điểm dừng đã được sắp lại cho tổng quãng đường ngắn nhất.
Bài toán thường gặp trong vận hành
- Gọi xe: tìm tài xế có thời gian tới điểm đón ngắn nhất trong số hàng chục xe đang rảnh quanh khu vực.
- Giao hàng chặng cuối: chia đơn cho từng shipper rồi sắp thứ tự giao trong ca.
- Xe tải gom hàng: gộp nhiều điểm lấy hàng vào một chuyến, tôn trọng ràng buộc tải trọng.
- Kỹ thuật viên tại nhà: xếp lịch di chuyển trong ngày theo cụm địa lý thay vì theo thứ tự đặt lịch.
Câu hỏi thường gặp
Distance Matrix API tính được tối đa bao nhiêu điểm?
API xử lý ma trận NxM với hàng nghìn cặp điểm trong khoảng 50ms. Với nhu cầu vượt ngưỡng gói tiêu chuẩn, gói Doanh nghiệp cung cấp hạ tầng Dedicated Cluster riêng không giới hạn dung lượng request.
Khác gì so với gọi API chỉ đường nhiều lần?
Về kết quả thì tương đương, về chi phí và tốc độ thì khác hẳn. Một ma trận 30x200 gộp trong một request thay vì 6.000 lượt gọi riêng lẻ, nhanh hơn nhiều bậc và tính phí thấp hơn nhiều.
Có API tự sắp thứ tự điểm dừng không?
Có, Trip Optimization API tại endpoint /trip. Bạn đưa vào danh sách waypoints bất kỳ, API trả về thứ tự tối ưu, kèm tuỳ chọn quay về điểm xuất phát.
Xem thêm
Cần tư vấn cho khối lượng lớn?
Đội kỹ sư trực 24/7, hỗ trợ tích hợp và báo giá theo lưu lượng thực tế.
Hotline 0972289864