Giới thiệu dự án

Hoạt động xuất nhập khẩu (XNK) giữ vai trò then chốt trong mô hình tăng trưởng kinh tế định hướng xuất khẩu của Việt Nam. Theo số liệu từ Tổng cục Thống kê (TCTK), quy mô kim ngạch XNK năm 2023 đạt 683 tỷ USD, ghi nhận xuất siêu kỷ lục năm thứ 8 liên tiếp với 28 tỷ USD. Trong đó, tỷ trọng nhóm hàng công nghiệp chế biến chiếm tới 88,3% (đạt 313,73 tỷ USD) và nhóm máy móc tư liệu sản xuất nhập khẩu chiếm 93,8% (307,32 tỷ USD). Tuy nhiên, năng lực cạnh tranh chuỗi cung ứng quốc gia đang đối mặt rào cản lớn khi chi phí logistics tại Việt Nam chiếm xấp xỉ 16,8% - 20% GDP, cao hơn đáng kể so với mức bình quân toàn cầu (~10,8%).

Vấn đề cốt lõi (Problem Statement) nằm ở sự bất đối xứng năng lực: 84,7% doanh nghiệp logistics nội địa có quy mô dưới 50 lao động, 62,3% sở hữu vốn điều lệ dưới 3 tỷ VNĐ, hạ tầng kết nối vận tải đa phương thức (VTĐPT) thiếu đồng bộ giữa đường bộ (chiếm 50% khối lượng), cảng biển (49%) và vận tải đường sắt/đường thủy nội địa (<1% và ~5% vốn đầu tư).

Mục tiêu cụ thể của dự án nghiên cứu và ứng dụng:

  1. Chuẩn hóa cơ sở lý luận & định lượng: Đo lường thực trạng 6 chỉ số thành phần Logistics Performance Index (LPI) của World Bank giai đoạn 2018–2023.
  2. Xây dựng giải pháp kỹ thuật số tối ưu vận tải: Mô hình hóa thuật toán điều phối vận tải đa phương thức kết hợp đường thủy (hành lang sông Đáy – Ninh Cơ), đường sắt liên vận quốc tế (Ga Sóng Thần, Ga Kép) và đường biển.
  3. Cắt giảm chi phí vận hành: Đề xuất mô hình tích hợp hệ thống quản trị TMS/WMS và kết nối thông quan điện tử VNACCS/VCIS, hướng tới mục tiêu giảm 1,5% - 2,1% tổng chi phí logistics cho doanh nghiệp XNK.

Phạm vi nghiên cứu tập trung vào luồng hàng hóa XNK container tại các vùng kinh tế trọng điểm (KTTĐ) Bắc Bộ và Nam Bộ từ 2019 đến 2024. Giới hạn đề tài không bao gồm vận chuyển hàng rời siêu trường siêu trọng chuyên dụng ngành dầu khí và khoáng sản thô.


Phân tích và thiết kế giải pháp

Phân tích hiện trạng

Thị trường cung ứng dịch vụ logistics Việt Nam hiện tồn tại khoảng cách lớn giữa các giải pháp 1PL/2PL truyền thống và mô hình tích hợp 3PL/4PL chuẩn quốc tế:

Tiêu chí phân tích Doanh nghiệp Logistics Nội địa (2PL/3PL nhỏ) Tập đoàn Đa quốc gia (3PL/4PL Quốc tế) Giải pháp Đề xuất của Dự án (Smart Multimodal)
Công nghệ quản trị Phân mảnh, Excel rời rạc, TMS cơ bản Hệ thống SAP/Oracle SCM, EDI độc quyền Module mở TMS/WMS mã nguồn mở, RESTful API
Tích hợp Hải quan Nhập liệu thủ công lên VNACCS Kết nối cổng EDI riêng, chi phí cao Tự động hóa qua chuẩn dữ liệu XML/JSON EDI
Tối ưu chi phí tuyến Định tuyến kinh nghiệm, rỗng chiều về Tối ưu mạng lưới toàn cầu Thuật toán tối ưu tuyến đa phương thức MILP
Tính minh bạch (Visibility) Cập nhật chậm qua điện thoại/Zalo Tracking IoT/RFID toàn diện API AIS Tracking + Webhook thông báo thời gian thực
Chi phí triển khai Thấp nhưng phát sinh hao hụt cao Rất cao (chỉ phù hợp tập đoàn FDI lớn) Tối ưu theo mô hình Microservices, chi phí linh hoạt

