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

ĐỀ TÀI : HỆ CHUYÊN GIA CHẨN ĐOÁN BỆNH TRỰC TUYẾN

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 (3.14 MB, 71 trang )

ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC BÁCH KHOA

KHOA CÔNG NGHỆ THÔNG TIN
Tel. (84-511) 736 949, Fax. (84-511) 842 771
Website: itf.ud.edu.vn, E-mail:

LUẬN VĂN TỐT NGHIỆP KỸ SƯ
NGÀNH CÔNG NGHỆ THÔNG TIN
MÃ NGÀNH : 05115

ĐỀ TÀI :
HỆ CHUYÊN GIA CHẨN ĐOÁN BỆNH TRỰC TUYẾN
Mã số : 06T4-044
Ngày bảo vệ : 15-16/06/2011

SINH VIÊN : LÊ VĂN SỸ
LỚP :
06T4
CBHD :
TS. HUỲNH CÔNG PHÁP

ĐÀ NẴNG, 06/2011


LỜI CẢM ƠN
Tôi chân thành cảm ơn khoa Công Nghệ Thông Tin, Trường Đại Học Bách
Khoa Đà Nẵng đã hổ trợ tạo nhiều điều kiện thuận lợi cho tôi trong quá trình học
tập cũng như quá trình thực hiện đề tài tốt nghiệp
Tôi xin gởi lòng biết ơn sâu sắc đến TS. Huỳnh Công Pháp đã tận tình hướng
dẫn, truyền đạt cho tôi những kiến thức quý báu cùng những giúp đỡ của thầy


giúp tôi giải quyết những vấn đề khó khăn, trở ngại khi thực hiện đề tài.
Tôi cũng xin cảm ơn quý Thầy Cô trong khoa Công Nghệ Thông Tin đã tận
tình giảng dạy, trang bị cho tôi những kiến thức cần thiết trong quá trình học tập
và nghiên cứu tại Khoa.
Con xin ghi nhớ công ơn của ba mẹ đã sinh thành, nuôi dưỡng và dạy dỗ con
trưởng thành như ngày hôm nay. Ba mẹ luôn là chỗ dựa tinh thần vững chắc cho
con và luôn động viên con trên bước đường đời. Con xin cám ơn.
Cuối cùng tôi xin gởi lời cảm ơn đến bạn bè đã hỏi thăm, động viên và giúp
đỡ tôi trong quá trình thực hiện đề tài.


LỜI CAM ĐOAN
Tôi xin cam đoan :
1

Những nội dung trong luận văn này là do tôi thực hiện dưới sự hướng dẫn
trực tiếp của thầy TS. Huỳnh Công Pháp.

2

Mọi tham khảo dùng trong luận văn đều được trích dẫn rõ ràng tên
tác giả, tên công trình, thời gian, địa điểm công bố.

3

Mọi sao chép không hợp lệ, vi phạm quy chế đào tạo, hay gian trá,
tôi xin chịu hoàn toàn trách nhiệm.
Sinh viên,
Lê Văn Sỹ



NHẬN XÉT CỦA CÁN BỘ HƯỚNG DẪN


NHẬN XÉT CỦA CÁN BỘ PHẢN BIỆN


MỤC LỤC
MỞ ĐẦU

1

I. Đặt vấn đề
1
II.
Mục đích và ý nghĩa của đề tài
1
II.1. Mục đích
1
II.2. Ý nghĩa
2
II.3. Nội dung của đề tài 2
II.3.1.
Đối tượng nghiên cứu
2
II.3.2.
Phương pháp nghiên cứu 2
III.
Kết quả dự kiến đạt được 3
IV.

Bố cục luận văn
3

CƠ SỞ LÝ THUYẾT
I.

4

Trí tuệ nhân tạo
4
I.1.
Lịch sử ra đời 4
I.2.
Định nghĩa về trí tuệ nhân tạo4
I.3.
Các trường phái trí tuệ nhân tạo
5
I.4.
Ứng dụng của trí tuệ nhân tạo5
II.
Giới thiệu về hệ chuyên gia
6
II.1. Cơ sở tri thức 6
II.2. Định nghĩa về hệ chuyên gia 7
II.3. Xây dựng Hệ chuyên gia
8
II.4. Những thuận lợi và khó khăn của Hệ chuyên gia
10
II.4.1.
Thuận lợi 10

II.4.2.
Những bất lợi của một hệ chuyên gia dựa trên luật
10
II.5. Những ứng dụng của Hệ chuyên gia 11
II.5.1.
Phân tích tín dụng 11
II.5.2.
An toàn thương mại và Phân tích danh mục vốn đầu tư 11
II.5.3.
Hệ chuyên gia phân tích chiến lược kinh doanh – BusinessInsight 11
II.5.4.
FINEVA - Hệ chuyên gia phân tích tài chính
11
III.
Những hệ chuyên gia chẩn đoán bệnh trên thế giới
12
III.1. Hệ chuyên gia MYCIN
12
III.2. Hệ chuyên gia PUFF 13
III.3. Hệ chuyên gia CADUCEUS 13
IV.
Ngôn ngữ và công cụ xây dụng web
14
IV.1. Ngôn ngữ Php 14
IV.2. Các ngôn ngữ web khác
14
IV.3. CakePHP
15
IV.3.1. Giới thiệu 15
IV.3.2. Tính năng 15

IV.3.3. Mô hình MVC trong CakePHP
15
IV.4. Hệ quản trị cơ sở dữ liệu MySQL
16
IV.4.1. Tổng quan về MySQL
16
IV.4.2. Các thành phần cơ bản
16
IV.5. Công cụ quản lí phiên bản Subversion
16


ĐẶC TẢ, PHÂN TÍCH THIẾT KẾ HỆ THỐNG

17

I.

Đặc tả yêu cầu 17
I.1.
Yêu cầu chức năng 17
I.1.1.
Giới thiệu tổng quan
17
I.1.2.
Đặc tả chi tiết các chức năng
17
I.2.
Yêu cầu phi chức năng
22

II.
Phân tích và thiết kế hệ thống
23
II.1. Xác định các tác nhân 23
II.2. Xác định các Use Case và các yêu cầu về chức năng 23
II.2.1.
Sơ đồ Use Case
23
II.2.2.
Biểu đồ tuần tự
27
II.3. Cơ sở dữ liệu 30
II.3.1.
Cấu trúc cơ sở dữ liệu
30
II.3.2.
Các bảng trong cơ sở dữ liệu
31

XÂY DỰNG CHƯƠNG TRÌNH VÀ MINH HỌA KẾT QUẢ
I.

Thiết kế và xây dựng hệ chuyên gia 33
I.1.
Thiết kế hệ chuyên gia
33
I.1.1.
Cơ sở tri thức
33
I.1.2.

