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

Tiểu luận môn biểu diễn tri thức và suy luận ỨNG DỤNG CHẨN ĐOÁN SÂU BỆNH CHÍNH TRÊN CÂY LÚA

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 (454.03 KB, 24 trang )

Biểu diễn tri thức và suy luận GVHD: PGS.TS Đỗ Văn Nhơn
I. MỤC LỤC
LỜI CẢM ƠN
Em xin chân thành cảm ơn thầy PGS.TS Đỗ Văn Nhơn đã hướng dẫn và truyền
đạt cho em những kiến thức quý báu của môn học Biểu diễn tri thức và suy luận,
giúp em nắm được những phương pháp biểu diễn tri thức tiêu biểu, đồng thời, mở
ra những hướng nghiên cứu sâu hơn, rộng hơn để có thể nghiên cứu và tìm hiểu
những phương pháp biểu diễn tri thức mới có thể ứng dụng và tạo ra giá trị cho các
lĩnh vực xã hội và đời sống của con người.
Trong bài này, em xin trình bày những hiểu biết về phương pháp biểu diễn tri
thức dùng hệ luật dẫn và ứng dụng phương pháp này trong chương trình Chẩn đoán
sâu bệnh chính trên cây lúa.
Do thời gian có hạn em chỉ xin phép thiết lập một ứng dụng minh họa cho
phương pháp biểu diễn tri thức bằng luật dẫn với các chức năng chính thể hiện rõ
nội dung của bài. Chương trình và bài viết còn nhiều hạn chế và thiếu sót, kính
mong thầy thông cảm.
Tp. Hồ Chí Minh, ngày 29 tháng 03 năm 2014
Học viên thực hiện
Nguyễn Thị Mai
SVTH: Nguyễn Thị Mai 1
Biểu diễn tri thức và suy luận GVHD: PGS.TS Đỗ Văn Nhơn
I. TỔNG QUAN
1. Các khái niệm
Dữ liệu là các con số, ký hiệu mà máy tính có thể lưu trữ, biểu diễn, xử lý.
Bản thân dữ liệu không có ý nghĩa. Chỉ khi con người cảm nhận, tư duy thì dữ liệu
mới có một ý nghĩa nhất định, đó chính là thông tin. Từ khái niệm thông tin, người
ta mới xây dựng được khái niệm về tri thức.
Tri thức là kết tinh, cô đọng, chắt lọc của thông tin. Tri thức hình thành do
quá trình xử lý thông tin mang lại.
Biểu diễn tri thức là phương pháp mã hoá tri thức, nhằm thành lập cơ sở tri
thức cho các hệ thống dựa trên tri thức


2. Phân loại tri thức
Dựa vào cách thức con người giải quyết vấn đề, các nhà nghiên cứu đã xây
dựng các kỹ thuật để biểu diễn các dạng tri thức khác nhau trên máy tính. Để giải
quyết vấn đề, chúng ta chỉ chọn dạng biễu diễn nào thích hợp nhất. Một số dạng
biểu diễn tri thức thường gặp:
 Tri thức thủ tục mô tả cách thức giải quyết một vấn đề. Loại tri thức này
đưa ra giải pháp để thực hiện một công việc nào đó. Các dạng tri thức thủ
tục tiêu biểu thường là các luật, chiến lược, lịch trình, và thủ tục
SVTH: Nguyễn Thị Mai 2
Tri thức thực của lĩnh
vực
Tri thức tính
toán
Bằng cách nào?
Gồm: Bảng ánh xạ
giữa:
Đối tượng thực-> đối
tượng tính toán
Quan hệ thực->quan hệ
tính toán
Bằng cách: dùng các
lược đồ biểu diễn
(scheme)
-> Chọn dùng lược đồ
choloại tri thức là vấn đề
quan trọng
Gồm: đối
tượng và các
quan hệ giữa
chúng trong

lĩnh vực
Biểu diễn tri thức và suy luận GVHD: PGS.TS Đỗ Văn Nhơn
 Tri thức khai báo cho biết một vấn đề được thấy như thế nào. Loại tri
thức này bao gồm các phát biểu đơn giản, dưới dạng các khẳng định logic
đúng hoặc sai. Tri thức khai báo cũng có thề là một danh sách các khẳng
định nhằm mô tả đầy đủ hơn về đối tượng hay một khái niệm khái niệm
nào đó
 Siêu tri thức mô tả tri thức về tri thức. Loại tri thức này giúp lựa chọn tri
thức thích hợp nhất trong số các tri thức khi giải quyết một vấn đề. Các
chuyên gia sử dụng tri thức này để điều chỉnh hiệu quả giải quyết vấn đề
bằng cách hướng các lập luận về miền tri thức có khả năng hơn cả
 Tri thức Heuristic mô tả các "mẹo" để dẫn dắt tiến trình lập luận. Tri thức
