Tải bản đầy đủ (.doc) (18 trang)

bài tập lớn môn hệ cơ sở tri thức đề tài người mua hàng thông thái

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 (278.43 KB, 18 trang )

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
***
BÀI TẬP LỚN MÔN
HỆ CƠ SỞ TRI THỨC
Đề tài: Người mua hàng thông thái
Nhóm sinh viên thực hiện:
Họ và tên: SHSV:
Đặng Trọng Đức 20090778
Nguyễn Ngọc Đạt 20090676
Phạm Văn Đông 20090762
Nguyễn Văn Tiến Thành 20092441
Chu Thị Thịnh 20092587
Giảng viên hướng dẫn: Phạm Văn Hải
Hà Nội, 09 – 2012
Báo cáo giữa kì môn Hệ cơ sở tri thức Nhóm 21
MỤC LỤC
MỤC LỤC 2
LỜI NÓI ĐẦU 3
1.Mục đích 4
2.Phạm vi 5
3.Các sự kiện, ngữ cảnh, cách biểu diễn tri thức 5
Sơ đồ tổng quát 5
3.1.Các sự kiện, ngữ cảnh 5
3.2.Cách biểu diễn tri thức Tham khảo tại [2] 6
Biểu diễn tri thức bởi các luật sản xuất 6
4.Động cơ suy điễn, các luật và diễn giải của các luật 9
4.1.Động cơ suy diễn, cách diễn giải các luật 9
B.Xử lý với các sự kiện không chắc chắn: 10
4.2.Các luật 12
4.3.Giải thích các file đính kèm 13


5.Sơ đồ kiến trúc hệ thống 14
KẾT LUẬN 17
TÀI LIỆU THAM KHẢO 18
2
Báo cáo giữa kì môn Hệ cơ sở tri thức Nhóm 21
LỜI NÓI ĐẦU
Từ khi thiết bị tính toán đầu tiên (máy tính Von Neuman) ra đời, đến những thiết
bị tính toán nhẹ, khả chuyển như laptop, tablet, thiết bị mobile, chúng ngày càng thâm
nhập vào cuộc sống, và là một phần không thể thiếu của mỗi con người.
Với sự tiến bộ của các công nghệ phát triển trí tuệ nhân tạo, những thiết bị tính
toán tưởng chừng như vô giác, và chỉ làm theo những gì được lập trình sẵn, đã có những
tri thức và sự suy luận dựa trên tri thức như con người. Chúng xuất hiện ngày càng
nhiều trong hầu hết các lĩnh vực của đời sống, từ quân đội đến y tế, quản lý, giáo dục.
Cuộc sống ngày càng hiện đại, con người càng bận rộn trong công việc. Nhu cầu
về sức khỏe, đặc biệt là nhu cầu dinh dưỡng trong mỗi bữa ăn hằng ngày, càng trở nên
quan trọng. Do đó, các câu hỏi đặt ra là: Làm thế nào để có được một bữa ăn đầy đủ
dinh dưỡng cho mỗi thành viên? Với chi phí hợp lý? Chất lượng thực phẩm đảm bảo?
Các vấn đề đó có thể được giải quyết bằng một hệ thống dựa trên tri thức con người,
cung cấp cho người nội trợ thông tin, cũng như gợi ý ra những quyết định xác đáng để
phục vụ cho nhu cầu dinh dưỡng của mình. Hệ thống trợ giúp quyết định này sẽ được
trình bày trong tài liệu này. Đầu tiên, chúng em xin giới thiệu về kiến trúc tổng quát của
một hệ thống dựa trên tri thức, sau đó là quy trình xây dựng hệ thống dựa trên tri thức.
Cuối cùng là phần trình bày về về quá trình thu thập tri thức một cách tổng thể và sơ
khai cho hệ thống này.
Chúng em xin được chân thành cảm ơn thầy Phạm Văn Hải, người trực tiếp giảng
dạy và hướng dẫn chúng em thực hiện bài tập lớn này. Trong bài báo cáo này còn có
phần thiếu sót, mong thầy sẽ đưa ra những nhận xét để bài báo cáo được hoàn thiện
hơn.
Xin chân thành cảm ơn tất cả tác giả của những cuốn sách, các bài báo khảo sát
thực tế mà chúng em đã sử dụng trong quá trình tìm hiểu vấn đề. Những kiến thức các