Bộ nhớ làm việc
35
I.2.
Thuật toán
36
I.2.1.
Giới thiệu về các thuật toán trong hệ chuyên gia 36
I.2.2.
Áp dụng thuật toán suy diễn lùi 37
I.3.
Xây dựng component Ruleprocess 37
I.3.1.
Các thuộc tính của component Rulesprocess
38
I.3.2.
Các phương thức của component Rulesprocess: 38
II.
Minh họa kết quả 40

KẾT LUẬN

53

I.

Kết quả đạt được
53
I.1.
Ưu điểm
53

I.2.
Nhược điểm 54
II.
Hướng phát triển trong tương lai 54

TÓM TẮT LUẬN VĂN TỐT NGHIỆP

59

33


Mục lục

iii

MỤC LỤC HÌNH ẢNH
Hình 1.
Hình 2.
Hình 3.
Hình 4.
Hình 5.
Hình 6.
Hình 7.
Hình 8.
Hình 9.
Hình 10.
Hình 11.
Hình 12.
Hình 13.

Hình 14.
Hình 15.
Hình 16.
Hình 17.
Hình 18.
Hình 19.
Hình 20.
Hình 21.
Hình 22.
Hình 23.
Hình 24.
Hình 25.
Hình 26.
Hình 27.
Hình 28.
Hình 29.
Hình 30.
Hình 31.
Hình 32.
Hình 33.
Hình 34.
Hình 35.
Hình 36.
Hình 37.
Hình 38.
Hình 39.
Hình 40.
Hình 41.
Hình 42.
Hình 43.

Hình 44.

Các thành phần của hệ chuyên gia.............................................................................7
Những thành phần cơ bản của một hệ chuyên gia.....................................................8
Mô hình MVC trong CakePHP................................................................................15
Sơ đồ miêu tả chức năng chẩn đoán bệnh................................................................18
Yêu cầu gói quản lý người dùng..............................................................................19
Yêu cầu gói quản lý bệnh.........................................................................................20
Yêu cầu gói quản lý triệu chứng..............................................................................20
Yêu cầu gói quản lý các loại thuốc..........................................................................21
Yêu cầu gói quản lý luật...........................................................................................21
User Case tổng quan.............................................................................................23
User Case chẩn đoán bệnh...................................................................................24
Gói User Case quản lý bệnh.................................................................................24
Giói User Case quản lý triệu chứng.....................................................................25
Gói User Case quản lý thuốc................................................................................25
Gói User Case quản lý người dùng.....................................................................26
Gói User Case quản lý luật...................................................................................26
Biểu đồ tuần tự của chức năng chẩn đoán............................................................27
Biểu đồ tuần tự quản lý bệnh...............................................................................27
Biểu đồ tuần tự quản lý thuốc..............................................................................28
Biểu đồ tuần tự quản lý triệu chứng.....................................................................28
Biểu đồ tuần tự quản lý người dùng.....................................................................29
Biểu đồ tuần tự quản lý luật.................................................................................29
Cấu trúc cơ sở dữ liệu..........................................................................................30
Thiết kế cơ sở tri thức..........................................................................................33
Nội dung bảng luật...............................................................................................34
Nội dung bảng triệu chứng...................................................................................34
Nội dung bảng luật_triệu chứng...........................................................................34
Nội dung bảng bệnh.............................................................................................34

Cấu trúc của bộ nhớ làm việc sử dụng Session....................................................35
Khai báo component Rulesprocess......................................................................37
Phương thức startup.............................................................................................38
Phương thức _nextQuestion.................................................................................38
Phương thức _getWorkingMemory và _saveWorkingMemory...........................39
Phương thức process............................................................................................39
Trang chủ..............................................................................................................40
Kết quả chẩn đoán................................................................................................41
Tin tức..................................................................................................................42
Giao diện trên điện thoại......................................................................................43
Trang giới thiệu xem trên di động........................................................................44
Đăng nhập vào phần quản trị...............................................................................45
Quản lý người dùng..............................................................................................46
Thêm người dùng.................................................................................................46
Quản lý nhóm bệnh..............................................................................................47
Thêm nhóm bệnh..................................................................................................47


Mục lục

iv

Hình 45.
Hình 46.
Hình 47.
Hình 48.
Hình 49.
Hình 50.
Hình 51.
Hình 52.

Hình 53.
Hình 54.

Quản lý bệnh........................................................................................................48
Thêm bệnh lý mới................................................................................................48
Quản lý triệu chứng..............................................................................................49
Thêm triệu chứng mới..........................................................................................49
Quản lý thuốc.......................................................................................................50
Thêm một loại thuốc mới.....................................................................................50
Quản lý các luật....................................................................................................51
Thêm luật mới – bước 1.......................................................................................52
Thêm luật mới – bước 2.......................................................................................52
Thêm luật mới – bước 3.......................................................................................52


Mục lục

v

MỤC LỤC BẢNG BIỂU
Bảng 1.
Bảng 2.
Bảng 3.
Bảng 4.
Bảng 5.
Bảng 6.
Bảng 7.
Bảng 8.

Bảng bệnh.............................................................................................................31

Bảng nhóm bệnh..................................................................................................31
Bảng triệu chứng..................................................................................................31
Bảng thuốc...........................................................................................................31
Bảng luật..............................................................................................................32
Bảng người dùng..................................................................................................32
Bảng luật_triệu chứng..........................................................................................32
Bảng bệnh_thuốc.................................................................................................32


MỞ ĐẦU
Chương mở đầu trình bày những vấn đề tổng quan về đề tài: đặt vấn đề, mục đích, ý
nghĩa của đề tài, nội dung của đề tài, các kết quả dự kiến đạt được. Cuối cùng là phần tóm tắt
bố cục của luận văn “Hệ chuyên gia chẩn đoán bệnh trực tuyến”.

.I

Đặt vấn đề

Hiện nay nền y học của thế giới đã có những bước phát triển vượt bậc, nhiều căn bệnh
được phát hiện, nhiều phương pháp điều trị mới được tìm ra đem lại nhiều lợi ích cho con
người.
Ngoài sự đa dạng và phức tạp về bệnh, số lượng bệnh nhân ngày càng nhiều do sự ô
nhiễm môi trường, thức ăn, nguồn nước,… nên vấn đề chẩn đoán bệnh gặp nhiều khó khăn.
Tại Việt Nam, tình trạng quá tải ở các bệnh viện xảy ra thường xuyên, tỷ lệ giữa bệnh nhân
và bác sĩ rất lớn. Từ thực tế này, tôi cùng với TS. Huỳnh Công Pháp đã quyết định nghiên cứu
và phát triển một hệ thống với tham vọng trợ giúp hoặc thay thế các chuyên gia trong việc
chẩn đoán bệnh, đặc biệt cho cộng đồng người Việt Nam và chẩn đoán các bệnh nhiệt đới.
Thực tế, qua tìm hiểu chúng tôi nhận thấy hiện nay có một số hệ chuyên gia chẩn đoán
bệnh đang tồn tại. Tuy nhiên, hầu hết các hệ chuyên gia này đều ở dạng ngôn ngữ nước
ngoài, gây khó khăn cho đại đa số những bệnh nhân ở Việt Nam do rào cản ngôn ngữ.