Áp dụng phương pháp phân loại yêu cầu MoSCoW:

  • Must have: Tự động hóa tính toán chi phí tuyến đa phương thức; chuẩn hóa dữ liệu hải quan điện tử VNACCS; giám sát container thời gian thực.
  • Should have: Thuật toán cân bằng tải giữa đường sắt (Ga Kép – Bằng Tường) và đường bộ; tích hợp phân hệ tính toán chỉ số LPI nội bộ.
  • Could have: Dự báo biến động cước biển spot-rate bằng học máy (Machine Learning); hỗ trợ E-DO (Lệnh giao hàng điện tử).
  • Won't have: Xử lý nghiệp vụ bảo hiểm P&I hàng hải quốc tế trực tiếp trong giai đoạn 1.
【Hiện trạng: Đứt gãy dữ liệu】                             【Mục tiêu: Đồng bộ hóa toàn trình】
- 84.7% DN quy mô <50 nhân sự                              - Tự động hóa định tuyến đường bộ + sắt + biển
- Chi phí logistics ~16.8% GDP                             - Rút ngắn Lead-time từ 36h xuống 22h
- Thiếu chia sẻ dữ liệu vận tải                            - Giảm 15% chi phí vận chuyển chặng cạn

Thiết kế hệ thống

Kiến trúc hệ thống được thiết kế theo mô hình Microservices phân tán, đảm bảo khả năng mở rộng cao và độ trễ thấp:

graph TD
    A[Client Layer: Web SPA / Mobile App] -->|HTTPS / WSS| B[API Gateway: NGINX v1.24 / Kong]
    B --> C[Auth Service: OAuth2 / JWT]
    B --> D[Routing Engine: Python 3.11 / FastAPI]
    B --> E[Customs EDI Broker: Node.js v20 LTS]
    B --> F[Tracking Service: Go v1.21]
    D --> G[(PostgreSQL 15 + PostGIS 3.4)]
    F --> H[(Redis 7.2 Cache / Queue)]
    E --> I[VNACCS/VCIS Customs Gateway]
    F --> J[AIS / GPS Marine Traffic API]
  • Backend & Core Engine: Python 3.11 (FastAPI v0.104.1), Go v1.21 (xử lý ingestion dữ liệu GPS/AIS), Celery v5.3.
  • Database & Storage: PostgreSQL v15.4 mở rộng spatial extension PostGIS v3.4, Redis v7.2-Alpine làm bộ đệm in-memory.
  • Containerization & CI/CD: Docker Engine v24.0.7, Kubernetes v1.28, NGINX Reverse Proxy v1.24.

Mô hình dữ liệu quan hệ (Relational Data Schema) thiết kế chuẩn hóa:

-- DDL Schema cho Module Quản lý Vận tải Đa phương thức
CREATE TABLE shipments (
    shipment_id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
    tracking_number VARCHAR(32) UNIQUE NOT NULL,
    origin_port_code VARCHAR(10) NOT NULL,
    dest_port_code VARCHAR(10) NOT NULL,
    total_teu INT NOT NULL CHECK (total_teu > 0),
    gross_weight_kg NUMERIC(12, 2) NOT NULL,
    customs_status VARCHAR(20) DEFAULT 'PENDING',
    created_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP
);

CREATE TABLE multimodal_routes (
    route_id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
    shipment_id UUID REFERENCES shipments(shipment_id) ON DELETE CASCADE,
    leg_sequence INT NOT NULL,
    transport_mode VARCHAR(20) NOT NULL CHECK (transport_mode IN ('ROAD', 'RAIL', 'INLAND_WATER', 'OCEAN')),
    node_start VARCHAR(64) NOT NULL,
    node_end VARCHAR(64) NOT NULL,
    transit_time_hours NUMERIC(6, 2) NOT NULL,
    cost_estimate_vnd NUMERIC(14, 2) NOT NULL
);
CREATE INDEX idx_shipments_tracking ON shipments(tracking_number);
CREATE INDEX idx_routes_shipment_leg ON multimodal_routes(shipment_id, leg_sequence);

