Tải bản đầy đủ (.docx) (25 trang)

Bài tập lớn môn Hệ chuyên gia Xây dựng chương trình Dự báo thời tiết sử dụng Cây quyết định và thuật toán ID3

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (480.67 KB, 25 trang )

Mục lục

1


CHƯƠNG 1: TỔNG QUAN VỀ HỆ CHUYÊN GIA
1.

Hệ chuyên gia là gì?
- Theo E. Feigenbaum : Hệ chuyên gia (Expert System) là một chương
trình máy tính thơng minh sử dụng tri thức (knowledge) và các thủ tục
suy luận (inference procedures) để giải những bài tốn tương đối khó
-

khăn địi hỏi những chuyên gia mới giải được.
Hệ chuyên gia là một trong những ứng dụng của Trí tuệ nhân tạo.
Một Hệ chuyên gia gồm 3 thành phần chính: cơ sở tri thức (knowledge
base), máy suy diễn hay môtơ suy diễn (inference engine) và hệ thống

-

giao tiếp với người sử dụng (user interface).
Người sử dụng (user) cung cấp sự kiện (facts) là những gì đã biết, đã có
thật hay những thơng tin có ích cho hệ chun gia, và nhận được những

-

câu trả lời là những lời khuyên hay những gợi ý đúng đắn (expertise).
Hoạt động của một hệ chuyên gia dựa trên tri thức được minh họa như
sau :


-

Mỗi hệ chuyên gia chỉ đặc trưng cho một lĩnh vực vấn đề (problem
domain) nào đó, như y học, tài chính, khoa học hay công nghệ, v.v..., mà

-

không phải cho bất cứ một lĩnh vực vấn đề nào.
Tri thức chuyên gia để giải quyết một vấn đề đặc trưng được gọi là lĩnh

-

vực tri thức (knowledge domain).
Ví dụ: Hệ chuyên gia về lĩnh vực Y học để phát hiện các căn bệnh lây
nhiễm sẽ có nhiều tri thức về một số triệu chứng lây bệnh, lĩnh vực tri
thức y học bao gồm các căn bệnh, triệu chứng và chữa trị.

2.

Đặc trưng và ưu điểm của hệ chuyên gia
2.1.
4 đặc trưng của Hệ chuyên gia

2


-

Hiệu quả cao (high performance). Khả năng trả lời với mức độ tinh thông


-

bằng hoặc cao hơn so với chuyên gia (người) trong cùng lĩnh vực.
Thời gian trả lời thoả đáng (adequate response time). Thời gian trả lời
hợp lý, bằng hoặc nhanh hơn so với chuyên gia (người) để đi đến cùng
một quyết định. Hệ chuyên gia là một hệ thống thời gian thực (real time

-

system).
Độ tin cậy cao (good reliability). Không thể xảy ra sự cố hoặc giảm sút

-

độ tin cậy khi sử dụng.
Dễ hiểu (understandable). Hệ chuyên gia giải thích các bước suy luận
một cách dễ hiểu và nhất qn, khơng giống như cách trả lời bí ẩn của
các hộp đen (black box).

-

Ưu điểm của Hệ chuyên gia
Phổ cập (increased availability). Là sản phẩm chuyên gia, được phát triển

-

không ngừng với hiệu quả sử dụng không thể phủ nhận.
Giảm giá thành (reduced cost).
Giảm rủi ro (reduced dangers). Giúp con người tránh được trong các môi


-

trường rủi ro, nguy hiểm.
Tính thường trực (Permanance). Bất kể lúc nào cũng có thể khai thác sử

-

dụng, trong khi con người có thể mệt mỏi, nghỉ ngơi hay vắng mặt.
Đa lĩnh vực (multiple expertise). chuyên gia về nhiều lĩnh vực khác nhau

-

và được khai thác đồng thời bất kể thời gian sử dụng.
Độ tin cậy (increased relialility). Luôn đảm bảo độ tin cậy khi khai thác.
Khả năng giảng giải (explanation). Câu trả lời với mức độ tinh thông

-

được giảng giải rõ ràng chi tiết, dễ hiểu.
Khả năng trả lời (fast reponse). Trả lời theo thời gian thực, khách quan.
Tính ổn định, suy luận có lý và đầy đủ mọi lúc mọi nơi (steady, une

-

motional, and complete response at all times).
Trợ giúp thông minh như một người hướng dẫn (intelligent -tutor).
Có thể truy cập như là một cơ sở dữ liệu thông minh (intelligent

2.2.


database).
Các lĩnh vực ứng dụng của hệ chuyên gia
Cho đến nay, hàng trăm hệ chuyên gia đã được xây dựng và đã được báo
2.3.
-

cáo thường xuyên trong các tạp chí, sách, báo và hội thảo khoa học.
Ngồi ra cịn các hệ chuyên gia được sử dụng trong các công ty, các tổ
3