Với mục đích cho phép bệnh nhân dễ dàng sử dụng và phát huy tối đa công suất phục vụ,
hệ thống phải là một hệ thống trực tuyến, xây dựng trực tuyến. Đó sẽ là một bác sĩ ảo trực
tuyến, mọi người có thể sử dụng trình duyệt web và tham khảo chẩn đoán của bác sĩ này để
biết tình trạng bệnh của mình và các phương pháp điều trị thích hợp. Đồng thời các bác sĩ,
các chuyên gia y tế có thể cải tiến, sửa chữa kho tri thức để làm cho hệ thống ngày một hoàn
thiện và chẩn đoán được chính xác hơn với số lượng bệnh nhiều hơn.

.II Mục đích và ý nghĩa của đề tài
.II.1. Mục đích
Đề tài được xây dựng với hai mục đích chính:
Thứ nhất: tìm hiểu và nghiên cứu về trí tuệ nhân tạo, hệ chuyên gia, các thuật toán suy
diễn, các ứng dụng của hệ chuyên gia, các hệ chuyên gia chẩn đoán bệnh hiện tại trên thế
giới.
Thứ hai: xây dựng một ứng dụng có tính thực tiễn cao với chức năng là một bác sĩ ảo chẩn
đoán bệnh thông qua việc đưa ra các câu hỏi cho người dùng. Đồng thời, cung cấp công cụ
cho các bác sĩ, các chuyên gia y tế chỉnh sửa cơ sở tri thức để mang đến kết quả ngày càng
chính xác và đem lại niềm tin cho người sử dụng.

Lê Văn Sỹ, Lớp 06T4

1


.II.2. Ý nghĩa
Qua thời gian thực hiện đề tài, bản thân đã rút ra được nhiều bài học và kinh nghiệm quí
báu trong nghiên cứu, tìm hiểu, tra cứu các tài liệu và xây dựng một hệ thống với những kiến
thức hoàn toàn mới mẻ.
Qua thời gian làm việc và thực tập tại 2 công ty phần mềm hợp chính (Fiisoft) và công ty
phần mềm Trí thức Việt, bản thân đã hiểu và nắm bắt được quy trình sản xuất phần mềm, hệ
chuyên gia chẩn đoán bệnh trực tuyến là kết quả của việc áp dụng chặt chẽ quy trình vào thực

hiện.
Những kiến thức và kinh nghiệm thu thập được trong suốt thời gian thực hiện đề tài sẽ là
hành trang vững chắc giúp bản thân có một khởi đầu tốt sau khi ra trường.
Hệ chuyên gia chẩn đoán bệnh trực tuyến là một đề tài có tính thực tiễn cao, hoàn toàn có
thể đem triển khai và đưa vào sử dụng, phục vụ cho nhu cầu khám chữa bệnh của mọi người,
cũng như là công cụ tham khảo đắc lực cho các bác sĩ.

.II.3. Nội dung của đề tài
Hệ chuyên gia là một hệ thống phức tạp cần sự đóng góp công sức của nhiều người cũng
như sự cố vấn của các chuyên gia thực sự, do đó trong khuôn khổ đề tài này tôi chỉ xây dựng
một hệ thống với chức năng chẩn đoán một số bệnh đơn giản với mong muốn đây sẽ là nền
tảng để xây dựng một hệ chuyên gia hoàn chỉnh, thuần việt.

.II.3.1.

.II.3.2.

Đối tượng nghiên cứu


Trí tuệ nhân tạo: lịch sử hình thành, định nghĩa, ứng dụng



Hệ chuyên gia: định nghĩa, các ứng dụng thực tế của hệ chuyên
gia nhất là trong lĩnh vực y học



Hệ chuyên gia dựa trên luật, thuật toán suy diễn tiến, suy diễn

lùi, thuật toán mạng lưới



Các bệnh nhiệt đới thường gặp ở Việt Nam với các triệu chứng
rõ ràng, đơn giản.



Các loại thuốc

Phương pháp nghiên cứu

Lê Văn Sỹ, Lớp 06T4



Thu thập tài liệu, đọc và nghiên cứu tài liệu.



Tìm hiểu hệ chuyên gia, cách thức triển khai một hệ chuyên
gia, các thuật toán liên quan.



Lựa chọn thuật toán phù hợp, nghiên cứu cách triển khai




Tìm hiểu các kiến thức về y học, các loại bệnh thường gặp, các
triệu chứng, bệnh lý, cách chữa trị và các loại thuốc.

2


Hệ chuyên gia chẩn đoán bệnh trực tuyến


Lê Văn Sỹ, Lớp 06T4

Tìm hiểu ngôn ngữ lập trình PHP, framework CakePHP, hệ
quản trị cơ sở dữ liệu MySQL để xây dựng trên hệ thống chạy
trực tuyến.

3


Hệ chuyên gia chẩn đoán bệnh trực tuyến

.III Kết quả dự kiến đạt được
Xây dựng một hệ chuyên gia hoàn chỉnh chạy trực tuyến cho phép chẩn đoán bệnh sau khi
người sử dụng trả lời một số câu hỏi về triệu chứng dạng Có / Không, sau đó đưa ra hướng
dẫn về cách chữa trị và các loại thuốc liên quan. Chẩn đoán của hệ thống chỉ mang tính tham
khảo cho người sử dụng và các bác sĩ chứ không thay thế quyết định của bác sĩ
Xây dựng phần quản lý cho phép bác sĩ hay các chuyên gia y tế có thể chỉnh sửa, bổ sung
dữ liệu cho hệ thống ( thay đổi cơ sở tri thức ) làm cho hệ thống ngày càng hoàn thiện: độ
chính xác cao hơn, chẩn đoán được nhiều loại bệnh, các phương án chữa trị phù hợp hơn.
Có giao diện sử dụng thân thiện, dễ sử dụng đối với tất cả mọi người. Hổ trợ 2 ngôn ngữ là
tiếng Việt và tiếng Anh.


.IV Bố cục luận văn
Luận văn được tổ chức gồm 3 chương chính và các phần mở đầu, kết luận:
Chương 1: Cơ sở lý thuyết
Cơ sở lý thuyết đã tìm hiểu, công cụ, ngôn ngữ hỗ trợ giải quyết vấn đề.
Chương 2: Đặc tả, Phân tích và thiết kế hệ thống
Đặc tả các yêu cầu, từng bước phân tích, thiết kế hệ thống.
Chương 3: Xây dựng chương trình và minh họa kết quả
Xây dựng hệ chuyên gia, giải thích thuật toán, các hình ảnh minh họa của ứng dụng.

Lê Văn Sỹ, Lớp 06T4

4


CHƯƠNG 1