heuristic còn được gọi là tri thức nông cạn do không bảm đảm hoàn toàn
chính xác về kết quả giải quyết vấn đề. Các chuyên thường dùng các tri
thức khoa học như sự kiện, luật, … sau đó chuyển chúng thành các tri
thức heuristic để thuận tiện hơn trong việc giải quyết một số bài toán
 Tri thức có cấu trúc mô tả tri thức theo cấu trúc. Loại tri thức này mô tả
mô hình tổng quan hệ thống theo quan điểm của chuyên gia, bao gồm
khái niệm, khái niệm con, và các đối tượng; diễn tả chức năng và mối
liên hệ giữa các tri thức dựa theo cấu trúc xác định
3. Các phương pháp biểu diễn tri thức
a) Biểu diễn tri thức dùng hệ luật dẫn
Phương pháp biểu diễn tri thức bằng luật dẫn được phát minh bởi Newell và
Simon trong lúc hai ông đang cố gắng xây dựng một hệ giải bài toán tổng quát.
Đây là một kiểu biểu diễn tri thức có cấu trúc. Ý tưởng cơ bản là tri thức có thể
được cấu trúc bằng một cặp điều kiện – hành động : "NẾU điều kiện xảy ra THÌ
hành động sẽ được thi hành". Chẳng hạn : NẾU đèn giao thông là đỏ THÌ bạn
không được đi thẳng.
Một cách tổng quát luật dẫn có dạng như sau:
P

1
∧ P
2
∧ ∧ Pn → Q
Tùy vào các vấn đề đang quan tâm mà luật dẫn có những ngữ nghĩa hay cấu
tạo khác nhau
SVTH: Nguyễn Thị Mai 3
Biểu diễn tri thức và suy luận GVHD: PGS.TS Đỗ Văn Nhơn
b) Biểu diễn tri thức dùng mạng ngữ nghĩa
Mạng ngữ nghĩa là một phương pháp biểu diễn tri thức đầu tiên và cũng là
phương pháp dễ hiểu nhất đối với chúng ta. Phương pháp này sẽ biểu diễn tri
thức dưới dạng một đồ thị, trong đó đỉnh là các đối tượng (khái niệm) còn các
cung cho biết mối quan hệ giữa các đối tượng (khái niệm) này.
Ví dụ: giữa các khái niệm chích chòe, chim, hót, cánh, tổ có một số mối quan
hệ như sau :
Chích chòe là một loài chim.
Chim biết hót
Chim có cánh
Chim sống trong tổ
Các mối quan hệ này sẽ được biểu diễn trực quan bằng một đồ thị như sau:
Do mạng ngữ nghĩa là một loại đồ thị cho nên nó thừa hưởng được tất cả
những mặt mạnh của công cụ này. Nghĩa là ta có thể dùng những thuật toán của
đồ thị trên mạng ngữ nghĩa như thuật toán tìm liên thông, tìm đường đi ngắn
nhất,… để thực hiện các cơ chế suy luận. Điểm đặc biệt của mạng ngữ nghĩa so
với đồ thị thông thường chính là việc gán một ý nghĩa (có, làm, là, biết, ) cho
các cung.
c) Biểu diễn tri thức bằng Frame
Frame là một cấu trúc dữ liệu chứa đựng tất cả những tri thức liên quan đến
một đối tượng cụ thể nào đó. Frames có liên hệ chặt chẽ đến khái niệm hướng
đối tượng (thực ra frame là nguồn gốc của lập trình hướng đối tượng). Ngược lại

với các phương pháp biểu diễn tri thức đã được đề cập đến, frame "đóng gói"
toàn bộ một đối tượng, tình huống hoặc cả một vấn đề phức tạp thành một thực
SVTH: Nguyễn Thị Mai 4
Biểu diễn tri thức và suy luận GVHD: PGS.TS Đỗ Văn Nhơn
thể duy nhất có cấu trúc. Một frame bao hàm trong nó một khối lượng tương đối
lớn tri thức về một đối tượng, sự kiện, vị trí, tình huống hoặc những yếu tố khác.
Do đó, frame có thể giúp ta mô tả khá chi tiết một đối tượng.
Mỗi một frame mô tả một đối tượng (object). Một frame bao gồm 2 thành
phần cơ bản là slot và facet. Một slot là một thuộc tính đặc tả đối tượng được
biểu diễn bởi frame. Ví dụ : trong frame mô tả xe hơi, có hai slot là trọng lượng
và loại máy.
Mỗi slot có thể chứa một hoặc nhiều facet. Các facet (đôi lúc được gọi là slot
"con") đặc tả một số thông tin hoặc thủ tục liên quan đến thuộc tính được mô tả
bởi slot. Facet có nhiều loại khác nhau, sau đây là một số facet thường gặp.
• Value (giá trị) : cho biết giá trị của thuộc tính đó (như xanh, đỏ, tím vàng
nếu slot là màu xe).
• Default (giá trị mặc định) : hệ thống sẽ tự động sử dụng giá trị trong facet
này nếu slot là rỗng (nghĩa là chẳng có đặc tả nào!). Chẳng hạn trong
frame về xe, xét slot về số lượng bánh. Slot này sẽ có giá trị 4. Nghĩa là,
mặc định một chiếc xe hơi sẽ có 4 bánh!
• Range (miền giá trị) : (tương tự như kiểu biến), cho biết giá trị slot có thể
nhận những loại giá trị gì (như số nguyên, số thực, chữ cái, )
• If added : mô tả một hành động sẽ được thi hành khi một giá trị trong slot
được thêm vào (hoặc được hiệu chỉnh). Thủ tục thường được viết dưới
dạng một script.
• If needed : được sử dụng khi slot không có giá trị nào. Facet mô tả một
hàm để tính ra giá trị của slot.
SVTH: Nguyễn Thị Mai 5
Biểu diễn tri thức và suy luận GVHD: PGS.TS Đỗ Văn Nhơn
Frame : XE HƠI

