Bối cảnh và vấn đề nghiên cứu

Trong bối cảnh nền kinh tế phát triển và sự bùng nổ của chuyển đổi số, hoạt động kinh doanh bán lẻ đối mặt với mức độ cạnh tranh ngày càng gay gắt. Việc đưa ra quyết định chính xác và kịp thời trong quản lý tài chính, xuất nhập hàng hóa và điều phối dòng vốn đóng vai trò then chốt đối với sự phát triển của doanh nghiệp. Đối với ngành hàng thực phẩm, bài toán quản lý hàng tồn kho mang tính đặc thù cao: hàng hóa có vòng đời ngắn, nhiều sản phẩm đòi hỏi điều kiện bảo quản nghiêm ngặt (như nhiệt độ thấp) dẫn đến chi phí kho bãi phát sinh lớn; nếu nhập thừa sẽ dẫn đến hư hỏng hoặc hết hạn sử dụng, trong khi nhập thiếu sẽ làm mất khách hàng tiềm năng.

Tuy nhiên, các cửa hàng và nhà bán lẻ quy mô vừa và nhỏ thường gặp khó khăn về tài chính, không đủ nguồn lực để thành lập bộ phận chuyên trách phân tích và dự báo doanh số. Đồng thời, các đơn vị này còn thiếu các công cụ số hỗ trợ truy vấn, tổng hợp dữ liệu tự động mà chủ yếu dựa vào sổ sách và thao tác thủ công, gây tốn kém thời gian, dễ xảy ra nhầm lẫn và thất thoát dữ liệu. Xuất phát từ thực trạng đó, đề tài "Xây dựng ứng dụng di động bán thực phẩm trực tuyến hỗ trợ dự báo doanh số" được thực hiện nhằm cung cấp một giải pháp phần mềm thương mại điện tử tích hợp công cụ phân tích và dự báo nhu cầu tiêu dùng.

Mục tiêu và nhiệm vụ nghiên cứu:

  1. Phát triển ứng dụng mua bán thực phẩm trực tuyến trên nền tảng di động, cung cấp khả năng dự báo doanh số bán hàng cho các nhà bán lẻ còn hạn chế nguồn lực phân tích kinh doanh.
  2. Cung cấp nền tảng mua hàng trực tuyến giúp người tiêu dùng tiếp cận sản phẩm nhanh chóng, tiện lợi, hỗ trợ gia tăng doanh số cho cửa hàng.
  3. Hỗ trợ người quản lý theo dõi số lượng tồn kho, lượng hàng bán ra, giá cả và doanh số để chủ động điều chỉnh kế hoạch kinh doanh.
  4. Nghiên cứu và ứng dụng các phương pháp phân tích chuỗi thời gian (Time Series Analysis) cùng các thuật toán học máy (Machine Learning) để dự đoán doanh số dựa trên nguồn dữ liệu bán hàng.
  5. Cung cấp công cụ trực quan hóa dữ liệu và xuất kết quả dự báo trực tiếp theo yêu cầu trong thời gian ngắn nhằm nâng cao hiệu quả quản trị và hoạch định chiến lược.

Đối tượng và phạm vi nghiên cứu:

  • Đối tượng nghiên cứu: Quy trình quản lý bán hàng thực phẩm, kỹ thuật phân tích chuỗi thời gian, các mô hình học máy dự báo doanh số và đối tượng người dùng (khách hàng mua sắm, quản lý cửa hàng, người hoạch định kinh doanh và nhân sự).
  • Phạm vi môi trường: Ứng dụng phía người dùng trên nền tảng Android; hệ thống máy chủ Backend phát triển bằng Java Spring Boot kết hợp dịch vụ API Python.
  • Phạm vi chức năng: Quản lý danh mục hàng hóa (ngành hàng, loại hàng), quản lý sản phẩm và đơn hàng; định danh và xác thực người dùng; quản lý giỏ hàng, địa chỉ và luồng mua hàng (thanh toán khi nhận hàng, chuyển khoản); quản lý lịch sự kiện và thực hiện dự báo doanh số theo từng mặt hàng hoặc loại hàng.
  • Thời gian thực hiện: Từ ngày 22/08/2022 đến ngày 19/12/2022.

Cơ sở lý thuyết và phương pháp