CƠ SỞ LÝ THUYẾT
Chương cơ sở lý thuyết trình bày những lý thuyết liên quan đến đề tài đó là trí tuệ nhân
tạo, ứng dụng của trí tuệ nhân tạo, hệ chuyên gia, cách thức xây dựng một hệ chuyên gia,
những ứng dụng của hệ chuyên gia. Phần này cũng trình bày về những hệ chuyên gia chẩn
đoán bệnh trên thế giới như MYCIN, EMYCIN, những ưu, nhược điểm của chúng. Phần cuối
trình bày về những công cụ và ngôn ngữ được sử dụng để xây dựng trang web.

.I
.I.1.

Trí tuệ nhân tạo
Lịch sử ra đời


Xây dựng Trí tuệ nhân tạo (TTNT), hay tạo cho máy móc khả năng suy luận, phán đoán
và cảm nhận như con người là một trong những tham vọng to lớn của loài người. Tham vọng
này đã có từ lâu và cùng với sự ra đời của máy tính, con người từng bước đưa kiến thức của
mình vào máy, biến chúng trở thành những công cụ thực sự có trí tuệ.
TTNT đã được bắt đầu nghiên cứu từ thập niên 1950 bởi những nhà tiên phong như Allen
Newell, Herbert Simon, người sáng lập phòng thí nghiệm trí tuệ nhân tạo đầu tiên ở Đại học
Carnegie Mellon, John McCarthy và Marvin Minsky, người sáng lập phòng thí nghiệm trí tuệ
nhân tạo tại MIT, MIT AI Lab, năm 1959. Họ đã cùng dự hội thảo về trí tuệ nhân tạo tại Đại
học Dartmouth vào mùa hè năm 1956, do McCarthy, Minsky, Nathan Rochester của IBM và
Claude Shannon tổ chức.
Thập niên 1980, mạng nơ-ron được sử dụng rộng rãi với thuật toán truyền ngược
(backpropagation), thuật toán này đã được mô tả đầu tiên bởi Paul John Werbos vào năm
1974. Thập niên 1990 đánh dấu các thành tựu chính trong nhiều lĩnh vực của TTNT và được
thể hiện trong nhiều ứng dụng đa dạng. Nổi tiếng nhất là Deep Blue, một máy tính chơi cờ
vua đã thắng Garry Kasparov trong một trận đấu 6 ván nổi tiếng năm 1997. DARPA tuyên bố
rằng chi phí tiết kiệm được do cài đặt các phương pháp TTNT cho việc lập lịch cho các đơn
vị trong Chiến tranh vùng Vịnh lần thứ nhất đã bù lại được toàn bộ đầu tư của chính phủ Mỹ
cho nghiên cứu TTNT kể từ thập niên 1950.

.I.2.

Định nghĩa về trí tuệ nhân tạo

Trí tuệ nhân tạo hay trí thông minh nhân tạo (tiếng Anh: artificial intelligence hay
machine intelligence, thường được viết tắt là AI) là trí tuệ được biểu diễn bởi bất cứ một hệ
thống nhân tạo nào. Thuật ngữ này thường dùng để nói đến các máy tính có mục đích không
nhất định và ngành khoa học nghiên cứu về các lý thuyết và ứng dụng của trí tuệ nhân tạo.
Trí thông minh nhân tạo liên quan đến cách cư xử, sự học hỏi và khả năng thích ứng
thông minh của máy móc. Trí thông minh nhân tạo đã trở thành một môn học, với mục đích
chính là cung cấp lời giải cho các vấn đề của cuộc sống thực tế.

Lê Văn Sỹ, Lớp 06T4

5


Hệ chuyên gia chẩn đoán bệnh trực tuyến

.I.3.

Các trường phái trí tuệ nhân tạo

Trí tuệ nhân tạo chia thành hai trường phái tư duy: TTNT truyền thống và Trí tuệ tính
toán.
TTNT truyền thống bao gồm các phương pháp hiện được phân loại là các phương pháp
học máy (machine learning), đặc trưng bởi hệ hình thức (formalism) và phân tích thống kê.
Nó còn được biết với các tên TTNT biểu tượng, TTNT logic, TTNT ngăn nắp và TTNT cổ
điển. Các phương pháp gồm có:
 Hệ chuyên gia
 Lập luận theo tình huống.
 Mạng Bayes.
Trí tuệ tính toán nghiên cứu việc học hoặc phát triển. Việc học dựa trên dữ liệu kinh
nghiệm và có quan hệ với TTNT phi ký hiệu, TTNT lộn xộn (scruffy AI) và tính toán mềm
(soft computing). Các phương pháp chính gồm có:
 Mạng neuron: Các hệ thống mạnh về nhận dạng mẫu (pattern recognition).
 Hệ mờ (Fuzzy system): Các kỹ thuật suy luận không chắc chắn, đã được sử dụng
rộng rãi trong các hệ thống công nghiệp hiện đại và các hệ thống quản lý sản phẩm
tiêu dùng.
 Tính toán tiến hóa (Evolutionary computation): Ứng dụng các khái niệm sinh học
như quần thể, biến dị và đấu tranh sinh tồn để sinh các lời giải ngày càng tốt hơn
cho bài toán. Các phương pháp này thường được chia thành các thuật toán tiến hóa

(ví dụ thuật toán gien) và trí tuệ bầy đàn (swarm intelligence) (chẳng hạn hệ kiến).
 TTNT dựa hành vi (Behavior based AI): Một phương pháp mô-đun để xây dựng
các hệ thống TTNT bằng tay.
Người ta đã nghiên cứu các hệ thống thông minh lai, trong đó kết hợp hai trường phái
này.

.I.4.

Ứng dụng của trí tuệ nhân tạo

TTNT đã được sử dụng ở rất nhiều ngành khác nhau, như là:
 Ngân hàng: Các hệ thống dự báo, phân tích tài chính
 Quân đội: Các hệ thống tự động, các hệ thống ra lệnh và trợ giúp quyết định
 Các trò chơi máy tính: TTNT được áp dụng rất nhiều vào các trò chơi máy tính
hiện nay nhằm tăng sự thông minh cho các nhân vật, các chiến thuật hấp dẫn hơn.
 Y học: Những hệ chuyên gia chẩn đoán các loại bệnh được sử dụng rất nhiều trong
y học.
 Giáo dục: Các hệ thống hỏi đáp, trợ giúp giảng dạy, trợ giúp học tập …
 Vũ trụ: Hệ thống không người lái, các robot thông minh có khả năng tự di chuyển
trên các hành tinh thu thập thông tin và gửi về trái đất
Lê Văn Sỹ, Lớp 06T4

6


Hệ chuyên gia chẩn đoán bệnh trực tuyến
 Và còn nhiều ứng dụng khác của TTNT trên nhiều lĩnh vực khác

.II Giới thiệu về hệ chuyên gia
.II.1. Cơ sở tri thức