chức qn sự mà khơng được cơng bố vì lý do bảo mật. Bảng dưới đây
liệt kê một số lĩnh vực ứng dụng diện rộng của các hệ chuyên gia.
Lĩnh vực
Cấu hình
(Configuration)
Chẩn đốn
(Diagnosis)
Truyền đạt
(Instruction)
Giải thích
(Interpretation)
Kiểm tra
(Monitoring)
Lập kế hoạch
(Planning)
Dự đốn (Prognosis)
Chữa trị (Remedy)
Điều khiển (Control)


Ứng dụng diện rộng
Tập hợp thích đáng những thành phần của một hệ thống
theo cách riêng
Lập luận dựa trên những chứng cứ quan sát được
Dạy học kiểu thong minh sao cho sinh viên có thể hỏi vì
sao? (why?), như thế nào? (how?) và cái gì nếu? (what if?)
giống như một người thầy giáo.
Giải thích những dữ liệu thu nhận được
So sánh dữ liệu thu lượm được với dữ liệu chuyên môn để
đánh giá hiệu quả
Lập kế hoạch sản xuất theo yêu cầu
Dự đoán hậu quả từ một tình huống xảy ra
Chỉ định cách thụ lý một vấn đề
Điều khiển một q trình, địi hỏi diễn giải, chẩn đoán,
kiểm tra, lập kế hoạch, dự đoán và chữa trị

CHƯƠNG 2: TÌM HIỂU VỀ CÂY QUYẾT ĐỊNH
1.

Các định nghĩa
- Trong lý thuyết quyết định (chẳng hạn quản lý rủi ro), một cây quyết định
(tiếng Anh: decision tree) là một đồ thị của các quyết định và các hậu quả
có thể của nó (bao gồm rủi ro và hao phí tài nguyên). Cây quyết định
được sử dụng để xây dựng một kế hoạch nhằm đạt được mục tiêu mong
muốn. Các cây quyết định được dùng để hỗ trợ quá trình ra quyết định.
-

Cây quyết định là một dạng đặc biệt của cấu trúc cây.
Trong lĩnh vực máy học, cây quyết định là một kiểu mơ hình dự báo
(predictive model), nghĩa là một ánh xạ từ các quan sát về một sự

vật/hiện tượng tới các kết luận về giá trị mục tiêu của sự vật/hiện tượng.
Mỗi một nút trong (internal node) tương ứng với một biến; đường nối
giữa nó với nút con của nó thể hiện một giá trị cụ thể cho biến đó. Mỗi
4


nút lá đại diện cho giá trị dự đoán của biến mục tiêu, cho trước các giá trị
của các biến được biểu diễn bởi đường đi từ nút gốc tới nút lá đó. Kỹ
thuật học máy dùng trong cây quyết định được gọi là học bằng cây quyết
định, hay chỉ gọi với cái tên ngắn gọn là cây quyết định.
2.

Thuật toán ID3
- Thuật toán ID3 được phát biểu bởi Quinlan (trường đại học Syney,
Australia) và được công bố vào cuối thập niên 70 của thế kỷ 20. Sau đó,
thuật tốn ID3 được giới thiệu và trình bày trong mục Induction on
decision trees, machine learning năm 1986. ID3 được xem như là một cải
tiến của CLS với khả năng lựa chọn thuộc tính tốt nhất để tiếp tục triển
khai cây tại mỗi bước. ID3 xây dựng cây quyết định từ trên- xuống (top

-

-down) [5].
2.1.
Entropy đo tính thuần nhất của tập dữ liệu
Được dùng để đo tính thuần nhất của một tập dữ liệu. Entropy của một
tập S được tính theo cơng thức:

Entropy ( S ) = − P + log 2 ( P + ) − P − log 2 ( P − )
Trong trường hợp các mẫu dữ liệu có hai thuộc tính phân

lớp “yes” (+) và no (-). Kí hiệu P + là để chỉ tỷ lẹ các mẫu có
giá trị của thuộc tính quyết định là “yes”, và P - là tỷ lệ các
mẫu có giá trị của thuộc tính quyết định là “no” trong tập S.
Trường hợp tổng quát, dối với tập con S có n phân lớp thì
ta có cơng thức sau:
n

Entropy ( S ) = ∑ (− Pi log 2 ( Pi ))
i =1

Trong đó Pi là tỷ lệ các mẫu thuộc lớp I trên tập S các mẫu
kiểm tra.
Các trường hợp đặc biệt:
5


TH1: Nếu tất cả các mẫu thành viên trong tập S đều thuộc
cùng một lớp thì Entropy(S)=0.
TH2: Nếu trong tập S có số mẫu phân bố đều nhau vào các
lớp thì Entropy(S)=1.
Các trường hợp cịn lại thì: 0Độ lợi thơng tin
Độ lợi thông tin (tên Tiếng Anh: Information Gain – viết tắt: Gain) là đại
2.2.
-

lượng dùng để đo tính hiệu quả cảu một thuộc tính được lựa chọn cho
việc phân lớp. Đại lượng này được thông qua hai giá trị là Information và
-


Entropy.
Cho tập dữ liệu S gồm có n thuộc tính Ai (i=1, 2 … n)
Giá trị Information của thuốc tính A i kí hiệu là Information(Ai) được xác
định bởi công thức:
n

