CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG 2014
Trang 1
ĐẠI HỌC QUỐC GIA TP HCM
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA KHOA HỌC MÁY TÍNH
Tháng 10, 2014
TÌM HIỂU VÀ XÂY DỰNG HỆ CHUYÊN GIA
CHẨN ĐOÁN LỖI PHẦN CỨNG MÁY TÍNH
BÀI THU HOẠCH MÔN CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG
Giáo viên hướng dẫn: GS.TSKH. Hoàng Văn Kiếm
Học viên thực hiện: Vũ Xuân Vinh
Mã số học viên: CH1301117
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG 2014
LỜI MỞ ĐẦU
Từ khi ra đời chiếc máy tính điện tử số đầu tiên (ENIAC – Electronic Numerical
Integrator And Computer) hoàn thành vào năm 1946 cho đến nay, ngành công nghiệp
máy tính đã có những bước phát triển nhảy vọt về công nghệ và kiểu dáng. Mọi người đã
trở nên quen thuộc với việc máy vi tính xuất hiện trong từng hộ gia đình như một thiết bị
điện tử gia dụng. Tuy nhiên, máy tính cá nhân vẫn là một thiết bị phức tạp và không dễ
nắm bắt, nhất là ở phần cứng bên trong. Khi những hỏng hóc hay trục trặc dù rất nhỏ liên
quan đến phần cứng, cũng có thể làm người sử dụng trở nên bối rối và không hiểu rõ
nguyên nhân và cách sửa chữa. Với nhu cầu đó, xây dựng hệ chuyên gia chẩn đoán hỏng
hóc của phần cứng máy tính là một việc cần thiết để giải quyết vấn đề một cách nhanh
chóng. Đề tài gồm các phần như sau:
• Chương 1 Tổng quan: Giới thiệu tổng quan về đặt vấn đề, mục tiêu
• Chương 2 Cơ sở lý thuyết: thu thập tri thức, chuẩn bị xây dựng cơ sở luật, bao
gồm kiến thức về phần cứng máy tính và các triệu chứng hỏng hóc thông thường.
• Chương 3 Phân tích thiết kế, cài đặt và thử nghiệm: tiến hành phân tích thiết kế cài
đặt chương trình dựa trên các cơ sở lý thuyết đã trình bày ở chương 2
• Chương 4 Kết quả và hướng phát triển: trình bày các kết quả đạt được và đề xuất
hướng phát triển
phần mềm hoàn chỉnh và chính xác, mà chỉ cố gắng áp dụng quy trình từ thu thập tri thức
đến xây dựng cơ sở luật và thử nghiệm cài đặt một hệ chuyên gia thu nhỏ.
Trang 4
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG 2014
1.2 Mục tiêu đề tài
• Xây dựng hệ chuyên gia chẩn đoán sự cố cùa phần cứng máy tính và viết
chương trình chạy trên trình duyệt web để hỗ trợ người dùng.
• Ứng dụng công nghệ tri thức vào việc xây dựng hệ cơ sở tri thức dùng phương
pháp luật dẫn và kỹ thuật suy diễn lùi.
• Phát triển thuật giải suy diễn lùi để lưu giữ các trạng thái và biểu diễn tri thức
được lưu.
CHƯƠNG 2 CƠ SỞ LÝ THUYẾT
2.1 Cơ sở tri thức
2.1.1 Giới thiệu
Trong các chương trình truyền thống, cách thức xử lý hay hành vi của chương trình đã
được cài đặt sẵn qua các dòng lệnh của chương trình dựa trên một thuật giải và cấu trúc
dữ liệu đã định sẵn. Điều này dẫn đến chương trình ‘xơ cứng’ kém tính linh hoạt. Để
khắc phục khuyết điểm này, hiện nay, trong lĩnh vực trí tuệ nhân tạo 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 trong máy tính.
Trong các hệ cơ sở tri thức, có hai thành phần quan trọng nhất: cơ sở tri thức và động
cơ suy diễn. Với các hệ thống phức tạp, bản thân động cơ suy diễn cũng có thể là một hệ
cơ sở tri thức chứa các siêu tri thức (tri thức về cách sử dụng các tri thức khác).
Việc tách biệt giữa tri thức khỏi các cơ chế điều khiển giúp ta dễ dàng thêm vào các
tri thức mới trong tiến trình phát triển một chương trình. Đây là điểm tương tự của động
cơ suy diễn trong một hệ CSTT và não bộ con người (điều khiển xử lý), là không đổi cho
dù hành vi của cá nhân có thay đổi theo kinh nghiệm và kiến thức mới nhận được.
Chúng ta xét ví dụ sau để làm rõ tính ‘xơ cứng’ của chương trình truyền thống. Giả sử
một chuyên gia dùng các chương trình truyền thống để hỗ trợ công việc hàng ngày, sự
Trang 5
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG 2014
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.
2.1.3 Hệ chuyên gia
Khái niệm
Hệ chuyên gia là một loại hệ CSTT được thiết kế cho một lĩnh vực ứng dụng cụ thể.
Chẳng hạn hệ chuyên gia dùng trong các ứng dụng chẩn đoán bệnh cho người và hệ
thống. Ngoài ra, chúng còn có thể chơi cờ, tạo những dự án tài chính, quản lý hệ thống
thời gian thực và những kiến thức có thể liên quan đến các lĩnh vực chuyên môn.
Hoạt động của một hệ chuyên gia
Một hệ chuyên gia bao gồm ba thành phần chính là cơ sở tri thức (knowledge base),
máy suy diễn hay mô tơ suy diễn (inference engine), và hệ thống giao tiếp với người sử
dụng (user interface). Cơ sở tri thức chứa các tri thức để từ đó, máy suy diễn tạo ra câu
trả lời cho người sử dụng thông qua hệ thống giao tiếp.
Người sử dụng cung cấp sự kiện (fact) là những gì đã biết, đã có thật hay những thông
tin có ích cho hệ chuyên gia, và nhận được những câu trả lời là những lời khuyên hay
những gợi ý đúng đắn (expertise).
Hoạt động của hệ chuyên gia dựa trên tri thức được minh họa như sau:
Trang 7
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG 2014
Hình 1 Mô hình hoạt động hệ chuyên gia
Các thành phần cơ bản của hệ chuyên gia
• Giao diện người sử dụng: là nơi người sử dụng và hệ chuyên gia trao đổi với nhau.
• Động cơ suy diễn: tạo ra sự suy lụân bằng cách sẽ quyết định xem những luật nào
sẽ làm thỏa mãn các sự kiện, các đối tượng, chọn ưu tiên các luật có tính ưu tiên
cao nhất.
• Cơ sở tri thức: gồm các phần tử (hay đơn vị) tri thức thông thường được gọi là
luật, được tổ chức như một cơ sở dữ liệu.
• Cơ chế giải thích: giải nghĩa cách lập luận của hệ thống cho người sử dụng.
• Bộ nhớ làm việc: cấu trúc dữ liệu và cơ sở dữ liệu toàn cục chứa các sự kiện phục
một chương trình dựa vào trình đơn để ta tự chọn các thông số cấu hình hệ thống cơ bản
như ngày giờ hệt hống, cấu hình ổ đĩa, kích cỡ bộ nhớ, thông số cache, shadow ROM,
trình tự khởi động, và kể cả mật khẩu. Các thông số quan trọng này sẽ được giữ lại trong
chip CMOS thuộc BIOS và được nuôi bằng pin.
Trang 9
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG 2014
• Bộ nhớ chính (main memory)
Được lắp trên mainboard, bộ nhớ chính có nhiệm vụ chứa tạm dữ liệu và các lệnh
chương trình để lấy dùng trực tiếp và nhanh chóng cho bộ VXL trong phiên công tác, vì
khi tắt máy nội dung nhớ sẽ bị mất hết. Bộ nhớ chính còn gọi là bộ nhớ truy cập ngẫu
nhiên (Random Access Memory - RAM).
2.2.2 Nhóm thiết bị hiển thị
• Card video
Card video (hay bộ điều hợp hiển thị) làm nhiệm vụ nhận lệnh từ CPU để điều khiển
nội dung sẽ hiển thị trên màn hình. Card video còn kiểm tra độ phân giải, tốc độ quét, dải
màu có sẵn của một màn hình cụ thể. Card video cũng như màn hình có nhiều loại, nhiều
chuẩn do đó giữa card màn hình và màn hình phải tương thích với nhau.
• Màn hình (monitor)
Là thiết bị dùng để theo dõi, giám sát và giao tiếp với máy tính thông qua những ký tự
và hình ảnh được biểu hiện trên một màn hiển thị.
2.2.3 Nhóm thiết bị lưu trữ
Các thiết bị lưu trữ thông tin dùng phổ biến trong máy tính cá nhân là ổ đĩa mềm
(FDD), ổ điã cứng (HDD), ổ đĩa CD-ROM và ổ băng ghi lưu. Ngoài ra còn một số
phương tiện lưu trữ khác như đĩa flash (còn gọi là đĩa USB), ổ đĩa zip.
2.3 Một số hỏng hóc thường gặp của phần cứng máy tính
2.3.1 Các hỏng hóc từ nguồn điện
Bộ nguồn đóng vai trò rất quan trọng trong hệ thống máy tính. Nếu bản thân bộ nguồn
bị cháy, hệ thống sẽ không hoạt động. Mặt khác, nếu bộ nguồn hoạt động không ổn định
Trang 10
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG 2014
BIOS.
Qua việc nghiên cứu và tham khảo, dưới đây là danh sách lỗi thường gặp của phần
cứng:
[Err1] Lỗi không thể đọc được thông tin cấu hình lưu trong CMOS
[Err2] BIOS cần phải thay thế
[Err3] Lỗi chip đồng hồ trên MAINBOARD bị hỏng.
[Err4] MAINBOARD có thể bị hỏng
[Err5] RAM có thể bị lỏng
[Err6] Chip kiểm tra bàn phím có thể bị hỏng
[Err7] Card màn hình có thể bị lỏng
[Err8] Card màn hình có thể bị hỏng
[Err9] Một trong những card bổ sung gắn trên MAINBOARAD có thể bị hỏng.
[Err10] Pin CMOS có thể bị hỏng
[Err11] Cổng nối tiếp có thể bị hỏng
[Err12] Cổng song song có thể bị hỏng
[Err13] Bộ vi xử lý có thể bị hỏng
CHƯƠNG 3 PHÂN TÍCH THIẾT KẾ VÀ CÀI ĐẶT
3.1 Phân loại tri thức cho lỗi phần cứng máy tính
3.1.1 Nhóm hỏng hóc từ nguồn điện
Dấu hiệu: đèn led nguồn tắt, quạt nguồn không chạy, màn hình không hiển thị. Các
thiết bị có khả năng gây ra lỗi: cáp nguồn bị lỏng, bộ nguồn bị cháy. Chẩn đoán: Kiểm tra
lại cáp nguồn. Nếu như cáp nguồn của máy tính bị lỏng thì chính là nguyên nhân. Ngược
Trang 12
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG 2014
lại, nếu như cáp nguồn không bị lỏng mà máy vẫn không hoạt động thì có thể lỗi về bộ
nguồn.
3.1.2 Nhóm hỏng hóc từ các thiết bị xử lý
Dấu hiệu: đèn led nguồn sáng, có một tiếng bíp ngắn chứng tỏ máy tính khởi động
được, nhưng màn hình lại không hiển thị.Các thiết bị có thể gây ra lỗi: do cáp tín hiệu
hay màn hình. Chẩn đoán: Kiểm tra lại cáp tín hiệu màn hình, nếu lỏng thì đây là nguyên
• Y(f): Cáp nguồn bị lỏng
• N(f): Bộ nguồn của máy tính có thể bị lỗi
Hệ thống gồm có tập 53 sự kiện sau:
STT Tên sự kiện Mô tả
1
DEN_LED_NGUON_TAT Đèn led nguồn tắt
2
QUAT_NGUON_KHONG_CHAY Quạt nguồn không chạy
3
MAN_HINH_KHONG_HIEN_THI Màn hình không hiển thị
4
MOT_TIENG_BIP_NGAN Một tiếng bip ngắn
5
HAI_TIENG_BIP_NGAN Hai tiếng bip ngắn
6
BA_TIENG_BIP_NGAN Ba tiếng bip ngắn
7
BON_TIENG_BIP_NGAN Bốn tiếng bip ngắn
8
NAM_TIENG_BIP_NGAN Năm tiếng bip ngắn
9
SAU_TIENG_BIP_NGAN Sáu tiếng bip ngắn
10
BAY_TIENG_BIP_NGAN Bảy tiếng bip ngắn
11
TAM_TIENG_BIP_NGAN Tám tiếng bip ngắn
12
CHIN_TIENG_BIP_NGAN Chín tiếng bip ngắn
13
MUOI_TIENG_BIP_NGAN Mười tiếng bip ngắn
27
BON_BON_MOT_PHOENIX Bốn bip dừng 4 bip dừng 1 bip dừng
28
BON_BON_HAI_PHOENIX Bốn bip dừng 4 bip dừng 2 bip dừng
29
BON_BON_BA_PHOENIX Bốn bip dừng 4 bip dừng 3 bip dừng
30
MOT_MOT_HAI_PHOENIX Một bip dừng 1 bip dừng 2 bip dừng
31
MAY_KHONG_VAO_HE_DIEU_HANH Máy không vào hệ điều hành
32
CAP_NGUON_BI_LONG Cáp nguồn bị lỏng
33
LOI_BO_NGUON Lỗi bộ nguồn
34
CAP_NGUON_KHONG_BI_LONG Cáp nguồn không bị lỏng
35
DEN_LED_NGUON_SANG Đèn led nguồn sáng
36
MOT_TIENG_BIP_DAI Một tiếng bip dài
37
CAP_TIN_HIEU_BI_LONG Cáp tín hiệu bị lỏng
38
CAP_TIN_HIEU_KHONG_BI_LONG Cáp tín hiệu không bị lỏng
39
MAN_HINH_BI_HONG Màn hình bị hỏng
Trang 15
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG 2014
40
LOI_CAU_HINH_CMOS
R1: DEN_LED_NGUON_TAT AND QUAT_NGUON_KHONG_CHAY AND MAN_HINH_KHONG_HIEN_THI =>
CAP_NGUON_BI_LONG
R2: DEN_LED_NGUON_TAT AND QUAT_NGUON_KHONG_CHAY AND MAN_HINH_KHONG_HIEN_THI AND
CAP_NGUON_KHONG_BI_LONG=> LOI_BO_NGUON
R3: DEN_LED_NGUON_SANG AND MOT_TIENG_BIP_DAI AND MAN_HINH_KHONG_HIEN_THI =>
CAP_TIN_HIEU_BI_LONG
R4: DEN_LED_NGUON_SANG AND MOT_TIENG_BIP_DAI AND MAN_HINH_KHONG_HIEN_THI AND
CAP_TIN_HIEU_KHONG_BI_LONG => MAN_HINH_BI_HONG
R5: DEN_LED_NGUON_SANG AND MAN_HINH_KHONG_HIEN_THI AND MOT_MOT_BA_PHOENIX
=> LOI_CAU_HINH_CMOS
R6: DEN_LED_NGUON_SANG AND MAN_HINH_KHONG_HIEN_THI AND MOT_MOT_BON_PHOENIX
=> BIOS_CAN_THAY
R7: DEN_LED_NGUON_SANG AND MAN_HINH_KHONG_HIEN_THI AND MOT_HAI_MOT_PHOENIX
Trang 16
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG 2014
=> CHIP_MAINBOARD_HONG
R8: DEN_LED_NGUON_SANG AND MAN_HINH_KHONG_HIEN_THI AND MOT_BA_MOT_PHOENIX
=> MAINBOARD_HONG
R9: DEN_LED_NGUON_SANG AND MAN_HINH_KHONG_HIEN_THI AND MOT_BON_HAI_PHOENIX
=> RAM_BI_LONG
R10: DEN_LED_NGUON_SANG AND MAN_HINH_KHONG_HIEN_THI AND HAI_KHONG_KHONG_PHOENIX
=> RAM_BI_HONG
R11: DEN_LED_NGUON_SANG AND MAN_HINH_KHONG_HIEN_THI AND BA_HAI_BON_PHOENIX
=> CHIP_BAN_PHIM_HONG
R12: DEN_LED_NGUON_SANG AND MAN_HINH_KHONG_HIEN_THI AND BA_BA_BON_PHOENIX
=> CARD_MAN_HINH_BI_LONG
R13: DEN_LED_NGUON_SANG AND MAN_HINH_KHONG_HIEN_THI AND BA_BON_KHONG_PHOENIX
=> CARD_MAN_HINH_BI_HONG
R14: DEN_LED_NGUON_SANG AND MAN_HINH_KHONG_HIEN_THI AND BON_HAI_BON_PHOENIX
=> MAINBOARD_HONG
<facts>
<fact>
<fcode>DEN_LED_NGUON_TAT</fcode>
<question>Đèn led nguồn tắt đúng không?</question>
<answery>Đèn led nguồn tắt</answery>
<answern>Đèn led nguồn sáng</answern>
<commonerror>n</commonerror>
</fact>
<fact>
<fcode>QUAT_NGUON_KHONG_CHAY</fcode>
<question>Quạt nguồn không chạy được đúng không? </question>
<answery>Quạt nguồn không chạy được</answery>
<answern>Quạt nguồn bình thường</answern>
<commonerror>n</commonerror>
</fact>
<fact>
<fcode>MAN_HINH_KHONG_HIEN_THI</fcode>
<question>Màn hình không hiển thị đúng không?</question>
<answery>Màn hình không hiển thị</answery>
<answern>Màn hình hiển thị</answern>
<commonerror>n</commonerror>
</fact>
<fact>
<fcode>MOT_TIENG_BIP_NGAN</fcode>
<question>Loa trong thùng máy phát một tiếng bip ngắn đúng không?</question>
<answery>Loa trong thùng máy phát một tiếng bip ngắn</answery>
<answern>Loa trong thùng máy không phát một tiếng bip ngắn</answern>
<commonerror>n</commonerror>
</fact>
Biểu diễn tập luật:
thuật toán. Thực tế, các ngôn ngữ lập trình sẽ gọi pop-up hiển thị giao diện đồng thời
thực hiện các bước tiếp theo của thuật toán. Sau đó khi Pop-up được nhập dữ liệu và chọn
OK thì giá trị yêu cầu mới được gán, tuy nhiên lúc này không có ý nghĩa gì vì thuật toán
thực tế đã chạy xong.
Để giải quyết vấn đề này, trong phần source code demo, em đã cải tiến thuật toán suy
diễn lùi có cơ chế giải thích, mà với mỗi bước yêu cầu người dùng nhập câu trả lời thì
thuật toán sẽ lưu lại trạng thái hiện hành các luật, các sự kiện đang xét. Sau khi người
dùng nhập câu trả lời hệ thống sẽ gọi lại hàm suy diễn lùi với các trạng thái luật và sự
kiện xét trước đó.
3.2.5 Thiết kế và cài đặt
• Nền tảng hỗ trợ
Chương trình được xây dựng dựa trên ngôn ngữ javascript, html, css vì vậy có thể dễ
dàng chạy được đa nền tảng từ các trình duyệt Chrome, Firefox, IE. Đồng thời chỉ cần
một chút chỉnh sửa nhỏ là có thể chạy được trên các nền tảng di động như Android, iOS.
• Cấu trúc thư mục code
Trang 19
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG 2014
Chương trình dùng thư viện Ext Js để xây dựng giao diện. Cấu trúc thư mục code như
sau:
Hình 2: Cấu trúc thư mục code
Dưới đây là bảng mô tả thư mục và tập tin chính trong chương trình demo.
ST
T
Thư
mục/tập tin
Mô tả
1 css Chứa các định dạng màu sắc, font cho giao diện
2 images Chứa các hình ảnh trong ứng dụng
3 js Đây là thư mục chính chứa các xử lý, thuật toán suy diễn trên cơ
sở tri thức
• Bộ xử lý ngôn ngữ tự nhiên còn đơn giản
• Chưa xây dựng được một hệ chuyên gia hoàn chỉnh
4.3 Hướng phát triển
• Tiếp tục tìm hiểu và thu thập tri thức, tạo một bộ tri thức đầy đủ cho bài toán
• Xây dựng bộ xử lý ngôn ngữ tự nhiên tiện lợi và gần gũi với người sử dụng hơn.
• Xây dựng hệ chuyên gia hoàn chỉnh
TÀI LIỆU THAM KHẢO
[1] GS. TSKH Hoàng Kiếm, Bài giảng “Công nghệ tri thức và ứng dụng”, 2014
[2] Các Hệ Cơ Sở Tri Thức – Đại Học Quốc Gia TP HCM 2003 – Chủ biên: GS.TSKH
Hoàng Kiếm – TS Đỗ Văn Nhơn – TS Đỗ Phúc
Trang 23
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG 2014
Trang 24