Thuộc lớp : phương tiện vận chuyển.
Tên nhà sản xuất : Audi
Quốc gia của nhà sản xuất : Đức
Model : 5000 Turbo
Loại xe : Sedan
Trọng lượng : 3300lb
Số lượng cửa : 4 (default)
Hộp số : 3 số tự động
Số lượng bánh : 4 (default)
Máy (tham chiếu đến frame Máy)
Kiểu : In-line, overhead cam
Số xy-lanh : 5
Khả năng tăng tốc
0-60 : 10.4 giây
¼ dặm : 17.1 giây, 85 mph.
SVTH: Nguyễn Thị Mai 6
Biểu diễn tri thức và suy luận GVHD: PGS.TS Đỗ Văn Nhơn
Frame MÁY
Xy-lanh : 3.19 inch
Tỷ lệ nén : 3.4 inche
Xăng : TurboCharger
Mã lực : 140 hp

d) Biểu diễn tri thức bằng Script
Script là một cách biểu diễn tri thức tương tự như frame nhưng thay vì đặc tả
một đối tượng, nó mô tả một chuỗi các sự kiện. Để mô tả chuỗi sự kiện, script sử
dụng một dãy các slot chứa thông tin về các con người, đối tượng và hành động
liên quan đến sự kiện đó.
Tuy cấu trúc của các script là rất khác nhau tùy theo bài toán, nhưng nhìn
chung một script thường bao gồm các thành phần sau:

 Điều kiện vào (entry condition): mô tả những tình huống hoặc điều kiện
cần được thỏa mãn trước khi các sự kiện trong script có thể diễn ra.
 Role (diễn viên): là những con người có liên quan trong script.
 Prop (tác tố): là tất cả những đối tượng được sử dụng trong các chuỗi sự
kiện sẽ diễn ra.
 Scene (Tình huống): là chuỗi sự kiện thực sự diễn ra.
 Result (Kết quả): trạng thái của các Role sau khi script đã thi hành xong.
 Track (phiên bản): mô tả một biến thể (hoặc trường hợp đặc biệt) có thể
xảy ra trong đoạn script
II. BIỂU DIỄN TRI THỨC DÙNG HỆ LUẬT DẪN
1. Biểu diễn tri thức dùng hệ luật dẫn
SVTH: Nguyễn Thị Mai 7
Biểu diễn tri thức và suy luận GVHD: PGS.TS Đỗ Văn Nhơn
Phương pháp biểu diễn tri thức bằng hệ luật dẫn được phát minh bởi Newell
và Simon trong lúc hai ông đang cố gắng xây dựng một hệ giải bài toán tổng quát.
Đây là một kiểu biểu diễn tri thức có cấu trúc. Ý tưởng cơ bản là tri thức có thể
được cấu trúc bằng một cặp điều kiện – hành động:
“NẾU điều kiện xảy ra THÌ hành động sẽ được thi hành”.
Chẳng hạn: NẾU đèn giao thông là đỏ THÌ bạn không được đi thẳng, NẾU
máy tính đã mở mà không khởi động được THÌ kiểm tra nguồn điện, …
Ngày nay, các luật dẫn đã trở nên phổ biến và được áp dụng rộng rãi trong
nhiều hệ thống trí tuệ nhân tạo khác nhau. Luật dẫn có thể là một công cụ mô tả để
giải quyết các vấn đề thực tế thay cho các kiểu phân tích vấn đề truyền thống. Trong
trường hợp này, các luật được dùng như là những chỉ dẫn (tuy có thể không hoàn
chỉnh) nhưng rất hữu ích để trợ giúp cho các quyết định trong quá trình tìm kiếm, từ
đó làm giảm không gian tìm kiếm. Một ví dụ khác là luật dẫn có thể được dùng để
bắt chước hành vi của những chuyên gia. Theo cách này, luật dẫn không chỉ đơn
thuần là một kiểu biểu diễn tri thức trong máy tính mà là một kiểu biễu diễn các
hành vi của con người.
Một cách tổng quát luật sinh có dạng như sau:

P
1
∧ P
2
∧ ∧ Pn → Q
Tùy vào các vấn đề đang quan tâm mà luật sinh có những ngữ nghĩa hay cấu
tạo khác nhau:
 Trong logic vị từ: P
