Chương 1. GIỚI THIỆU CHUNG 3 1. Lý do chọn đề tài 3 1. Mục tiêu nghiên cứu 4 1.
Đối tượng sử dụng 5 1. Phạm vi đề tài 5 1. Khảo sát ứng dụng tương tự liên quan 6 1. Ứng dụng mua hàng Bách hóa xanh 6 1.
Mô tả ứng dụng 7 1. Điểm hạn chế 10 1. Ứng dụng Shopify 11 1. Mô tả ứng dụng 11 1.
Điểm hạn chế 13 1. Tính mới và khác biệt của đề tài 14 1. Cấu trúc khóa luận 14 Chương 2. KIẾN THỨC NỀN TẢNG 16 2.
Giới thiệu dữ liệu chuỗi thời gian 16 2. Sự tự tương quan (Autocorrelation) 17 2. Giá trị ngoại lai (Outlier) 18 2. Tính rời rạc (Intermittent) 19 2.
Hiện tượng nhiễu trắng (White noise) 19 2. Bộ dữ liệu M5 20 2. Kỹ thuật xử lý đặc trưng (feature engineering) 23 2. Lựa chọn đặc trưng (feature selection) 23 2.
Giảm chiều dữ liệu (dimension reduction) 24 2. Chuẩn hóa dữ liệu (feature scaling) 24 2. Các phương pháp hồi quy 25 2. Các phương pháp phân tích dữ liệu chuỗi thời gian 25 2.
Những phương pháp dự báo đơn giản 26 2. Phân rã chuỗi dữ liệu thời gian 27 2. Phương pháp hồi quy tuyến tính 30 2. Phương pháp hồi quy tự động AR 31 2.
Phương pháp trung bình động MA 32 2. Phương pháp ARIMA và SARIMA 32 2. Phương pháp Croston 34 2. Các phương pháp máy học 34 2.
Hồi quy tuyến tính (Linear Regression ) 34 2. Gradient boosting tree 36 2. Phương pháp đánh giá 37 2. Các công thức tính chỉ số hiệu suất (performance index) 40 2.
Root Mean Square Error - RMSE 40 2. Mean Absolute Error (MAE) 41 2. Root mean square percentage error ( RMSPE) 41 2. Mean absolute percentage error (MAPE) 41 2.
Mean absolute scaled error (MASE) 42 2. Công nghệ sử dụng 43 2. Ngôn ngữ lập trình 43 2. Cơ sở dữ liệu 43 2.
Cơ sở dữ liệu thời gian thực Firebase 43 2. Kiểm thử API 47 2. Bảo mật API 48 2. Docker 48 Chương 3.
PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 49 3. Phân tích hệ thống 49 3. Phân tích kiến trúc hệ thống 49 3. Kiến trúc tổng quát hệ thống 49 3.
Kiến trúc Android (phía client) 50 3. Kiến trúc phía Backend 51 3. Phân tích yêu cầu hệ thống 52 3. Yêu cầu chức năng 52 3.
Yêu cầu phi chức năng 52 3. Thiết kế use case 53 3. Danh sách actor 55 3. Danh sách use case 56 3.
Đặc tả use case 59 3. Thiết kế sơ đồ lớp 83 3. Sơ đồ lớp tổng quát ứng dụng người mua và quản lý 83 3. Sơ đồ lớp các ứng dụng 86 3.
Thiết kế sơ đồ tuần tự 89 3. Sơ đồ tuần tự bên ứng dụng người mua: 89 3. Sơ đồ tuần tự bên ứng dụng người bán: 95 3. Thiết kế sơ đồ hoạt động 104 3.
Sơ đồ hoạt động của ứng dụng người mua: 104 3. Sơ đồ hoạt động của ứng dụng người bán: 113 3. Thiết kế cơ sở dữ liệu 131 3. Sơ đồ quan hệ thực thể 131 3.
Mô tả dữ liệu 132 3. Chi tiết dữ liệu 133 3. Thiết kế giao diện người dùng 147 3. Giao diện người dùng 147 3.
Giao diện quản lý 161 Chương 4. THỰC NGHIỆM VÀ ĐÁNH GIÁ KẾT QUẢ DỰ BÁO 181 4. Dữ liệu thực nghiệm M5 181 4. Dữ liệu ngày (date) 181 4.
Dữ liệu doanh số (sales) 182 4. Mô tả thực nghiệm 184 4. Tiền xử lý dữ liệu 185 4. Huấn luyện offline (offline training) 185 4.
Huấn luyện trực tuyến (online training) 187 4. Chọn ra model cuối (winning model) 192 4. Dự báo với model được chọn. Đánh giá mô hình dự báo 195 4.
Phương pháp đánh giá được sử dụng 195 4. Công thức tính chỉ số hiệu suất được sử dụng. Kết quả thực nghiệm 197 Chương 5. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 198 5.
Kết quả đạt được 198 5. Hướng phát triển 199 DANH MỤC HÌNH Hình 1.1 Giao diện web của ứng dụng Bách hóa xanh.1 Minh họa một dữ liệu chuỗi thời gian xuất hiện hiện tượng nhiễu trắng.2 Biểu đồ ACF của một chuỗi thời gian xuất hiện hiện tượng nhiễu trắng.3 Tổng quan tổ chức dữ liệu bộ M5.4 Chia dữ liệu thành 2 tập training và test.6 Chia dữ liệu thành ba phần training, validation và test.7 Spring boot framework.8 Fast API framework.1 Kiến trúc tổng quát hệ thống.2 Kiến trúc phía Android.3 Kiến trúc backend.4 Sơ đồ Usecase phía ứng dụng người mua.5 Sơ đồ use case ứng dụng người bán.6 Sơ đồ tổng thể mối quan hệ các class trong ứng dụng Android.7 Sơ đồ mối quan hệ kế thừa của các Activity.8 Sơ đồ mối quan hệ kế thừa của các Fragment.9 Sơ đồ mối quan hệ kế thừa của các ViewModel.10 Hình ảnh tất cả các class của ứng dụng phía người mua.11 Tất cả các class bên phía ứng dụng người bán (phía quản lý).12 Tất cả các class của phía Backend.13 Sơ đồ tuần tự đăng nhập phía người mua.14 Sơ đồ tuần tự đăng xuất bên phía người mua.15 Sơ đồ tuần tự đăng ký cho người mua hàng.16 Sơ đồ tuần tự cập nhật đơn hàng tại danh sách đơn hàng.17 Sơ đồ tuần tự cập nhật đơn hàng tại chi tiết đơn hàng.18 Sơ đồ tuần tự tạo đơn hàng mới.19 Sơ đồ tuần tự thêm sản phẩm vào giỏ hàng.20 Sơ đồ tuần tự cập nhật giỏ hàng.21 Sơ đồ tuần tự xóa sản phẩm khỏi giỏ hàng.22 Sơ đồ tuần tự xem chi tiết sản phẩm.23 Sơ đồ tuần tự tìm kiếm sản phẩm.24 Sơ đồ tuần tự xem ngành hàng.25 Sơ đồ tuần tự xem loại hàng.26 Sơ đồ tuần tự đăng nhập cho người bán.27 Sơ đồ tuần tự đăng xuất cho người bán.28 Sơ đồ tuần tự thêm ngành hàng.29 Sơ đồ tuần tự cập nhật ngành hàng.30 Sơ đồ tuần tự thêm loại hàng.31 Sơ đồ tuần tự cập nhật loại hàng.32 Sơ đồ tuần tự tạo sản phẩm mới.33 Sơ đồ tuần tự cập nhật sản phẩm mới.34 Sơ đồ tuần tự tìm kiếm sản phẩm cho người bán.35 Sơ đồ tuần tự thay đổi trạng thái đơn hàng ở danh sách đơn hàng cho người bán.36 Sơ đồ tuần tự thay đổi trạng thái đơn hàng ở chi tiết đơn hàng cho người bán.37 Sơ đồ tuần tự thêm tài khoản mới bên người bán.38 Sơ đồ tuần tự xóa tài khoản bên người bán.39 Sơ đồ tuần tự đổi mật khẩu tài khoản bên người bán.40 Sơ đồ tuần tự xem lịch dự báo.41 Sơ đồ tuần tự cập nhật lịch.42 Sơ đồ tuần tự thêm dự báo.43 Sơ đồ tuần tự cập nhật thông tin ngân hàng.44 Sơ đồ hoạt động đăng nhập bên phía người mua.45 Sơ đồ hoạt động đăng xuất bên phía người mua.46 Sơ đồ hoạt động đăng ký tài khoản cho người mua.47 Sơ đồ hoạt động thay đổi trạng thái đơn hàng ở danh sách đơn hàng cho người mua.48 Sơ đồ hoạt động thay đổi trạng thái đơn hàng ở chi tiết đơn hàng cho người mua.49 Sơ đồ hoạt động tạo đơn hàng.50 Sơ đồ hoạt động thêm sản phẩm vào giỏ hàng.51 Sơ đồ hoạt động chỉnh sửa giỏ hàng.52 Sơ đồ hoạt động xóa sản phẩm khỏi giỏ hàng.53 Sơ đồ hoạt động tìm kiếm sản phẩm bên phía người mua.54 Sơ đồ hoạt động đăng nhập cho người bán.55 Sơ đồ hoạt động đăng xuất cho người bán.56 Sơ đồ hoạt động thêm ngành hàng.57 Sơ đồ hoạt động cập nhật ngành hàng.58 Sơ đồ hoạt động thêm loại hàng.59 Sơ đồ hoạt động cập nhật loại hàng.60 Sơ đồ hoạt động thêm sản phẩm mới.61 Sơ đồ hoạt động cập nhật sản phẩm.62 Sơ đồ hoạt động tìm kiếm sản phẩm cho người bán.63 Sơ đồ hoạt động thay đổi trạng thái đơn hàng ở danh sách đơn hàng cho người bán.64 Sơ đồ hoạt động thay đổi trạng thái đơn hàng ở chi tiết đơn hàng cho người bán.65 Sơ đồ hoạt động thêm tài khoản người bán.66 Sơ đồ hoạt động xóa tài khoản người bán.67 Sơ đồ hoạt động đổi mật khẩu tài khoản người bán.68 Sơ đồ hoạt động xem lịch dự báo.69 Sơ đồ hoạt động cập nhật lịch.70 Sơ đồ hoạt động tạo dự báo mới.71 Sơ đồ hoạt động cập nhật thông tin ngân hàng.72 Sơ đồ quan hệ thực thể của cơ sở dữ liệu.73 Màn hình đăng nhập cho người mua.74 Màn hình đăng ký cho người mua.75 Màn hình danh sách đơn hàng.76 Màn hình chi tiết đơn hàng.77 Màn hình tạo đơn hàng.78 Màn hình giỏ hàng.79 Màn hình giỏ hàng rỗng.80 Màn hình trang chủ.81 Màn hình tìm kiếm sản phẩm.82 Màn hình xem loại hàng.83 Màn hình xem ngành hàng.84 Màn hình xem các sản phẩm của một loại hàng.85 Màn hình xem chi tiết sản phẩm.86 Màn hình đăng nhập cho người bán.87 Màn hình tạo ngành hàng mới.88 Màn hình danh sách các ngành hàng.89 Màn hình xem ngành hàng.90 Màn hình chỉnh sửa ngành hàng.91 Màn hình xem chi tiết các loại hàng của một ngành hàng.92 Màn hình chỉnh sửa loại hàng.93 Màn hình thêm sản phẩm mới.94 màn hình chỉnh sửa sản phẩm.95 Màn hình xem các sản phẩm đang có.96 Màn hình chi tiết đơn hàng.97 Màn hình danh sách đơn hàng.98 Màn hình danh sách các tài khoản admin.99 Màn hình thêm tài khoản mới.100 Màn hình xem lịch dự báo.101 Màn hình cập nhật lịch.102 Màn hình tạo dự báo mới.103 Màn hình xem dự báo.104 Màn hình danh sách các dự báo.105 Màn hình cập nhật/xem tài khoản ngân hàng.1 Dữ liệu doanh số FOODS_1_012.2 Dữ liệu doanh số FOODS_1_016.3 Dữ liệu doanh số FOODS_1_018.4 Qui trình thực nghiệm.5 Chọn 1 winner duy nhất từ K2 candidates.6 Chọn ra K3 winner từ K2 candidates.194 DANH MỤC BẢNG Bảng 3.1 Các Actor của ứng dụng.2 Các use case trong ứng dụng.3 Đặc tả use case đăng nhập dành cho khách hàng.4 Đặc tả use case đăng ký dành cho khách hàng.5 Bảng đặc tả use case quản lý địa chỉ giao hàng.6 Bảng đặc tả use case quản lý đơn hàng.7 Bảng đặc tả use case tạo đơn hàng.8 Bảng đặc tả use case quản lý giỏ hàng.9 Bảng đặc tả use case xem chi tiết sản phẩm.10 Bảng đặc tả use case tìm kiếm sản phẩm.11 Bảng đặc tả use case xem loại hàng.12 Bảng đặc tả use case xem ngành hàng.13 Bảng đặc tả use case đăng nhập dành cho người bán.14 Bảng đặc tả use case quản lý ngành hàng.15 Bảng đặc tả use case quản lý loại hàng.16 Bảng đặc tả use case quản lý sản phẩm.17 Bảng đặc tả use case quản lý đơn hàng.18 Bảng đặc tả use case quản lý tài khoản.19 Bảng đặc tả use case quản lý lịch.20 Bảng đặc tả use case dự báo doanh số.21 Bảng đặc tả use case cập nhật thông tin ngân hàng.22 Chi tiết dữ liệu bảng seller.23 Chi tiết dữ liệu bảng delivery_address.24 Chi tiết dữ liệu bảng province.25 Chi tiết dữ liệu bảng district.26 Chi tiết dữ liệu bảng ward.27 Chi tiết dữ liệu bảng order.28 Chi tiết dữ liệu bảng order_item.29 Chi tiết dữ liệu bảng product.30 Chi tiết dữ liệu bảng product_image.31 Chi tiết dữ liệu bảng classify_product_value.32 Chi tiết dữ liệu bảng classify_product.