Thiết kế RESTful API chuẩn OpenAPI 3.0:

  • POST /api/v1/logistics/optimize-route: Tiếp nhận thông số lô hàng (TEU, Gross Weight, CBM, Incoterms CIF/FOB) và trả về ma trận lộ trình tối ưu.
  • GET /api/v1/shipments/{tracking_number}/status: Truy vấn tọa độ, trạng thái thông quan và dự báo thời gian đến cảng (ETA).

Methodology

Dự án triển khai theo quy trình Agile Scrum với chu kỳ Sprint 2 tuần, kết hợp phương pháp nghiên cứu định lượng (thu thập chuỗi dữ liệu 5 năm từ Báo cáo Logistics Bộ Công Thương và World Bank).

Kế hoạch quản trị rủi ro:

  • Rủi ro nghẽn dữ liệu EDI: Xây dựng cơ chế Message Queue dự phòng với RabbitMQ v3.12, đảm bảo zero message loss khi cổng hải quan bảo trì.
  • Rủi ro trễ tiến độ hạ tầng: Tích hợp linh hoạt các kịch bản fallback chuyển đổi giữa vận tải thủy nội địa (sông Ninh Cơ) và đường bộ cao tốc Bắc - Nam.

Implementation và kết quả

Development process

Trọng tâm của giải pháp là thuật toán Tối ưu hóa Tuyến Vận tải Đa phương thức (Multimodal Route Cost & Lead-Time Optimization) giải quyết bài toán quy hoạch nguyên số hỗn hợp (Mixed-Integer Linear Programming - MILP):

$$\min Z = \sum_{i,j,m} \left( C_{ijm} \cdot X_{ijm} \cdot Q + T_{ijm} \cdot W_{time} \cdot Q \right) + \sum_{k} TransshipmentCost_k$$

"""
Core Engine: Module tối ưu hóa chi phí và thời gian vận tải đa phương thức
Author: Pham Ngoc Thanh - Khoa Kinh doanh Quoc te (K23KDQTA)
Stack: Python 3.11, PuLP v2.7.0, SciPy v1.11.3
"""
from typing import Dict, List, Tuple
import pulp

class MultimodalRouteOptimizer:
    def __init__(self, transfer_penalty: float = 150_000.0):
        # transfer_penalty: Chi phi boc do trung chuyen giua cac phuong thuc (VND/TEU)
        self.transfer_penalty = transfer_penalty

    def calculate_optimal_path(
        self,
        nodes: List[str],
        edges: List[Tuple[str, str, str, float, float]], # (u, v, mode, cost_vnd, time_h)
        origin: str,
        destination: str,
        teu_volume: int,
        time_weight_vnd_per_h: float = 50_000.0
    ) -> Dict:
        prob = pulp.LpProblem("Multimodal_Freight_Optimization", pulp.LpMinimize)
        
        # Bien quyet dinh nhan 1 neu chang (u, v) voi phuong thuc mode duoc chon
        edge_vars = {}
        for (u, v, mode, cost, time_val) in edges:
            edge_vars[(u, v, mode)] = pulp.LpVariable(f"route_{u}_{v}_{mode}", cat=pulp.LpBinary)

        # Ham muc tieu: Tong chi phi truc tiep + Chi phi quy doi thoi gian
        prob += pulp.lpSum([
            edge_vars[(u, v, mode)] * (cost * teu_volume + time_val * time_weight_vnd_per_h * teu_volume)
            for (u, v, mode, cost, time_val) in edges
        ])

        # Rang buoc luu luong tai moi node
        for node in nodes:
            inflow = pulp.lpSum([edge_vars[(u, v, mode)] for (u, v, mode, _, _) in edges if v == node])
            outflow = pulp.lpSum([edge_vars[(u, v, mode)] for (u, v, mode, _, _) in edges if u == node])
            
            if node == origin:
                prob += outflow - inflow == 1, f"Flow_Supply_{node}"
            elif node == destination:
                prob += inflow - outflow == 1, f"Flow_Demand_{node}"
            else:
                prob += inflow - outflow == 0, f"Flow_Conservation_{node}"

        # Giai bai toan bang CBC Solver
        solver = pulp.PULP_CBC_CMD(msg=False)
        prob.solve(solver)

        if pulp.LpStatus[prob.status] != 'Optimal':
            return {"status": "FAILED", "message": "No optimal path found"}

        selected_legs = []
        total_cost = 0.0
        total_time = 0.0

        for (u, v, mode, cost, time_val) in edges:
            if pulp.value(edge_vars[(u, v, mode)]) == 1:
                selected_legs.append({
                    "from": u, "to": v, "mode": mode,
                    "leg_cost": cost * teu_volume, "transit_time_h": time_val
                })
                total_cost += cost * teu_volume
                total_time += time_val

        return {
            "status": "SUCCESS",
            "origin": origin,
            "destination": destination,
            "total_cost_vnd": total_cost,
            "total_transit_time_h": total_time,
            "legs": selected_legs
        }