Khóa luận kết hợp lý thuyết kỹ thuật phần mềm, phương pháp phân tích chuỗi thời gian kinh điển và các thuật toán học máy nhằm giải quyết bài toán dự báo doanh số bán lẻ thực phẩm.

Khung lý thuyết và khái niệm chuỗi thời gian

Nghiên cứu hệ thống hóa các đặc tính cốt lõi của dữ liệu chuỗi thời gian bao gồm:

  • Xu hướng (Trend): Biến động tăng hoặc giảm dài hạn của dữ liệu, không nhất thiết phải tuyến tính.
  • Tính thời vụ (Seasonal): Sự biến thiên lặp lại theo chu kỳ thời gian cố định và đã biết trước (như các ngày trong tuần hoặc các tháng trong năm).
  • Tính chu kỳ (Cycle): Biến động tăng giảm không theo tần số cố định, thường gắn liền với chu kỳ kinh tế và kéo dài từ 2 năm trở lên.
  • Sự tự tương quan (Autocorrelation): Mối quan hệ giữa các điểm dữ liệu tại các thời điểm khác nhau, được định lượng thông qua hàm tự tương quan (ACF). Chuỗi không có tự tương quan khi toàn bộ giá trị ACF nằm trong khoảng $\pm 2/\sqrt{T}$ (với $T$ là tổng số quan sát).
  • Tính dừng (Stationarity): Chuỗi có giá trị trung bình và phương sai không đổi theo thời gian, hiệp phương sai giữa hai thời điểm chỉ phụ thuộc vào khoảng cách thời gian giữa chúng.
  • Giá trị ngoại lai (Outlier): Các quan sát dị biệt có tác động lớn đến việc ước lượng hệ số của mô hình.
  • Tính rời rạc (Intermittent): Chuỗi dữ liệu xuất hiện nhiều giá trị bằng 0 và không liên tục, đặc trưng cho nhu cầu mua sắm không đều đặn.
  • Hiện tượng nhiễu trắng (White noise): Dữ liệu không tồn tại sự tự tương quan, khiến việc dự báo không thể thực hiện.

Các phương pháp dự báo và học máy

Hệ thống nghiên cứu và thực nghiệm hai nhóm phương pháp tiếp cận:

  1. Phương pháp phân tích chuỗi thời gian kinh điển: Phương pháp dự báo trung bình, dự báo ngây thơ (Naive), dự báo ngây thơ theo thời vụ (Seasonal Naive), phương pháp Drift, phân rã chuỗi thời gian, đường trung bình động (Moving Average - MA), mô hình hồi quy tự động (Autoregressive - AR), mô hình tích hợp trung bình trượt tự hồi quy (ARIMA), mô hình ARIMA theo mùa (SARIMA) và phương pháp Croston chuyên biệt cho dữ liệu nhu cầu rời rạc.
  2. Phương pháp học máy: Mô hình Hồi quy tuyến tính (Linear Regression) và mô hình cây tăng cường độ dốc (Gradient Boosting Tree / XGBoost).

Quy trình tiền xử lý và chỉ số đánh giá

  • Xử lý đặc trưng (Feature Engineering): Lựa chọn đặc trưng (Feature Selection), giảm chiều dữ liệu (Dimension Reduction) và chuẩn hóa dữ liệu (Feature Scaling).
  • Bộ chỉ số đánh giá hiệu suất dự báo:
    • Căn bậc hai sai số bình phương trung bình (RMSE - Root Mean Square Error).
    • Sai số tuyệt đối trung bình (MAE - Mean Absolute Error).
    • Căn bậc hai sai số phần trăm bình phương trung bình (RMSPE - Root Mean Square Percentage Error).
    • Sai số phần trăm tuyệt đối trung bình (MAPE - Mean Absolute Percentage Error).
    • Sai số tỷ lệ tuyệt đối trung bình (MASE - Mean Absolute Scaled Error).

Nguồn dữ liệu thực nghiệm