1
, P
2
, , P
n
, Q là những biểu thức logic.
 Trong ngôn ngữ lập trình, mỗi một luật sinh là một câu lệnh.
IF (P
1
AND P
2
AND … AND P
n
) THEN Q
Trong lý thuyết hiểu ngôn ngữ tự nhiên, mỗi luật sinh là một phép
dịch:
 ONE - một.
 TWO - hai.
 JANUARY - tháng một
Để biễu diễn một tập luật sinh, người ta thường phải chỉ rõ hai thành phần
chính sau:
(1) Tập các sự kiện F (Facts)

F = {f
1
, f
2
, , f
n
}
(2) Tập các quy tắc R (Rules) áp dụng trên các sự kiện dạng như sau:
SVTH: Nguyễn Thị Mai 8
Biểu diễn tri thức và suy luận GVHD: PGS.TS Đỗ Văn Nhơn
f
1
∧ f
2
∧ ∧ fi → q
Trong đó, các f
i
, q đều thuộc F
Ví dụ: Cho một cơ sở tri thức được xác định như sau:
Các sự kiện: A, B, C, D, E, F, G, H, K
Tập các quy tắc hay luật sinh (rule)
R1: A  E
R2: B  D
R3: H  A
R4: E ⋀ G  C
R5: E ⋀ K  B
R6: D ⋀ E ⋀ K  C
R7: G ⋀ K ⋀ F  A
2. Cơ chế suy diễn
Cơ chế suy diễn là một thành phần quan trọng, nó góp phần to lớn trong việc

đi từ giả thuyết đến kết luận của bài toán. Cơ chế suy diễn sẽ lựa chọn các luật cần
thực thi để có từng bước giải trong quá trình hình thành lời giải. Nó sẽ quyết định
tiến trình tìm kiếm lời giải từ đâu, lựa chọn hướng nào khi mà có quá nhiều luật
cùng có đủ điều kiện để thi hành. Như vậy sẽ xuất hiện hai vấn đề trong cơ chế suy
diễn đó là cách suy diễn và lựa chọn hướng thi hành.
Về cách suy diễn, ta xét cơ sở tri thức của chúng ta mỗi một sự kiện được
xem là một nút của đồ thị tri thức, mỗi cung nối hai nút là một bước suy diễn dựa
trên luật nào đó. Suy diễn phải tạo ra đường đi liên thông giữa các sự kiện giả thiết
và sự kiện mục tiêu. Lời giải khi đó sẽ là tập có thứ tự các cung của đồ thị liên
thông nối sự kiện giả thiết và sự kiện mục tiêu. Ta thấy sẽ có ba cách để tìm ra
đường đi này: suy diễn tiến, suy diễn lùi, kết hợp suy diễn tiến và suy diễn lùi.
• Suy diễn tiến là quá trình xuất phát từ một nút của sự kiện giả thiết tìm ra
các cung cần phải đi qua để đến được mục tiêu
• Suy diễn lùi là quá trình xuất phát từ một nút mục tiêu tìm ra các cung
dẫn tới các sự kiện giống như sự kiện giả thiết.
Về cách chọn các luật thi hành, ta thấy trong quá trình suy luận tại một nút
sự kiện nào đó sẽ có nhiều cung đi đến sự kiện khác. Điều này nảy sinh vấn đề lựa
chọn cung nào? Có hai giải pháp cho tình huấn này: tìm trên tất cả các cung, hoặc
SVTH: Nguyễn Thị Mai 9
Biểu diễn tri thức và suy luận GVHD: PGS.TS Đỗ Văn Nhơn
tìm trên một cung nào đó cho đến khi không còn đi được nữa thì quay trở lại. Hai
cách này được gọi là tìm kiếm theo chiều rộng và tìm kiếm theo chiều sâu.
a. Suy diễn tiến
Là quá trình suy luận xuất phát từ một số điều kiện ban đầu xác định các
sự kiện có thể được "sinh" ra từ sự kiện này
Thuật toán suy diễn tiến:
Bước 1: Ghi nhận các sự kiện giả thiết và mục tiêu của bài toán
Bước 2: Khởi tạo lời giải là rỗng
Bước 3: Kiểm tra mục tiêu
IF mục tiêu đáp ứng THEN goto Bước 8