tác giả trình bày trong các tác phẩm đó đã giúp chúng em rất nhiều để hoàn thành báo
cáo này.
3
Báo cáo giữa kì môn Hệ cơ sở tri thức Nhóm 21
1. Mục đích
Xây dựng hệ chuyên gia hỗ trợ người dùng trong việc lựa chọn các sản phẩm theo
nhu cầu.
Bằng kiến thức đầu vào là các thông tin về:
- Độ tuổi
- Giới tính
- Loại nghề nghiệp
- Sở thích
- Tình trạng bệnh lý
- …
Hệ thống sẽ đưa ra các gợi ý về:
- Các loại thực phẩm nên ăn: kết quả trả về là tên loại thực phẩm như: rau cải,
rau muống, cá biển, cà chua, gấc, …
- Đưa ra giá trị dinh dưỡng trong các loại thực phẩm đó để người dùng có thêm
kiến thức về giá trị dinh dưỡng có trong các loại thực phẩm mà hệ thống đã
gợi ý. (Tạo lòng tin đối với người dùng)
- Các loại Vitamin để giúp cơ thể phát triển khỏe mạnh.
Ví dụ: Trẻ hơn 6 tháng tuổi và dưới 1 tuổi:
Tham khảo tại [3]
o Uống nước ép Cà rốt
 Giải thích vì sao uống nước ép Cà rốt: Uống một lượng nhất định
nước ép cà rốt tươi mỗi ngày, sẽ giúp trẻ khỏe và linh hoạt hơn.
Nước ép cà rốt có thể làm tăng sự thèm ăn và chống nhiễm
trùng. Đặc biệt, bà mẹ mới sinh và đang cho con bú, một cốc
nước ép cà rốt/ngày, sẽ có nhiều Sữa hơn.
Vì cà rốt rất giàu vitamin A nên nước ép cà rốt sẽ nuôi dưỡng và

phát triển cơ quan thị giác của bé.
o Uống nước cần tây
 Giải thích: Cần tây có hương vị thơm đặc trưng, tăng cường sự
thèm ăn. Cần tây rất giàu vitamin A, B1, B2, C… rất cần cho trẻ
trong giai đoạn đầu này.
Nên cho trẻ uống nước cần tây vào buổi sáng và giữa các bữa
ăn, để thúc đẩy quá trình hoàn thiện cơ thể và tăng cường chiều
cao.
4
Báo cáo giữa kì môn Hệ cơ sở tri thức Nhóm 21
2. Phạm vi
Hiện tại, hệ thống đang được xây dựng ở phạm vi hẹp, tức là:
- Đầu vào: dữ kiện đầu vào cho hệ thống là đơn giản (vì đầu vào phụ thuộc vào
đầu ra). Là các thông tin sinh lý và bệnh lý của người dùng ở mức cơ bản.
- Đầu ra: Hệ thống tập trung vào việc đưa ra các loại thực phẩm (đưa ra tên gọi
của loại thực phẩm đó). Giá trị dinh dưỡng của các loại thực phẩm.
- Áp dụng cho khu vực miền Bắc:
o Vì: sự phân bố các loại thực phẩm là khác nhau giữa các vùng miền (có
thể là ít hoặc nhiều), sự khác nhau về sở thích ăn uống, phong tục, tập
quán.
o Nên: hệ thống tạm thời sẽ được xây dựng ở khu vực miền Bắc (Hà Nội)
để đảm bảo sự chính xác của hệ thống và đơn giản hóa việc tìm kiếm
thực phẩm cho người dùng.
Tương lai, khi thu thập đủ tri thức về các khu vực khác hệ thống sẽ được mở rộng thêm.
Việc mở rộng sẽ được đơn giản bằng chức năng của hệ thống cung cấp cho người dùng
(là các chuyên gia).
3. Các sự kiện, ngữ cảnh, cách biểu diễn tri thức
Sơ đồ tổng quát
3.1. Các sự kiện, ngữ cảnh
5

