"Astronaut in orange suite walking in the space" - generated by midjourney 

Điều khó nhất khi xây dựng thuật toán điều phối đơn hàng

Engineering Aug 26, 2022

Một trong những tính năng nổi bật của OnWheel là giải thuật tối ưu tối ưu đường đi, giúp đơn vị vận hành có thể điều phối hàng trăm đơn hàng cho hàng trăm phương tiện đi giao, phải đáp ứng nhiều tiêu chí khác nhau và có lộ trình tối ưu nhất về chi phí và số lượng phương tiện, và hơn hết, kết quả xử lý phải đủ nhanh (ví dụ: trong vòng 5 phút) để tối ưu năng suất làm việc của nhân viên. Dưới đây là 1 số mẫu tiêu chí điều phối của khách hàng chúng tôi:

1 số yêu cầu về điều phối xe của khách hàng 

Mô tả như trên để các bạn có thể hình dung loại bài toán này rất phức tạp và thường đòi hỏi nhiều thời gian để xây dựng và kiểm thử, cũng như rủi ro thất bại rất cao. Với OnWheel, từ kinh nghiệm triển khai cho 1 số đối tác thành công giải pháp loại này, thì chúng tôi rút ra 1 bài học: điều quan trọng nhất để giải bài toán này là xây dựng được một vòng lặp cải tiến - kiểm thử - đánh giá (continuous feedback loop) giữa đội ngũ phát triển và khách hàng (người ra yêu cầu), mà ở đó tập trung vào việc sử dụng dữ liệu đầu vào thực tế, nhanh chóng đưa ra kết quả và giúp khách hàng đánh giá kết quả để cải tiến. Tuy cách tiếp cận này đã được chứng minh hiệu quả trong quy trình phát triển phần mềm, nhưng cách áp dụng thực tiễn sẽ khác biệt cho từng loại sản phẩm, ví dụ như ứng dụng web / mobile sẽ tập trung vào khía cạnh UX/UI để đánh giá,  còn với loại bài toán công nghệ tối ưu vận hành như trên thì chỉ số đo lường  (key success metric) lại nằm ở lô trình giao hàng, và các tiêu chí vận hành đưa ra.

Từ góc nhìn trên, chúng tôi đã xây dựng 1 phương pháp làm việc chuẩn với khách hàng cho loại bài toán này như sau:

  • Làm rõ dữ liệu đầu vào thực tế của khách hàng và các kết quả điều phối hàng ngày của khách hàng để so sánh với bộ tiêu chí đưa ra.
  • Sử dụng ngay công cụ Deepnote/ObservableHQ để tập trung vào xây dựng giải thuật, xử lý 1 số tiêu chí cơ bản đầu tiên
  • Chia sẽ notebook (các step xử lý) để khách hàng đánh giá kết quả của bộ dữ liệu chuẩn hoặc dữ liệu đầu vào mới
  • Ghi nhận các lỗi / điểm chưa phù hợp từ đánh giá của khách hàng để cải tiến và bổ sung thêm các tiêu chí còn lại.

Với cách làm này, chúng tôi rút ngắn được thời gian  để cung cấp kết quả cho khách hàng và nhanh chóng tinh chỉnh giải pháp để thích ứng và hoàn thiện các tiêu chí đưa ra mà không gây lúng túng / quá tải cho khách hàng khi phải đánh giá quá nhiều tiêu chí cùng lúc. (Chúng tôi thường chỉ mất 1 tuần để khách hàng có thể đánh giá kết quả lần đầu tiên)

Một notebook OnWheel xây dựng cho khách hàng để đánh giá kết quả

Giải thuật lập lịch giao hàng là 1 bài toàn khó về kỹ thuật vì nhiều tiêu chí phức tạp hoặc đôi lúc còn mơ hồ, chưa rõ cách đánh giá, nhưng trong bài viết này, một khía cạnh khác cũng quan trọng không kém là sự tương tác giữa các bên để cùng nhau đánh giá và cải tiến ngay từ những ngày đầu tiên, với sự hỗ trợ của các công cụ mới, sẽ giúp rút ngắn thời gian và khoảng cách giữa công nghệ và vận hành.

Tags