Information( Ai ) = −∑ log 2 ( Pi ) = Entropy (S )
i =1

Giá trị Gain của thuộc tính A trong tập S kí hiệu là Gain(S, A) và được
tính theo cơng thức sau:
Gain( S , A) = Information( A) − Entropy ( A) = Entropy (S ) −



v∉value ( A )

Sv
S

Entropy ( Sv )

Trong đó:
• S là tập hợp ban đầu với thuộc tính A. Các giá trị của v tương ứng




là các giá trị của thuộc tính A.
Sv bằng tập hợp con của tập S mà có thuộc tính A mang giá trị v.

|Sv| là số phần tử của tập Sv.
|S| là số phần từ của tập S.
Trong quá trính xây dựng cây quyết định theo thuật toán ID3 tại

mỗi bước triển khai cây, thuộc tính được chọn để triển khai là thuốc tính
có giá trị Gain lớn nhất.
2.3.
Ví dụ minh họa

6


Chúng ta hãy xét bài toán phân loại xem ta có đi chơi tenis ứng
với thời tiết nào đó khơng. Giải thuật ID3 sẽ học cây quyết định từ tập
hợp các ví dụ sau:
Quang

Ngày

Nhi

Độ ảm

Gió

Chơi Tennis

Dl

cảnh

Nắng

ệt
Nón

Cao

Nhẹ

Khơng

D2

Nắng

Nón
g

Cao

Mạnh

Khơng

D3

Âm u

Nón
g


Cao

Nhẹ



D4

Mưa

Ấm
g

Cao

Nhẹ



D5

Mưa

Mát
áp

Trung bình

Nhẹ




D6

Mưa

Mát

Trung bình

Mạnh

Khơng

D7

Âm u

Mát

Trung bình

Mạnh



D8

Nắng


Ấm

Cao

Nhẹ

Khơng

D9

Nắng

Mát
áp

Trung bình

Nhẹ



Dl0

Mưa

Ấm

Trung bình


Nhẹ



Dl1

Nắng

Ấm
áp

Trung bình

Mạnh



Dl2

Âm u

Ấm
áp

Cao

Mạnh




Dl3

Âm u

Nón
áp

Trung bình

Nhẹ



Dl4

Mưa

Ấm
g

Cao

Mạnh

Khơng

áp

Tập dữ liệu này bao gồm 14 ví dụ. Mỗi ví dụ biểu diễn cho tình
trạng thời tiết gồm các thuộc tính quang cảnh, nhiệt độ, độ ẩm và gió; và

đều có một thuộc tính phân loại ‘chơi Tennis’(có, khơng). ‘Khơng’ nghĩa
là khơng đi chơi tennis ứng với thời tiết đó, ‘Có’ nghĩa là chơi tennis ứng
với thời tiết đó. Giá trị phân loại ở đây chỉ có hai loại (có, khơng), hay
cịn ta nói phân loại của tập ví dụ của khái niệm này thành hai lớp
(classes). Thuộc tính ‘Chơi tennis’ cịn được gọi là thuộc tính đích (target
attribute).
Mỗi thuộc tính đều có một tập các giá trị hữu hạn. Thuộc tính
quang cảnh có ba giá trị: âm u , mưa , nắng; nhiệt độ có ba giá trị: nóng,
mát, ấm áp; độ ẩm có hai giá trị: cao, T và gió có hai giá trị: mạnh, nhẹ.
Các giá trị này chính là ký hiệu (symbol) dùng để biểu diễn bài toán.
7


Từ tập dữ liệu rèn luyện này, giải thuật ID3 sẽ học một cây quyết
định có khả năng phân loại đúng đắn các ví dụ trong tập này, đồng thời
hy vọng trong tương lai, nó cũng sẽ phân loại đúng các ví dụ khơng nằm
trong tập này. Một cây quyết định ví dụ mà giải thuật ID3 có thể quy nạp
được là:

Các nút trong cây quyết định biểu diễn cho một sự kiểm tra trên
một thuộc tính nào đó, mỗi giá trị có thể có của thuộc tính đó tương ứng
với một nhánh của cây. Các nút lá thể hiện sự phân loại của các ví dụ
thuộc nhánh đó, hay chính là giá trị của thuộc tính phân loại.
Sau khi giải thuật đã quy nạp được cây quyết định, thì cây này sẽ
được sử dụng để phân loại tất cả các ví dụ hay thể hiện (instance) trong
tương lai. Và cây quyết định sẽ không thay đổi cho đến khi ta cho thực
hiện lại giải thuật ID3 trên một tập dữ liệu rèn luyện khác.
Ứng với một tập dữ liệu rèn luyện sẽ có nhiều cây quyết định có
thể phân loại đúng tất cả các ví dụ trong tập dữ liệu rèn luyện. Kích cỡ
của các cây quyết định khác nhau tùy thuộc vào thứ tự của các kiểm tra

trên thuộc tính.
Ta có: S=[9+, 5-]
Entropy(S) = Entropy(9+, 5-)
8