Bước 4: Tìm luật có thể áp dụng để phát sinh sự kiện mới
Bước 5: IF Tìm trong Bước 4 thất bại THEN
Áp dụng thuật toán suy diễn lùi
Bước 6: IF Tìm trong Bước 4 thành công THEN
Ghi nhận thông tin về luật vào lời giải và sự kiện mới
vào giả thiết được phát sinh từ các luật
Bước 7: Goto Bước 4
Bước 8: Biến đổi lời giải tìm được
Ưu điểm:
• Ưu điểm chính của suy diễn tiến là làm việc tốt khi bài toán về bản chất đi
thu thập thông tin rồi thấy điều cần suy diễn.
• Suy diễn tiến cho ra khối lượng lớn các thông tin từ một số thông tin ban
đầu. Nó sinh ra nhiều thông tin mới.
SVTH: Nguyễn Thị Mai 10
Biểu diễn tri thức và suy luận GVHD: PGS.TS Đỗ Văn Nhơn
• Suy diễn tiến là tiếp cận lý tưởng đối với loại bài toán cần giải quyết các
nhiệm vụ như lập kế hoạch, điều hành điều khiển và diễn dịch.
Nhược điểm:
• Một nhược điểm chính của hệ thống suy diễn tiến là không cảm nhận được
rằng chỉ một vài thông tin là quan trọng. Hệ thống hỏi các câu hỏi có thể hỏi mà
không biết rằng chỉ một ít câu đã đi đến kết luận được.
• Hệ thống có thể hỏi cả câu không liên quan. Có thể các câu trả lời cũng
quan trọng, nhưng làm người dùng lúng túng khi phải trả lời các câu không dính
đến chủ đề.
b. Suy diễn lùi
Là quá trình suy luận ngược xuất phát từ một số sự kiện ban đầu, ta tìm
kiếm các sự kiện đã "sinh" ra sự kiện này. Một ví dụ thường gặp trong thực
tế là xuất phát từ các tình trạng của máy tính, chẩn đoán xem máy tính đã bị
hỏng hóc ở đâu.
Ví dụ :

Tập các sự kiện :
• Ổ cứng là "hỏng" hay "hoạt động bình thường"
• Hỏng màn hình.
• Lỏng cáp màn hình.
• Tình trạng đèn ổ cứng là "tắt" hoặc "sáng"
• Có âm thanh đọc ổ cứng.
• Tình trạng đèn màn hình "xanh" hoặc "chớp đỏ"
• Không sử dụng được máy tính.
• Điện vào máy tính "có" hay "không"
Tập các luật :
R1. Nếu ((ổ cứng "hỏng") hoặc (cáp màn hình "lỏng")) thì không sử dụng
được máy tính.
R2. Nếu (điện vào máy là "có") và ( (âm thanh đọc ổ cứng là "không")
hoặc tình trạng đèn ổ cứng là "tắt")) thì (ổ cứng "hỏng").
R3. Nếu (điện vào máy là "có") và (tình trạng đèn màn hình là "chớp đỏ")
thì (cáp màn hình "lỏng").
SVTH: Nguyễn Thị Mai 11
Biểu diễn tri thức và suy luận GVHD: PGS.TS Đỗ Văn Nhơn
Để xác định được các nguyên nhân gây ra sự kiện "không sử dụng được
máy tính", ta phải xây dựng một cấu trúc đồ thị gọi là đồ thị AND/OR như
sau:
Như vậy là để xác định được nguyên nhân gây ra hỏng hóc là do ổ cứng
hỏng hay cáp màn hình lỏng, hệ thống phải lần lượt đi vào các nhánh để
kiểm tra các điều kiện như điện vào máy "có", âm thanh ổ cứng "không"…
Tại một bước, nếu giá trị cần xác định không thể được suy ra từ bất kỳ một
luật nào, hệ thống sẽ yêu cầu người dùng trực tiếp nhập vào. Chẳng hạn như
để biết máy tính có điện không, hệ thống sẽ hiện ra màn hình câu hỏi "Bạn
kiểm tra xem có điện vào máy tính không (kiểm tra đèn nguồn)? (C/K)".
Để thực hiện được cơ chế suy luận lùi, người ta thường sử dụng ngăn xếp
(để ghi nhận lại những nhánh chưa kiểm tra).

Thuật toán suy diễn lùi:
Bước 1: Giả sử sự kiện mục tiêu đúng
Bước 2: Phát sinh các mục tiêu con
Bước 3: Kiểm tra mục tiêu con
IF mục tiêu con đáp ứng THEN
Goto Bước 8 của thuật toán suy diễn tiến
Bước 4: // độ sâu của bài toán là số bước cần phải lùi khi tìm lời giải
IF mức độ lùi >6 THEN // lùi quá giới hạn
Kết luận không tìm thấy lời giải và dừng
ELSE
Sang Bước 5 (tức là quay lại bước 4 của thuật toán
suy diễn tiến)
SVTH: Nguyễn Thị Mai 12
Không sử dụng
được máy tính
OR
Âm thanh ổ
cứng
“không”
Đèn ổ cứng
“tắt”
Điện vào máy “có”
Ổ cứng “hỏng”
Cáp màn hình “lỏng”
AND
AND
Tình trạng
đèn màn
hình “chớp
đỏ”