Báo cáo giữa kì môn Hệ cơ sở tri thức Nhóm 21
Tập các sự kiện: F = {f
1
, f
2
, f
3
, …, f
m
}
Các sự kiện của tập F: về tuổi, giới tính, …
- f
1
: tuổi < 6 tháng
- f
2
: tuổi > 6 AND tuổi <= 8 tháng
- f
3
: tuổi > 8 AND tuổi <= 10 tháng
- f
4
: tuổi > 10 AND tuổi <= 12 tháng
- f
5
: Tuổi > 1 năm AND Tuổi <= 3 năm
- f
6
: tuổi = 6
- f

7
: Tuổi >= 7 AND Tuổi <= 9
- f
8
: Tuổi >= 10 AND Tuổi <= 12
- f
9
: Tuổi >= 13 AND Tuổi <= 15 AND Giới tính = Nữ
- f
10
: Tuổi >= 13 AND Tuổi <= 15 AND Giới tính = Nam
- ….
Xem trong file rule.xlsx tại sheet rules, ở cột IF, các giá trị ở cột IF chính là các sự kiện
3.2. Cách biểu diễn tri thức
Tham khảo tại [2]
Tri thức của một hệchuyên gia có thể được biểu diễn theo nhiều cách khác nhau. Thông
thường người ta sửdụng các cách sau đây :
- Biểu diễn tri thức bởi các luật sản xuất
- Biểu diễn tri thức nhờ mệnh đề logic
- Biểu diễn tri thức nhờ mạng ngữ nghĩa
- Biểu diễn tri thức nhờ ngôn ngữ nhân tạo
Ngoài ra, người ta còn sử dụng cách biểu diễn tri thức nhờ các sự kiện không chắc
chắn, nhờ bộ ba: đối tượng, thuộc tính và giá trị (O-A-V: Object-Attribute-Value), nhờ
khung (frame), v.v Tuỳ theo từng hệ chuyên gia, người ta có thể sử dụng một cách
hoặc đồng thời cả nhiều cách.
Trong bài này, chúng em sẽ sử dụng cách “Biểu diễn tri thức bởi các luật sản xuất”.
Biểu diễn tri thức bởi các luật sản xuất
Hiện nay, hầu hết các hệ chuyên gia đều là các hệ thống dựa trên luật, bởi các lý do
như sau:
- Bản chất đơn thể (modular nature). Có thể đóng gói tri thức và mở rộng hệ

chuyên gia một cách dễ dàng.
6
Báo cáo giữa kì môn Hệ cơ sở tri thức Nhóm 21
- Khả năng diễn giải dễ dàng (explanation facilities). Dễ dàng dùng luật để diễn
giải vấn đề nhờ các tiền đề đặc tả chính xác các yếu tố vận dụng luật, từ đó
rút ra được kết quả.
- Tương tự quá trình nhận thức của con người. Dựa trên các công trình của
Newell và Simon, các luật được xây dựng từ cách con người giải quyết vấn đề.
Cách biểu diễn luật nhờ IF THEN đơn giản cho phép giải thích dễ dàng cấu trúc
tri thức cần trích lọc.
Luật là một kiểu sản xuất được nghiên cứu từ những năm 1940. Trong một hệ
thống dựa trên luật, công cụ suy luận sẽ xác định những luật nào là tiên đề thỏa mãn các
sự việc.
Các luật sản xuất thường được viết dưới dạng IF THEN. Có hai dạng:
IF < điều kiện > THEN < hành động >
hoặc
IF < điều kiện > THEN < kết luận > DO < hành động >

Tuỳ theo hệ chuyên gia cụ thể mà mỗi luật có thể được đặt tên. Chẳng hạn mỗi
luật có dạng Rule: tên. Sau phần tên là phần IF của luật.
Phần giữa IF và THEN là phần trái luật (LHS: Left - Hand -Side), có nội dung được
gọi theo nhiều tên khác nhau, như tiền đề (antecedent), điều kiện (conditional part),
mẫu so khớp (pattern part).
Phần sau THEN là kết luận hay hậu quả(consequent). Một sốhệchuyên gia có
thêm phần hành động (action) được gọi là phần phải luật(RHS: Right - Hand -Side).
Ví dụ:
Rule: Đèn đỏ
IF
Đèn đỏsáng
THEN