Tri thức là những gì mà một người có thể biết và hiểu được. Tri thức có thể được phân
loại thành tri thức có cấu trúc hoặc không có cấu trúc, tri thức rõ ràng hay là tri thức ngụ ý,
không rõ ràng. Những gì mà chúng ta biết được thường là các tri thức rõ ràng. Tri thức không
có cấu trúc mà vẫn hiểu được, nhưng không được phát biểu rõ ràng là các tri thức ngầm ý, tri
thức không rõ. Khi tri thức được tổ chức để có thể chia sẻ thì lúc đó tri thức được gọi là tri
thức có cấu trúc. Để có thể chuyển đổi từ tri thức không rõ ràng sang tri thức rõ ràng thì tri
thức đó cần phải được cấu trúc hóa và định dạng lại.
Phân loại tri thức: như đã đề cập ở trên, tri thức có nhiều loại tùy thuộc vào tính chất cấu
trúc và tính chất rõ ràng của tri thức. Tri thức có thể được phân loại thành các loại tri thức
sau, đây là các loại tri thức thường gặp trong thực tế:
 Tri thức thủ tục : Trong thực tế, nhiều bài toán mà ta có thể gặp là các bài toán mà
tri thức không đơn thuần là khái niệm hay mô tả mà là một hành động hay một
công thức, thủ tục. Ta gọi các tri thức như vậy là các Tri thức thủ tục ( diễn tả các
vấn đề được giải quyết ).
 Tri thức mô tả : Cho biết một vấn đề được thấy như thế nào.
 Tri thức meta : Diễn tả tri thức về tri thức.


Tri thức may rủi : Diễn tả các luật may rủi dẫn dắt quá trình suy lý. Tri thức này
có được dựa trên kinh nghiệm tích lũy nên còn gọi là heuristic.

 Tri thức cấu trúc : Mô tả mô hình tri thức tổng quát của chuyên gia về một vấn đề.
Tùy thuộc vào ứng dụng cụ thể mà tri thức được biểu diễn theo những phương thức khác
nhau. Ứng với mỗi dạng biểu diễn đó có một cơ chế để xử lí tri thức đó.
Hệ cơ sở tri thức là một tập hợp các cơ sở lập luận, các luật, các quy trình, thủ tục được tổ
chức thành các lược đồ (giản đồ). Đó là tập hợp của tất cả các thông tin cũng như tất cả kiến
thức về một lĩnh vực cụ thể nào đó.
Quá trình thu thập tri thức được gọi là quá trình rút trích tri thức và định dạng tri thức
được thực hiện từ nhiều nguồn khác nhau, đặc biệt là từ các chuyên gia trong các lĩnh vực cụ
thể. Công việc này là một trong những bước quan trọng và thường mất rất nhiều thời gian

cũng như công sức trong quá trình xây dựng một hệ cơ sở tri thức được sử dụng trong hệ
chuyên gia. Trong quá trình phát triển một hệ chuyên gia, các kĩ sư tri thức, những nhà
chuyên môn trong lĩnh vực trí tuệ nhân tạo, có nhiệm vụ thu thập kiến thức từ các chuyên gia
thuộc lĩnh vực chuyên ngành, sau đó “sao chép” các tri thức đó vào cơ sở tri thức và diễn đạt
các tri thức đó dưới dạng có thể dùng được trong hệ chuyên gia.

Lê Văn Sỹ, Lớp 06T4

7


Hệ chuyên gia chẩn đoán bệnh trực tuyến

.II.2. Định nghĩa về hệ chuyên gia
Hệ chuyên gia là một chương trình máy tính được bắt nguồn từ một nhánh của khoa học
máy tính, gọi là Trí tuệ nhân tạo (Artificial Intelligence-AI).

Hệ chuyên gia
Mô tả các trường hợp

Mô tơ suy
diễn
Giao
tiếp
người
dùng

Người sử
dụng


Giúp đỡ, giải thích

Hình 1.

Cơ sở tri thức

Các thành phần của hệ chuyên gia

Những chương trình TTNT đạt được khả năng giải quyết các vấn đề trong các lĩnh vực cụ
thể ở mức độ chuyên gia bằng cách sử dụng một cơ sở tri thức trong lĩnh vực đó gọi là các
hệ cơ sở tri thức hoặc hệ chuyên gia. Thông thường, thuật ngữ Hệ chuyên gia được dùng
riêng cho các chương trình mà cơ sở tri thức của nó chứa đựng các tri thức được dùng bởi các
chuyên gia thực thụ, khác với các tri thức được thu thập trong các sách giáo khoa hoặc không
phải là tri thức chuyên môn. Tuy nhiên, đôi khi 2 thuật ngữ Hệ chuyên gia và Hệ cơ sở tri
thức, được sử dụng tương tự như nhau. Phạm vi của trí tuệ nhân tạo cố gắng để đạt được
trong một hệ chuyên gia gọi là lĩnh vực chuyên ngành. Nhiệm vụ này có thể là các hoạt động
như giải quyết vấn đề, hoặc là các suy luận hướng đích. Còn chuyên ngành là phạm vi tri
thức mà nhiệm vụ đang thực hiện. Các chức năng (nhiệm vụ) thông thường như chẩn đoán
bệnh, lập kế hoạch, lập lịch, thiết lập cấu hình và thiết kế, …Một ví dụ cụ thể là lập lịch bay
cho phi hành đoàn trong các chuyến bay của một hãng hàng không, hay phân tích cấu trúc
của một tòa nhà và đưa ra các giải pháp hay tư vấn về việc thiết kế tòa nhà đó. . .
Việc xây dựng một hệ chuyên gia được hiểu như là việc ứng dụng các kiến thức khoa học
vào việc vận hành và bảo trì tri thức, và người vận hành tri thức này gọi là người thiết kế tri
thức. Người thiết kế tri thức phải đảm bảo rằng máy tính luôn có đủ tri thức để giải quyết một
vấn đề nào đó. Người thiết kế tri thức phải chọn một hoặc nhiều hình thức miêu tả các tri thức
được yêu cầu dưới dạng các mô hình kí hiệu trong bộ nhớ của máy tính, và như vậy anh ta
phải chọn một cách biểu diễn tri thức. Và anh ta cũng phải đảm bảo rằng máy tính có thể sử
dụng tri thức một cách có hiệu quả bằng việc chọn ra một số các phương pháp lập luận.

Lê Văn Sỹ, Lớp 06T4


8


Hệ chuyên gia chẩn đoán bệnh trực tuyến

.II.3. Xây dựng Hệ chuyên gia
Mỗi hệ chuyên gia đều bao gồm 2 thành phần cơ bản là : hệ cơ sở tri thức (và cơ sở dữ
liệu), và bộ máy suy diễn hay bộ máy lập luận. Tùy theo cách biểu diễn tri thức mà ta có thể
xây dựng mô tơ suy diễn theo thuật giải suy diễn nào.
Cấu trúc của một hệ chuyên gia thường được phân ra thành 7 thành phần:

Cơ sở tri
thức các luật

Máy suy diễn

Bộ nhớ làm
việc

Lịch công việc

Khả năng thu nhận
tri thức

Khả năng giải thích

Giao diện người
sử dụng
Hình 2.