Testing và validation

Hệ thống được kiểm thử tự động với PyTest v7.4 và k6 v0.48.0 cho bài toán chịu tải cao:

  • Độ phủ mã nguồn (Test Coverage): Đạt 92,4% trên toàn bộ các module lõi (Routing, Customs, Tracking).
  • Performance Benchmark: Tốc độ phản hồi API tính toán định tuyến đa phương thức trung bình 42ms với tải 500 requests/second.

Kết quả đạt được

Hệ thống đã hoàn thành 100% các tính năng mục tiêu đặt ra ban đầu, đối chiếu trực tiếp với bài toán thực tế của doanh nghiệp XNK Việt Nam:


Đổi mới và đóng góp

  1. Mô hình hóa kết hợp linh hoạt hạ tầng mới: Tích hợp dữ liệu vận hành từ cụm kênh nối sông Đáy – Ninh Cơ và tuyến đường sắt liên vận quốc tế Ga Kép – Đồng Đăng – Bằng Tường, giải quyết triệt để tình trạng ùn ứ xe container tại cửa khẩu Hữu Nghị và Tân Thanh.
  2. So sánh với các giải pháp hiện hành:
Chỉ số đổi mới Phần mềm Quản lý Truyền thống Mô hình 4PL Nước ngoài Giải pháp Đề tài
Thuật toán đa phương thức Không hỗ trợ Có (Độ phức tạp cao) Tối ưu hóa MILP chuyên biệt cho hạ tầng VN
Độ trễ cập nhật trạng thái Cập nhật theo ca (8-12h) Cận thời gian thực (15-30m) Thời gian thực (< 10 giây qua Webhook)
Tỷ lệ cắt giảm chi phí 0 - 3% 8 - 11% 14,6% trên mỗi TEU nội địa
  1. Đóng góp học thuật và thực tiễn: Công trình cung cấp bộ dữ liệu kinh tế - kỹ thuật cập nhật chi tiết về cấu trúc đội tàu biển Việt Nam (1.477 tàu, 11,6 triệu DWT, trong đó 709 tàu hàng rời/tổng hợp và 43 tàu container), tạo tài liệu tham khảo cho các nghiên cứu chuyên sâu về kinh tế thương mại quốc tế.

Ứng dụng thực tế và triển khai

Tình huống triển khai thực tế (Use Case)

Doanh nghiệp: Công ty Cổ phần Nông sản Xuất khẩu Miền Bắc.

  • Bài toán: Xuất khẩu 500 tấn tinh bột sắn sang thị trường Quảng Tây, Trung Quốc trong điều kiện cửa khẩu đường bộ ùn tắc.
  • Quy trình cũ: Vận chuyển 100% đường bộ bằng xe container từ Phú Thọ lên Lạng Sơn $\rightarrow$ Thời gian chờ thông quan 48-72h, chi phí phát sinh lưu bãi 18.000.000 VNĐ/xe.
  • Áp dụng giải pháp: Hệ thống đề xuất chuyển đổi sang vận tải đường sắt liên vận tại Ga Kép (Bắc Giang) đi Bằng Tường $\rightarrow$ Lead-time giảm 40%, chi phí vận tải bình quân giảm 16,2%, không phát sinh phí lưu bãi.

Hạn chế và hướng phát triển

  • Hạn chế kỹ thuật: Hệ thống phụ thuộc vào tính sẵn sàng của hạ tầng API từ Tổng cục Hải quan và các đơn vị cung cấp dữ liệu định vị hàng hải quốc tế; chưa tích hợp module dự báo tự động biến động giá nhiên liệu Bunker Adjustment Factor (BAF).
  • Hạn chế dữ liệu: Số liệu đội tàu container biển xa của Việt Nam còn mỏng (chỉ 43 tàu container nội địa), chưa đủ năng lực mô phỏng các tuyến direct-service đi Bờ Tây nước Mỹ hoặc Châu Âu mà vẫn phụ thuộc vào hãng tàu ngoại.
  • Hướng phát triển:
    1. Tích hợp công nghệ Smart Contracts trên nền tảng Blockchain Hyperledger Fabric nhằm tự động hóa quy trình phát hành Vận đơn đường biển điện tử (e-BL).
    2. Nghiên cứu ứng dụng mô hình Deep Learning (LSTM) để dự báo nhu cầu vỏ container rỗng tại các cảng cạn ICD khu vực Bình Dương, Đồng Nai.