Dừng
Rule: Đèn-xanh
IF
Đèn xanh sáng
THEN
Đi
Trong ví dụ trên, Đèn đỏ sáng và Đèn xanh sáng là những điều kiện, hay những khuôn
7
Báo cáo giữa kì môn Hệ cơ sở tri thức Nhóm 21
mẫu. Sau đây là một số ví dụ khác :
Rule: Điều trị sốt
IF
Bệnh nhân sốt
THEN
cho uống thuốc Aspirin
Hệ thống chẩn đoán xe máy (OPS5)
IF
Máy xe không nổ khi khởi động
THEN
Dự đoán: Xe bịpanne sức nén. Pittong, bạc xéc-măng và lòng xy lanh sai
tiêu chuẩn, dễ tạo thành những khe hở nhỏ làm cho pittong không còn kín nên
hoà khí không được nén lên đầy đủ. Xử lý : nên điều chỉnh hoặc thay mới pittong,
bạc xéc-măng và lòng xy lanh cho đúng tiêu chuẩn
IF
máy xe nổ không ổn định, OR
máy xe nổ rồi lại tắt, AND
bugi khô
THEN
Dự đoán : Xe đã bị nghẹt xăng. Xử lý: nên xúc rửa bình xăng và bộ khoá
xăng của xe.

MYCIN hệ thống chẩn đoán bệnh viêm màng não và hiện tượng có vi khuẩn bất thường
trong máu (nhiễm trùng)
IF
Tại vị trí vết thương có máu, AND
Chưa biết chắc chắn cơ quan bị tổn thương, AND
Mở đầu 17
Chất nhuộm màu âm tính, AND
Vi khuẩn có dạng hình que, AND
Bệnh nhân bị sốt cao
THEN
Cơ quan có triệu chứng (0.4) nhiễm trùng
8
Báo cáo giữa kì môn Hệ cơ sở tri thức Nhóm 21
4. Động cơ suy điễn, các luật và diễn giải của các luật
4.1. Động cơ suy diễn, cách diễn giải các luật
Đầu vào: Người dùng nhập vào thông tin: Tuổi, Bệnh / Triệu chứng (nếu có), Công việc
Đầu ra: Danh sách thực phẩm mà người dùng nên ăn trong một tuần.
A. Quá trình xử lý của hệ thống:
Bước 1: Tạo ra vector dinh dưỡng cần cung cấp để đáp ứng yêu cầu
Tuổi DinhDuongCan1 (v
1
A,v
2
B,v
3
C,v
4
D,v
5
E,v

6
Protein,v
7
ChatBeo,v
8
Carbohydrate,v
9
ChatXo,v
10
Cholesterol,v
11
Canxi,v
12
Photpho,v
13
Sắt,v
14
Natri,v
15
Kali,v
16
Beta-catoten)
Bệnh / Triệu chứng DinhDuongCan2 (v
1
A,v
2
B,v
3
C,v
4

D,v
5
E,v
6
Protein,v
7
ChatBeo,v
8
Carbohydrate,v
9
ChatXo,v
10
Cholesterol,v
11
Canxi,v
12
Photpho,v
13
Sắt,v
14
Natri,v
15
Kali,v
16
Beta-catoten)
Công việcDinhDuongCan3 (v
1
A,v
2
B,v

3
C,v
4
D,v
5
E,v
6
Protein,v
7
ChatBeo,v
8
Carbohydrate,v
9
ChatXo,v
10
Cholesterol,v
11
Canxi,v
12
Photpho,v
13
Sắt,v
14
Natri,v
15
Kali,v
16
Beta-catoten)
DinhDuongTongHop = DinhDuongCan1 + DinhDuongCan2 + DinhDuongCan3.
Bước 2: Suy diễn từ đầu vào đến đầu ra