= - P+log2(P+) – P-log2(P-)
= - (9/14)log2(9/14) – (5/14)log2(5/14)
= 0.940
►TậpGiáTrị(Quang cảnh)={Nắng, Âm u, Mưa}
Snắng = [2+, 3-]
Sâm u = [4+, 0-]
Smưa = [3+, 2-]



Gain( S , QuangCanh) = Entropy ( S ) −

v∈{nang , amu , mua}

Entropy ( S ) −
=

Sv
Entropy ( Sv )
S

5
4
5

Entropy ( S nang ) − Entropy ( S amu ) − Entropy ( S mua )
14
14
14

Trong đó:

Entropy ( S ) = 0.940

2
2 3
3
Entropy ( S nang ) = − log 2 − log 2 = 0.5288 + 0.4422 = 0.971
5
5 5
5
4
4 0
0
Entropy ( S amu ) = − log 2 − log 2 = 0
4
4 4
4

3
3 2
2
Entropy ( S mua ) = − log 2 − log 2 = 0.4422 + 0.5288 = 0.971
5
5 5

5

Vậy:
Gain( S , QuangCanh) = 0.940 −

5
4
5
0.971 − 0 − 0.971 = 0.246
14
14
14

►TậpGiáTrị(Nhiệt độ) ={Nóng, Ấm áp, Mát}
Snong=[2+, 2-]
Samap=[4+, 2-]
Smat=[3+, 1-]
Gain( S , NhietDo) = Entropy ( S ) −



v∈{nong , amap , mat }

Entropy ( S ) −
=

Sv
S

Entropy ( S v )


4
6
4
Entropy ( S nong ) − Entropy ( S amap ) − Entropy ( S mat )
14
14
14

Trong đó:

Entropy ( S ) = 0.940

2
2 2
2
Entropy (S nong ) = − log 2 − log 2 = 0.5 + 0.5 = 1
4
4 4
4
4
4 2
2
Entropy ( S amap ) = − log 2 − log 2 = 0.3896 + 0.5282 = 0.9178
6
6 6
6

9



3
3 1
1
Entropy ( S mat ) = − log 2 − log 2 = 0.3112781 + 0.5 = 0.81128
4
4 4
4

Vậy:
Gain( S , NhietDo) = 0.940 −

4
6
4
1 − 0.9178 − 0.81128 = 0.029
14 14
14

► TậpGiáTrị(Độ ẩm) = {Cao, Trung bình}
Scao = [3+, 4-]
Strungbinh = [6+,1-]



Gain( S , DoAm) = Entropy (S ) −

v∈{cao ,trungbinh}

Entropy ( S ) −

=

Sv
Entropy (S v )
S

7
7
Entropy ( S cao ) − Entropy ( S trungbinh )
14
14

Trong đó:

Entropy ( S ) = 0.940
3
3 4
4
Entropy ( Scao ) = − log 2 − log 2 = 0.5238 + 0.4613 = 0.9851
7
7 7
7

6
6 1
1
Entropy ( Strungbinh ) = − log 2 − log 2 = 0.1966 + 0.4010 = 0.5976
7
7 7
7


Vậy:
Gain( S , doam) = 0.940 −

7
7
0.9851 − 0.5976 = 0.151
14
14

► TậpGiáTrị(Gió) ={Nhẹ, Mạnh}
Snhe = [6+, 2-]
Smanh = [3+, 3-]
Gain( S , Gio) = Entropy ( S ) −



v∈{nhe , manh }

Entropy ( S ) −
=

Sv
S

Entropy ( Sv )

8
6
Entropy (S nhe ) − Entropy ( S manh )

14
14

Trong đó:

Entropy ( S ) = 0.940

6
6 2
2
Entropy ( S nhe ) = − log 2 − log 2 = 0.3112 + 0.5 = 0.8112
8
8 8
8
3
3 3
3
Entropy ( S manh ) = − log 2 − log 2 = 0.5 + 0.5 = 1
6
6 6
6

Vậy:
Gain( S , Gio) = 0.940 −

8
6
0.811 − 1 = 0.048
14
14

10


Ta thu được kết quả:
Gain(S, Quang cảnh) = 0.246
Gain(S, Nhiệt độ) = 0.029
Gain(S, Độ ẩm) = 0.151
Gain(S, Gió) = 0.048
Ta thấy giá trị Gain(S, QuangCanh) lớn nhất nên Quang cảnh
được chọn làm nút gốc.

Sau khi lập được cấp đầu tiên của cây quyết định ta lại
xét nhánh Nắng Tiếp tục lấy Entropy và Gain cho nhánh Nắng ta
được hiệu suất như sau:
Gain(SNắng, Độ ẩm) = 0.970
Gain(SNắng, Nhiệt độ) = 0.570
Gain(SNắng, Gió) = 0.019
Như vậy thuộc tính độ ẩm có hiệu suất phân loại cao nhất
trong nhánh Nắng à ta chọn thuộc tính Độ ẩm làm nút kế tiếp ….
Tương tự như vậy đối với nhánh còn lại của cây quyết
định ta được cây quyết định hoàn chỉnh như sau:

11