Đề tài sử dụng bộ dữ liệu M5 (M5 Competition Dataset) thu thập từ hoạt động bán hàng của tập đoàn Walmart tại Mỹ. Bộ dữ liệu bao gồm 3.049 sản phẩm thuộc 3 nhóm ngành (sở thích, gia dụng và thực phẩm; trong đó thực phẩm chiếm khoảng 47%) được bán tại 10 cửa hàng thuộc 3 bang, thu thập trong 1.941 ngày (từ 29/01/2011 đến 19/06/2016, tương đương 5,4 năm). Cấu trúc dữ liệu chính gồm tệp thông tin thời gian và sự kiện (calendar.csv) kết hợp cùng chuỗi dữ liệu lịch sử bán hàng.


Thiết kế và triển khai hệ thống

Hệ thống được thiết kế theo mô hình phân tầng Client-Server, tách biệt giao diện người dùng, khối xử lý nghiệp vụ trung tâm và khối dịch vụ trí tuệ nhân tạo.

Thành phần Công nghệ / Nền tảng Vai trò và chức năng
Client (Mobile App) Kotlin, Android SDK, MVVM Architecture Cung cấp giao diện cho người mua (mua hàng, theo dõi đơn) và người bán (quản lý sản phẩm, đơn hàng, xem biểu đồ dự báo doanh số). Thiết kế UI/UX trên Figma.
Main Backend Server Java Spring Boot, RESTful API Xử lý logic nghiệp vụ, quản lý đơn hàng, giỏ hàng, thông tin danh mục, tích hợp xác thực và bảo mật phân quyền qua JSON Web Token (JWT).
AI / Forecasting Service Python (FastAPI / Flask / Django REST) Tiếp nhận yêu cầu dự báo, thực thi tiền xử lý chuỗi thời gian, huấn luyện mô hình và trả về kết quả dự báo cho Main Server.
Cơ sở dữ liệu Firebase Realtime Database & CSDL quan hệ Lưu trữ cấu trúc dữ liệu người dùng, sản phẩm, đơn hàng, lịch sự kiện và dữ liệu bán hàng.
Hạ tầng & Triển khai Docker, Git / GitHub Đóng gói môi trường ứng dụng và quản lý mã nguồn phiên bản.

Hệ thống cơ sở dữ liệu được chuẩn hóa gồm 21 bảng dữ liệu: seller, delivery_address, province, district, ward, order, order_item, product, product_image, classify_product_value, classify_product, set_of_product, set_value, subcategory, category, category_image, customer, cart, banking_information, sale_data, calendar.


Nội dung chính theo từng chương

Chương 1. Giới thiệu chung

Chương mở đầu phân tích bối cảnh phát triển của thương mại điện tử ngành thực phẩm và những rủi ro tài chính phát sinh từ việc thiếu hụt công cụ dự báo tại các cơ sở bán lẻ vừa và nhỏ. Tác giả xác định 5 mục tiêu nghiên cứu cụ thể, phạm vi công nghệ (Android, Spring Boot) và đối tượng thụ hưởng.

Chương này tiến hành khảo sát thực nghiệm hai hệ thống thương mại điện tử hiện hành:

  1. Ứng dụng Bách Hóa Xanh: Được phân tích chi tiết về cơ cấu danh mục, luồng đặt hàng 9 bước, phương thức thanh toán và phí vận chuyển mặc định (15.000 đồng/đơn). Điểm rating ghi nhận đạt mức trung bình khá 3.5/5 sao trên 3.254 đánh giá trên kho ứng dụng CH Play (tính đến ngày 27/08/2022). Tác giả chỉ ra các hạn chế của ứng dụng gồm tốc độ tải trang chậm, luồng mua hàng bắt buộc phải qua giỏ hàng, thiếu màn hình độc lập theo dõi trạng thái đơn hàng và lỗi đồng bộ tồn kho thời gian thực.
  2. Nền tảng Shopify: Phân tích khả năng tùy biến 70 chủ đề giao diện, chức năng thương mại và quản trị đa kênh. Hạn chế ghi nhận gồm giao diện dễ bị rối khi người dùng tự phối màu, lỗi tương tác kết nối và đặc biệt là chưa tích hợp sẵn công cụ dự báo doanh số phục vụ quản lý kho.

Từ kết quả khảo sát, tác giả xác định tính mới của khóa luận: tích hợp trực tiếp mô hình dự báo doanh số vào ứng dụng di động quản lý, kết hợp chuỗi thời gian với học máy và cho phép người quản lý tùy biến thông tin lịch sự kiện (ngày lễ, kỳ nghỉ, thiên tai, dịch bệnh) để nâng cao độ chính xác của kết quả dự báo.