Thực phẩm 1 (g)  DinhDuongDapUng (v
1
A,v
2
B,v
3
C,v
4
D,v
5
E,v
6
Protein,v
7
ChatBeo,v
8
Carbohydrate,v
9
ChatXo,v
10
Cholesterol,v
11
Canxi,v
12
Photpho,v
13
Sắt,v
14
Natri,v
15

Kali,v
16
Beta-catoten).
Thực phẩm 2 (g)  DinhDuongDapUng (v
1
A,v
2
B,v
3
C,v
4
D,v
5
E,v
6
Protein,v
7
ChatBeo,v
8
Carbohydrate,v
9
ChatXo,v
10
Cholesterol,v
11
Canxi,v
12
Photpho,v
13
Sắt,v

14
Natri,v
15
Kali,v
16
Beta-catoten).
Thực phẩm 3 (g)  DinhDuongDapUng (v
1
A,v
2
B,v
3
C,v
4
D,v
5
E,v
6
Protein,v
7
ChatBeo,v
8
Carbohydrate,v
9
ChatXo,v
10
Cholesterol,v
11
Canxi,v
12

Photpho,v
13
Sắt,v
14
Natri,v
15
Kali,v
16
Beta-catoten).

9
Báo cáo giữa kì môn Hệ cơ sở tri thức Nhóm 21
Thực phẩm n (g)  DinhDuongDapUng (v
1
A,v
2
B,v
3
C,v
4
D,v
5
E,v
6
Protein,v
7
ChatBeo,v
8
Carbohydrate,v
9

ChatXo,v
10
Cholesterol,v
11
Canxi,v
12
Photpho,v
13
Sắt,v
14
Natri,v
15
Kali,v
16
Beta-catoten).
 ThucPhamTrongTuan(TP
1
, TP
2
,…, TP
k
) (g) (1)
Trong đó:
TP
k
cho biết lượng thực phẩm của loại k là gì và bao nhiêu gam.
Để thực hiện quá trình chuyển từ vế trái sang vế phải của (1). Ta giải quyết bài toán cái
túi, như sau:
- Mỗi đồ vật tương ứng với mỗi loại thực phẩm, với trọng lượng ứng với vector
DinhDuongDapUng cua loại thực phẩm đó.

- Trọng lượng của cái túi là vector DinhDuongTongHop + vector hằng số
(10dv,10dv,10dv,10dv,… 10dv) (Vector hằng số để đảm bảo lượng
DinhDuongDapUng thoa mãn nhu cầu của người dùng).
- Giá trị của cái túi là tổng số gam tối thiếu của tập các loại thực phẩm cần cung
cấp trong một tuần.
Có thể thực hiện quá trình này bằng phương pháp thông thường hoặc giải thuật gen di
truyền.
Với quần thể là tổng hợp của các ThucPhamTrongTuan. Các Gen là các TP
i
B. Xử lý với các sự kiện không chắc chắn:
Nguyên nhân:
Nguồn dữ liệu hiện tại không đầy đủ về tính định lượng của lượng dinh dưỡng nhu cầu
tương ứng với từng độ tuổi, từng Bệnh (hay triệu chứng), và với từng dạng công việc
khác nhau.
Giải pháp:
Cung cấp vector DinhDuongCan khởi tạo, ứng với từng độ tuổi, từng Bệnh (hay triệu
chứng), và với từng dạng công việc. Các giá trị định lượng của vector này được tạo ra
bằng cảm nhận của người kĩ sư tri thức, thông qua độ đáp ứng của các thành phần dinh
10
Báo cáo giữa kì môn Hệ cơ sở tri thức Nhóm 21
dưỡng. (Ví dụ: người bị mỏi mắt  Chủ yếu là do thiếu vitamin A  Hàm lượng vitamin
được định lượng là 10mcg/ngày, hay 70mcg/tuan).
Vector DinhDuongCan chưa thật sự phản ánh khách quan, do đó cần qua bước điều
chỉnh. Nhưng dựa vào đâu mà ta có thể điều chỉnh cho thích hợp? Ở ứng dụng này,
chúng tôi dựa vào các bệnh ( triệu chứng) xuất hiện để đánh giá mức độ thiếu (thừa) các
thành phần dinh dưỡng của cơ thể. Ví dụ, đối với công việc ngồi nhiều với máy tính, cần
bổ sung nhiều vitamin A, và theo vector DinhDuongCan được khởi tạo với lượng vitamin
A cần thiết là cao (50mcg/ngày chẳng hạn). Nhưng nếu có hơn 50 / 100 người vẫn mắc
chứng mỏi mắt này, thì ta cần tăng lượng vitamin A lên (70mcg / ngày chẳng hạn).
Hơn thế nữa, vector DinhDuongCan của từng bệnh (hay triệu chứng) cũng cần được