Kết luận:Với việc tính tốn giá trị Gain để lựa chọn thuộc tính tối
ưu cho việc triển khai cây, thuật toán ID3 được xem là một cải tiến của
thuật toán CLS. Tuy nhiên thuật tốn ID3 khơng có khả năng xử lý đối
với những dữ liệu có chứa thuộc tính số - thuộc tính liên tục (numeric
attribute) và khó khăn trong việc xử lý các dữ liệu thiếu (missing data)và

dữ liệu nhiễu (noisy data).

CHƯƠNG 3: XÂY DỰNG HỆ CHUYÊN GIA DỰ BÁO THỜI
TIẾT SỬ DỤNG CÂY QUYẾT ĐỊNH
1.
-

Phân tích bài tốn
u cầu đặt ra: Với bộ dữ liệu phân tích các yếu tố liên quan từ bộ phân
phân tích(có thể là trung tâm dự báo khí tượng thủy văn …),thơng qua
cây quyết định và thuật toán đã lựa chọn cfaan xây dựng được một tập

-

các luật để đưa ra kết quả dự báo thời tiết có xác suất đúng cao nhất.
Trình bày bài tốn:
+ Bài tốn cần xây dựng là một hệ chuyên gia nhằm dự đoán nhằm dự
đoán một số kiểu thời tiết thông thường như:Mưa ,nắng,mát mẻ,lạnh….
Với mong muốn có thể dự báo cho người dung biết trước tình hình thời
tiết sẽ có thể xảy ra để chủ động hơn với các hoạt động và dự định sẽ làm
12


trong ngày. Người thực hiện sẽ xây dựng một giao diện đơn giản,dễ sử
dụng để tất cả mội người đều có thể sủ dụng.Người dung chỉ cần nhập dữ
liệu mình nhận biết được vào các trường yêu cầu ví dụ độ ẩm,nhiệt độ,độ
ẩm,có mây hay khơng…hệ thống sẽ tự đơng đưa ra dự đoán cho kiểu thời
tiết trong ngày.
+ Để làm được điều này ,hệ thống cần có một cơ sỏ tri thức đầy đủ về các
kiểu thời tiết,tương ứng với đó thì hệ thống cần có một bộ máy suy diễn

để có thể sử dụng cơ sở tri thức xây dựng sẵn trong bộ nhớ,liên kết chúng
lại với nhau để có thể suy luận ra kết quả cuối cùng.
+ Với việc sử dụng cây quyết định,người chuyên gia thiết kế cơ sở tri
thức có thể đưa ra một tập luật đầy đủ và chính xác nhất mà khó có thể
2.

đạt được nếu chỉ sử dụng tư duy thông thường.
Minh họa bài tốn

Biểu diễn tri thức dưới dạng luật IF-THEN

Mỗi luật tạo ra từ đường dẫn từ gốc tới lá

Mỗi cặp giá trị thuộc tính dọc theo đường dẫn tạo nên phép kết(
AND – và)

Các nót lá mang tên của lớp hay các biến mục tiêu(mưa, nắng,
mát mẻ, lạnh).
Ta có bảng số liệu sau khi đã tập hợp như sau:
STT
1
2
3
4
5
6
7
8
9
10

11
12
13
14
15
16
17
18

Nhiệt độ
31
31
35
34
25
27
22
26
18
19
15
20
32
31
37
36
40
39

Độ ẩm

Thấp
Trung bình
Thấp
Trung bình
Cao
Cao
Trung bình
Thấp
Cao
Cao
Trung bình
Thấp
Trung bình
Trung bình
Thấp
Trung bình
Thấp
Thấp

Mây



Khơng có

Khơng có



Khơng có




Khơng có



Khơng có

Thời tiết
Mưa
Nắng nóng
Nắng nóng
Nắng nóng
Mưa
Mát mẻ
Mát mẻ
Mát mẻ
Mưa
Lạnh
Lạnh
Lạnh
Nắng
Nắng
Mưa
Nắng nóng
Nắng nóng
Nắng nóng
13



19
20
22
23
24
25
26
27
28
39
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48

49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68

25
26
26
27
17
16
18
19
32

33
35
36
25
27
26
25
19
18
18
19
37
38
38
40
25
26
27
27
17
17
16
16
39
39
39
39
39
26
26

27
27
16
16
17
17
40
40
39
39

Cao
Cao
Trung bình
Thấp
Cao
Cao
Trung bình
Thấp
Thấp
Trung bình
Thấp
Cao
Cao
Cao
Trung bình
Thấp
Cao
Cao
Trung bình

Thấp
Thấp
Trung bình
Thấp
Thấp
Cao
Cao
Trung bình
Thấp
Cao
Cao
Trung bình
Thấp
Trung bình
Trung bình
Trung bình
Thấp
Thấp
Cao
Cao
Trung bình
Thấp
Cao
Cao
Trung bình
Thấp
Thấp
Trung bình
Thấp
Thấp



Khơng có

Khơng có

Khơng có

Khơng có



Khơng có

Khơng có
Khơng có


Khơng có





Khơng có

Khơng có
Khơng có



Khơng có



Khơng có


Khơng có

Khơng có

Khơng có

Khơng có
Khơng có
Khơng có