Chương 2. Kiến thức nền tảng

Chương 2 trình bày cơ sở toán học và lý thuyết thuật toán. Tác giả phân tích chi tiết cấu trúc bộ dữ liệu M5 của Walmart (1.941 ngày, 3.049 mặt hàng) và các đặc tính chuỗi thời gian (trend, seasonality, autocorrelation, stationarity, outlier, white noise). Tiếp đó, chương phân loại và đặc tả công thức toán học của các mô hình dự báo:

  • Dự báo cơ sở: Mean forecast, Naive, Seasonal Naive, Drift.
  • Mô hình thống kê hồi quy: Phân rã chuỗi thời gian, Moving Average cấp $m$, Auto-Regressive (AR), ARIMA, SARIMA và giải thuật Croston.
  • Mô hình học máy: Linear Regression và Gradient Boosting Tree (XGBoost).

Chương cũng hệ thống hóa các kỹ thuật xử lý đặc trưng, định nghĩa 5 công thức đánh giá sai số (RMSE, MAE, RMSPE, MAPE, MASE) và giới thiệu các công nghệ nền tảng: Java Spring Boot, FastAPI, Kotlin, Firebase, JWT, Docker.

Chương 3. Phân tích và thiết kế hệ thống

Chương 3 trình bày toàn bộ hồ sơ kỹ thuật phần mềm hướng đối tượng theo chuẩn UML:

  • Kiến trúc hệ thống: Phân tích kiến trúc 3 tầng tổng quát, kiến trúc Android phía Client theo mô hình MVVM (Activity, Fragment, ViewModel) và kiến trúc tầng Service/Repository phía Backend Spring Boot.
  • Mô hình hóa chức năng: Xác định 2 Actor chính (Khách hàng - Customer và Người bán/Quản lý - Seller/Admin); thiết lập danh sách use case tổng quát và xây dựng 41 bảng đặc tả use case chi tiết.
  • Thiết kế sơ đồ: Xây dựng sơ đồ lớp tổng quát (mối quan hệ giữa các Controller, Service, ViewModel và Repository), 22 sơ đồ tuần tự (Sequence Diagram) và 28 sơ đồ hoạt động (Activity Diagram) mô tả toàn bộ luồng nghiệp vụ mua bán, quản lý danh mục, cập nhật trạng thái đơn hàng và thiết lập dự báo.
  • Thiết kế cơ sở dữ liệu và giao diện: Lược đồ quan hệ thực thể (ERD) với 21 bảng dữ liệu có định nghĩa rõ ràng kiểu dữ liệu và khóa chính/ngoại; thiết kế hơn 30 màn hình giao diện người dùng và quản trị viên trên Figma.

Chương 4. Thực nghiệm và đánh giá kết quả dự báo

Chương 4 mô tả quy trình thực nghiệm mô hình dự báo trên tập dữ liệu thực phẩm M5 (sử dụng chuỗi dữ liệu các mã sản phẩm đại diện như FOODS_1_012, FOODS_1_016, FOODS_1_018):

  1. Quy trình thực nghiệm: Phân chia dữ liệu thành các tập huấn luyện (training), kiểm định (validation) và kiểm tra (test).
  2. Huấn luyện và tinh chỉnh: Triển khai quy trình huấn luyện ngoại tuyến (offline training) để trích xuất trọng số và huấn luyện trực tuyến (online training) cập nhật dữ liệu mới; thực hiện tinh chỉnh siêu tham số (hyperparameter tuning) cho hai nhóm mô hình tiêu biểu là SARIMA và XGBoost.
  3. Lựa chọn mô hình tối ưu (Winning Model): So sánh sai số giữa các cấu hình siêu tham số trong cùng họ mô hình và giữa các họ mô hình khác nhau (thống kê chuỗi thời gian so với học máy) để chọn ra mô hình tối ưu tích hợp vào hệ thống máy chủ API.

Chương 5. Kết luận và hướng phát triển

Tổng kết mức độ hoàn thiện của sản phẩm phần mềm và mô hình trí tuệ nhân tạo so với mục tiêu đề ra; tổng hợp các hạn chế kỹ thuật trong quá trình triển khai và vạch ra lộ trình nâng cấp hệ thống trong tương lai.


