Split vs. Consolidation — Trade-off cốt lõi Khi đơn hàng có nhiều món nhưng các món nằm ở nhiều kho khác nhau, hệ thống phải đối mặt với quyết định kinh điển:
Đơn hàng: 3 món (A ở kho HN, B ở kho HCM, C ở kho ĐN) Giao cho khách ở Hà Nội Phương án 1: SPLIT (Tách gửi từ 3 kho) Kho HN → Khách: A (1 kiện) — 30.000đ, 2 giờ Kho HCM → Khách: B (1 kiện) — 85.000đ, 2 ngày Kho ĐN → Khách: C (1 kiện) — 65.000đ, 1.5 ngày Tổng: 180.000đ, 3 lần giao, 3 hộp Phương án 2: CONSOLIDATE (Gom về 1 kho rồi gửi) Kho HCM → Kho HN: B (nội bộ) — 40.000đ, 1 ngày Kho ĐN → Kho HN: C (nội bộ) — 35.000đ, 1 ngày Kho HN → Khách: A+B+C (1 kiện) — 45.000đ, 2 giờ Tổng: 120.000đ, 1 lần giao, 1 hộp, nhưng chậm hơn 1-2 ngày Trade-off: Nhanh + tốn vs. Chậm + tiết kiệm Decision Matrix Yếu tố Ưu tiên Split Ưu tiên Consolidate SLA Giao nhanh (same-day, 2h) Giao tiêu chuẩn (3-5 ngày) Chi phí Khách trả phí ship Free shipping (seller chịu) Trải nghiệm Khách cần gấp từng món Khách muốn nhận đủ 1 lần Giá trị đơn Đơn nhỏ (không đáng gom) Đơn lớn (gom tiết kiệm đáng kể) Loại hàng Hàng tươi/khẩn cấp Hàng khô, không gấp Thuật toán quyết định Split/Consolidate Function: decideFulfillmentStrategy(order, warehouses) // Bước 1: Kiểm tra xem có kho nào có ĐỦ tất cả items không single_source = findWarehouseWithAllItems(order.items, warehouses) if single_source exists: return SINGLE_SOURCE(single_source) // Lý tưởng nhất // Bước 2: Tính chi phí cho mỗi phương án split_cost = calculateSplitCost(order) consolidate_cost = calculateConsolidateCost(order) // Bước 3: Kiểm tra SLA if order.sla == "SAME_DAY" or order.sla == "2_HOURS": return SPLIT // Không đủ thời gian gom // Bước 4: So sánh chi phí savings = split_cost - consolidate_cost consolidation_delay = estimateConsolidationDelay(order) // Chỉ gom nếu tiết kiệm > ngưỡng VÀ delay chấp nhận được if savings > THRESHOLD and consolidation_delay <= order.max_acceptable_delay: return CONSOLIDATE else: return SPLIT Last-Mile Delivery — Chặng cuối đắt đỏ Last-mile là chặng cuối từ hub/kho đến tay khách hàng. Dù chỉ dài vài km, nó chiếm 53% tổng chi phí logistics vì:
...