Những thành phần cơ bản của một hệ chuyên gia

 Cơ sở tri thức (Knowledge Base): Bao gồm các luật thường được lưu ở dạng file
văn bản hoặc cơ sở dữ liệu.
 Bộ nhớ làm việc (Working Memory): Cơ sở dữ liệu toàn cục chứa các sự kiện phục
vụ cho các luật.
 Máy suy diễn (Inference Engine): Công cụ (chương trình, bộ xử lý) tạo ra suy luận
bằng cách xem xét các luật nào thỏa mãn các sự kiện, các đối tượng. Thực thi luật
có độ ưu tiên cao nhất.
 Lịch công việc: Danh sách các luật ưu tiên do máy suy diễn tạo ra thỏa mãn các sự
kiện.
 Khả năng giải thích: Giải thích cách lập luận của hệ thống cho người sử dụng
(những luật nào được thực thi, các giả thiết nào thỏa mãn).
 Khả năng thu nhận tri thức: Khả năng cho phép người sử dụng bổ sung thêm tri
thức cho hệ thống.
 Giao diện người dùng: Là nơi người sử dụng tương tác với hệ chuyên gia.

Lê Văn Sỹ, Lớp 06T4

9


Hệ chuyên gia chẩn đoán bệnh trực tuyến
Cơ sở tri thức của hệ chuyên gia bao gồm cả tri thức thực tế và tri thức heuristic. Tri thức
thực tế là tri thức chuyên ngành mà được phổ biến và chia sẻ trong phạm vi rộng, có thể tìm
thấy dễ dàng trong sách giáo khoa hoặc trong các sách báo, và nhìn chung là được chấp nhận
dựa trên các kiến thức đúng đắn trong từng lĩnh vực cụ thể. Còn tri thức heuristic mang ít tính
nghiêm ngặt hơn, dựa nhiều vào kinh nghiệm và sự phán đoán hơn. Trái với tri thức thực tế,
tri thức heuristic ít khi được thảo luận, và mang đậm tính cá nhân. Nó là kiến thức rút ra từ

việc thực hành và phán đoán tốt, và sự lập luận chặc chẽ trong từng lĩnh vực.
Biểu diễn tri thức là mô hình hóa và tổ chức tri thức. Một phương pháp biểu diễn tri thức
được sử dụng rộng rãi là sử dụng hệ các luật dẫn hoặc là dùng các luật đơn giản. Một luật bao
gồm một phần IF và một phần là THEN (còn gọi là điều kiện và kết luận). Phần IF liệt kê một
tập hợp các điều kiện được liên kết logic với nhau. Một mẫu tri thức được biểu diễn bởi luật
dẫn có liên quan đến dòng lập luận đang được khai triển nếu như phần IF của luật được thỏa
mãn ; vì vậy, phần THEN của luật có thể được kết luận, hoặc là vấn đề của luật có thể được
giải quyết.
Ví dụ:
Nếu điều-kiện P thì kết luận C
Nếu trạng-thái S thì hành-động A
Nếu các điều kiện C1, … , Cn đúng thì kết luận C đúng
Hệ luật dẫn được sử dụng rộng rãi là do các nguyên nhân sau:
 Tính đơn thể : Mỗi luật định nghĩa một phần nhỏ và độc lập các tri thức.
 Dễ thêm: Có thể thêm các luật mới vào CSTT tương đối độc lập với các quy tắc đã
có.
 Dễ sửa đổi: Có thể sửa đổi các quy tắc trong CSTT tương đối độc lập với các quy
tắc khác.
 Trong suốt: Hệ thống dựa trên luật dẫn có khả năng giải thích các hành động cũng
như các quyết định của nó.
Tri thức là thành phần quan trọng nhất trong bất kì một hệ chuyên gia nào. Sức mạnh của
các hệ chuyên gia dựa vào các tri thức cụ thể và có chất lượng mà nó chứa đối với các lĩnh
vực chuyên ngành. Do tầm quan trọng của tri thức đối với các hệ chuyên gia và vì hiện nay
các phương pháp thu thập tri thức còn tiêu tốn nhiều chi phí, các hệ chuyên gia trong tương
lai cần phải giải quyết được vấn đề thu thập tri thức và cải tiến việc hệ thống hóa cũng như
việc biểu diễn 1 hệ cơ sở tri thức lớn.
Với mục tiêu xây dựng một hệ chuyên gia có những bước suy luận giống như con người
thì đòi hỏi trước hết hệ thống cần phải có một cơ sở tri thức phong phú và sâu rộng về vấn đề
mà hệ chuyên gia cần giải quyết, quá trình thu thập cơ sở tri thức là một quá trình quan trọng
đối với bất cứ một hệ chuyên gia nào, và việc quản lí cơ sở tri thức cũng là một vấn đề quan

trọng.

Lê Văn Sỹ, Lớp 06T4

10


Hệ chuyên gia chẩn đoán bệnh trực tuyến

.II.4. Những thuận lợi và khó khăn của Hệ chuyên gia
.II.4.1.

Thuận lợi

Tính lâu dài của Hệ chuyên gia, các chuyên gia là con người vẫn có thể quên những lập
luận hay khái niệm nào đó, nhưng hệ chuyên gia thì không. Ngoài ra hệ chuyên gia còn có
khả năng tái sử dụng cho các mục đích khác nhau, với các lĩnh vực khác nhau, một cách
nhanh chóng và dễ dàng. Trong khi đó, quá trình đào tạo ra một chuyên gia là con người phải
mất một khoảng thời gian và công sức không nhỏ.
Các hệ chuyên gia có thể dùng các luật hay quy tắc một cách nhanh chóng mà không bị
nhầm lẫn, nếu trong trường hợp có quá nhiều quy tắc hay luật thì một chuyên gia là con
người không xử lí nhanh như một hệ chuyên gia được.
Về tính hiệu quả, một hệ chuyên gia có thể tăng số lượng được đưa vào trong hệ và giảm
đi các chi phí nhân công. Và mặc dù các hệ chuyên gia được xây dựng và bảo trì thường tốn
kém, nhưng để vận hành các hệ chuyên gia không phải tốn nhiều công sức và tiền bạc. Việc
phát triển và duy trì một hệ chuyên gia có thể được trải đều ra cho nhiều người, và tổng chi
phí cho việc này sẽ hợp lí hơn rất nhiều so với việc tìm kiếm một chuyên gia thực thụ.
Nếu như không có sự trục trặc về thiết bị máy móc thì một hệ chuyên gia có thể hoạt
động rất ổn định, với các tập luật đã được xây dựng và cùng với các khả năng xử lí khác, hệ
có thể đưa ra các quyết định gần như nhau trong các tình huống tương tự nhau. Ngoài ra, một

