12 THUỘC TÍNH ĐƯỢC QUAN SÁT
III.1) GIỚI THIỆU CHUNG VỀ DEMO.
1) Thông tin chung:
- Ý tưởng: Xây dựng bài toán dự báo thời tiết tại Thành phố Hồ Chí Minh, dựa trên cơ sở dữ liệu thời tiết của thành phố Hồ Chí Minh trong 100 năm. Dựa trên các tình huống quá khứ, suy diễn cho hiện tại & tương lai. Đối với thông số tương đối như nhiệt độ, sử dụng hàm mờ để dự báo thông số cho những ngày tới.
- Mục tiêu: Dự báo được cơ bản một số yếu tố thời tiết cơ bản trong 3 ngày tới. Bao gồm: nhiệt độ, hướng gió, độ ẩm, tình trạng mây, đặc điểm thời tiết (Mưa: mưa phùn, mưa vừa, mưa diện rộng, mưa rào…; Nắng: nắng ít, nắng nhiều; nắng gắt…; Có sương: sương buổi sáng…).
- Input: Đầu vào là thông số thời tiết từ quá khứ đến thời điểm hiện tại (tính theo ngày). “quá khứ” ở đây là cách thời điểm hiện tại khoảng 1 tháng (30 ngày). Do là Demo, mang tính chất nhỏ, minh họa, nên lượng dữ liệu là 1 tháng, nhưng về mặt ý tưởng phải càng lâu càng tốt. VD: Hôm nay là ngày 3/6/2012, thì chương trình cần đầu vào là số liệu thời tiết từ 3/5/2012 đến ngày 3/6/2012. Các thông số bao gồm (tính trên 1 ngày)
(1) Nhiệt độ lớn nhất tb: có số liệu (2) Nhiệt độ thấp nhất tb: có số liệu (3) Hướng gió: nằm trong các hướng cơ bản (4) Tốc độ gió: có số liệu
(5) Độ ẩm: có số liệu
(6) Tình trạng mây: tính trên 10; (7) Mưa: nằm trong miền giá trị sẵn có (8) Nắng: nằm trong miền giá trị sẵn có (9) Sương: nằm trong miền giá trị sẵn có
- Output: Trả về dự báo thời tiết cho 3 ngày tới, mỗi ngày cũng có 9 thông số như trên, kèm theo các nhận định về thời tiết như sau:
(1)+ Các nhận định về nhiệt độ: nhiệt độ cao, thấp.. ảnh hưởng đến sức khỏe, vụ mùa, công việc, giao thông…
(2)+ Các nhận định về gió: Hướng gió có lợi, có hại.. Tốc độ gió yếu, mạnh, giông… những ảnh hưởng.
(3)+ Độ ẩm: cao thấp… ảnh hưởng (4) Đặc điểm thời tiết:
+ Mưa & nắng: + Tình trạng mây:
+ Các đặc tính riêng của mùa, thời điểm dự báo…
- Giải thuật: sử dụng suy đoán dựa trên tình huống đã xảy ra trong quá khứ, kết hợp với logic mờ để đưa ra dự báo thời tiết.
o Suy đoán dựa trên tình huống đã xảy ra tức là dựa trên các tình huống đã xảy ra, rút ra một số luật, phân tích & ứng dụng cho dự báo.
o Sử dụng logic mờ là sử dụng hàm mờ, xây dựng hàm mờ trên thông số có sẵn từ quá khứ tới hiện tại, từ đó đưa ra số liệu cho dự báo. Tức là đưa ra thông số dự báo, trên mức độ thuộc về tập mờ này của thông số này trên cơ sở số liệu của thời điểm hiện tại.
Từ số liệu có được nhờ hàm mờ kết hợp với luật đã có hoặc vừa mới xây dựng được, đánh giá & đưa ra dự báo.
2) Tập sự kiện:
- A={Ngày là ngày trong năm có giá trị từ “1/1” đến “31/12” } - B={Mùa là mùa “xuân”, “Hạ”, “Thu”, “Đông”}
- C={Tháng là tháng trong năm có giá trị từ “1” đến “12”} - D={Mùa đặc trưng là “mùa khô”, “mùa mưa”, “giao mùa”} - E={Nhiệt độ trung bình là thang đo có giá trị từ 0 50}
- F={Tính chất mưa của ngày gồm có “có mưa”, “không mưa”, “mưa ít”} - G={Hướng gió bao gồm “Đông Bắc”, “Tây Nam”}
- H={Độ ẩm là “cao”, “thấp”, “trung bình”}
- I={Tình trạng mây là “nhiều mây”, “ít mây”, “vừa”} - J={áp suất khí quyển}
3) Xây dựng tập luật dẫn dựa trên tình huống:
• Luật dẫn 1:
Nếu Ngày từ 6/5 đến 7/8 thì ngày thuộc mùa hạ
Ngày từ 8/8 đến 7/11 thì ngày thuộc mùa thu Ngày từ 8/11 đến 4/2 thì ngày thuộc mùa đông
Ngày từ 5/2 đến 5/5 thì Ngày thuộc mùa xuân.
R1: A={“6/5”, “7/5”…, “7/8”} B={“Hạ”} A={“8/8”, “9/8”…, “7/11”} B={“Thu”} A={“8/11”, “9/11”…, “4/2”} B={“Đông”} A={“5/2”, “6/2”…, “5/5”} B={“Xuân”} • Luật dẫn 2:
Nếu tháng thuộc (tháng 5 ~ tháng 10) thì tháng thuộc mùa mưa
Nếu tháng không thuộc (tháng 5 ~ tháng 10)
Và tháng thuộc tháng 4 hoặc tháng 11 thì tháng thuộc giao mùa
Còn lại thì tháng thuộc mùa khô
R2: C={5;6;7;8;9;10} D={“Mưa”}
C={1;2;3;12} D={“Khô”} • Luật dẫn 3:
Nếu Ngày thuộc mùa hạ thì ngày có nhiệt độ (25°C ~ 38°C) Nếu Ngày thuộc mùa thu thì ngày có nhiệt độ (23°C ~ 35°C) Nếu Ngày thuộc mùa đông thì ngày có nhiệt độ (20°C ~ 32°C) Nếu Ngày thuộc mùa Xuân thì ngày có nhiệt độ (25°C ~ 37°C)
R3: B={“Hạ”} E={“25oC ~ 38oC”}
B={“Thu”} E={“23oC ~ 35oC”}
B={“Đông”} E={“20oC ~ 32oC”}
B={“Xuân”} E={“25oC ~ 37oC”}
• Luật dẫn 4:
Nếu Tháng là mùa mưa thì ngày có mưa
Tháng là mùa khô thì ngày không mưa
Tháng là giao mùa thì ngày ít mưa
R4: D={“Mưa”} F={“Mưa”}
D={“Khô”} F={“Không mưa”}
D={“Giao mùa”} F={“Ít mưa”}
• Luật dẫn 5:
Nếu Tháng thuộc (11 ~ 4) thì có gió Đông Bắc
Nếu Tháng thuộc (5 ~10) thì có gió Tây Nam
R5: C={11;12;1;2;3;4} G={“Đông Bắc”}
C={5;6;7;8;9;10} G={“Tây Nam”}
• Luật dẫn 6:
Nếu Mùa là mùa khô thì Độ ẩm thấp (<40%)
Nếu Mùa là mùa mưa thì độ ẩm cao (>80%)
Nếu Mùa là giao mùa thì Độ ẩm vừa
R6: D={“Khô”} H={“Thấp”}
D={“Mưa”} H={“Cao”}
D={“Giao mùa”} H={“Vừa”}
• Luật dẫn 7:
Nếu nhiệt độ cao thì áp suất cao
Nếu Nhiệt độ thấp thì áp suất thấp
R7: E={“cao: >=30C”} J={“Cao”}
E={“thấp: <30C”} J={“Thấp”} • Luật dẫn 8:
Nếu Mùa mưa thì nhiều mây (7 ~10/10)
Mùa khô thì ít mây (0~4/10)
Giao mùa thì mây vừa (5 ~6/10)
R8: D={“Mưa”} I={“Nhiều mây: 7~10/10”}
D={“Khô”} I={“Ít mây: 0~4/10”}
D={“giao mùa”} I={“Mây vừa: 5~6/10”} 4) Cài đặt hệ Cơ sở tri thức với PROLOG & các hàm Logic Mờ:
4.1) Mô tả sự kiện:
- Sự kiện A: Ngày trong năm - hệ thống hỗ trợ (sử dụng Component của Microsoft) - Sự kiện B: Mùa
Xuân(B); Hạ(B); Thu(B); Đông(B); - Sự kiện C: Tháng
- Sự kiện D: Mùa đặc trưng
Khô(D); Mưa(D); Giao mùa(D); - Sự kiện E: Nhiệt độ
25oC ~ 38oC (E); 23oC ~ 35oC (E); 20oC ~ 32oC (E); 25oC ~ 37oC (E); - Sự kiện F: Mưa
Mưa(F); Không mưa(F); Ít mưa(F); - Sự kiện G: Gió
Đông Bắc(G); Tây Nam(G); - Sự kiện H: Độ ẩm
Cao(H); Vừa(H); Thấp(H); - Sự kiện I: Mây
Nhiều(I); Vừa(I); Ít(I); - Sự kiện J: Áp suất Cao(J); Vừa(J); Thấp(J); 4.2) Mô tả các luật: - R1(A={“6/5”, “7/5”…, “7/8”}, B={“Hạ”}); R1(A={“8/8”, “9/8”…, “7/11”}, B={“Thu”}); R1(A={“8/11”, “9/11”…, “4/2”},B={“Đông”}); R1(A={“5/2”, “6/2”…, “5/5”},B={“Xuân”}); - R2(C={5;6;7;8;9;10} ,D={“Mưa”}); R2(C={4;11} ,D={“Giao mùa”}); R2(C={1;2;3;12},D={“Khô”}); - R3(B={“Hạ”},E={“25oC ~ 38oC”}); R3(B={“Thu”},E={“23oC ~ 35oC”}); R3(B={“Đông”},E={“20oC ~ 32oC”}); R3(B={“Xuân”},E={“25oC ~ 37oC”}); - R4(D={“Mưa”},F={“Mưa”}); R4(D={“Khô”},F={“Không mưa”}); R4(D={“Giao mùa”},F={“Ít mưa”});
R5(C={5;6;7;8;9;10},G={“Tây Nam”}); - R6(D={“Khô”},H={“Thấp”}); R6(D={“Mưa”},H={“Cao”}); R6(D={“Giao mùa”},H={“Vừa”}); - R7(E={“cao: >=30oC”},J={“Cao”}); R7(E={“thấp: <30oC”},J={“Thấp”}); - R8(D={“Mưa”};I={“Nhiều mây: 7~10/10”}); R8(D={“Khô”};I={“Ít mây: 0~4/10”});
R8(D={“giao mùa”},I={“Mây vừa: 5~6/10”});
4.3) Các hàm logic mờ: Hàm logic mờ cho tập Tmin & Tmax & tinh trạng mây - Ta xây dựng hàm mờ đo lường độ tương đồng của nhiệt độ
Trong đó
Giá trị nhiệt độ 1 ngày sau kể từ hiện tại:
Giá trị nhiệt độ 2ngày sau kể từ hiện tại:
Giá trị nhiệt độ 3 ngày sau kể từ hiện tại:
- Tương tự cho hàm thành viên của tập mờ Tmax & tình trạng mây. 5) Xây dựng cơ sở dữ liệu:
- Bảng dữ liệu về mùa:
- Bảng dữ liệu về mùa đặc trưng
- Bảng dữ liệu về nhiệt độ
- Bảng dữ liệu về tính chất mưa
- Bảng dữ liệu về Độ ẩm
- Bảng dữ liệu về tình trạng mây
- Bảng dữ liệu về áp suất
III.2) TÍNH NĂNG & CÁCH SỬ DỤNG:
1) Tính năng chính của Demo:
- Tính năng dự báo thời tiết tại Thành phố Hồ Chí Minh trong 3 ngày tới, kể từ ngày hiện tại - Dự báo & đưa ra một số lời khuyên về thời tiết & sức khỏe
2) Cách sử dụng:
- Nhập liệu: Dữ liệu thời tiết 30 ngày cho đến ngày hiện tại - Nếu dữ liệu đầy đủ, thì
o chọn dự báo thời tiết cho 1, 2, 3 ngày tới. o Xem lời khuyên về sức khỏe & thời tiết.
III.3) HIỆU QUẢ & HẠN CHẾ
1) Hiệu quả sử dụng:
- Dự báo mức tương đối về thời tiết trung bình ở Thành phố Hồ Chí Minh trong thời gian ngắn. - Có thể dùng tham khảo, sắp xếp công việc hợp lý hơn.
2) Hạn chế:
- Chỉ xây dựng với 1 điểm đo dữ liệu thời tiết, độ chính xác càng cao nếu có càng nhiều trạm đo các thông số thời tiết.
- Các luật xây dựng chưa chính xác & chưa phù hợp với biến đổi khí hậu & hiện tượng thời tiết bất thường, chưa cập nhật & tự đưa vào tập luật các luật mới phát sinh.
- Chưa xây dựng dự báo trong thời gian dài, chưa kiểm chứng độ tin cậy & chính xác của demo.
- Hàm logic mờ chưa được tối ưu, còn hạn chế.
III.4) HƯỚNG KHẮC PHỤC & PHÁT TRIỂN – Ý TƯỞNG PHÁT TRIỂN