OR
Biểu diễn tri thức và suy luận GVHD: PGS.TS Đỗ Văn Nhơn
Bước 5: Tìm luật có thể áp dụng để phát sinh sự kiện mới
Bước 6: IF Tìm trong Bước 4 thất bại THEN
Áp dụng thuật toán suy diễn lùi
Bước 7: IF Tìm trong Bước 4 thành công THEN
Ghi nhận thông tin về luật vào lời giải và sự kiện mới
vào giả thiết được phát sinh từ các luật
Bước 8: Goto Bước 4
Bước 9: Biến đổi lời giải tìm được
Ưu điểm:
•Một trong các ưu điểm chính của suy diễn lùi là phù hợp với bài toán đưa ra
giả thuyết rồi xem hiệu qủa giả thiết đó có đúng không.
•Suy diễn lùi tập trung vào đích đã cho. Nó tạo ra một loạt câu hỏi chỉ liên
quan đến vấn đề đang xét, đến hoàn cảnh thuận tiện đối với người dùng.
•Khi suy diễn lùi muốn suy diễn cái gì đó từ các thông tin đã biết, nó chỉ tìm
trên một phần của cơ sở tri thức thích đáng đối với bài toán đang xét.
Nhược điểm:
•Nhược điểm cơ bản của suy diễn này là nó thường tiếp theo dòng suy diễn,
thay vì đúng ra phải đúng ở đó mà sang nhánh khác. Tuy nhiên có thể dùng nhân tố
tin cậy và các luật meta để khắc phục.
3. Ưu điểm và khuyết điểm của hệ luật dẫn
Biểu diễn tri thức bằng luật đặc biệt hữu hiệu trong những tình huống hệ
thống cần đưa ra những hành động dựa vào những sự kiện có thể quan sát được. Nó
có những ưu điểm chính yếu sau đây:
 Các luật rất dễ hiểu nên có thể dễ dàng dùng để trao đổi với người dùng
(vì nó là một trong những dạng tự nhiên của ngôn ngữ).
 Có thể dễ dàng xây dựng được cơ chế suy luận và giải thích từ các luật.
 Việc hiệu chỉnh và bảo trì hệ thống là tương đối dễ dàng.
SVTH: Nguyễn Thị Mai 13

Biểu diễn tri thức và suy luận GVHD: PGS.TS Đỗ Văn Nhơn
 Có thể cải tiến dễ dàng để tích hợp các luật mờ.
 Các luật thường ít phụ thuộc vào nhau
Với các tri thức phức tạp đôi lúc đòi hỏi quá nhiều (hàng ngàn) luật, điều này
sẽ làm nảy sinh nhiều vấn đề liên quan đến tốc độ lẫn quản trị hệ thống.
Thống kê cho thấy, người xây dựng hệ thống trí tuệ nhân tạo thích sử dụng
luật dẫn hơn tất cả phương pháp khác (dễ hiểu, dễ cài đặt) nên họ thường tìm mọi
cách để biểu diễn tri thức bằng luật dẫn cho dù có phương pháp khác thích hợp hơn!
Đây là nhược điểm mang tính chủ quan của con người.
Cơ sở tri thức luật dẫn lớn sẽ làm giới hạn khả năng tìm kiếm của chương
trình điều khiển. Nhiều hệ thống gặp khó khăn trong việc đánh giá các hệ dựa trên
luật dẫn cũng như gặp khó khăn khi suy luận trên luật dẫn.
4. Thuật toán suy diễn tiến – lùi kết hợp với Heuristiscs
Trong thực tế người ta thường sử dụng các phép suy diễn tiến và suy diễn lùi
kết hợp với Heuristics để có thể giảm bớt các cung và để lựa chọn các luật tốt nhất
cho từng bước cần thực thi.
Để tìm một lời giải nhanh hơn, chúng ta sẽ dùng các luật Heuristics vào thuật
toán. Các luật Heuristics là các phương pháp mà con người đã dùng để giải các bài
toán hình học phẳng. Các Heuristics sẽ làm nhiệm vụ kiểm tra mục tiêu của bài toán
xem nó thuộc loại nào để định hướng cho việc tìm kiếm các bài toán mẫu hay các
luật thi hành sao cho đạt hiệu quả cao nhất.
Bước 1: Ghi nhận các sự kiện giả thiết và mục tiêu của bài toán
Bước 2: Khởi tạo lời giải là rỗng
Bước 3: Kiểm tra mục tiêu
IF mục tiêu đáp ứng THEN Goto Bước 9
Bước 4: Sử dụng các Heuristics để chọn hướng tốt cho việc phát sinh
các sự kiện mục tiêu mới và đáp ứng một tình huống mới.
Bước 5: Tìm luật có thể áp dụng để phát sinh sự kiện giả thiết mới
Bước 6: IF Tìm trong Bước 5 thất bại THEN
Áp dụng thuật toán suy diễn lùi