Khơng có

Mưa
Mát mẻ
Mát mẻ
Mát mẻ
Mưa
Lạnh
Lạnh
Lạnh
Mưa

Nắng nóng
Nắng nóng
Nắng nóng
Mưa
Mát mẻ
Mát mẻ
Mát mẻ
Mưa
Lạnh
Lạnh
Lạnh
Mưa
Nắng nóng
Nắng nóng
Nắng nóng
Mưa
Mát mẻ
Mát mẻ
Mát mẻ
Mưa
Lạnh
Lạnh
Lạnh
Nắng
Nắng
Nắng nóng
Nắng nóng
Nắng nóng
Mưa
Mát mẻ

Mát mẻ
Mát mẻ
Mưa
Lạnh
Lạnh
Lạnh
Mưa
Nắng nóng
Nắng nóng
Nắng nóng
14


69
70
71
72
74
75
76
77
78
79
80
81
82
83
84
85
86

87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116

117
118

27
27
28
28
18
18
16
16
41
41
40
38
27
27
28
29
26
26
25
25
41
41
40
42
39
39
25

28
27
27
17
31
31
35
34
25
27
22
26
18
19
15
20
32
31
37
36
40
39

Cao
Cao
Trung bình
Thấp
Cao
Cao
Trung bình

Thấp
Thấp
Trung bình
Thấp
Trung bình
Cao
Cao
Trung bình
Thấp
Cao
Cao
Trung bình
Thấp
Trung bình
Trung bình
Thấp
Trung bình
Thấp
Trung bình
Cao
Cao
Trung bình
Thấp
Cao
Thấp
Trung bình
Thấp
Trung bình
Cao
Cao

Trung bình
Thấp
Cao
Cao
Trung bình
Thấp
Trung bình
Trung bình
Thấp
Trung bình
Thấp
Thấp


Khơng có
Khơng có
Khơng có

Khơng có
Khơng có
Khơng có



Khơng có

Khơng có
Khơng có
Khơng có


Khơng có



Khơng có



Khơng có

Khơng có
Khơng có
Khơng có




Khơng có

Khơng có



Khơng có



Khơng có




Khơng có

Mưa
Mát mẻ
Mát mẻ
Mát mẻ
Mưa
Lạnh
Lạnh
Lạnh
Mưa
Nắng nóng
Nắng nóng
Nắng nóng
Mưa
Mát mẻ
Mát mẻ
Mát mẻ
Mưa
Lạnh
Lạnh
Lạnh
Nắng
Nắng
Mưa
Nắng nóng
Nắng nóng
Nắng nóng
Mưa

Mát mẻ
Mát mẻ
Mát mẻ
Mưa
Mưa
Nắng nóng
Nắng nóng
Nắng nóng
Mưa
Mát mẻ
Mát mẻ
Mát mẻ
Mưa
Lạnh
Lạnh
Lạnh
Nắng
Nắng
Mưa
Nắng nóng
Nắng nóng
Nắng nóng
15


119
120
122
123
124

125
126
127
128
139
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154

155
156
157
158
159
160
161
162
163
164
165
166
167
168

25
26
26
27
17
16
18
19
32
33
35
36
25
27
26

25
19
18
18
19
37
38
38
40
25
26
27
27
17
17
16
16
39
39
39
39
39
26
26
27
27
16
16
17
17

40
40
39
39

Cao
Cao
Trung bình
Thấp
Cao
Cao
Trung bình
Thấp
Thấp
Trung bình
Thấp
Cao
Cao
Cao
Trung bình
Thấp
Cao
Cao
Trung bình
Thấp
Thấp
Trung bình
Thấp
Thấp
Cao

Cao
Trung bình
Thấp
Cao
Cao
Trung bình
Thấp
Trung bình
Trung bình
Trung bình
Thấp
Thấp
Cao
Cao
Trung bình
Thấp
Cao
Cao
Trung bình
Thấp
Thấp
Trung bình
Thấp
Thấp


Khơng có

Khơng có


Khơng có

Khơng có



Khơng có

Khơng có
Khơng có


Khơng có





Khơng có

Khơng có
Khơng có


Khơng có



Khơng có



Khơng có

Khơng có

Khơng có

Khơng có
Khơng có
Khơng có



Khơng có

Mưa
Mát mẻ
Mát mẻ
Mát mẻ
Mưa
Lạnh
Lạnh
Lạnh
Mưa
Nắng nóng
Nắng nóng
Nắng nóng
Mưa
Mát mẻ
Mát mẻ

Mát mẻ
Mưa
Lạnh
Lạnh
Lạnh
Mưa
Nắng nóng
Nắng nóng
Nắng nóng
Mưa
Mát mẻ
Mát mẻ
Mát mẻ
Mưa
Lạnh
Lạnh
Lạnh
Nắng
Nắng
Nắng nóng
Nắng nóng
Nắng nóng
Mưa
Mát mẻ
Mát mẻ
Mát mẻ
Mưa
Lạnh
Lạnh
Lạnh

Mưa
Nắng nóng
Nắng nóng
Nắng nóng
16