điều chỉnh cho thích hợp. Ví dụ, có 100 người có triệu chứng đau măt, nhưng có trên 50
vẫn chưa có dấu hiệu hết hoặc giảm triệu chứng, thì ta cần tăng lượng vitamin A của
vector DinhDuongCan của triệu chứng đau mắt này.
Chúng tôi đề xuất cơ chế điều chỉnh đối với Tuổi và Công việc theo một nhóm, và của
Bệnh (Triệu chứng) theo một nhóm.
Đối với Tuổi và Công việc, xét 100 người thực hiện theo chế độ dinh dưỡng ứng với cặp
tuổi và công việc (Ví dụ 20-30 tuổi và Làm việc nhiều với máy tính, ta được 1 cặp):
- Nếu ít hơn 25 người mắc các Bệnh (hoặc có các triệu chứng) có nguồn gốc từ việc
thiếu 1 hoặc 1 nhóm các thành phần dinh dưỡng (A, B, C, Sắt, Canxi, …) nào đó,
thì vẫn giữ nguyên vector DinhDuongCan hiện thời.
- Nếu bằng hoặc hơn 25 người và ít hơn 75 người mắc các Bệnh (hoặc có các triệu
chứng) có nguồn gốc từ việc thiếu 1 hoặc 1 nhóm các thành phần dinh dưỡng (A,
B, C, Sắt, Canxi, …) nào đó, thì ta tiến hành tăng lượng dinh dưỡng thành phần
của 1 hoặc nhóm các dinh dưỡng thành phần ở vector DinhDuongCan hiện thời.
Độ tăng là một hằng số tùy vào có bao nhiêu người mắc bệnh (số lượng người cụ
thể dao động từ khoảng 25 đến 75 người);
- Nếu bằng hoặc hơn 75 người người mắc các Bệnh (hoặc có các triệu chứng) có
nguồn gốc từ việc thiếu 1 hoặc 1 nhóm các thành phần dinh dưỡng (A, B, C, Sắt,
Canxi, …) nào đó, thì ta tiến hành theo dõi những người này, và tăng thêm lượng
dinh dưỡng thành phần theo hàng tuần, cho đến khi bệnh ( triệu chứng) giảm
hoặc hết hoàn toàn. Sau đó, với mỗi người, ta sẽ nhận được vector
DinhDuongCan phù hợp với chính người đó. Ta lấy trung bình các vector
DinhDuongCan của những người này và của vector DinhDuongCan hiện thời, để
thay thế cho vector DinhDuongCan hiện thời.
Đối với Bệnh (Triệu chứng), xét 100 người thực hiện theo chế độ dinh dưỡng ứng với
mỗi Bệnh (Triệu chứng) (Ví dụ, triệu chứng mỏi mắt).
11
Báo cáo giữa kì môn Hệ cơ sở tri thức Nhóm 21
- Nếu ít hơn 25 người vẫn không giảm bệnh (triệu chứng), thì vẫn nguyên vector
DinhDuongCan hiện thời.