Bước 7: IF Tìm trong Bước 5 thành công THEN
SVTH: Nguyễn Thị Mai 14
Biểu diễn tri thức và suy luận GVHD: PGS.TS Đỗ Văn Nhơn
Ghi nhận thông tin về luật vào lời giải và sự kiện mới
vào giả thiết được phát sinh từ các luật
Bước 8: Goto Bước 5
Bước 9: Biến đổi lời giải tìm được
Các Heuristics làm tăng khả năng suy diễn và làm tăng hiệu suất về thời gian
tìm kiếm lời giải bài toán. Vấn đề là chúng ta xây dựng các nhóm Heuristics như thế
nào cho từng bài toán cụ thể. Nếu các Heuristics của chúng ta tốt thì hiệu quả ứng
dụng sẽ cao và ngược lại.
SVTH: Nguyễn Thị Mai 15
Biểu diễn tri thức và suy luận GVHD: PGS.TS Đỗ Văn Nhơn
III. ỨNG DỤNG CHẨN ĐOÁN SÂU BỆNH CHÍNH TRÊN CÂY LÚA
2. Giới thiệu chương trình
Chương trình Chẩn đoán sâu bệnh chính trên cây lúa biểu diễn một số tri
thức tiêu biểu về các biểu hiện, triệu chứng sâu bệnh thường gặp. Từ đó đưa ra kết
quả chẩn đoán loại sâu bệnh ở cây trồng (lúa) đang mắc phải.
Người dùng có thể dễ dàng quan sát được danh sách các triệu chứng và lựa
chọn những triệu chứng quan sát được từ cây trồng, xem được chẩn đoán loại sâu
bệnh. Ngoài ra, người dùng còn có thể quản lý danh mục các loại triệu chứng, sâu
bệnh hiện có trong hệ thống. Cho phép cập nhật, thêm vào những dữ liệu mới, chỉnh
sửa và xóa những dữ liệu không còn chính xác.
3. Biểu diễn tri thức các sâu bệnh chính trên cây lúa
Các biểu hiện sâu bệnh chính ở cây ở cây lúa được biểu diễn bằng tập sự
kiện Facts và các bệnh trên cây lúa được biểu diễn bằng tập luậ Rules, cụ thể:
 Facts (S
1
, S
2

, …, S
n
, D
1
, D
2
,…, D
m
)
Với S
i
: Ký hiệu | Ý nghĩa
• Rules (R
1
,R
2
,…,R
n
)
Với D
i
: Vế trái | Vế phải
Vế trái: S
1
S
2
… S
n
Vế phải: D
i

Cấu trúc file Facts.txt như sau:
S01|Lá bị cuốn thành bao
S02|Lá trắng, xơ xác
S03|Trứng sâu hình bầu dục, rải rác từng quả trên lá lúa, trứng mới
có màu đục, sau một thời gian chuyển sang màu vàng
S04|Sâu non có màu lá mạ, dần chuyển sang màu vàng nhạt
SVTH: Nguyễn Thị Mai 16
Biểu diễn tri thức và suy luận GVHD: PGS.TS Đỗ Văn Nhơn
S05|Nhộng màu cánh gián, thường nằm giữa các khe ở gốc lúa hoặc
trong bao lá
S06|Sâu trưởng thành nhỏ, có màu vàng nâu, cánh có hai vân ngang
hình lượn sóng màu tro, mép ngoài có viền màu nâu sẫm hoặc xám
S07|Lá xuất hiện đốm bạc hoặc sọc bắt đầu từ mép lá, lan dần vào
phiến lá hoặc kéo dài theo gân chính, hoặc có khi xuất hiện từ phiến
lá, lan dần ra mép lá
S08|Khi thời tiết ẩm, vào lúc sáng sớm, vết bệnh trên lá có giọt dịch
màu trắng đục
S09|Phiến lá khô cháy
S10|Chấm nhỏ trên lá màu xanh lục hoặc giọt dầu, sau chuyển sang
màu xám nhạt
S11|Vết bệnh lớn thành hình bầu dục, hình thoi, rìa màu vàng nhạt,
giữa vết bệnh có màu xám.
S12|Các vết bệnh liên kết với nhau làm cho lá bị vàng, cây cứng, thấp
lụi đi, các đốt thân và lá bị gãy dập, bông bạc, hạt lép.
S13|Vết đốm hình bầu dục màu lục tối hoặc xám nhạt, sau lan rộng
trông như da hổ hoặc loang lổ dạng đám mây
S14|Nõn héo (thời kỳ đẻ nhánh)
S15|Bông bạc (thời kỳ trổ đòng)
S16|Sâu có màu vàng nhạt, chấm đen rõ ở cánh trước, ưa ánh sang
đèn, hoạt động mạnh về ban đêm

S17|Trứng sâu bám cả ổ trên mặt lá, phía trên có một lớp lông tơ màu
vàng nâu phủ lên
S18|Sâu non có màu trắng sữa
S19|Nhộng có màu vàng nhạt, nằm trong đốt thân gần sát gốc lúa
D01|Sâu cuốn lá
D02|Bạc lá, đốm sọc
SVTH: Nguyễn Thị Mai 17
Biểu diễn tri thức và suy luận GVHD: PGS.TS Đỗ Văn Nhơn
D03|Đạo ôn
D04|Khô vằn
D05|Sâu đục thân
Cấu trúc tập tin Rules.txt được lưu dưới dạng như sau:
S01 S02 S03 S04 S05 S06|D01
S07 S08 S09|D02
S10 S11 S12|D03
S13|D04
S14 S15 S16 S17 S18 S19|D05
4. Giao diện chương trình
Màn hình giới thiệu chung về chương trình và bắt đầu đi đến các giao diện thao
tác khác
SVTH: Nguyễn Thị Mai 18
Biểu diễn tri thức và suy luận GVHD: PGS.TS Đỗ Văn Nhơn
Hình 1: Màn hình giới thiệu
Màn hình thao tác chính của chương trình: cho phép người dùng lựa chọn những
biểu hiện cây lúa đang gặp phải và tiến hành Chẩn đoán. Sau khi xử lý, chương
trình hiển thị Kết quả chẩn đoán kèm theo cơ chế suy diễn đã áp dụng.
Hình 2: Màn hình chẩn đoán các loại sâu bệnh chính trên cây lúa
SVTH: Nguyễn Thị Mai 19
Kết thúc
Bắt đầu