169
170
171
172
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192

193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218

27
27
28

28
18
18
16
16
41
41
40
38
27
27
28
29
26
26
25
25
41
41
40
42
39
39
25
28
27
27
17
31
31

35
34
25
27
22
26
18
19
15
20
32
31
37
36
40
39

Cao
Cao
Trung bình
Thấp
Cao
Cao
Trung bình
Thấp
Thấp
Trung bình
Thấp
Trung bình
Cao

Cao
Trung bình
Thấp
Cao
Cao
Trung bình
Thấp
Trung bình
Trung bình
Thấp
Trung bình
Thấp
Trung bình
Cao
Cao
Trung bình
Thấp
Cao
Thấp
Trung bình
Thấp
Trung bình
Cao
Cao
Trung bình
Thấp
Cao
Cao
Trung bình
Thấp

Trung bình
Trung bình
Thấp
Trung bình
Thấp
Thấp


Khơng có
Khơng có
Khơng có

Khơng có
Khơng có
Khơng có



Khơng có

Khơng có
Khơng có
Khơng có

Khơng có



Khơng có




Khơng có

Khơng có
Khơng có
Khơng có




Khơng có

Khơng có



Khơng có



Khơng có



Khơng có

Mưa
Mát mẻ
Mát mẻ

Mát mẻ
Mưa
Lạnh
Lạnh
Lạnh
Mưa
Nắng nóng
Nắng nóng
Nắng nóng
Mưa
Mát mẻ
Mát mẻ
Mát mẻ
Mưa
Lạnh
Lạnh
Lạnh
Nắng
Nắng
Mưa
Nắng nóng
Nắng nóng
Nắng nóng
Mưa
Mát mẻ
Mát mẻ
Mát mẻ
Mưa
Mưa
Nắng nóng

Nắng nóng
Nắng nóng
Mưa
Mát mẻ
Mát mẻ
Mát mẻ
Mưa
Lạnh
Lạnh
Lạnh
Nắng
Nắng
Mưa
Nắng nóng
Nắng nóng
Nắng nóng
17


219
220
222
223
224
225
226
227
228
239
230

231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260

261
262
263
264
265
266
267
268

25
26
26
27
17
16
18
19
32
33
35
36
25
27
26
25
19
18
18
19
37

38
38
40
25
26
27
27
17
17
16
16
39
39
39
39
39
26
26
27
27
16
16
17
17
40
40
39
39

Cao

Cao
Trung bình
Thấp
Cao
Cao
Trung bình
Thấp
Thấp
Trung bình
Thấp
Cao
Cao
Cao
Trung bình
Thấp
Cao
Cao
Trung bình
Thấp
Thấp
Trung bình
Thấp
Thấp
Cao
Cao
Trung bình
Thấp
Cao
Cao
Trung bình

Thấp
Trung bình
Trung bình
Trung bình
Thấp
Thấp
Cao
Cao
Trung bình
Thấp
Cao
Cao
Trung bình
Thấp
Thấp
Trung bình
Thấp
Thấp


Khơng có

Khơng có

Khơng có

Khơng có




Khơng có

Khơng có
Khơng có


Khơng có





Khơng có

Khơng có
Khơng có


Khơng có



Khơng có


Khơng có

Khơng có

Khơng có


Khơng có
Khơng có
Khơng có



Khơng có

Mưa
Mát mẻ
Mát mẻ
Mát mẻ
Mưa
Lạnh
Lạnh
Lạnh
Mưa
Nắng nóng
Nắng nóng
Nắng nóng
Mưa
Mát mẻ
Mát mẻ
Mát mẻ
Mưa
Lạnh
Lạnh
Lạnh
Mưa

Nắng nóng
Nắng nóng
Nắng nóng
Mưa
Mát mẻ
Mát mẻ
Mát mẻ
Mưa
Lạnh
Lạnh
Lạnh
Nắng
Nắng
Nắng nóng
Nắng nóng
Nắng nóng
Mưa
Mát mẻ
Mát mẻ
Mát mẻ
Mưa
Lạnh
Lạnh
Lạnh
Mưa
Nắng nóng
Nắng nóng
Nắng nóng
18



269
270
271
272
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298

299
300

27
27
28
28
18
18
16
16
41
41
40
38
27
27
28
29
26
26
25
25
41
41
40
42
39
39
25

28
27
27
17

Cao
Cao
Trung bình
Thấp
Cao
Cao
Trung bình
Thấp
Thấp
Trung bình
Thấp
Trung bình
Cao
Cao
Trung bình
Thấp
Cao
Cao
Trung bình
Thấp
Trung bình
Trung bình
Thấp
Trung bình
Thấp

Trung bình
Cao
Cao
Trung bình
Thấp
Cao


Khơng có
Khơng có
Khơng có

Khơng có
Khơng có
Khơng có



Khơng có

Khơng có
Khơng có
Khơng có

Khơng có



Khơng có




Khơng có

Khơng có
Khơng có
Khơng có