Kết quả và đóng góp

Kết quả chính

  • Xây dựng hoàn chỉnh ứng dụng di động trên nền tảng Android dành cho cả người mua và người bán với đầy đủ các phân hệ nghiệp vụ thương mại điện tử.
  • Xây dựng hệ thống máy chủ Backend bằng Java Spring Boot hỗ trợ kiến trúc RESTful API, bảo mật JWT và cơ sở dữ liệu quan hệ đồng bộ.
  • Xây dựng module dịch vụ Python phục vụ phân tích dữ liệu chuỗi thời gian và thực thi thuật toán dự báo doanh số.
  • Hoàn thành quy trình thực nghiệm, tinh chỉnh siêu tham số và đánh giá so sánh hiệu năng của các mô hình TSA (ARIMA/SARIMA, Croston) và Machine Learning (XGBoost) trên tập dữ liệu thực phẩm M5 quy mô lớn (1.941 ngày).

Giải pháp và kiến nghị

  • Đề xuất tích hợp trực tiếp công cụ dự báo định lượng vào ứng dụng quản lý bán hàng của các cửa hàng bán lẻ nhỏ và vừa, loại bỏ quy trình tổng hợp sổ sách thủ công.
  • Đề xuất giải pháp cho phép người quản lý can thiệp tùy chỉnh dữ liệu lịch (nhập thông tin ngày nghỉ, ngày lễ, điều kiện thời tiết hoặc biến động dịch bệnh) vào bảng calendar nhằm bổ sung biến ngoại sinh giúp nâng cao độ chính xác của thuật toán học máy.

Đóng góp tự nêu

  • Kết hợp giải pháp kỹ thuật phần mềm di động với các thuật toán phân tích chuỗi thời gian và học máy hiện đại, tạo thành một hệ thống khép kín từ vận hành bán hàng đến hỗ trợ ra quyết định kinh doanh.
  • Đưa ra phương án giải quyết bài toán biến động dữ liệu bán lẻ thực phẩm có tính rời rạc và tính thời vụ cao.

Hạn chế và hướng nghiên cứu tiếp

Hạn chế

  • Ứng dụng phía Client hiện mới chỉ triển khai trên hệ điều hành Android, chưa có phiên bản chạy trên iOS hoặc nền tảng Web.
  • Dữ liệu thực nghiệm huấn luyện và đánh giá mô hình phụ thuộc vào bộ dữ liệu chuẩn M5 của chuỗi bán lẻ Walmart (Mỹ), chưa có điều kiện kiểm nghiệm trên tập dữ liệu thực tế thu thập trực tiếp tại thị trường bán lẻ Việt Nam trong thời gian dài.
  • Tính năng dự báo vận hành theo cơ chế kích hoạt theo lô/yêu cầu, chưa hỗ trợ luồng dự báo phân tích dữ liệu thời gian thực (Real-time Stream Data).

Hạn chế và hướng nghiên cứu tiếp theo tác giả

  • Cải thiện và tối ưu hóa cấu trúc mô hình dự báo doanh số.
  • Nâng cấp hệ thống để hỗ trợ khả năng dự báo theo thời gian thực.
  • Mở rộng phạm vi dự báo sang các nhóm mặt hàng và ngành hàng khác ngoài thực phẩm.
  • Xây dựng và phát triển thêm nền tảng website phục vụ hoạt động bán hàng và quản trị hệ thống.
  • Bổ sung và mở rộng các kênh liên lạc trực tiếp giữa khách hàng và người bán trên ứng dụng.
  • Nghiên cứu cơ chế tự động đề xuất các chương trình khuyến mãi tối ưu dựa trên kết quả dự báo doanh số nhằm gia tăng hiệu quả kinh doanh của cửa hàng.

Giá trị tham khảo