Các triệu chứng thường gặp
Kết quả suy diễn trả về loại
bệnh lúa đang bị
Cơ chế suy luận được áp
dụng để tìm ra bệnh
Các biểu hiện cây lúa đang
mắc phải
Biểu diễn tri thức và suy luận GVHD: PGS.TS Đỗ Văn Nhơn
Màn hình quản lý danh mục triệu chứng: cho phép người dùng thao tác thêm các
triệu chứng mới cũng như xóa các triệu chứng không chính xác và chỉnh sửa khi
cần thiết.
SVTH: Nguyễn Thị Mai 20
Biểu diễn tri thức và suy luận GVHD: PGS.TS Đỗ Văn Nhơn
Hình 3: Màn hình quản lý danh mục các triệu chứng sâu bệnh của cây lúa
Màn hình quản lý danh mục luật suy dẫn: liệt kê các triệu chứng và các luật hiện có
trong dữ liệu hệ thống, đồng thời cho phép người dùng thao tác xử lý Thêm, Xóa,
Cập nhật dữ liệu về các luật suy dẫn.
SVTH: Nguyễn Thị Mai 21
Thêm vào danh mục các biểu hiện và
sâu bệnh của cây lúa
Biểu diễn tri thức và suy luận GVHD: PGS.TS Đỗ Văn Nhơn
Hình4: Màn hình quản lý các luật suy diễn
5. Hướng phát triển
Chương trình Chẩn đoán sâu bệnh chính trên cây Lúa minh họa cho phương
pháp Biểu diễn tri thức dùng hệ luật dẫn với các luật đơn giản, chỉ cho người dùng
thấy được các loại sâu bệnh dự đoán từ những biểu hiện cho trước. Những hướng
mở rộng của chương trình:
SVTH: Nguyễn Thị Mai 22
Các thao tác trên tập dữ liệu
luật dẫn

Thêm các luật suy diễn để
tìm ra các bệnh mới
Biểu diễn tri thức và suy luận GVHD: PGS.TS Đỗ Văn Nhơn
 Biểu diễn được lượng tri thức lớn với các tập luật phức tạp hơn. Cho
phép kết xuất từ các tập tin sẵn có.
 Cho phép người dùng nhận được kết quả loại bệnh và phương pháp
phòng trừ từ các triệu chứng cho trước.
 Sử dụng các phương pháp tối ưu hóa các tập luật, loại bỏ các luật dư thừa
để đảm bảo tính đúng dắn của chương trình.
 Ứng dụng Heuristic trong chẩn đoán các loại sâu bệnh mang lại hiệu quả
cao trong quản lý và biểu diễn tri thức về phòng trừ sâu bệnh đối với cây
trồng nông nghiệp.
IV. KẾT LUẬN
Với những ưu điểm vốn có, phương pháp biểu diễn tri thức bằng hệ luật dẫn
mang lại những hiệu quả nhất định trong các ứng dụng thực tế, dễ dàng hướng con
người đến những suy luận bằng các sự kiện và các luật cụ thể, rõ ràng.
Tuy nhiên, cũng chính ưu điểm này lại là một nhược điểm khi người lập trình
có xu hướng biểu diễn tri thức quy tụ vào các tập sự kiện và tập luật. Do đó, khi tiếp
cận với những nguồn tri thức mới, nên có sự tìm hiểu và chọn lọc phù hợp, linh hoạt
để đạt được hiệu quả tối ưu.
SVTH: Nguyễn Thị Mai 23
Biểu diễn tri thức và suy luận GVHD: PGS.TS Đỗ Văn Nhơn
II. TÀI LIỆU THAM KHẢO
[1] PGS. TS. Đỗ Văn Nhơn, Bài giảng biểu diễn tri thức và suy luận,
02/2014
[2] PSG. TS. Đỗ Văn Nhơn, Các hệ cơ sở tri thức
[3] Đinh Nguyễn Anh Dũng, Hoàng Kiếm, Biểu diễn tri thức sử dụng
luật dẫn xuất (luật sinh)
[4] Nguyễn Đình Thuân, Các hệ cơ sở tri thức, Đại học Nha Trang,
-4/2007

[5] Hồ Cẩm Hà, Các hệ thống thông minh, Chương 2 – Biểu diễn tri
thức, Khoa CNTT, Đại học Sư phạm Hà Nội, 2012
[6]
Và một số tài liệu khác.
SVTH: Nguyễn Thị Mai 24

×