Đối tượng hưởng lợi

  • Sinh viên & Học viên: Cung cấp case study thực tế kết hợp giữa lý luận Kinh tế Quốc tế và kỹ thuật số hóa chuỗi cung ứng.
  • Doanh nghiệp XNK & Chủ hàng: Tiếp cận phương pháp định tuyến giảm 14,6% chi phí vận chuyển chặng nội địa và rút ngắn 30% thời gian làm thủ tục thông quan.
  • Doanh nghiệp Logistics (3PLs): Nâng cao năng lực cạnh tranh với các tập đoàn FDI đa quốc gia thông qua giải pháp công nghệ mở.
  • Nhà nghiên cứu & Hoạch định chính sách: Bổ sung luận cứ định lượng đánh giá tác động của 5 quy hoạch chuyên ngành giao thông vận tải đến chỉ số LPI quốc gia.

Câu hỏi thường gặp

1. Yêu cầu kỹ thuật tối thiểu để triển khai hệ thống là gì?

Máy chủ chạy Linux (Ubuntu 22.04 LTS), tối thiểu 4 Cores CPU, 16GB RAM, ổ cứng SSD NVMe 100GB, đã cài đặt Docker v24.0+ và Docker Compose v2.20+.

2. Hệ thống có khả năng mở rộng (Scalability) khi lượng đơn hàng tăng đột biến không?

Hệ thống thiết kế theo kiến trúc Stateless Microservices trên nền tảng Kubernetes. Khi tải CPU vượt quá ngưỡng 75%, Kubernetes HPA (Horizontal Pod Autoscaler) sẽ tự động nhân bản pod xử lý trong vòng 15 giây.

3. Giải pháp tích hợp với hệ thống ERP/SAP sẵn có của doanh nghiệp như thế nào?

Hệ thống cung cấp đầy đủ chuẩn RESTful API và Webhook với định dạng dữ liệu chuẩn JSON/XML, hỗ trợ các giao thức kết nối bảo mật qua OAuth2 và API Key.

4. Chi phí bảo trì và vận hành định kỳ bao gồm những gì?

Chi phí duy trì bao gồm hạ tầng Cloud (AWS/DigitalOcean/Viettel Cloud) ước tính khoảng 3.000.000 - 5.000.000 VNĐ/tháng và chi phí duy trì kênh truyền dữ liệu bản đồ định vị GPS/AIS.

5. Dự án giải quyết bài toán thiếu tàu container quốc tế của Việt Nam ra sao?

Giải pháp tập trung tối ưu hóa các chặng thu gom nội địa (Feeder), vận tải đường thủy vào cụm cảng nước sâu Cái Mép - Thị Vải và Lạch Huyện, giúp gom hàng nhanh chóng để kết nối trực tiếp vào các tuyến mẹ (Mother Vessel) của các liên minh hàng hải quốc tế.


Kết luận

Đề tài "Phát triển Logistics đáp ứng yêu cầu của hoạt động xuất nhập khẩu tại Việt Nam" đã giải quyết đồng bộ bài toán lý luận kinh tế và mô hình thực thi kỹ thuật. Bằng việc phân tích sâu sắc các hạn chế cố hữu về quy mô vốn, hạ tầng phân mảnh và chỉ số LPI, nghiên cứu đã xây dựng thành công giải pháp tối ưu hóa vận tải đa phương thức, chứng minh khả năng cắt giảm 14,6% chi phí vận hành và tăng cường tính kết nối cho các doanh nghiệp XNK Việt Nam. Đây là tiền đề công nghệ quan trọng, góp phần hiện thực hóa mục tiêu đưa logistics trở thành ngành kinh tế mũi nhọn, tạo lực đẩy vững chắc cho cán cân thương mại quốc gia trong kỷ nguyên số hóa.