hệ chuyên gia có thể cung cấp các giải pháp một cách thường xuyên trong một quá trình giải
quyết vấn đề. Và trong một thời điểm thì một hệ chuyên gia có khả năng giải quyết được
nhiều vấn đề hơn so với một chuyên gia là con người.
Một thuận lợi lớn khác của các hệ chuyên gia đó là kiến thức của rất nhiều chuyên gia
khác nhau được đưa vào hệ chuyên gia, điều này rõ ràng là làm cho cơ sở tri thức của một hệ
chuyên gia rộng và phong phú hơn so với một vài chuyên gia đơn lẻ. Và trong lĩnh vực kinh
tế, hệ chuyên gia sẽ có thể giảm thiểu được nhiều rủi ro hơn.

.II.4.2.

Những bất lợi của một hệ chuyên gia dựa trên luật

Một điều dễ nhận ra là các hệ chuyên gia không có khả năng học như các hệ thống thông
minh khác như hệ Suy luận dựa tình huống (Case-based reasoning) hay Mạng nơron (Neural
networks), vì vậy nếu có những thay đổi từ phía các chuyên gia là con người thì hệ chuyên
gia cần được cập nhật lập tức. Hệ chuyên gia không có khả năng sáng tạo và không có được
các giác quan thông thường như con người, trong những tình huống bất thường, hệ chuyên
gia không có khả năng giải quyết.
Ngoài ra, các hệ chuyên gia không có được những kinh nghiệm như các chuyên gia là con
người, và cũng không thể nhận ra được vấn đề nếu như vấn đề đó không thuộc phạm vi “hiểu
biết” của hệ thống.

Lê Văn Sỹ, Lớp 06T4

11


Hệ chuyên gia chẩn đoán bệnh trực tuyến

.II.5. Những ứng dụng của Hệ chuyên gia

.II.5.1.

Phân tích tín dụng

Rất nhiều công ty đã sử dụng hệ chuyên gia trợ giúp trong việc phân tích tín dụng. Cái lợi
ở đây là sự nhanh chóng và chính xác, điều này thì hơn hẳn so khả năng thực hiện của con
người. Hãng American Express sử dụng hệ chuyên gia để xử lí những yêu cầu bất thường.
Điều này đã giúp cho hãng giải quyết các yêu cầu nhanh hơn rất nhiều lần so với việc sử
dụng các đại lí dịch vụ khách hàng, cũng như giảm đi tỷ lệ lỗi trong việc ước lượng thông tin.

.II.5.2.

An toàn thương mại và Phân tích danh mục vốn đầu tư

Morgan Stanly và Rockwell Int. là 2 trong số nhiều công ty đầu tư có sử dụng hệ chuyên
gia. Việc soạn thảo một danh mục vốn đầu tư thường tốn nhiều thời gian, nhưng một hệ
chuyên gia thực hiện việc này rất nhanh và tạo ra một kết quả với độ chắc chắn đáng tin cậy.
Công ty Morgan Stanly ước tính là đã tăng được một khoảng lợi nhuận 1 triệu USD sau khi
đã cài đặt hệ thống của họ.

.II.5.3.

Hệ chuyên gia phân tích chiến lược kinh doanh – BusinessInsight

Business Insight (BI) là một hệ chuyên gia kết hợp sự phân tích về chiến lược chất lượng
và số lượng để hỗ trợ cho những nhà quản trị chiến lược trong các Công ty có thể nhận ra
những hướng phát triển trong tương lai cho Công ty. Hệ chuyên gia này sử dụng những công
cụ hỗ trợ ra quyết định để tích hợp những dữ liệu về số lượng cũng như chất lượng mà người
quản trị cần để hoạch định một chiến lược.
Dựa trên các lý thuyết về chiến lược marketing đã được xác nhận, BI cung cấp những sự

phân tích khác nhau để giúp cho các nhà quản trị phát triển những chiến lược kinh doanh với
các mức độ khác nhau. Hệ thống này hoạt động rất hiệu quả đối với những công ty chỉ sản
xuất một loại sản phẩm hoặc cung cấp một loại dịch vụ.
Có tất cả khoảng 400 sự kiện (fact) được BI yêu cầu người dùng cung cấp. Sử dụng
những sự kiện được đưa vào bởi người dùng hoặc bằng suy luận từ cơ sở tri thức, BI sẽ đưa
ra những kết luận hay những sự xác nhận về những vấn đề mà người dùng quan tâm.

.II.5.4.

FINEVA - Hệ chuyên gia phân tích tài chính

FINEVA, viết tắt từ FINancial EVAluation (Matsatsinis, Doumpos & Zopounidis
1997), là một hệ chuyên gia chuyên về phân tích tài chính, sử dụng phương pháp luận về thu
thập và biểu diễn tri thức một cách hoàn thiện. Đây là một hệ cơ sở tri thức hỗ trợ đưa ra
quyết định đánh giá về hoạt động và khả năng sống sót của một công ty. Hệ thống này được
phát triển dựa trên trình tiện ích hệ chuyên gia M4, được xây dựng bởi N.F. Matsatsinis,
M.Doumpos và C. Zopounidis, thuộc trường Đại học Kĩ thuật, thành phố Crete, Hy Lạp.
Hệ thống này sử dụng khoảng hơn 1000 luật dẫn để biểu diễn cho hơn 12000 sự kết hợp
giữa những tiêu chuẩn đánh giá với nhau. Mô tơ suy diễn của FINEVA sử dụng phương pháp
lập luận tiến và lập luận lùi để đưa ra kết luận về hoạt động của các công ty.

Lê Văn Sỹ, Lớp 06T4

12


Hệ chuyên gia chẩn đoán bệnh trực tuyến

.III Những hệ chuyên gia chẩn đoán bệnh trên thế giới
.III.1. Hệ chuyên gia MYCIN

MYCIN là một hệ chuyên gia được phát triển rất sớm từ những năm 1970 tại trường đại
học Stanford. Nó được viết bằng ngôn ngữ Lisp và là đề tài Tiến sĩ của Edward Shortliffe
dưới sự hướng dẫn của Bruce Buchanan, Stanley N. Cohen và các đồng sự. Hệ chuyên gia
MYCIN được phát triển để đưa ra những kết luận, lời khuyên khi chẩn đoán các bệnh nhân
nhiễm trùng máu. Đây là một hệ chuyên gia dựa trên luật và sự kiện. MYCIN sử dụng cơ chế
lập luật gần đúng để xử lý các luật suy diễn dựa trên độ đo chắc chắn. Khi ra đời MYCIN có
200 luật và hiện nay là 500 luật.
Do có nhiều loại thuốc kháng sinh, kháng vi cũng như có nhiều loại vi trùng với các
cách xử lý khác nhau, nên chỉ có các thầy thuốc chuyên gia thuộc lĩnh vực này mới có thể
có liệu pháp chữa trị hiệu quả. Mục đích của MYCIN là :
 Là một hệ thống dễ sử dụng.
 Khả năng vận hành đáng tin cậy.
 Chứa đựng nhiều tri thức liên quan đến lĩnh vực kháng sinh, kháng vi.
 Khả năng xử lý các chỉ dẫn chữa trị không đúng hoặc không đầy đủ.
 Khả năng giải thích và chỉ dẫn chữa trị.