Mưa
Mát mẻ
Mát mẻ
Mát mẻ
Mưa
Lạnh
Lạnh
Lạnh
Mưa
Nắng nóng
Nắng nóng
Nắng nóng
Mưa
Mát mẻ
Mát mẻ
Mát mẻ
Mưa
Lạnh
Lạnh
Lạnh
Nắng

Nắng
Mưa
Nắng nóng
Nắng nóng
Nắng nóng
Mưa
Mát mẻ
Mát mẻ
Mát mẻ
Mưa

Dựa vào cây quyết định trên ta có các tập luật sau:
• R1: if (Nhiệt độ=Cao)^(Độ ẩm=Cao)^(Mây=Có)
then Thời tiết = Mưa.
• R2: if (Nhiệt độ=Cao)^(Độ ẩm=Trung bình )^(Mây=Có)
then Thời tiết = Nắng nóng.
• R3: if (Nhiệt độ=Cao)^(Độ ẩm=Thấp)^(Mây=Có)
then Thời tiết = Nắng nóng.
• R4: if (Nhiệt độ=Cao)^(Mây=Khơng có)
then Thời tiết = Nắng nóng.
• R5: if (Nhiệt độ=Trung bình)^(Độ ẩm=Cao)^(Mây=Có)
then Thời tiết = Mưa.
• R6: if (Nhiệt độ=Trung bình)^(Độ ẩm=Cao)^(Mây= Khơng có)
then Thời tiết = Mát mẻ.
• R7: if (Nhiệt độ=Trung bình)^(Độ ẩm=Trung bình)
then Thời tiết = Mát mẻ.
19


R8: if (Nhiệt độ=Trung bình)^(Độ ẩm=Thấp)

then Thời tiết = Mát mẻ.
• R9: if (Nhiệt độ=Thấp)^(Độ ẩm=Cao)^(Mây=Có)
then Thời tiết = Mưa.
• R10: if (Nhiệt độ=Thấp)^(Độ ẩm=Cao)^(Mây=Khơng có)
then Thời tiết = Lạnh.
• R11: if (Nhiệt độ=Thấp)^(Độ ẩm=Trung bình)
then Thời tiết = Lạnh.
• R12: if (Nhiệt độ=Thấp)^(Độ ẩm=Thấp)
then Thời tiết = Lạnh.
Ta tập hợp số liệu vào bảng sau:


Nhiệt độ
Cao
Cao
Cao
Cao
Trung bình
Trung bình
Trung bình
Trung bình
Thấp
Thấp
Thấp
Thấp

Độ ẩm
Thấp
Trung bình
Thấp

X
Cao
Cao
Trung bình
Thấp
Cao
Cao
Trung bình
Thấp

Mây



Khơng có

Khơng có
X
X

Khơng có
X
X

Thời tiết
Mưa
Nắng nóng
Nắng nóng
Nắng nóng
Mưa

Mát mẻ
Mát mẻ
Mát mẻ
Mưa
Lạnh
Lạnh
Lạnh

Từ bảng số liệu trên
Vì: R : If (Nhiệt độ = Thấp)^(Độ ẩm = Khơng có) Then Thời tiết =
Lạnh
Vì vậy ta có thể rút gọn lại bảng trên và đưa ra bảng hệ thống các luật
sau:
Nhiệt độ

Độ ẩm

Mây

Thời tiết

X

Cao



Mưa

Cao


X

Khơng có

Nắng nóng

Cao

Khơng cao



Nắng nóng

Trung bình

Khơng cao

X

Mát mẻ

Trung bình

Cao

Khơng có

Mát mẻ


Thấp

Khơng cao

X

Lạnh

Thấp

Cao

Khơng có

Lạnh

Nhiệt độ

Kiểu nhiệt độ

>=30 C

Cao
20


3.

>=20 C và < 30 C


Trung bình

< 20 C

Thấp

Một số hình ảnh khi chạy chương trình thực thi:

Hình 1: Giao diện khi khởi chạy chương trình

Hình 2: Giao diện chương trình khi Nhiệt độ=45, Độ ẩm=Cao, Mây=Có mây

21


Hình 3: Giao diện chương trình khi Nhiệt độ=30, Độ ẩm=Khơng cao, Mây=Có mây

22


KẾT LUẬN
● Cây quyết định là một công cụ khá phổ biến trong nhiều dạng ứng
dụng, với cơ chế rút trích luật dạng if – then trên tập dữ liệu mẫu. Việc
Xây dựng Hệ chuyên gia Dự báo thời tiết sử dụng Cây quyết định đã làm
tăng tính chặt chẽ của kết quả khi dự báo, cũng như tính tồn vẹn dữ liệu
của hệ thống cơ sở dữ liệu, góp phần làm tăng độ tin cậy của việc dự báo
thời tiết.

23



TÀI LIỆU THAM KHẢO
[1].

Trần Hùng Cường. Giáo trình Hệ chuyên gia. Nhà xuất bản

[2].

Khoa học và Kĩ thuật, 2015.
Trần Hùng Cường, Nguyễn Phương Nga. Giáo trình Trí tuệ

[3].

nhân tạo. Nhà xuất bản Giáo dục, 2012.
Một số trang tài liệu trên Internet.

24



×