Tài liệu khóa luận mang lại giá trị tham khảo chuyên môn cho sinh viên, học viên ngành Kỹ thuật Phần mềm, Công nghệ Thông tin, Hệ thống Thông tin và Khoa học Dữ liệu:

  • Tài liệu tham khảo về Phân tích & Thiết kế Hệ thống: Bộ tài liệu đặc tả UML hoàn chỉnh (41 bảng đặc tả use case, hệ thống sơ đồ tuần tự, sơ đồ hoạt động, sơ đồ lớp và thiết kế 21 bảng CSDL quan hệ) là nguồn tài liệu trực quan cho các đề tài phát triển ứng dụng di động và thương mại điện tử.
  • Tài liệu tham khảo về Dự báo Chuỗi thời gian: Phần trình bày lý thuyết nền tảng (ACF, stationarity, outlier, white noise, Croston) và quy trình thực nghiệm tiền xử lý, huấn luyện offline/online, tinh chỉnh siêu tham số trên bộ dữ liệu M5 là tài liệu hữu ích cho việc ứng dụng học máy vào bài toán dự báo kinh doanh bán lẻ.

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

1. Khóa luận sử dụng nguồn dữ liệu nào để thực nghiệm các mô hình dự báo doanh số?
Khóa luận sử dụng bộ dữ liệu M5 (Walmart Sales Data) gồm 3.049 sản phẩm thuộc 3 danh mục (thực phẩm chiếm 47%, sở thích, gia dụng) bán tại 10 cửa hàng thuộc 3 bang ở Mỹ trong 1.941 ngày (từ 29/01/2011 đến 19/06/2016). Cấu trúc dữ liệu chính gồm tệp thông tin thời gian, sự kiện (calendar.csv) và dữ liệu sản lượng bán ra.

2. Kiến trúc công nghệ của toàn bộ hệ thống gồm những thành phần nào?
Hệ thống gồm 3 thành phần chính: Ứng dụng di động Android viết bằng Kotlin (mô hình MVVM); hệ thống máy chủ Backend phát triển bằng Java Spring Boot (REST API, bảo mật JWT); dịch vụ AI/dự báo viết bằng Python (FastAPI/Flask/Django); cơ sở dữ liệu kết hợp Firebase Realtime Database và CSDL quan hệ chuẩn hóa 21 bảng, triển khai qua Docker.

3. Khảo sát ứng dụng thực tế của tác giả ghi nhận những thông tin định lượng nào từ Bách Hóa Xanh?
Ứng dụng Bách Hóa Xanh được khảo sát có điểm đánh giá trung bình 3.5 sao trên tổng số 3.254 lượt đánh giá trên CH Play (ghi nhận ngày 27/08/2022), luồng đặt hàng trải qua 9 bước và phí vận chuyển mặc định là 15.000 đồng/đơn hàng.

4. Những phương pháp dự báo và học máy nào được phân tích và so sánh trong khóa luận?
Khóa luận nghiên cứu các phương pháp chuỗi thời gian kinh điển gồm Naive, Seasonal Naive, Drift, Moving Average, AR, ARIMA, SARIMA, phương pháp Croston (dành cho dữ liệu rời rạc), cùng các phương pháp học máy gồm Hồi quy tuyến tính (Linear Regression) và Gradient Boosting Tree (XGBoost).

5. Cơ chế nào được tác giả thiết kế để nâng cao độ chính xác của mô hình dự báo theo bối cảnh thực tế?
Tác giả thiết kế phân hệ quản lý lịch (calendar), cho phép người quản trị cập nhật các sự kiện đặc biệt như ngày lễ, ngày nghỉ, kỳ hạn thời tiết, dịch bệnh hoặc thiên tai để đưa vào làm biến ngoại sinh trong mô hình dự báo.


Kết luận

Khóa luận tốt nghiệp "Xây dựng ứng dụng di động bán thực phẩm trực tuyến hỗ trợ dự báo doanh số" của sinh viên Phạm Minh Tân và Bùi Dương Duy Khang đã giải quyết trọn vẹn bài toán xây dựng nền tảng thương mại điện tử kết hợp trí tuệ nhân tạo cho ngành bán lẻ thực phẩm. Đề tài hoàn thành đầy đủ các giai đoạn kỹ thuật phần mềm từ khảo sát, phân tích thiết kế hệ thống UML, xây dựng ứng dụng Android, hệ thống Backend Spring Boot đến triển khai thực nghiệm các mô hình chuỗi thời gian và học máy trên bộ dữ liệu M5. Đây là công trình kỹ thuật có tính ứng dụng cao, cung cấp cấu trúc hệ thống rõ ràng và phương pháp luận chặt chẽ cho bài toán số hóa quản trị bán lẻ và dự báo nhu cầu thị trường.