- Nếu bằng hoặc hơn 25 người và ít hơn 75 người vẫn không giảm bệnh (triệu
chứng), thìta tiến hành tăng lượng dinh dưỡng thành phần của 1 hoặc nhóm các
dinh dưỡng thành phần ở vector DinhDuongCan hiện thời. Độ tăng là một hằng
số tùy vào có bao nhiêu người mắc bệnh (số lượng người cụ thể dao động từ
khoảng 25 đến 75 người
- Nếu bằng hoặc lớn hơn 75 người vẫn không giảm bệnh (triệu chứng), thìta tiến
hành theo dõi những người này, và tăng thêm lượng dinh dưỡng thành phần
theo hàng tuần, cho đến khi bệnh (triệu chứng) giảm hoặc hết hoàn toàn. Sau đó,
với mỗi người, ta sẽ nhận được vector DinhDuongCan phù hợp với chính người
đó. Ta lấy trung bình các vector DinhDuongCan của những người này và của
vector DinhDuongCan hiện thời, để thay thế cho vector DinhDuongCan hiện thời.
4.2. Các luật
Các luật sẽ có dạng: IF < điều kiện > THEN < hành động >
Xem chi tiết trong file rule.xlsx – rules đính kèm, sau đây là 1 vài ví dụ cơ bản của hệ
thống, sau đây là 1 ví dụ đơn giản về 1 vài luật:
Ví dụ:
Rule: ăn theo tuổi
IF
Tuổi < 6 tháng tuổi
THEN
Sữa mẹ (100%)
Rule: ăn theo bệnh lý
IF
Bệnh = Gout
THEN
Bổ sung = Loại 2 AND
Hạn chế = Loại 2 AND
Tránh = Loại 2
Tập luật: bổ sung (tập luật cho biến bổ sung ở luật trên)
IF

Bổ sung = Loại 2
12
Báo cáo giữa kì môn Hệ cơ sở tri thức Nhóm 21
THEN
Rau xanh, trái cây tươi AND Thực phẩm = Loại 1 AND
Uống nhiều nước AND Thực phẩm = Loại 2 AND
Các loại ngũ cốc AND Thực phẩm = Loại 3 AND
Sữa, trứng AND Thực phẩm = Loại 4
Tập luật: thực phẩm
IF
Thực phẩm = Loại 2
THEN
Nước khoáng có bicarbonate, nước sắc lá xakê.
4.3. Giải thích các file đính kèm
Giải thích các sheet trong file excel:
File: rule.xlsx
- rule.xlsx – rules: chứa các tập luật.
- rule.xlsx – Benhly: là file chứa các loại bệnh cần phải chú ý đến nhu cầu dinh
dưỡng (thói quen ăn uống ảnh hưởng đến sức khỏe)
o Cơ chế tập luật là:
IF
“tên bệnh”
THEN
bổ sung “tên vitamin” AND hạn chế AND tránh AND lời khuyên
- rule.xlsx – Bangdinhduong: chứa bảng thực phẩm – độ dinh dưỡng có trong
thực phẩm đó.
Tham khảo tại [4]
o Cơ chế tập luật là:
IF “tên thực phẩm” THEN “danh sách dinh dưỡng đáp ứng”
- rule.xlsx – Vitamin-Tacdung: chứa các bản ghi về Các loại vitamin và công

dụng của nó nó và Triệu chứng khi thiếu vitamin này. (Giúp người dùng hiểu
thêm về ý nghĩa của Vitamin)
o Cơ chế tập luật là:
IF “tên vitamin” THEN “tác dụng”
IF “triệu chứng” THEN thiếu “vitamin”
- rule.xlsx – Tamtrang: chứa các sự kiện là các trạng thái của con người và các
gợi ý về chế độ dinh dưỡng giúp cơ thể hết trạng thái trên.
13
Báo cáo giữa kì môn Hệ cơ sở tri thức Nhóm 21
o Cơ chế tập luật là:
IF “trạng thái” THEN “tâm trạng”
- rule.xlsx – Congviec: chứa các loại công việc
o Cơ chế tập luật là:
IF “Loại công việc” THEN “vitamin” AND “Thức ăn”
Kết luận: Từ các sheet trên, ta sẽ có 1 cơ chế thêm, bớt các giá trị Vitamin phụ thuộc vào
bộ giá trị mà người dùng nhập vào.
5. Sơ đồ kiến trúc hệ thống
Giải thích kiến trúc hệ thống:
- GUI: Giao diện người dùng, được dùng để tiếp nhận các yêu cầu xử lý từ
người dùng, cũng như là nơi để người dùng nhận lại kết quả hiển thị từ hệ
thống.
- Controler: Tiếp nhận yêu cầu của người dùng, thực hiện quá trình tiền xử lý,
rồi chuyển cho các mô đun liên quan để xử lý, cuối cùng nhận lại kết quả, và
trả kết quả cho người dùng.
- Knowledge Base: Cơ sở tri thức, nơi chứa tập sự kiện và tập luật để phục vụ
cho việc xử lý và trả lại kết quả cho người dùng.
14
Báo cáo giữa kì môn Hệ cơ sở tri thức Nhóm 21
- Inference Engine: Động cơ suy diễn. Tiếp nhận dữ liệu đầu vào của người
dùng, thực hiện việc truy cập cơ sở tri thức để lấy tập sự kiện và tập luật để

xử lý, suy ra kết luật có ích để trả về người dùng, đồng thời nó lưu vết những
thông tin liên quan đến quá trình suy diễn vào bộ nhớ tạm thời, để có thể đáp
ứng yêu cầu giải thích của người dùng.
- Temporary Memory: Chứa những thông tin cần thiết để người dùng có thể
biết quá trình xử lý của hệ thống, cũng như vì sao kết quả trả ra lại có ích đối
với họ.
- Explanation Mechanism: Hệ giải thích giúp cho người dùng có thể hiểu được
cách suy luận của hệ thống để có thể đưa ra kết luận cuối cùng.
Hệ thống này sẽ có các luồng sự kiện như sau:
1. Người dùng nhận sự hỗ trợ, tư vấn của hệ thống từ thông tin đầu vào là tuổi,
bệnh / triệu chứng, công việc:
- Người dùng nhập vào Tuổi, Bệnh/ Triệu chứng, Công việc
- Controller nhận yêu cầu, chuyển cho bộ Inference Engine để xử lý
- Inference Engine sử dụng tập sự kiện, và tập luật từ Knowledge Base để suy
diễn ra kết quả cần thiết để đáp ứng yêu cầu người dùng. Sau đó nó trả lại kết
quả cho Controller, đồng thời chuyển những thông tin cần cung cấp thêm đến
Temporary Memory
- Controller chuyển kết quả cho người dùng, và chờ đợi các yêu cầu tiếp theo.
2. Người dùng đưa ra yêu cầu giải thích rõ hơn cho kết quả mà hệ thống trả về
- Sau khi có kết quả trả về từ Controller (đúng hơn là từ Inference Engine),
người dùng có thể yêu cầu hệ thống cung cấp thông tin để người dùng có thể
hiểu quá trình suy diễn, cũng giải thích để người dùng có thể tin cậy vào kết
quả nhận được.
- Explanation Mechanism nhận yêu cầu của người dùng thông qua Controller.
Sau đó nó truy cập Temporary Memory để lấy các thông tin giải thích, chuyển
cho Controller
- Controller hiển thị những thông tin giải thích nhận được từ Explanation
Mechanism cho người dùng.
3. Người kĩ sư tri thức (các chuyên gia) sẽ cập nhật (thêm, sửa, xóa) cơ sở tri thức,
bao gồm cập nhật cả tập sự kiện và tập luật.

- Người kĩ sư tri thức muốn cập nhật lại cơ sở tri thức, gửi yêu cầu cập nhật đến
hệ thống.
15
Báo cáo giữa kì môn Hệ cơ sở tri thức Nhóm 21
- Controller truy cập, hiển thị các thông tin của cơ sở tri thức Knowledge Base,
đồng thời tiếp nhận các yêu cầu cập nhật tiếp theo của người kĩ sư tri thức, và
cập nhật lại Knowledge Base.
16
Báo cáo giữa kì môn Hệ cơ sở tri thức Nhóm 21
KẾT LUẬN
Hệ thống đã được xây dựng xong các phần cơ bản như: tập các sự kiện, ngữ cảnh,
xác định được cách biểu diễn tri thức, tập các luật, …
17
Báo cáo giữa kì môn Hệ cơ sở tri thức Nhóm 21
TÀI LIỆU THAM KHẢO
[1] – Slide bài giảng môn Hệ cơ sở tri thức, Phạm Văn Hải, 2012
[2] – Giáo trình Hệ chuyên gia, PGS.TS. Phan Huy Khánh, 2004
[3] – Website:
[4] – Website:

18

×