MỤC LỤC
Chương 1 TỔNG QUAN VỀ HỆ CHUYÊN GIA 2
1.1 Hệ chuyên gia 2
Chương 2 THU THẬP TRI THỨC VÀ ỨNG DỤNG PROLOG 8
XÂY DỰNG HỆ CHUYÊN GIA HỖ TRỢ CHẨN ĐOÁN 8
VÀ ĐIỀU TRỊ MỘT SỐ BỆNH THƯỜNG GẶP Ở TRẺ EM 8
2.1 Thu thập tri thức một số bệnh thường gặp ở trẻ em 8
2.2 Xây dựng cơ sở tri thức dựa trên luật 11
2.3 Xây dựng ứng dụng hệ chẩn đoán bệnh trẻ em bằng Prolog và Java 15
2.4 Chương trình và kết quả thực nghiệm 17
TÀI LIỆU THAM KHẢO 22
LỜI MỞ ĐẦU
Hệ chuyên gia là một trong những lĩnh vực của trí tuệ nhân tạo được nghiên cứu
và phát triển từ giữa thập niên 60, góp phần tạo ra các hệ thống có khả năng trí tuệ
của con người, giải quyết các vấn đề dựa trên một tập luật phân tích thông tin và
đưa lời khuyên về trình tự các hành động cần thực hiện để giải quyết vấn đề.
Hệ hỗ trợ ra quyết định GVHD: PGS.TS. ĐỖ PHÚC
Nhiều hệ chuyên gia đã được thiết kế và xây dựng để phục vụ trong nhiều lĩnh
vực y học, kế toán, điều khiển tiến trình (process control), dịch vụ tư vấn tài chính
(financial service), tài nguyên con người (human resources), trong đó y khoa là
một trong những lĩnh vực được áp dụng đầu tiên, cung cấp các công cụ hữu hiệu
cho những áp dụng chẩn đoán bệnh, với mục đích trợ giúp các bác sĩ trong việc
chẩn đoán và điều trị bệnh.
Hiện nay có nhiều chương trình chẩn đoán bệnh dành cho người lớn mà ít có
chương trình chuyên biệt phục vụ riêng cho trẻ em. Chính vì lý do đó em chọn đề
tài xây dựng hệ chuyên gia hỗ trợ chẩn đoán và điều trị một số bệnh thường gặp ở
trẻ em như bệnh: sởi, quai bị, rubella, thủy đậu, sốt xuất huyết,… Chương trình cho
phép chẩn đoán, đưa ra kết luận bệnh, các triệu chứng và đơn thuốc cho trẻ em.
Chương trình cải tiến và phát triển các mục tiêu “Hướng phát triển” của bài tiểu
luận [5] chưa thực hiện.
CHƯƠNG 1
(6) Tiếp nhận tri thức
Bộ phận giải thích sẽ trả lời hai câu hỏi là WHY và HOW, câu hỏi WHY nhằm
mục đích cung cấp các lý lẻ để thuyết phục người sử dụng đi theo con đường suy
diễn của hệ chuyên gia. Câu hỏi HOW nhằm cung cấp các giải thích về con đường
mà hệ chuyên gia sử dụng để mang lại kết quả.
HVTH: Vũ Phát Lộc – CH1301097 Trang 3
Hệ hỗ trợ ra quyết định GVHD: PGS.TS. ĐỖ PHÚC
Hình 1. Các thành phần của hệ chuyên gia
1.1.3 Các bước xây dựng hệ chuyên gia
Thu thập tri thức của chuyên gia.
Chuyển tri thức của chuyên gia vào máy tính.
Suy diễn các tri thức thu thập được.
Xây dựng các tập luật từ tri thức.
Giải thích các tập luật.
1. Thu thập tri thức của chuyên gia
Các kiến thức, tri thức có được từ sách vở, từ huấn luyện, từ kinh nghiệm tích
lũy được.
2. Chuyển tri thức vào máy tính
HVTH: Vũ Phát Lộc – CH1301097 Trang 4
Hệ hỗ trợ ra quyết định GVHD: PGS.TS. ĐỖ PHÚC
Mục tiêu của hệ chuyên gia là chuyển kiến thức của các chuyên gia vào máy
tính và sau đó đến mọi người. Tri thức có 2 loại là Sự kiện và Tập các luật. Tri
thức được lưu trữ trong Knowledge base.
3. Suy diễn
Các chương trình máy tính được tạo ra để thực hiện việc suy diễn các tri thức
đưa vào, từ đó hỗ trợ ra quyết định cho người sử dụng, được biểu diễn bằng
Inference Engine.
4. Tập các luật sinh
Luật có dạng: Nếu thì
"NẾU điều kiện xảy ra THÌ hành động sẽ được thi hà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").
Để 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:
Hình 2. Cơ chế suy diễn của suy diễn lùi
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ệ
HVTH: Vũ Phát Lộc – CH1301097 Trang 6
Hệ hỗ trợ ra quyết định GVHD: PGS.TS. ĐỖ PHÚC
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).
1.1.5 Ưu điểm và nhược điểm của hệ chuyên gia
Ưu điểm:
• Cải thiện chất lượng về việc ra quyết định.
• Tăng năng suất.
• Giảm thiểu thời gian ra quyết định.
• Tăng chất lượng sản phẩm và các tiến trình ra quyết định.
• Nắm bắt được tri thức chuyên gia.
• Có thể ra quyết định với tri thức không đầy đủ và không chắc chắn.
• Tăng cường khả năng ra quyết định và giải quyết vấn đề.
• Cải thiện tiến trình ra quyết định.
• Sử dụng được tri thức của chuyên gia từ xa.
• Tăng cường các hệ thống MIS khác.
Nhược điểm:
• Triệu chứng: sốt, nhức đầu, sưng tuyến mang tai một hoặc cả hai bên, đau
nhức khi nhai.
• Biến chứng: viêm tinh hoàn với xác suất 1/5 nếu bệnh xảy ra ở trẻ lớn và
người lớn, tình trạng này có thể dẫn đến vô sinh về sau nhưng với một tỷ lệ
rất nhỏ. Ngoài ra bệnh còn có thể gây viêm màng não, viêm tụy và gây
chứng điếc vĩnh viễn.
• Chăm sóc:
HVTH: Vũ Phát Lộc – CH1301097 Trang 8
Hệ hỗ trợ ra quyết định GVHD: PGS.TS. ĐỖ PHÚC
o Nếu trẻ sốt hoặc đau nhiều có thể cho dùng thuốc hạ sốt giảm đau.
o Cho ăn thức ăn lỏng, dễ nuốt.
o Chăm sóc, vệ sinh răng miệng.
o Nằm nghỉ ngơi.
2.1.3 Bệnh rubella
• Triệu chứng: sốt nhẹ, phát ban lúc đầu ở mặt sau đó lan xuống dưới, có thể
kèm theo sưng hạch, đau khớp.
• Biến chứng: Trẻ nhiễm rubella thường có triệu chứng nhẹ và tự khỏi bệnh, ít
khi xảy ra biến chứng. Nhưng đối với phụ nữ khi mang thai bị bệnh rubella,
đứa trẻ sinh ra sẽ có nhiều nguy cơ mắc các dị tật bẩm sinh như điếc, mù,
bệnh tim bẩm sinh hoặc kém phát triển.
• Chăm sóc:
o Cho dùng thuốc hạ sốt khi trẻ sốt.
o Nâng sức đề kháng: ăn uống hợp lý, dùng thêm nước trái cây như nước
cam, nước chanh.
o Giữ gìn vệ sinh cho trẻ.
2.1.4 Bệnh thủy đậu
• Triệu chứng:
o Bé sốt nhẹ, đau họng, nhức đầu.
o Nổi hồng ban có kích thước vài mm, sau đó nhanh chóng chuyển thành
bóng nước, lúc đầu chứa dịch trong sau 24 giờ thì hóa đục.
• Chăm sóc:
o Cho trẻ uống thuốc hạ sốt Paracetamol, lau mát bằng nước ấm để tránh
biến chứng sốt cao co giật.
HVTH: Vũ Phát Lộc – CH1301097 Trang 10
Hệ hỗ trợ ra quyết định GVHD: PGS.TS. ĐỖ PHÚC
o Uống nhiều nước như nước cam, chanh, oresol, nước sôi để nguội, vẫn
tiếp tục cho bú sữa, cho ăn cháo, bột.
o Theo dõi vào thời điểm khi trẻ hết sốt xem có biểu hiện trở nặng lại. Nếu
trẻ vẫn có dấu hiệu trở nặng như ói mửa nhiều, bứt rứt, quấy khóc, bỏ bú,
tay chân lạnh, tím, vã mồ hôi, ói ra máu, đi tiêu ra máu phải đưa trẻ đến
bệnh viện để được điều trị kịp thời.
2.2 Xây dựng cơ sở tri thức dựa trên luật
2.2.1 Mô tả tri thức dữ liệu bệnh bằng tập luật
Mã luật
Chẩn đoán
Giả thiết Kết luận
R1 IF Phát ban
AND Sốt
AND Chảy mũi
AND Ho
AND Đỏ mắt
THEN Bệnh sởi
R2 IF Sưng tuyến mang tai
AND Đau nhức khi nhai
AND Sốt
AND Nhức đầu
THEN Bệnh quai bị
R3 IF Sưng hạch
AND Phát ban
AND Sốt
Phát biểu Vị từ
X là các triệu chứng của bệnh sởi trieuchungsoi(X)
X là các triệu chứng của bệnh quai bị trieuchungquaibi(X)
X là các triệu chứng của bệnh rubella trieuchungrubella(X)
X là các triệu chứng của bệnh thủy đậu trieuchungthuydau(X)
X là các triệu chứng của bệnh sốt xuất
huyết
trieuchungsotxuathuyet(X)
X là các triệu chứng của một loại bệnh trẻ
em Y
trieuchungbenhtreem(X,Y)
Trẻ mắc bệnh sởi khi có những triệu
chứng của bệnh sởi
∀X trieuchungsoi(X) →
trieuchungbenhtreem(X, soi)
Trẻ mắc bệnh quai bị khi có những triệu
chứng của bệnh quai bị
∀X trieuchungquaibi(X) →
trieuchungbenhtreem(X, quaibi)
Trẻ mắc bệnh rubella khi có những triệu
chứng của bệnh rubella
∀X trieuchungrubella(X) →
trieuchungbenhtreem(X, rubella)
Trẻ mắc bệnh thủy đậu khi có những triệu
chứng của bệnh thủy đậu
∀Xtrieuchungthuydau(X) →
trieuchungbenhtreem(X, thuydau)
Trẻ mắc bệnh sốt xuất huyết khi có những
triệu chứng của bệnh sốt xuất huyết
∀X trieuchungsotxuathuyet (X) →
thuoc_sot([panadol,paragan])
R3
thuoc_chaymui([ngo_sen,la_sen])
R4 thuoc_ho([xiro_ho,bo_phe])
R5 thuoc_domat([viroto])
R6 thuoc_sungtuyen([hoat_huyet])
R7 thuoc_daunhuckhinhai([tylenol])
R8 thuoc_nhucdau([panadol])
R9 thuoc_sunghach([streptomycin,gentamycin,cephalosporin])
R10 thuoc_daukhop([enjoyNT])
R11 thuoc_hongban([chlorpheniramine,cetirzine])
R12 thuoc_bongnuoc([isotretinoin])
R13 thuoc_dauhong([strepsils])
R14 thuoc_cocham([vacxin])
R15 thuoc_ganto([vacxin])
Định nghĩa các luật điều trị dựa trên các sự kiện về thuốc:
HVTH: Vũ Phát Lộc – CH1301097 Trang 16
Hệ hỗ trợ ra quyết định GVHD: PGS.TS. ĐỖ PHÚC
Mã luật
Luật
R1
dieutri(phatban,X):-thuoc_phatban(X)
R2
dieutri(sot,X):-thuoc_sot(X)
R3
dieutri(chaymui,X):-thuoc_chaymui(X)
R4 dieutri(ho,X):-thuoc_ho(X)
R5 dieutri(domat,X):-thuoc_domat(X)
R6 dieutri(sungtuyenmangtai,X):-thuoc_sungtuyen(X)
R7 dieutri(daunhuckhinhai,X):-thuoc_daunhuckhinhai(X)
bệnh.
• Chẩn đoán bệnh: Người dùng sẽ trả lời một số câu hỏi liên tiếp do chương
trình đặt ra. Sau đó chương trình sẽ cho biết bé đang bị bệnh nào và thuốc
điều trị ra sao. Do chương trình còn hạn chế về mặt dữ liệu bệnh nên có thể
xảy ra kết quả không chẩn đoán được bệnh của bé. Chức năng này là chức
năng mới được thực hiện trong bài tiểu luận này, vận dụng hệ chuyên gia
thực hiện trao đổi giữa người dùng và chương trình, mà trong “Hướng phát
triển” của tiểu luận [5] có đặt ra.
• Triệu chứng bệnh: Chương trình đưa ra một số bệnh có sẵn trong CSDL,
người dùng chọn và chương trình sẽ cho biết các triệu chứng của bệnh đó.
Chức năng này được kế thừa từ tiểu luận [5], tuy nhiên có chỉnh sửa về mặt
giao diện trực quan, dễ sử dụng hơn cho người dùng.
HVTH: Vũ Phát Lộc – CH1301097 Trang 20
Hệ hỗ trợ ra quyết định GVHD: PGS.TS. ĐỖ PHÚC
KẾT LUẬN
Sau khi tìm hiểu và thực hiện đề tài này, em đã học được cách đưa ra quyết định
dựa trên các sự kiện và luật. Do thời gian có giới hạn nên chương trình chỉ mới hỗ
trợ chẩn đoán, đưa ra gợi ý thuốc điều trị cũng như mô tả triệu chứng của một số
bệnh thông thường ở trẻ em. Em xin liệt kê một số kết quả em đạt được và hướng
phát triển cho đề tài này:
Kết quả đạt được:
• Giải quyết được bài toán xây dựng hệ chuyên gia hỗ trợ chẩn đoán và điều trị
một số bệnh thường gặp ở trẻ em.
• Tìm hiểu kiến thức về một số bệnh thường gặp của trẻ em.
• Tìm hiểu lập trình trí tuệ nhân tạo Prolog để có thể dựa vào đó phát triển tri
thức, mô tả vấn đề bằng suy diễn logic để tìm ra các câu trả lời cho vấn đề, truy vấn
cơ sở tri thức bằng các câu hỏi có/không và số liệu.
HVTH: Vũ Phát Lộc – CH1301097 Trang 21
Hệ hỗ trợ ra quyết định GVHD: PGS.TS. ĐỖ PHÚC