MYCIN là một chương trình tra cứu. MYCIN cung cấp cho các thầy thuốc những ý
kiến chữa trị liên quan đến liệu pháp kháng sinh.
MYCIN là một hệ chuyên gia có các đặc tính :
 Lập trình nghiệm suy.
 Tri thức chuyên gia về lĩnh vực kháng sinh.
 Giải thích kiểu tương tác.
 Khả năng phán đoán.
MYCIN có khoảng 500 luật và các sự kiện rất tiêu biểu. Hoạt động của hệ thống như
sau:
1.
2.
3.
4.

MYCIN yêu cầu thông tin về lâm sàng.

Bắt đầu suy luận từ những tri thức hiện có
Đưa ra các phán đoán và lời khuyên.
Trả lời các câu hỏi liên quan đến suy luận

Nhược điểm của MYCIN đó là:
 Sử dụng giao diện dòng lệnh, do đó phải trải qua một khóa đào tạo để sử dụng
thành thạo MYCIN.
 Ngôn ngữ sử dụng là tiếng Anh
 Không chạy được trực tuyến nên không thể sử dụng cho nhiều người.
Lê Văn Sỹ, Lớp 06T4

13


Hệ chuyên gia chẩn đoán bệnh trực tuyến
 Tri thức của MYCIN chỉ được gói gọn trong lĩnh vực các bệnh nhiễm trùng.
Tiếp theo sau MYCIN, hệ EMYCIN ra đời ra đời tại đại học Stanford. EMYCIN là một hệ
chuyên gia tổng quát được tạo lập bằng cách loại phần cơ sở tri thức ra khỏi hệ MYCIN.
EMYCIN cung cấp một cơ chế lập luận và tuỳ theo bài toán cụ thể sẽ bổ sung tri thức riêng
của bài toán đó để tạo thành hệ chuyên gia. EMYCIN là nền tảng cho sự ra đời của nhiều hệ
chuyên gia trong nhiều lĩnh vực khác nhau.
Một hệ chuyên gia khác cũng được phát triển từ MYCIN là TMYCIN (Tiny EMYCIN) là
một hệ chuyên gia có các chức năng rút gọn từ EMYCIN để dùng trong hệ thống nhỏ và đơn
giản. Hệ chuyên gia này được phát triển từ đầu sử dụng ngôn ngữ LIPS và hoàn toàn khác với
mã nguồn của EMYCIN.

.III.2. Hệ chuyên gia PUFF
PUFF là một hệ chuyên gia dùng để chẩn đoán các bệnh về phổi và đưa ra báo cáo để lưu
vào hồ sơ của bệnh nhân. PUFF được phát triển vào năm 1983 bởi trường đại học Stanford và
trung tâm y tế Pacific Presbyterian. PUFF là hệ chuyên gia đầu tiên được phát triển từ

EMYCIN nên nó cũng mang những đặc tính của MYCIN:
 Hệ chuyên gia dựa trên luật.
 Có cơ chế giải thích
 Khả năng thu nhận tri thức
Nó bao gồm 400 luật, sử dụng thuật toán suy diễn lùi. Cơ sở tri thức của PUFF sau đó
được tích hợp vào sản phẩm thương mại “Pulmonary Consult” và được sử dụng rộng rãi trên
toàn thế giới.

.III.3. Hệ chuyên gia CADUCEUS
CADUCEUS là một hệ chuyên gia y tế ra đời năm 1980 (bắt đầu xây dựng từ năm 1970,
và phải mất một thời gian dài để xây dựng cơ sở tri thức) bởi Harry Pople tại Đại học
Pittsburgh. Mục đích của hệ chuyên gia này là cải tiến MYCIN để tập trung vào nhiều vấn đề
toàn diện hơn so với một lĩnh vực.
CADUCEUS cũng là một hệ chuyên gia chẩn đoán bệnh dựa trên luật, nó có thể chẩn
đoán lên đến 1000 bệnh khác nhau. CADUCEUS sử dụng một động cơ suy luận tương tự như
MYCIN với một số cải tiến về thuật toán. CADUCEUS là hệ chuyên gia có cơ sở tri thức lớn
nhất với khoảng 80% lượng kiến thức y học của thế giới.

Lê Văn Sỹ, Lớp 06T4

14


Hệ chuyên gia chẩn đoán bệnh trực tuyến

.IV Ngôn ngữ và công cụ xây dụng web
.IV.1. Ngôn ngữ Php
PHP là viết tắt của Personal Home Page ra đời năm 1994 do Rasmus Lerdorf và được phát
triển bởi nhiều cá nhân và tập thể khác , do đó PHP được xem như sản phẩm của mã nguồn
mở.

PHP là kịch bản trình chủ chạy trên phía server (server script) như các server script khác
(asp , jsp , cold fushion).
PHP là kịch bản cho phép ta xây dựng web mạng Internet hay Intranet tương tác với mọi
cơ sở dữ liệu mySQL, PostgreSQL, Oracle, SQL Server và Access.
Chúng tôi sử dụng PHP trong đề tài vì những đặc điểm sau:
 Hoàn toàn miễn phí
 Được cập nhật liên tục
 Được sự hổ trợ lớn từ cộng đồng với rất nhiều công cụ, thư viện, framework.
 Dễ học, dễ tìm kiếm tài liệu vì có số người sử dụng lớn.
 Bản thân đã có kinh nghiệm và đã làm việc với ngôn ngữ PHP trong 3 năm do đó
việc phát triển hệ thống dễ dàng và nhanh chóng hơn.
 PHP là ngôn ngữ có thể viết theo hàm hoặc hướng đối tượng nên phù hợp với
nhiều loại dự án khác nhau.
 Hổ trợ làm việc tốt với hệ cơ sở dữ liệu MySQL cũng hoàn toàn miễn phí.
 PHP dễ dàng triển khai, bảo trì, sửa chữa hơn các ngôn ngữ web khác, và phần lớn
các máy chủ đều hổ trợ PHP và MySQL. Vì thế chi phí phát triển một hệ thống
bằng PHP nhỏ hơn nhiều so với các thế thống Java hay Dotnet.
Hiện nay, có rất nhiều framework viết bằng PHP nhằm mục đích tăng tốc phát triển ứng
dụng, trong đó có CakePHP. Đây cũng chính là framework mà chúng tôi sử dụng trong đề tài.
Với cấu trúc MVC, và các tính năng vượt trội CakePHP hiện là framework PHP phổ biến
nhất hiện nay và được nhiều trang web lớn sử dụng làm nền tảng phát triển.

.IV.2. Các ngôn ngữ web khác
Ngoài ra trong đề tài còn sử dụng các ngôn ngữ như HTML, CSS , Javacript để tạo ra
giao diện web và thực hiện các thao tác ở phía người dùng cho ứng dụng.

Lê Văn Sỹ, Lớp 06T4

15



×