Thêm vào đó, kết quả thu được từ phương pháp làm trơn hàm mũ Winters còn được so sánh với mô hình SARIMA nhằm xác định kết quả dự báo dữ liệu chuỗi thời gian theo phương pháp nào là tốt
Trang 1ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA
-
NGU ỄN N TRỌNG
ƯỚ Ư NG Ệ SỐ Ư NG TR N W NT RS
Trang 2CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI TRƯỜNG ĐẠI HỌC BÁCH KHOA –ĐHQG –HCM
Cán bộ hướng dẫn khoa học: PGS.TS Dương Tuấn Anh
1 PGS.TS Dương Tuấn Anh 2 TS Nguyễn Văn Minh Mẫn 3 TS Võ Đình Bảy
4 TS Lư Nhật Vinh 5 TS Huỳnh Tường Nguyên Xác nhận của Chủ tịch Hội đồng đánh giá LV và Trưởng Khoa quản lý chuyên ngành sau khi luận văn đã được sửa chữa (nếu có)
CHỦ TỊCH HỘ ĐỒNG TRƯỞNG KHOA
Trang 3NHIỆM VỤ LUẬN VĂN T Ạ SĨ
Họ tên học viên: NGUYỄN MINH TRỌNG MSHV: 12070551 Ngày, tháng, năm sinh: 20/10/1988 Nơi sinh: Long An Chuyên ngành: Khoa học máy tính Mã số :62480101
I TÊN ĐỀ TÀI:
Ước lượng các hệ số cho phương pháp làm trơn hàm mũ Winters bằng metaheuristic
II NHIỆM VỤ VÀ NỘI DUNG:
1 Hiện thực các giải thuật metaheuristic căn bản : giải thuật leo đồi, giải thuật tìm kiếm Tabu, giải thuật mô phỏng luyện kim bằng ngôn ngữ C#
2 Hiện thực một giải thuật cải tiến metaheuristic : giải thuật mô phỏng luyện kim tái nung nóng bằng ngôn ngữ C#
3 Nghiên cứu phần mềm R : thực thi lệnh và đánh giá các giản đồ tương quan phục vụ cho mô hình SARIMA
4 So sánh các kết quả thu được giữa các giải thuật metaheuristic 5 So sánh kết quả thu được trong phương pháp làm trơn hàm mũ Winters và mô
hình SARIMA
6 Hiện thực phương pháp làm trơn hàm mũ Winters trong môi trường trực tuyến
III NGÀY GIAO NHIỆM VỤ : 19/08/2013 IV NGÀY HOÀN THÀNH NHIỆM VỤ: 22/06/2014 V CÁN BỘ ƯỚNG DẪN : PGS.TS DƯƠNG TUẤN ANH
TRƯỜNG ĐẠI HỌC BÁCH KHOA
CỘNG HÒA XÃ HỘI CHỦ NG Ĩ V ỆT NAM
Độc lập - Tự do - Hạnh phúc
Trang 4LỜI CÁ N
Lời đầu tiên trong luận văn này em xin gửi lời cám ơn chân thành đến thầy PGS TS Dương Tuấn Anh, thầy đã dành nhiều thời gian, công sức và tâm huyết để truyền đạt kiến thức hướng dẫn em trong suốt thời thời gian thực hiện luận văn tốt nghiệp
Kế đến, em xin gửi lời cám ơn đến quý thầy cô đã giảng dạy và truyền đạt những kiến thức hữu ích cho em trong suốt thời gian tham gia học tập tại trường Đại học Bách Khoa thành phố Hồ Chí Minh
Và em xin chân thành cám ơn các anh chị và bạn bè đã tạo điều kiện giúp đỡ em trong việc thu thập dữ liệu thực hiện luận văn này
Em xin chân thành cám ơn quý thầy cô trong hội đồng đánh giá luận văn thạc sĩ đã dành thời gian cho luận văn của em và cho em biết thêm nhiều kiến thức mới
Cuối cùng em xin cám ơn đến gia đình và bạn bè đã động viên giúp đỡ em trong quá trình thực hiện luận văn này
Trang 5TÓM TẮT LUẬN VĂN T ẠC SĨ
Luận văn này được thực hiện với mục tiêu chứng minh giải thuật metaheuristic có thể áp dụng cho việc xác định các hệ số alpha, beta và gamma tốt hơn phương pháp vét cạn thông thường trong phương pháp làm trơn hàm mũ Winters Đồng thời, luận văn cũng đánh giá kết quả thu được từ các giải thuật metaheuristic nhằm xác định giải thuật nào sẽ tối ưu hơn Thêm vào đó, kết quả thu được từ phương pháp làm trơn hàm mũ Winters còn được so sánh với mô hình SARIMA nhằm xác định kết quả dự báo dữ liệu chuỗi
thời gian theo phương pháp nào là tốt hơn
Phương pháp nghiên cứu được thực hiện bởi phương pháp định lượng Trong luận văn này, nội dung cần nghiên cứu chính là: (1) lý thuyết của
dữ liệu chuỗi thời gian; (2) bốn giải thuật metaheuristic: giải thuật leo đồi,
giải thuật tìm kiếm Tabu, giải thuật mô phỏng luyện kim và giải thuật mô
phỏng luyện kim tái nung nóng; (3) phương pháp làm trơn hàm mũ Winters: mô hình cộng, mô hình nhân; (4) mô hình SARIMA hỗ trợ thực hiện dự báo dữ liệu chuỗi thời gian; (5) nghiên cứu và sử dụng phần mềm R; (6) phương pháp làm trơn hàm mũ Winters trong môi trường trực tuyến
Và sau quá trình thử nghiệm, kết quả của luận văn như sau:
- Tất cả các giải thuật metaheuristic đều xác định các hệ số alpha, beta, gamma là rất tốt và độ chính xác cao
- Giải thuật mô phỏng luyện kim tái nung nóng cho ra kết quả tốt nhất
trong các giải thuật metaheuristic - Kết quả dự báo của phương pháp làm trơn hàm mũ Winters theo mô
hình nhân khi áp dụng các giải thuật metaheuristic là rất tốt và tương đương với mô hình SARIMA
- Phương pháp làm trơn hàm mũ Winters còn có thể áp dụng cho môi
trường dự báo trực tuyến và kết quả dự báo là rất tốt Cuối cùng, kết quả của luận văn này sẽ là nguồn tư liệu mới, một thông tin mới và bổ sung hữu ích vào lĩnh vực dự báo dữ liệu chuỗi thời gian
Trang 6ABSTRACT
The goal of this thesis is to prove metaheuristics better than brute force algorithm in estimating the value of alpha, beta, gamma parameters in Exponential Smoothing Winters method This thesis aims to evaluate performance of metaheuristics in order to find out the best algorithm In addition, this forecasting result of Exponential Smoothing Winters method will be compared with SARIMA model
The method research is implemented by Quantitative Methods The content of this thesis research consists of the following: (1) Theory of time series data; (2) Four metaheuristics: Hill Climbing algorithm, Tabu Search algorithm, Simulated Annealing algorithm and Simulated Annealing with Reheating algorithm; (3) Exponential Smoothing Winters method: additive components model, multiplicative components model; (4) SARIMA model for forecast of time series data; (5) Study and use the R software; (6) Exponential Smoothing Winters method in online prediction
And the result of testing process as the below: - All metaheuristics can be used to estimate the values of alpha, beta,
gamma parameters with high accuracy - The Simulated Annealing with Reheating algorithm is the best
algorithm in the four metaheuristics algorithms - The forecasting result of Exponential Smoothing Winters method
with multiplicative components model is very good and sometimes is better than SARIMA model
- Exponential Smoothing Winters method can used to forcast in online environment and the result is very good
Finally, the results of this thesis will be a new reference material, a new and useful knowledge for forecast of time series data
Trang 7LỜ Đ N
Em xin cam đoan rằng tất cả những giải thuật, dữ liệu trong luận văn này do em tự nghiên cứu và thực hiện theo sự hướng dẫn của giáo viên hướng dẫn Và những kết quả được thu được trong quá trình thực hiện và so sánh giữa các yêu cầu trong luận văn hoàn toàn khách quan và trung thực đúng với tinh thần của yêu cầu luận văn đã đưa ra
Trang 86 PACF Hàm tự tương quan riêng phần
8 MA Mô hình trung bình di động 9 ARMA AR + MA + có tính dừng 10 ARIMA AR + MA + không có tính dừng 11 NN Mạng thần kinh nhân tạo
12 MAPE Sai số phần trăm trung bình tuyệt đối 13 MAD Sai số trung bình tuyệt đối
14 MSD Sai số trung bình bình phương 15 SSE Sai số tổng bình phương 16 SHC Giải thuật leo đồi dốc nhất 17 RHC Giải thuật leo đồi ngẫu nhiên 18 NCHC Giải thuật leo đồi có xung đột ít nhất 19 WMA Trung bình di động có trọng số 20 E(X) Kỳ vọng của biến ngẫu nhiên X 21 Var(X) Phương sai của biến ngẫu nhiên X 22 HICP Chỉ số giá tiêu dùng
Trang 9DANH MỤC HÌNH
Hình 2.1: Ví dụ về dữ liệu chuỗi thời gian 4
Hình 2.2: Tính xu hướng của dữ liệu chuỗi thời gian 5
Hình 2.3: Giá trị dự báo được xấp xỉ 6
Hình 2.4: Tính m a của dữ liệu chuỗi thời gian 6
Hình 2.5: Tính chu trình của dữ liệu chuỗi thời gian 7
Hình 2.11: Phương pháp làm trơn hàm mũ Holt với 0,1 và = 0,099 16
Hình 2.12: Phương pháp làm trơn hàm mũ Winters 18
Hình 2.13: Đoạn mã giả mô tả giải thuật leo đồi 21
Hình 2.14: Đoạn mã giả mô tả giải thuật tìm kiếm Tabu 23
Hình 2.15: Đoạn mã giả mô tả giải thuật mô phỏng luyện kim 25
Hình 2.16: Đoạn mã mô tả giải thuật mô phỏng luyện kim tái nung nóng 27
Hình 2.17: Cơ chế hoạt động của bộ đệm xoay vòng 28
Hình 3.6: Cấu trúc mạng thần kinh nhân tạo 46
Hình 3.7: Mạng thần kinh nhân tạo truyền thẳng 47
Hình 3.8: Mạng thần kinh nhân tạo hồi quy 47
Hình 3.9: Mô hình học với chuỗi thời gian 48
Trang 10Hình 4.1: Giao điện khi sử dụng phương pháp làm trơn hàm mũ Winters được ước lượng bởi giải thuật metaheuristic 55 Hình 4.2: Giao diện ban đầu của phần mềm R 56 Hình 4.3: Kết quả dự báo Winters/Hill-Climbing theo mô hình nhân trên tập
dữ liệu Fancy 57
Hình 4.4: Kết quả dự báo Winters/Tabu-Search theo mô hình nhân trên tập dữ
liệu Fancy 57
Hình 4.5: Kết quả dự báo Winters/Simulated-Annealing theo mô hình nhân
trên tập dữ liệu Fancy 58
Hình 4.6: Kết quả dự báo Winters/SA-with-Reheating theo mô hình nhân trên
tập dữ liệu Fancy 58 Hình 4.7: Kết quả dự báo của mô hình SARIMA trên tập dữ liệu Fancy 59
Hình 4.8: Kết quả dự báo Winters/Hill-Climbing theo mô hình nhân trên tập
dữ liệu Mdeaths 60
Hình 4.9: Kết quả dự báo Winters/Tabu-Search theo mô hình nhân trên tập dữ
liệu Mdeaths 61
Hình 4.10: Kết quả dự báo Winters/Simulated-Annealing theo mô hình nhân
trên tập dữ liệu Mdeaths 61
Hình 4.11: Kết quả dự báo Winters/SA-with-Reheating theo mô hình nhân
trên tập dữ liệu Mdeaths 62 Hình 4.12: Kết quả dự báo của mô hình SARIMA trên tập dữ liệu Mdeaths 62
Hình 4.13: Kết quả dự báo Winters/Hill-Climbing theo mô hình nhân trên tập
dữ liệu Ukgas 64
Hình 4.14: Kết quả dự báo Winters/Tabu-Search theo mô hình nhân trên tập
dữ liệu Ukgas 64
Hình 4.15: Kết quả dự báo Winters/Simulated-Annealing theo mô hình nhân
trên tập dữ liệu Ukgas 65
Hình 4.16: Kết quả dự báo Winters/SA-with-Reheating theo mô hình nhân
trên tập dữ liệu Ukgas 65 Hình 4.17: Kết quả dự báo của mô hình SARIMA trên tập dữ liệu Ukgas 66
Hình 4.18: Kết quả dự báo Winters/Hill-Climbing theo mô hình nhân trên tập
dữ liệu AirPassengers 67
Hình 4.19: Kết quả dự báo Winters/Tabu-Search theo mô hình nhân trên tập
dữ liệu AirPassengers 68
Trang 11Hình 4.20: Kết quả dự báo Winters/Simulated-Annealing theo mô hình nhân
trên tập dữ liệu AirPassengers 68
Hình 4.21: Kết quả dự báo Winters/SA-with-Reheating theo mô hình nhân
trên tập dữ liệu AirPassengers 69
Hình 4.22: Kết quả dự báo của mô hình SARIMA trên tập dữ liệu
Hình 4.25: Kết quả dự báo Winters/Simulated-Annealing theo mô hình nhân
trên tập dữ liệu Download-Broadband-Performance 72
Hình 4.26: Kết quả dự báo Winters/SA-with-Reheating theo mô hình nhân
trên tập dữ liệu Download-Broadband-Performance 72 Hình 4.27: Kết quả dự báo của mô hình SARIMA trên tập dữ liệu Download-Broadband-Performance 73
Hình 4.28: Kết quả dự báo Winters/Hill-Climbing theo mô hình nhân trên tập
dữ liệu Upload-Broadband-Performance 74
Hình 4.29: Kết quả dự báo Winters/Tabu-Search theo mô hình nhân trên tập
dữ liệu Upload-Broadband-Performance 75
Hình 4.30: Kết quả dự báo Winters/Simulated-Annealing theo mô hình nhân
trên tập dữ liệu Upload-Broadband-Performance 75
Hình 4.31: Kết quả dự báo Winters/SA-with-Reheating theo mô hình nhân
trên tập dữ liệu Upload-Broadband-Performance 76 Hình 4.32: Kết quả dự báo của mô hình SARIMA trên tập dữ liệu Upload-Broadband-Performance 76
Hình 4.33: Kết quả dự báo Winters/Hill-Climbing theo mô hình nhân trên tập
dữ liệu Hicp-Education 78
Hình 4.34: Kết quả dự báo Winters/Tabu-Search theo mô hình nhân trên tập
dữ liệu Hicp-Education 78
Hình 4.35: Kết quả dự báo Winters/Simulated-Annealing theo mô hình nhân
trên tập dữ liệu Hicp-Education 79
Hình 4.36: Kết quả dự báo Winters/SA-with-Reheating theo mô hình nhân
trên tập dữ liệu Hicp-Education 79
Trang 12Hình 4.37: Kết quả dự báo của mô hình SARIMA trên tập dữ liệu Education 80
Hicp-Hình 4.38: Kết quả dự báo Winters/Hill-Climbing theo mô hình nhân trên tập
dữ liệu Milk-Production 81
Hình 4.39: Kết quả dự báo Winters/Tabu-Search theo mô hình nhân trên tập
dữ liệu Milk-Production 81
Hình 4.40: Kết quả dự báo Winters/Simulated-Annealing theo mô hình nhân
trên tập dữ liệu Milk-Production 82
Hình 4.41: Kết quả dự báo Winters/SA-with-Reheating theo mô hình nhân
trên tập dữ liệu Milk-Production 82 Hình 4.42: Kết quả dự báo của mô hình SARIMA trên tập dữ liệu Milk-Production 83
Hình 4.43: Lỗi thông báo từ phần mềm R khi áp dụng mô hình SARIMA dự
báo cho tập dữ liệu Milk-Production 83
Hình 4.44: Kết quả dự báo Winters/Hill-Climbing theo mô hình nhân trên tập
dữ liệu Totalpig 84
Hình 4.45: Kết quả dự báo Winters/Tabu-Search theo mô hình nhân trên tập
dữ liệu Totalpig 85
Hình 4.46: Kết quả dự báo Winters/Simulated-Annealing theo mô hình nhân
trên tập dữ liệu Totalpig 85
Hình 4.47: Kết quả dự báo Winters/SA-with-Reheating theo mô hình nhân
trên tập dữ liệu Totalpig 86 Hình 4.48: Kết quả dự báo của mô hình SARIMA trên tập dữ liệu Totalpig 86
Hình 4.49: Lỗi thông báo từ phần mềm R khi áp dụng mô hình SARIMA dự báo cho tập dữ liệu totalpig 87 Hình 4.50: Kết quả dự báo Winters/Hill-Climbing theo mô hình nhân trên tập
dữ liệu Unemployment 88
Hình 4.51: Kết quả dự báo Winters/Tabu-Search theo mô hình nhân trên tập
dữ liệu Unemployment 88
Hình 4.52: Kết quả dự báo Winters/Simulated-Annealing theo mô hình nhân
trên tập dữ liệu Unemployment 89
Hình 4.53: Kết quả dự báo Winters/SA-with-Reheating theo mô hình nhân
trên tập dữ liệu Unemployment 89
Trang 13Hình 4.54: Kết quả dự báo của mô hình SARIMA trên tập dữ liệu
Unemployment 90
Hình 4.55: Lỗi thông báo từ phần mềm R khi áp dụng mô hình SARIMA dự báo cho tập dữ liệu unemployment 90 Hình B.1: Ứng dụng các phương pháp dự báo của các phần mềm (miễn phí hoặc thương mại) B1Hình C.1: Giao diện khi truy xuất vào trang CRAN C1Hình C.2: Giao diện sau khi chọn phiên bản download C1Hình C 3: Giao diện sau khi chọn install R for the first time C2Hình C.4: Màn hình cài đặt ban đầu của R C2Hình C.5: Giao diện thông tin phần mềm R C3Hình C.6: Giao diện nơi cài đặt phần mềm R C3Hình C.7: Giao diện các gói chức năng phần mềm R C4Hình C.8: Giao diện quá trình cài đặt phần mềm R C4Hình D.1: Chọn chức năng Install package D1Hình D.2: Chọn quốc gia Việt Nam D1Hình D.3: Chọn thư viện TTR trong gói thư viện phần mềm R D2Hình D 4: Kết quả cài đặt gói thư viện thành công D2Hình F.1: Các chức năng chính của giao diện ban đầu F1Hình F.2: Phần chọn lựa nguồn dữ liệu để thực thi F2Hình F.3: Phần lựa chọn sai số và mô hình Winter F2Hình F.4: Phần lựa chọn giải thuật và thực thi tương ứng F3Hình F.5: Phần xuất ra kết quả cuối cùng F3Hình F.6: Thẻ chức năng kiểm tra kết quả F4Hình F.7: Thẻ chức năng thử nghiệm Online F5Hình F.8: Nội dung kết quả trong thẻ chức năng thử nghiệm Online F6
Hình G.1: Đồ thị tập huấn luyện Fancy chưa lấy hiệu G2Hình G.2: Đồ thị ACF tập huấn luyện Fancy chưa lấy hiệu G2Hình G.3: Đồ thị PACF tập huấn luyện Fancy chưa lấy hiệu G3Hình G.4: Đồ thị tập huấn luyện Fancy lấy hiệu lần 1 G3Hình G.5: Đồ thị ACF tập huấn luyện Fancy lấy hiệu lần 1 G4Hình G.6: Đồ thị PACF tập huấn luyện Fancy lấy hiệu lần 1 G4Hình G.7: Kết quả dự báo SARIMA tập dữ liệu Fancy G5
Trang 14DANH MỤC CÔNG THỨC
Công thức 2.1: Công thức mô hình cộng 8
Công thức 2.2: Công thức mô hình nhân 9
Công thức 2.3: Sai số phần trăm trung bình tuyêt đối 10
Công thức 2.4: Sai số trung bình tuyệt đối 10
Công thức 2.5: Sai số trung bình bình phương 11
Công thức 2.6: Trung bình di động 11
Công thức 2.7: Trung bình di động có trọng số 12
Công thức 2.8: Làm trơn hàm mũ giản đơn 12
Công thức 2.9: Làm trơn hàm mũ bằng phương pháp Holt 15
Công thức 2.10: Làm trơn hàm mũ theo mô hình nhân 17
Công thức 2.11: Làm trơn hàm mũ theo mô hình cộng 17
Công thức 3.1: Hệ số tự tương quan 31
Công thức 3.2: Hàm tự tương quan 31
Công thức 3.3: Hàm tự tương quan theo từng thời đoạn 32
Công thức 3.4: Công thức của mô hình tự hồi quy tổng quát 33
Công thức 3.5: Công thức của mô hình tự hồi quy bậc 1 34
Công thức 3.6: Các hệ số của hàm tự tương quan 34
Công thức 3.7: Công thức của mô hình tự hồi quy bậc 2 35
Công thức 3.8: Các hệ số của hàm tự tương quan 35
Công thức 3.9: Công thức của mô hình trung bình di động tổng quát 37
Công thức 3.10: Công thức của mô hình trung bình di động bậc 1 38
Công thức 3.11: Công thức của mô hình trung bình di động bậc 2 39
Công thức 3.12: Công thức của mô hình ARMA 41
Công thức 3.13: Công thức của mô hình ARIMA 42
Trang 151.3 Đối tượng và phạm vi nghiên cứu 2
1.4 Phương pháp nghiên cứu 2
1.5 Kết quả đạt được 2
1.6 Cấu trúc luận văn 3
hương 2: SỞ LÝ THUYẾT VỀ DỰ BÁO DỮ LIỆU CHUỖI THỜI GIAN VÀ METAHEURISTIC 4
2.1 Dữ liệu chuỗi thời gian Time series) 4
2.2 Các thành phần của chuỗi thời gian 5
2.2.1 Thành phần xu hướng Trend) 5
2.2.2 Thành phần m a Seasonal) 6
2.2.3 Thành phần chu trình Cyclical) 7
2.2.4 Thành phần bất thường Irregular) 7
2.3 Mô hình phân rã dữ liệu chuỗi thời gian (Decomposition) 7
2.3.1 Mô hình cộng (Additive component model) 8
2.3.2 Mô hình nhân (Multiplicative component model) 9
2.4 Các phương pháp đánh giá sai số của k thuật dự báo chuỗi thời gian 9
Trang 162.4.1 Sai số phần trăm trung bình tuyệt đối (Mean Absolute Percentage
2.5 Phương pháp làm trơn dữ liệu chuỗi thời gian 11
2.5.1 Trung bình di động rithmetic Moving verage) 11
2.5.2 Phương pháp làm trơn hàm mũ trên dữ liệu chuỗi thời gian 12
2.5.2.1 Làm trơn hàm mũ giản đơn Single Exponential Smoothing)
12
2.5.2.2 Làm trơn hàm mũ kép hay phương pháp Holt Double Exponential Smoothing or Holt’s Method) 15
2.5.2.3 Phương pháp Winters Winters Model) 16
2.6 Giải thuật Metaheurisic 19
2.6.1 Giải thuật leo đồi (Hill-climbing) 19
2.6.2 Giải thuật tìm kiếm Tabu (Tabu search) 22
2.6.3 Giải thuật mô phỏng luyện kim (Simulated Annealing) 24
2.6.4 Giải thuật mô phỏng luyện kim tái nung nóng (Simulated Annealing with Reheating) 26
2.7 Dự báo trong môi trường trực tuyến 28
hương 3: Ư NG DỰ BÁO DỮ LIỆU CHUỖI THỜI GIAN KHÁC 29
3.1 Phương pháp dự báo dữ liệu chuỗi thời gian bằng mô hình SARIMA
Trang 173.1.2.2 Hàm tự tương quan utocorrelation function – ACF) 31
3.1.2.3 Hàm tự tương quan riêng phần (Partial autocorrelation function – PACF) 32
3.1.3 Mô hình tự hồi quy utoregressive model - AR) 33
3.1.3.1 Hiện tượng nhiễu trắng (White noise) 33
3.1.3.2 Mô hình tự hồi quy bậc 1 – AR(1) 34
3.1.3.3 Mô hình tự hồi quy bậc 2 – AR(2) 35
3.1.4 Mô hình trung bình di động Moving verage model - MA) 37
3.1.4.1 Mô hình trung bình di động bậc 1 – MA(1) 38
3.1.4.2 Mô hình trung bình di động bậc 2 – MA(2) 39
3.1.5 Mô hình ARMA (AutoRegressive Moving Average) 41
3.1.6 Mô hình ARIMA (AutoRegressive Integrated Moving Average)
42
3.1.7 Mô hình SARIMA (Seasonal ARIMA) 44
3.2 Mô hình mạng thần kinh nhân tạo (Neural Network model - NN) 46
3.2.1 Cấu trúc mạng thần kinh nhân tạo 46
3.2.2 Ứng dụng mô hình thần kinh nhân tạo cho việc dự báo chuỗi thời gian 48
3.2.3 Hạn chế của mạng thần kinh nhân tạo 49
hương 4: ỆN THỰC VÀ THỬ NGHIỆM 50
4.1 Quá trình hiện thực 50
4.1.1 Hiện thực các giải thuật metaheuristic 50
4.1.2 So sánh giữa phương pháp Winters và mô hình S RIM 51
4.1.3 Hiện thực dự báo trực tuyến 53
4.2 Quá trình thử nghiệm trong môi trường không trực tuyến 53
4.2.1 Bộ dữ liệu doanh số bán hàng hàng tháng của một cửa hàng bán đồ lưu niệm ở Queensland, Australia, từ năm 1987 đến năm 1993 56
Trang 184.2.1.1 Kết quả thu được từ phương pháp làm trơn hàm mũ Winters ước lượng bởi giải thuật metaheuristic 574.2.1.2 Kết quả thu được từ mô hình SARIMA 594.2.1.3 Nhận xét 594.2.2 Bộ dữ liệu số người chết trung bình hàng tháng vì bệnh phổi ở Anh 60
4.2.2.1 Kết quả thu được từ phương pháp làm trơn hàm mũ Winters ước lượng bởi giải thuật metaheuristic 604.2.2.2 Kết quả thu được từ mô hình SARIMA 624.2.2.3 Nhận xét 634.2.3 Bộ dữ liệu lượng tiêu thụ khí đốt trung bình theo quý tại Anh 634.2.3.1 Kết quả thu được từ phương pháp làm trơn hàm mũ Winters ước lượng bởi giải thuật metaheuristic 634.2.3.2 Kết quả thu được từ mô hình SARIMA 664.2.3.3 Nhận xét 664.2.4 Bộ dữ liệu số lượng khách hàng đặt chỗ hàng tháng của hãng hàng không Pan Am từ năm 1946 đến năm 1960 67
4.2.4.1 Kết quả thu được từ phương pháp làm trơn hàm mũ Winters ước lượng bởi giải thuật metaheuristic 674.2.4.2 Kết quả thu được từ mô hình SARIMA 694.2.4.3 Nhận xét 704.2.5 Bộ dữ liệu hiệu suất băng thông download trên toàn cầu từ năm 2008 đến năm 2012 được theo dõi theo từng tháng 70
4.2.5.1 Kết quả thu được từ phương pháp làm trơn hàm mũ Winters ước lượng bởi giải thuật metaheuristic 704.2.5.2 Kết quả thu được từ mô hình SARIMA 734.2.5.3 Nhận xét 734.2.6 Bộ dữ liệu hiệu suất băng thông upload trên toàn cầu từ năm 2008 đến năm 2012 được theo dõi theo từng tháng 74
Trang 194.2.6.1 Kết quả thu được từ phương pháp làm trơn hàm mũ Winters ước lượng bởi giải thuật metaheuristic 744.2.6.2 Kết quả thu được từ mô hình SARIMA 764.2.6.3 Nhận xét 774.2.7 Bộ dữ liệu giá tiêu dùng HICP về mặt giáo dục ở Châu Âu từ năm 1997 đến năm 2013 được theo dõi theo từng tháng 77
4.2.7.1 Kết quả thu được từ phương pháp làm trơn hàm mũ Winters ước lượng bởi giải thuật metaheuristic 774.2.7.2 Kết quả thu được từ mô hình SARIMA 804.2.7.3 Nhận xét 804.2.8 Bộ dữ liệu chỉ số lượng sản xuất sữa bò của một nông trại từ năm 1962 đến năm 1975 được theo dõi theo từng tháng 80
4.2.8.1 Kết quả thu được từ phương pháp làm trơn hàm mũ Winters ước lượng bởi giải thuật metaheuristic 814.2.8.2 Kết quả thu được từ mô hình SARIMA 824.2.8.3 Nhận xét 834.2.9 Bộ dữ liệu chỉ số lượng giết mổ lợn tại Victoria từ năm 1980 đến năm 1995 được theo dõi theo từng tháng 84
4.2.9.1 Kết quả thu được từ phương pháp làm trơn hàm mũ Winters ước lượng bởi giải thuật metaheuristic 844.2.9.2 Kết quả thu được từ mô hình SARIMA 864.2.9.3 Nhận xét 874.2.10 Bộ dữ liệu chỉ số lượng người thất nghiệp được thu thập từ cục lao động Iceland từ năm 1980 đến năm 2013 được theo dõi theo từng tháng 87
4.2.10.1 Kết quả thu được từ phương pháp làm trơn hàm mũ Winters ước lượng bởi giải thuật metaheuristic 884.2.10.2 Kết quả thu được từ mô hình SARIMA 904.2.10.3 Nhận xét 91
Trang 204.2.11 Tổng kết kết quả thử nghiệm 91
4.3 Quá trình thử nghiệm trong môi trường trực tuyến 92
hương 5: KẾT LUẬN VÀ KIẾN NGHỊ 94
5.1 Kết quả nghiên cứu 94
5.1.1 So sánh các metaheuristic áp dụng trong phương pháp làm trươn hàm mũ Winters 94
5.1.2 So sánh phương pháp Winters khi áp dụng các metaheuristic với SARIMA 94
5.1.3 So sánh phương pháp Winters khi áp dụng trong môi trường trực tuyến và không trực tuyến 94
5.2 Ưu điểm và nhược điểm 95
PHỤ LỤC C: QUÁ TRÌNH CÀI ĐẶT PHẦN MỀM R PHỤ LỤC D: THƯ VIỆN HỖ TRỢ TRONG R
PHỤ LỤC E: Ý NGHĨ GI O DIỆN THỰC THI CÁC GIẢI THUẬT METAHEURISTIC
PHỤ LỤC F: QUÁ TRÌNH THỰC THI MÔ HÌNH SARIMA TRÊN R PHỤ LỤC G: CÁC LỆNH THỰC THI MÔ HÌNH SARIMA TRÊN R
Trang 21Ư NG 1: T ỂU VẤN ĐỀ
1.1 Lý do chọn đề tài
Trong thời buổi công nghệ hiện đại, bất kỳ một hoạt động kinh doanh nào, một tổ chức nào và một công ty hay doanh nghiệp nào cũng đều cần xử lý trên một khối dữ liệu Và nếu dữ liệu càng lớn thì việc lưu trữ dữ liệu hiệu quả sẽ giúp cho các dữ liệu càng trở nên có giá trị và ý nghĩa hơn Một khi dữ liệu đã được lưu trữ hiệu quả thì việc phân tích theo mỗi mục đích khác nhau, theo mỗi khía cạnh khác nhau sẽ giúp cho người phân tích có được kết quả đáng tin cậy để từ đó các nhà quản lý có thể ra các quyết định cần thiết Một trong những
mục tiêu đó là ph n t h li u theo m t hu i th i gi n (time series data) đối với các dữ liệu được tổ chức dựa vào yếu tố thời gian được gọi là thuật áo li u hu i th i gi n (time series forecasting) Phương pháp làm trơn hàm mũ Winters là một minh chứng cho k thuật này Qua đó, các tính chất của
dữ liệu chuỗi thời gian sẽ được đặc tả thành các hệ số và làm thông số đầu vào cho hàm số làm trơn Việc xây dựng một phương pháp dự báo dữ liệu chuỗi thời gian phải thỏa mãn các tính chất của dữ liệu chuỗi thời gian là rất
phức tạp Như vậy, đối với phương pháp làm trơn hàm mũ Winters thì việc tìm
ra các giá trị cho các tham số và là rất quan trọng Nó không chỉ nói lên tính chính xác và tin cậy của phương pháp so với việc dự báo mà còn so sánh
với các k thuật khác như: ARIMA, SARIMA, …
Việc lựa chọn này dựa trên các tiêu chí như là trạng thái khởi đầu, các kinh nghiệm trước đó, và các nguồn tài nguyên hiện có trong cơ sở lưu trữ… Nếu dữ liệu chuỗi thời gian cần phân tích chỉ có một tính chất đơn thuần (homogeneous) thì việc dự đoán sẽ khá dễ dàng vì chỉ cần dự báo một hệ số tương ứng bằng các
m h nh t h i qu - m h nh trung nh i ng - MA; mô hình ARMA; mô hình ARIMA, hay Neural Network Việc dự đoán sẽ càng phức tạp hơn nếu dữ
liệu chuỗi thời gian có thêm nhiều tính chất khác nhau và việc tìm ra thêm các
hệ số sẽ trở nên phức tạp hơn Nếu tìm kiếm theo phương pháp vét ạn (Brute force) thông thường trên một tập dữ liệu thì sẽ tốn kém nhiều chi phí Thay vào đó, luận văn sẽ ứng dụng các giải thuật metaheuristic bao gồm: giải thuật leo i, tìm kiếm tabu, mô phỏng luy n kim và áp dụng thêm cải tiến như giải thuật
Trang 22mô phỏng luy n kim tái nung nóng để dự đoán các hệ số và của phương
pháp làm trơn hàm mũ Winters
Đó cũng chính là lý do của đề tài luận văn này
1.2 Mục đích nghiên cứu
Nhằm tìm ra giải thuật metaheuristic có thể ước lượng được giá trị của các
hệ số và sao cho tốt nhất để làm thông số đầu vào cho phương pháp làm
trơn hàm mũ Winters Đồng thời, luận văn cũng có những thống kê, đánh giá các
giải thuật đó với nhau để tìm ra giải thuật tốt cho việc ước lượng tham số Và
luận văn cũng so sánh kết quả đó với một phương pháp dự báo khác là mô hình SARIMA Cuối cùng, luận văn kiểm tra phương pháp làm trơn hàm mũ Winters
trong môi trường trực tuyến
1.3 Đối tượng và phạm vi nghiên cứu
Đối tượng chính của luận văn này là phương pháp làm trơn hàm mũ Winters, các giải thuật metaheuristic để ước lượng các hệ số v à gồm: giải thuật leo i, tìm kiếm tabu, mô phỏng luy n kim, giải thuật mô phỏng luy n kim tái nung nóng Một phương pháp dự báo khác phương pháp làm trơn hàm mũ Winters là mô hình SARIMA Ngoài ra, luận văn còn mở rộng nghiên cứu việc áp dụng phương pháp làm trơn hàm mũ Winters trong môi trường trực tuyến
1.4 hương pháp nghiên cứu
- Đối với phương pháp làm trơn hàm mũ Winters: luận văn sẽ hiện thực 4 giải thuật metaheuristic để ước lượng tham số bao gồm: giải thuật leo i, tìm kiếm tabu, mô phỏng luy n kim, giải thuật mô phỏng luy n kim tái nung nóng dựa trên ngôn ngữ C# Đồng thời phương pháp làm trơn hàm mũ Winters còn có 2 loại: mô hình nhân và mô hình c ng Cách đánh giá các phương pháp sẽ dựa vào các sai số MSE và MAPE Ngoài ra, luận văn còn áp dụng việc dự báo bằng phương pháp làm trơn hàm mũ Winters trong môi
trường trực tuyến
- Đối với mô hình SARIMA thì sẽ cần đến phần mềm hỗ trợ R để thực thi và
quan sát, phân tích các biểu đồ tương quan
1.5 Kết quả đạt được
Và sau quá trình thử nghiệm, kết quả của luận văn như sau:
- Tất cả các giải thuật metaheuristic đều xác định các hệ số alpha, beta, gamma là rất tốt và độ chính xác cao
Trang 23- Giải thuật mô phỏng luy n kim tái nung nóng cho ra kết quả tốt nhất trong các giải thuật metaheuristic
- Kết quả dự báo của phương pháp làm trơn hàm mũ Winters theo mô
hình nhân khi áp dụng các giải thuật metaheuristic là rất tốt và tương
đương với mô hình SARIMA - Phương pháp làm trơn hàm mũ Winters còn có thể áp dụng vào việc
dự báo dữ liệu chuỗi thời gian trong m i trư ng tr c tuyến
1.6 Cấu trúc luận văn
Bố cục của luận văn này bao gồm 5 chương sau:
hương 1: Phát biểu vấn đề - Giới thiệu tổng quan về đề tài luận văn, lý
do chọn đề tài, mục đích nghiên cứu, đối tượng, phạm vi và phương pháp nghiên cứu của luận văn
hương 2: Cơ sở lý thuyết về dự báo dữ liệu chuỗi thời gian và
metaheuristic – Trình bày các lý thuyết về dự báo dữ liệu chuỗi thời gian được sử dụng để giải quyết các vấn đề của luận văn Ở chương này giới thiệu những
thước đo dự báo và làm trơn dữ liệu, các phương pháp làm trơn và các giải thuật metaheuristic được sử dụng trong đề tài luận văn Cuối cùng, chương này trình bày cách áp dụng phương pháp làm trơn hàm mũ Winters trong m i trư ng tr c tuyến
hương 3: Hai phương pháp dự báo dữ liệu chuỗi thời gian khác – Mô tả
chi tiết các phương pháp liên quan đến việc dự báo dữ liệu chuỗi thời gian là mô hình SARIMA và mạng thần kinh nhân tạo
hương 4: Hiện thực và thử nghiệm – Chương này trình bày quá trình
hiện thực các giải thuật metaheuristic và thực thi mô hình SARIMA dựa trên các tập dữ liệu mẫu Và cách thức thực thi dự báo bằng phương pháp làm trơn hàm mũ Winters trong m i trư ng tr c tuyến
hương 5: Kết luận và kiến nghị - Chương này trình bày kết luận từ kết
quả nghiên cứu, ưu điểm, nhược điểm, kiến nghị và hướng nghiên cứu tiếp theo
Trang 24hương 2: SỞ LÝ THUYẾT VỀ DỰ BÁO DỮ LIỆU
CHUỖI THỜI GIAN VÀ METAHEURISTIC
Nội dung chương này trình bày các cơ sở lý thuyết về dữ liệu chuỗi thời gian, các thành phần của dữ liệu chuỗi thời gian Đồng thời, chương này cũng đề cặp tới các k thuật phân rã dữ liệu chuỗi thời gian để có thể tiến hành các phương
pháp dự báo Trong đó, áp dụng các giải thuật metaheuristic dựa trên các sai số
quy định cho phép nhằm giúp cho việc ước lượng các thông số và cho
phương pháp d báo làm trơn hàm mũ Winters có kết quả tốt hơn Ngoài ra, luận văn còn giới thiệu cơ chế dự báo bằng phương pháp làm trơn hàm mũ Winters trong môi trường trực tuyến
2.1 Dữ iệu chuỗi thời gian Ti e series
Là những tập hợp dữ liệu được thu thập, lưu trữ, quan sát và đo đạc theo sự tăng dần của thời gian Ví dụ như là các chuỗi dữ liệu thời gian trong lĩnh vực tài chính dự báo số lượng hàng hóa bán được theo từng quý; các chuỗi dữ liệu thời gian d ng trong khoa học dự báo sự gia tăng của công nghệ xử lý tốc độ của CPU và bộ nhớ Hình 2.1 biểu diễn lượng khách hàng đặt chỗ hàng tháng của hãng hàng không Pan Am từ năm 1946 đến năm 1960
Hình 2.1: Ví dụ về dữ iệu chuỗi thời gian
Ký kiệu dữ liệu chuỗi thời gian là {Xt} với t là các số tự nhiên tương ứng với các mốc thời gian quan sát, đo đạc được hay còn gọi là độ trễ Xt là các biến ngẫu nhiên (random variable) rút ra từ một phân bố xác suất (probability distribution) t y theo nhu cầu của người muốn phân tích trên dữ liệu chuỗi thời
Trang 25gian này Từ đó, người phân tích có thể sử dụng 3 m h nh hu i th i gi n (Time series model) để phục vụ cho công việc áo ore sting : m h nh h i quy (Regression model) m h nh tất nh (Deterministic model) m h nh ngẫu nhiên (Stochastic model).[6]
2.2 ác th nh phần của chuỗi thời gian
Trong quá trình quan sát chuỗi thời gian thì dữ liệu chuỗi thời gian bao gồm
4 thành phần chính ảnh hưởng đến giá trị của dữ liệu chuỗi thời gian đó là: t nh u hư ng t nh m t nh hu tr nh và s ất thư ng Tuy nhiên, chỉ quan tâm đến t nh u hư ng và tính mùa vì nó có ý nghĩa rất quan trọng trong việc lựa
chọn phương pháp cũng như là các mô hình dự báo Có 2 cách để xác định
thành phần mùa và thành phần xu hư ng của dữ liệu chuỗi thời gian là:
- Phương pháp đồ thị - Phân tích hệ số tự tương quan
2.2.1 Th nh phần xu hướng Trend
Là biểu diễn cho sự thay đổi dần dần của dữ liệu chuỗi thời gian, mô tả sự biến động của các xu hướng có hướng đi lên hay đi xuống 2 Xu hướng thường là kết quả của những nhân tố dài hạn như mật độ dân số, nhân kh u, công nghệ, xu hướng của người tiêu d ng… Ví dụ, Hình 2.2 biểu diễn tính xu hướng tăng của tập dữ liệu bán hàng(sales)
Hình 2.2: Tính xu hướng của dữ iệu chuỗi thời gian
Trang 26Và có thể được xấp xỉ bằng 1 đường thẳng hoặc đường cong trơn như Hình 2.3
Hình 2.3: Giá trị dự báo được xấp xỉ 2.2.2 Th nh phần a Seasona
Là thành phần thể hiện sự biến đổi lặp lại tại từng thời điểm cố định theo từng năm của dữ liệu chuỗi thời gian [2] Nó có thể diễn ra trong phạm vi 1 quý, 1 tuần, Hình 2.4 diễn tả tính mùa của tập dữ liệu bán hàng theo 1 quý
Hình 2.4: Tính a của dữ iệu chuỗi thời gian
Đối với chuỗi thời gian có thành phần mùa thì giá trị tại những thời điểm cố
định theo từng năm sẽ có sự tương quan lớn với nhau Việc xác định một chuỗi
thời gian có thành phần xu hư ng hay thành phần mùa hay không có thành phần
nào là rất quan trọng trong bài toán dự đoán dữ liệu chuỗi thời gian Nó giúp lựa chọn được mô hình dự đoán ph hợp hay giúp cải tiến mô hình chính xác hơn
Trang 272.2.3 Th nh phần chu tr nh (Cyclical)
Là chuỗi biến đổi dạng sóng lên xuống quanh xu hướng [2] Trong thực tế thành phần này rất khó xác định và thường xem nó như là một phần của thành phần xu hướng Hình 2.5 diễn tả tính chu kỳ của tập dữ liệu bán hàng theo năm Và cách phân rã tính chu kỳ như là một thành phần xu hướng (Hình 2.6)
Hình 2.5: Tính chu tr nh của dữ iệu chuỗi thời gian
Hình 2.6: Tính chu kỳ như ột phần của thành phần xu hướng 2.2.4 Th nh phần bất thường rregu ar
Là thành phần thể hiện sự biến đổi ngẫu nhiên không thể đoán được của dữ liệu chuỗi thời gian [2]
2.3 Mô hình phân rã dữ liệu chuỗi thời gian (Decomposition)
Như đã biết dữ liệu chuỗi thời gian rất phức tạp và bao gồm nhiều thành
phần như m u hư ng, chu kỳ, bất thư ng Do đó, cần có các cơ chế để xác
Trang 28định khi nào thì dữ liệu có tính chất đó Bằng các k thuật phân rã dữ liệu chuỗi thời gian thì có thể xác định được các thành phần trên Một mô hình thể hiện dữ
liệu chuỗi thời gian bao gồm một chuỗi biến Y sẽ chứa các thông phần: xu hư ng T (Trend); chu kỳ C (Cycle); tính mùa S (Seasonal); tính bất thư ng I (Iregular) Và 2 mô hình chính được sử dụng ở đây là mô hình c ng (Additive component model) và mô hình nhân (Multiplicative component model) Thật khó khăn để có thể xác định tính chu kỳ và tính bất thư ng của dữ liệu chuỗi thời gian Có thể giả định rằng chu kỳ C là một phần của thành phần u hư ng T Như vậy, tính chu kỳ C đã được khử nhằm mục đích cô lập t nh u hư ng T và tính mùa S để từ đó có thể sử dụng các k thuật làm trơn để khử tiếp T và S [6]
2.3.1 Mô hình cộng (Additive component model)
Mô hình c ng có công thức phân rã dữ liệu chuỗi thời gian như Công thức
2.1 dưới đây:
Yt = Tt + St + It
Công thức 2.1: Công thức mô hình cộng
Thể hiện dữ liệu chuỗi thời gian biến động dọc theo một dải thời gian Nghĩa là các giá trị đều nằm trong 1 dải có bề rộng là một hằng số và được bao quanh bởi đường xu hướng [5] Hình 2.7 biểu diễn số lượng sản ph m sửa bán ra tính theo đơn vị từng tháng
Hình 2.7: Ví dụ mô hình cộng
Trang 292.3.2 Mô hình nhân (Multiplicative component model)
Mô hình nhân có công thức phân rã dữ liệu chuỗi thời gian như Công thức
2.2 dưới đây:
Yt = Tt St It
Công thức 2.2: Công thức mô hình nhân
Thể hiện dữ liệu chuỗi thời gian biến động tăng dần theo một biên độ Nghĩa là tất cả dữ liệu tăng lên giống với 1 hướng lên Trong các chuỗi thời gian về các lĩnh vực kinh tế thì có sự tăng theo m a và tăng theo một bậc nhất định Vì thế mô hình nhân được áp dụng nhiều hơn mô hình cộng [5] Hình 2.8 biểu diễn doanh số bán hàng tính theo đơn vị từng tháng
Hình 2.8: Ví dụ mô h nh nhân 2.4 ác phương pháp đánh giá sai số của thuật dự báo chuỗi thời gian
Cần mất khá nhiều thời gian cho công việc lựa chọn một phương pháp để dự báo dữ liệu chuỗi thời gian vì nó thường được dựa vào khả năng trực giác, các kinh nghiệm trước đó, cũng như là khả năng cho phép về tài nguyên của máy
tính được sử dụng Sau đó, dữ liệu chuỗi thời gian được chia làm 2 phần: phần kh i tạo initi li tion p rt và phần i m th test p rt Cần d ng các k thuật
dự báo để xác định các tham số xấp xỉ cho tập dữ liệu khởi tạo Tiếp tục sử dụng các k thuật dự báo để dự báo trên tập kiểm thử và xác định các sai số dự báo để
Trang 30đưa ra kết luận về độ chính xác của k thuật dự báo này Một số phương pháp
đánh giá sai số như là: MAPE, MAD, MSD, MPE lần lượt sẽ được giới thiệu như
dưới đây [6]
2.4.1 Sai số phần tră trung b nh tuyệt đối (Mean Absolute Percentage
Error – MAPE)
Phương pháp này được gọi là s i số phần trăm trung nh tu t ối d ng
để đánh giá mức độ chính xác đối với từng khoảng giá trị của dữ liệu chuỗi thời gian và nó được biểu diễn chính xác như là một t lệ phần trăm có công thức như Công thức 2.3 dưới đây:
∑ Công thức 2.3: Sai số phần tră trung b nh tuyêt đối
Trong đó, tính tại từng thời điểm: - : giá trị thực sự
- : giá trị ước lượng cho mỗi giá trị dữ liệu quan sát được - : là số lượng dữ liệu quan sát được trong một khoảng các thời đoạn
2.4.2 Sai số trung bình tuyệt đối (Mean Absolute Deviation – MAD)
Phương pháp này được gọi là s i số trung nh tu t ối d ng để đánh giá
mức độ chính xác trong một đơn vị dữ liệu, mô tả mức độ chấp nhận được của số lượng lỗi trên tập dữ liệu thực sự đó và nó có công thức như Công thức 2.4:
∑
Công thức 2.4: Sai số trung b nh tuyệt đối
Trong đó, tính tại từng thời điểm: - : giá trị thực sự
- : giá trị ước lượng cho mỗi giá trị dữ liệu quan sát được - : là số lượng dữ liệu quan sát được trong một khoảng các thời đoạn
2.4.3 Sai số trung b nh b nh phương Mean Squared Deviation – MSD)
Phương pháp này được gọi là s i số trung nh nh phương là một
phương pháp chính xác hơn MAD d ng để đánh giá mức độ chính xác trong một tập dữ liệu lỗi lớn không bình thường và có công thức như Công thức 2.5:
Trang 31∑
Công thức 2.5: Sai số trung b nh b nh phương
Trong đó, tính tại từng thời điểm: - : giá trị thực sự
- : giá trị ước lượng cho mỗi giá trị dữ liệu quan sát được - : là số lượng dữ liệu quan sát được trong một khoảng các thời đoạn
2.5 hương pháp trơn dữ iệu chuỗi thời gian
Đây là phương pháp nhằm để loại đi những giao động ngắn hạn nhất thời,
hay có thể gọi là loại nhiễu Phương pháp này loại trừ một số yếu tố như là t nh m t nh u hư ng… ra khỏi tập dữ liệu để dự báo Mô hình được áp dụng là
mô hình tất định không có đề cập đến những khía cạnh ngẫu nhiên và có kết hợp
với việc sử dụng thuật ngoại su e tr pol tion te hnique Phương pháp làm
trơn dữ liệu bao gồm các phương pháp như sau:
2.5.1 Trung b nh di động (Arithmetic Moving Average)
Đây là một phương pháp đơn giản, nhanh chóng và ít tốn chi phí Phương pháp trung nh i ng bao gồm việc tính toán trung bình của các giá trị gần
đây nhất sử dụng các giá trị này để dự báo cho giá trị của chuỗi dữ liệu thời gian trong thời đoạn tiếp theo Tuy nhiên, phương pháp trung bình di động chỉ d ng
cho việc dự báo trên các tập dữ liệu có t nh ng, xoay quanh một mức dự báo
nào đó hay còn gọi là tính tự ổn định Các phương pháp số học được sử dụng để phục vụ cho mục đích làm trơn, nhằm cung cấp một số đặc điểm mạnh của tập dữ liệu theo thời gian Công thức đó có dạng như Công thức 2.6 dưới đây:
∑
Công thức 2.6: Trung b nh di động
Khi n nhỏ, thì sẽ xem các dữ liệu diễn ra gần đây là rất quan trọng tức là không có tác động đột xuất) Khi n lớn, gán những trọng số bé hơn cho những dữ liệu diễn ra gần đây Như vậy, khi n càng lớn tập dữ liệu tác dụng làm trơn
càng lớn khi các biến động bất thường xảy ra lớn, đòi hỏi phải làm trơn các dữ liệu gần đây để loại bỏ tính ngẫu nhiên
Trang 32Cải tiến của phương pháp trung bình di động như trên bằng cách gán thêm các trọng số cho các giá trị quan sát được trong các thời đoạn gần đây vì dữ liệu cũ thường kém quan trọng hơn) và tổng của các trọng số này phải bằng 1
Phương pháp này thường được sử dụng khi biểu diễn t nh u hư ng của dữ liệu và được gọi là phương pháp trung nh i ng tr ng số Weighte oving Average - WMA) và được tính theo Công thức 2.7:
2.5.2 hương pháp trơn h trên dữ iệu chuỗi thời gian
Các phương pháp làm trơn là tập hợp các phương pháp, trong đó các giá trị dự báo mới ở một thời đoạn sẽ được ước lượng bằng việc kết hợp giá trị dự báo và giá trị quan sát ở thời đoạn ngay trước đó Đây là một trong những k thuật đơn giản nhưng hiệu quả để sử dụng dự báo đối với dữ liệu chuỗi thời gian có tính chất tuyến tính Gồm có các dạng sau:
2.5.2.1 trơn h giản đơn Single Exponential Smoothing)
Phương pháp này được gọi là phương pháp làm trơn hàm mũ giản ơn chỉ được sử dụng đối với tập dữ liệu không có t nh m và không có t nh u hư ng
Bằng cách liên tục thay đổi các dự báo dựa vào những kinh nghiệm gần đây, lấy trung bình của các dữ liệu quá khứ nhằm giảm tính m a Các giá trị quan sát được trong các thời đoạn trước đó có trọng số sẽ được có giá trị hơn trong các giá trị quan sát được trong thời đoạn gần đây
Trong phương pháp này, giá trị ước lượng mới sẽ được tính theo Công thức 2.8:
At = αYt-1 + (1 – α) At-1
Công thức 2.8: trơn h giản đơn
Trang 33New forecast = α (old observation) + (1- α) old forecast
Trong đó:
o Y: giá trị quan sát o A: giá trị dự báo
quan sát thực tế Có thể sử dụng giá trị thực tế này như là 1 giá trị dự báo hoặc
có thể lấy trung bình của n giá trị quan sát đầu tiên Hệ số làm trơn α có vai trò rất quan trọng, khi hệ số α tiến dần về 1 thì giá trị dự
báo mới sẽ tạo 1 sự điều chỉnh đáng kể khi có một bất kỳ lỗi nào xảy ra ở thời đoạn dự báo trước đó (Hình 2.9)
Hình 2.9: ệ số trơn α ớn
Actual SmoothedForecastActual SmoothedForecast
140240340440540640740840940
MAPE:MAD:MSD:
0.600
36.5 134.522248.4
Sales data Single Exponential Smoothing 6
Dữ liệu Sales (Doanh số) khi áp dụng trơn h giản đơn
alpha = 0.6
Trang 34Và khi hệ số α tiến dần về 0 thì giá trị dự báo mới sẽ rất giống với giá trị dự báo trước đó tương đương như trung nh i ng (Hình 2.10)
Hình 2.10: ệ số trơn α nhỏ
Như vậy, việc lựa chọn hệ số làm trơn α là không thể t y ý, và thực tế là thường hệ số α nằm trong khoảng [0 1… 0 5]
Nếu muốn dự đoán có tính ổn định và làm trơn các biến ngẫu nhiên thì nên sử
dụng hệ số α nhỏ Nếu muốn có 1 sự đáp ứng nhanh khi có một sự thay đổi thì hệ số α nên lớn
At = Yt-1 + (1- )At-1
At-1 = Yt-2 + (1- )At-2
At-2 = Yt-3 + (1- )At-3
… At = Yt-1 + (1- ) Yt-2 + (1- )2Yt-3 + … + 1 - )kYt-k-1
Hệ số tăng theo cấp số nhân nếu dự báo càng phụ thuộc vào nhiều thời đoạn
trước đó Vì thế k thuật này được gọi là k thuật làm trơn theo hàm mũ
Actual SmoothedForecastActual SmoothedForecast
150250350450550650750850
MAPE:MAD:MSD:
0.100
37.0 134.927735.5
Sales data Single Exponential Smoothing 1
Dữ liệu Sales (Doanh số) khi áp dụng trơn h giản đơn
alpha = 0.1
Trang 352.5.2.2 trơn h ép hay phương pháp o t Doub e xponentia
Smoothing or o t’s ethod)
Phương pháp này được gọi là làm trơn theo hàm mũ ép hay còn gọi là phương pháp làm trơn hàm mũ olt và chỉ được sử dụng đối với tập dữ liệu có t nh u hư ng và không có t nh m
Trong một số trường hợp, dữ liệu quan sát được có t nh u hư ng khá rõ
ràng và có những thông tin cho phép các dự đoán của xu hướng theo hướng tăng
(upward movement) trong tương lai và một hàm tuyến tính d ng cho việc dự báo sẽ tốt hơn Việc sử dụng phương pháp làm trơn hàm mũ giản ơn không còn hiệu quả Vì thế, một k thuật cải tiến đã được sử dụng đó là k thuật làm trơn Holt Phương pháp này cho phép phát triển tuyến tính tính chất xu hướng bên trong tập dữ liệu và có thể d ng được cho việc dự báo Khi tại thời đoạn có t nh u hư ng thì sẽ ước tính được độ dốc hiện tại và mức độ yêu cầu hiện tại
Phương pháp này ngoài sử dụng hệ số làm trơn mà còn sử dụng thêm 1 hệ số khác gọi là hệ số làm trơn xu hướng để loại bỏ đi các yếu tố sai số ngẫu nhiên Qua đó, ưu điểm của phương pháp này cung cấp một sự lựa chọn linh
hoạt để lựa chọn các thời đoạn mà tại đó có biên level và t nh u hư ng (trend) được quan tâm xem xét Trong phương pháp này, dữ liệu chuỗi thời gian được tách thành hai thành phần là thành phần biên (level) và thành phần xu hư ng (trend), khi đó giá trị Y tại thời điểm (t+p) sẽ được ước lượng như Công
thức 2.9:
Y’t+p = At + pTt
Công thức 2.9: trơn h bằng phương pháp o t
Trong đó, At và Tt là hai thành phần biên (level) được ước lượng như sau:
o Tt: ước lượng xu hướng tại thời đoạn t
o Y’t+p: giá trị dự báo cho p thời đoạn trong tương lai
Trang 36o : hệ số làm trơn hàm mũ cho biên
o : hệ số làm trơn hàm mũ cho việc ước lượng xu hướng
o p: số thời đoạn dự báo trong tương lai Như vậy, phương pháp làm trơn hàm mũ olt khi khởi động ban đầu thì cần phải xác định giá trị ban đầu cho A và T Có một cách tiếp cận khá thông dụng là gán A1 = Y1, T1 = 0 Và cách tiếp cận thứ hai là lấy trung bình của 5 hoặc 6 giá trị quan sát được ở các thời đoạn trước đó và gán cho A1;T1 sẽ được ước lượng thông qua độ dốc của giá trị quan sát được ở các thời đoạn trước đó (Hình 2.11)
Hình 2.11: hương pháp trơn h o t với 1 v = 0,099 2.5.2.3 hương pháp Winters (Winters Model)
Phương pháp này được gọi là làm trơn theo hàm mũ Winters và được sử dụng đối với tập dữ liệu có cả t nh u hư ng và có t nh m
Như đã biết, khi dữ liệu không có t nh u hư ng và tính mùa thì đơn giản có thể sử dụng phương pháp làm trơn hàm mũ giản ơn Và nếu dữ liệu phức tạp thêm một tí khi có thêm t nh hất u hư ng thì có thể dùng phương pháp làm trơn hàm mũ olt Việc dự báo trên dữ liệu chuỗi thời gian sẽ càng trở nên phức tạp hơn nếu có thêm t nh hất m se son l , phương pháp làm trơn hàm mũ theo m h nh Winters (hay gọi tắt là phương pháp làm trơn hàm mũ Winters) sẽ giúp giải quyết cả 2 tính chất này Phương pháp làm trơn hàm mũ Winters sử dụng thêm 1 hệ số là hệ số làm trơn hàm mũ cho việc ước lượng
t nh m
Trang 37Phương pháp làm trơn hàm mũ Winters sẽ cần đến 3 hệ số như sau:
- : hệ số làm trơn hàm mũ cho biên (level)
- : hệ số làm trơn hàm mũ cho việc ước lượng xu hướng – hệ số này sẽ giúp loại bỏ đi các sai số ngẫu nhiên
- : hệ số làm trơn hàm mũ cho việc ước lượng tính m a
Và để hiện thực phương pháp làm trơn hàm mũ Winters, có 2 phương pháp để
hiện thực là: mô hình có tính nhân và mô hình có tính cộng Các mô hình này sẽ được trình bày như dưới đây
- Mô hình có tính nhân: thành phần mùa được xem là một thành phần nhân
trong dữ liệu và được biểu diễn như Công thức 2.10:
( )
Công thức 2.10: trơn h theo mô hình nhân
- Mô hình có tính cộng: thành phần mùa được xem là một thành phần cộng
trong dữ liệu và được biểu diễn như Công thức 2.11:
( )
Công thức 2.11: trơn h theo h nh cộng
Trong đó: o : giá trị làm trơn mới ước lượng biên hiện tại)
o : giá trị thực sự tại thời đoạn t
o : ước lượng xu hướng tại thời đoạn t
o : ước lượng tính m a tại thời đoạn t
Trang 38o : giá trị dự báo cho p thời đoạn trong tương lai
o α: hệ số làm trơn hàm mũ cho biên
o β: hệ số làm trơn hàm mũ cho việc ước lượng xu hướng
o γ: hệ số làm trơn hàm mũ cho việc ước lượng tính m a o p: số thời đoạn dự báo trong tương lai
o s: độ dài của tính m a Nếu hệ số γ trên bằng 0, nghĩa là thành phần mùa không tồn tại trong dữ liệu, phương pháp này trở thành phương pháp làm trơn hàm mũ olt Nếu hệ số β cũng bằng 0, phương pháp này trở thành phương pháp làm trơn hàm mũ giản ơn Như vậy, đây chính là phương pháp tổng quát nhất trong 3 phương pháp
(giải quyết trọn vẹn cho ba kiểu dữ liệu)
Phương pháp làm trơn hàm mũ Winters khi khởi động ban đầu thì cần phải xác
định giá trị ban đầu cho giá trị biên độ làm trơn , giá trị xu hướng và chỉ số của m a Có một cách tiếp cận khá thông dụng là gán A1 = Y1, u hư ng sẽ được tính là 0 và t nh m sẽ được gán là 1 (Hình 2.12)
Hình 2.12: hương pháp trơn h Winters
Actual SmoothedForecastActual SmoothedForecast
100200300400500600700800900
Gamma (trend):Delta (season):
MAPE:MAD:MSD:
0.4000.1000.300
15.21 63.557636.86Winter's Method Sales Data
Dữ liệu Sales (Doanh số) khi áp dụng phương pháp Winter
Trang 39Ngoài ra, khởi động giá trị ban đầu cho biên độ, mùa và xu hướng có thể xác định từ mùa thứ 2 dựa vào độ dài của mùa s, áp dụng theo tính chất lịch sử của dữ liệu chuỗi thời gian như sau:
Ls = ∑
Ts =
Si = ⁄ i = 1, ,s
Với s là độ dài của mùa
2.6 Giải thuật Metaheurisic
Giải thuật metaheuristic là một quá trình lặp của các heuristic thấp hơn bằng
cách phối hợp thông minh các khái niệm khác nhau để thăm dò và khai thác không gian tìm kiếm bằng cách dùng nhiều chiến lược học để cấu trúc thông tin nhằm tìm ra lời giải cận tối ưu Đây là một phương pháp tìm kiếm không có hệ
thống (non systematic search), tìm kiếm metaheuristic là một cách tìm kiếm
không vét cạn nên khi tìm kiếm trong một hệ thống lớn sẽ giúp tránh được một
phần của hiện tượng bùng nổ trạng thái Khác với tìm kiếm vét cạn là tìm kiếm
có hệ thống và khi gặp một hệ thống lớn thì có thể sẽ không tìm được lời giải do tốn quá nhiều chi phí cũng như là thời gian để tìm ra lời giải Và lời giải mà
metaheuristic tìm được là lời giải cận tối ưu (near optimal).[7]
2.6.1 Giải thuật eo đồi (Hill-climbing)
Hay còn gọi là giải thuật leo i, phương pháp này dựa trên nguyên lý cơ
bản của người leo đồi là khi thấy vị trí tốt hơn thì sẽ tiến đến đó Giải thuật leo đồi có 3 dạng chính:
- Steepest Hill Climbing – SHC: Khi đang đứng ở trạng thái A mà tiến hành vét cạn trong tất cả trạng thái mà A có thể đến được thì sẽ tìm được trạng
thái tốt nhất trong các trạng thái đó Lúc này, chuyển đến trạng thái tốt
nhất đó, đây gọi là k thuật leo i dốc nhất [7] - Random Hill Climbing – RHC: Tuy nhiên, trong SHC nếu vét cạn mà chỉ
tìm được trạng thái có khả năng tốt bằng trạng thái A và không có trạng thái nào tốt hơn A Vì thế tại đây vẫn chấp nhận trạng thái mà có khả năng
tốt là bằng để đi đến [7]
Trang 40- Min-Conflict Hill Climbing – MCHC: Tại một trạng thái A, xác định đƣợc
các trạng thái có ít bị vi phạm các ràng buộc của bài toán nhất Trạng thái này sẽ đƣợc chọn, vì nếu chọn trạng thái này thì sẽ tiến gần đến lời giải hơn, giảm không gian trạng thái xung quanh trạng thái đang đứng và tránh gặp các trạng thái sai, không thỏa bài toán [7]