Ứng dụng hệ chuyên gia trong xử lý sự cố máy tính (2014)

65 17 0
  • Loading ...
1/65 trang

Thông tin tài liệu

Ngày đăng: 16/04/2018, 15:16

TRƢỜNG ĐẠI HỌC SƢ PHẠM HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN NGUYỄN THU HƢƠNG ỨNG DỤNG HỆ CHUYÊN GIA TRONG XỬ SỰ CỐ MÁY TÍNH KHĨA LUẬN TỐT NGHIỆP ĐẠI HỌC Chuyên ngành: Tin học HÀ NỘI, 2014 TRƢỜNG ĐẠI HỌC SƢ PHẠM HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN NGUYỄN THU HƢƠNG ỨNG DỤNG HỆ CHUN GIA TRONG XỬ SỰ CỐ MÁY TÍNH KHĨA LUẬN TỐT NGHIỆP ĐẠI HỌC Chuyên ngành: Tin học NGƢỜI HƢỚNG DẪN KHOA HỌC PGS.TS LÊ HUY THẬP HÀ NỘI, 2014 LỜI CẢM ƠN Lời đầu tiên, em xin chân thành cảm ơn PGS.TS Lê Huy Thập, viện Công nghệ Thông tin trực tiếp hƣớng dẫn bảo tận tình cho em hồn thành khóa luận Em xin gửi lời cảm ơn tới thầy, giáo khoa Công nghệ Thông tin, trƣờng Đại học Sƣ phạm Hà Nội 2, ngƣời giúp đỡ, tạo điều kiện cho em suốt trình học tập nghiên cứu Cuối cùng, em xin bày tỏ lòng biết ơn tới gia đình bạn bè giúp đỡ, động viên em nhiều suốt trình học tập để em thực tốt khóa luận Em xin chân thành gửi lời cảm ơn sâu sắc đến thầy, giáo bạn! Hà Nội, tháng năm 2014 Sinh viên Nguyễn Thu Hƣơng LỜI CAM ĐOAN Tên em là: NGUYỄN THU HƢƠNG Sinh viên lớp: K36 – Tin học, khoa Công nghệ Thông tin, trƣờng Đại học sƣ phạm Hà Nội Em xin cam đoan cơng trình nghiên cứu riêng em, giúp đỡ giáo viên hƣớng dẫn PGS.TS Lê Huy Thập Các số liệu, kết nêu khóa luận trung thực, khơng trùng với đề tài khóa luận khác Em xin chịu hoàn toàn trách nhiệm nội dung khoa học khóa luận Hà Nội, tháng năm 2014 Ngƣời cam đoan Nguyễn Thu Hƣơng MỤC LỤC MỞ ĐẦU CHƢƠNG 1: SỞ THUYẾT 1.1 Hệ chuyên gia 1.2 Quá trình xây dựng – phát triển hệ chuyên gia 1.2.1 Các bƣớc phát triển hệ chuyên gia 1.2.2 Sai sót q trình phát triển hệ chuyên gia 10 1.3 Đặc trƣng ƣu điểm hệ chuyên gia 12 1.4 Các lĩnh vực ứng dụng hệ chuyên gia 14 1.5 Kiến trúc hệ chuyên gia 16 1.5.1 Cấu trúc hệ chuyên gia 16 1.5.2 Một số mơ hình kiến trúc hệ chun gia 19 CHƢƠNG 2: BIỂU DIỄN TRI THỨC 21 2.1 Biểu diễn tri thức hệ chuyên gia 21 2.1.1 Biểu diễn tri thức luật sản xuất 21 2.1.2 Biểu diễn tri thức nhờ mệnh đề logic 24 2.1.3 Biểu diễn tri thức nhờ mạng ngữ nghĩa 25 2.1.4 Biểu diễn tri thức nhờ ngôn ngữ nhân tạo 27 2.2 Các luật hệ chuyên gia 27 2.3 Kỹ thuật suy diễn hệ chuyên gia 30 2.3.1 Kỹ thuật suy diễn tiến 30 2.3.2 Kỹ thuật suy diễn lùi 31 CHƢƠNG 3: ỨNG DỤNG HỆ CHUYÊN GIA TRONG XỬ SỰ CỐ MÁY TÍNH 33 3.1 Một số kiến thức phần cứng máy tính 33 3.1.1 Nhóm thiết bị xử 33 3.1.2 Nhóm thiết bị hiển thị 34 3.2.3 Nhóm thiết bị lƣu trữ 34 3.2 Các hỏng hóc thƣờng gặp 34 3.2.1 Các hỏng hóc từ nguồn điện 34 3.2.2 Các hỏng hóc từ đĩa cứng hệ điều hành 35 3.2.3 Các hỏng hóc từ thiết bị xử 35 3.3 Tổng hợp phân loại tri thức 36 3.3.1 Nhóm hỏng hóc từ nguồn điện 38 3.3.2 Nhóm hỏng hóc từ hình 38 3.3.3 Nhóm hỏng hóc từ thiết bị xử 38 3.3.4 Nhóm hỏng hóc liệu 39 3.4 Xây dựng luật kiện 40 3.4.1 Bảng tên hằng, luật kiện 40 3.4.2 Xây dựng kiện luật 43 3.5 Xây dựng chƣơng trình mơ 46 3.5.1 Chuyển luật kiện ngôn ngữ Prolog 46 3.5.2 Đặt câu hỏi 48 3.5.3 Một số giao diện chƣơng trình 49 KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN 50 TÀI LIỆU THAM KHẢO 51 PHỤ LỤC 52 DANH MỤC CÁC HÌNH VẼ Hình 1.1: Một số lĩnh vực ứng dụng trí tuệ nhân tạo Hình 1.2: Quản dự án phát triển hệ chuyên gia Hình 1.3: Tiếp nhân tri thức hệ chuyên gia Hình 1.4: Các giai đoạn phát triển hệ chuyên gia 10 Hình 1.5: Sai sót ngun nhân sai sót hệ chuyên gia 11 Hình 1.6: Những thành phần hệ chuyên gia 17 Hình 1.7: Quan hệ máy suy diễn sở tri thức 18 Hình 1.8: Kiến trúc hệ chuyên gia theo J L Ermine 19 Hình 1.9: Kiến trúc hệ chuyên gia theo C Ernest 19 Hình 1.10: Kiến trúc hệ chuyên gia theo E V Popov 20 Hình 2.1: Biểu diễn tri thức nhờ mạng ngữ nghĩa 26 Hình 2.2: Mở rộng mạng ngữ nghĩa biểu diễn tri thức 26 Hình 2.3: Biểu diễn tri thức nhờ ngôn ngữ nhân tạo MYCIN 27 Hình 3.1: Phân nhóm tri thức 37 Hình 3.2: Chƣơng trình tìm lỗi cap nguồn máy tính 49 Hình 3.3: Chƣơng trình tìm lỗi nguồn điện 49 DANH MỤC CÁC BẢNG Bảng 1.1: Một số lĩnh vực ứng dụng diện rộng hệ chuyên gia 14 Bảng 1.2: Một số hệ chuyên gia 16 Bảng 3.1: Bảng tên định thiết bị máy tính 41 Bảng 3.2: Bảng tên vị từ định trạng thái thiết bị hệ thống 42 Bảng 3.3: Bảng tên định bốn nhóm hỏng hóc 43 MỞ ĐẦU chọn đề tài Dƣới phát triển nhanh chóng xã hội, ngành công nghệ thông tin không ngừng lên với thành tựu đáng kể Cùng với cơng nghiệp máy tính ngày phát triển mạnh mẽ, lƣợng tiêu thụ máy tính nƣớc ta dần tăng cao, nghĩa hộ gia đình máy tính cá nhân Đồng nghĩa với kiến thức ngƣời dùng máy tính cần phải đáp ứng đủ để sử dụng máy tính cách thành thạo ứng phó với trƣờng hợp bất ngờ máy tính từ hỏng hóc nhỏ đến lớn Điều khó khăn với ngƣời khơng kiến thức chun ngành nhƣ làm quen với máy tính Để đáp ứng nhu cầu đó, yêu cầu cần hệ thống xác định xử lỗi cần thiết hai giải pháp cho vấn đề trên: Một là tổng hợp, xây dựng sở liệu kiến thức phần cứng máy tính, cố thơng thƣờng cách khắc phục Hai xây dựng hệ chuyên gia chẩn đốn cố máy tính Cả hai phƣơng án khả thi, nhƣng với tình hình nay, phƣơng án thứ hai phù hợp Một chƣơng trình “thơng minh” tiết kiệm đƣợc nhiều thời gian, công sức cho ngƣời sử d ụng Hơn nữa, nhƣ biết, việc xây dựng hệ chun gia đòi hỏi phải kho tri thức cơng cụ xây dựng chƣơng trình chun dụng Hiện nay, nguồn thông tin khổng lồ Internet đáp ứng đƣợc yêu cầu thứ Thứ hai, ngôn ngữ Prolog đủ mạnh để xây dựng chƣơng trình thuộc lĩnh vực trí tuệ nhân tạo Chính trên, cộng với kiến thức tìm hiểu từ mơn hệ chun gia, em chọn đề tài “Ứng dụng hệ chuyên gia xử cố máy tính” làm khóa luận tốt nghiệp Vị từ đƣợc sử dụng để biểu thị trạng thái thiết bị hệ thống Ví dụ, đèn led nguồn sáng đƣợc biểu diễn thành ON(power-led) Vị từ Giải thích BAD_MSG(X) Màn hình hiển thị thông báo lỗi thiết bị X BIP(X) Máy tính phát tiếng BIP đặc điểm X ON(X) X trạng thái mở LOAD(X) X đƣợc đọc (ví dụ: Hệ điều hành) RIGHT(X) RUN(X) TIGHT(X) GROUP(X) ASK(Y,X) 10 REASON(X) STT X đƣợc điều chỉnh trạng thái (ví dụ: Các nút chỉnh) X trạng thái chạy (ví dụ: Quạt nguồn) X đƣợc gắn (ví dụ: Dây cáp điện, cáp tín hiệu…) Máy tính thuộc nhóm hỏng hóc X Đƣa câu hỏi cho ngƣời dùng thiết bị X mang trạng thái Y hay không X nguyên nhân gây lỗi Bảng 3.2: Bảng tên vị từ định trạng thái thiết bị hệ thống Các định bốn nhóm hỏng hóc: STT Hằng Os_problem Giải thích Tình trạng máy tính khơng vào đƣợc hệ điều hành 42 Monitor_problem Tình trạng hình khơng tín hiệu Power_problem Tình trạng khơng nguồn điện vào Processor_problem Tình trạng máy tính hỏng thiết bị xử Bảng 3.3: Bảng tên định bốn nhóm hỏng hóc 3.4.2 Xây dựng kiện luật Để đƣa câu hỏi cho ngƣời dùng thu thập câu trả lời từ họ, em sử dụng vị từ ASK(Y,X) Trong đó, X tên thiết bị, Y biểu (trạng thái) thiết bị Ví dụ, thiết bị X đƣa thông báo lỗi (bad message) ngƣời dùng xác nhận đúng: ∀X, ASK(bad_msg, X)  BAD_MSG(X) Tƣơng tự, đƣợc luật sau: ∀X, ASK(on,X)  ON(X) ∀X, ASK(bip,X)  BIP(X) ∀X, ASK(run,X)  RUN(X) ∀X, ASK(right,X)  RIGHT(X) Các luật dùng để xác định nhóm hỏng hóc: ¬ON(power_led) ∧ ¬ON(monitor) ∧ ¬RUN(power_fan)  GROUP(power_broblem) ON(power_led) ∧ ¬ON(monitor) ∧ BIP(1)  GROUP(monitor_broblem) ON(power_led) ∧ ¬ON(monitor) ∧ ¬BIP(1)  GROUP(processor_broblem) ON(monitor) ∧ BIP(1) ∧ ¬LOAD(os)  GROUP(os_broblem) Các luật dùng để chẩn đoán cho hỏng hóc từ nguồn điện: 43 GROUP(power_broblem) ∧ TIGHT(power_cable)  REASON(power) GROUP(power_broblem) ∧ ¬TIGHT(power_cable)  REASON(power_cable) Các luật cho hỏng hóc liên quan đến mà hình máy tính: GROUP(monitor_problem) ∧ ¬TIGHT(monitor_signal_cable)  REASON(monitor_signal_cable) GROUP(monitor_problem) ∧ TIGHT(monitor_signal_cable)  REASON(monitor_control_bnt) GROUP(monitor_problem) ∧ TIGHT(monitor_signal_cable) ∧ RIGHT(monitor_control_bnt)  REASON(monitor) Các luật cho hỏng hóc từ đơn vị xử lý: GROUP(processor_problem) ∧ BIP(1_1_3)  REASON(cmos) GROUP(processor_problem) ∧ BIP(1_1_4)  REASON(bios) GROUP(processor_problem) ∧ BIP(1_2_1)  REASON(mainboard_clock_chip) GROUP(processor_problem) ∧ BIP(1_3_1)  REASON(mainboard) GROUP(processor_problem) ∧ BIP(1_4_2)  REASON(ram_slot) GROUP(processor_problem) ∧ BIP(2_0_0)  REASON(ram) 44 GROUP(processor_problem) ∧ BIP(3_2_4)  REASON(keyboard_test_chip) GROUP(processor_problem) ∧ BIP(3_3_4)  REASON(vga_card_slot) GROUP(processor_problem) ∧ BIP(3_4_0)  REASON(vga_card) GROUP(processor_problem) ∧ BIP(4_2_4)  REASON(card_on_mainboard) GROUP(processor_problem) ∧ BIP(4_3_4)  REASON(cmos_battery) GROUP(processor_problem) ∧ BIP(4_4_1)  REASON(serial_port) GROUP(processor_problem) ∧ BIP(4_4_2)  REASON(paralel_port) GROUP(processor_problem) ∧ BIP(4_4_3)  REASON(cpu) Các luật cho hỏng hóc từ đĩa cứng liệu: GROUP(os_problem) ∧ BAD_MSG(hdd) ∧ TIGHT(hdd_cab)  REASON(hdd) GROUP(os_problem) ∧ BAD_MSG(hdd) ∧ ¬TIGHT(hdd_cab)  REASON(hdd_cable) GROUP(os_problem) ∧ ¬BAD_MSG(hdd)  REASON(os) 45 3.5 XÂY DỰNG CHƢƠNG TRÌNH MƠ PHỎNG 3.5.1 Chuyển luật kiện ngôn ngữ Prolog Các luật hỏi trạng thái: on(X):- ask(on,X) run(X):- ask(run,X) tight(X):- ask(tight,X) right(X):- ask(right,X) bip(X):- ask(bip,X) load(X):- ask(load,X) bad_mess(X):- ask(bad_message,X) Các luật xác định nhóm hỏng hóc: group(power_problem):- not(on(power_led)), not(run(power_fan)), not(on(monitor)) group(monitor_problem):- on(power_led), not(on(monitor)), bip(one_bip) group(processor_problem):- on(power_led), not(on(monitor)), not(bip(one_bip)) group(os_problem):- on(power_led), on(monitor), not(load(os)) Nhóm hỏng hóc nguồn: reason(power_cable):- group(power_problem), not(tight(power_cable)) reason(power):- group(power_problem), tight(power_cable) Nhóm hỏng hóc hình: reason(monitor_signal_cable):- group(monitor_problem), not(tight(monitor_signal_cable)) 46 reason(monitor_contrast_button):- group(monitor_problem), tight(monitor_signal_cable), not(right(monitor_button_bnt)) reason(monitor):- group(monitor_problem), tight(monitor_signal_cable), right(monitor_button_bnt) Nhóm hỏng hóc từ thiết bị xử lý: reason(cmos):- group(processor_problem), bip(one_one_three) reason(bios):- group(processor_problem), bip(one_one_four) reason(mainboard_clock_chip):- group(processor_problem), bip(one_two_one) reason(mainboard):- group(processor_problem), bip(one_three_one) reason(ram_slot):- group(processor_problem), bip(one_four_two) reason(keyboard_test_chip):- group(processor_problem), bip(three_two_four) reason(vga_card):- group(processor_problem), bip(three_four_zero) reason(vga_card_slot):- group(processor_problem), bip(three_three_four) reason(cmos_battery):- group(processor_problem), bip(four_three_four) 47 reason(serial_port):- group(processor_problem), bip(four_four_one) reason(parallel_port):- group(processor_problem), bip(four_four_two) reason(cpu):- group(processor_problem), bip(four_four_three) Nhóm hỏng hóc từ liệu: reason(os):- group(os_problem), not(bad_msg(hdd)) reason(hdd_cable):- group(os_problem), bad_msg(hdd), not(tight(hdd_cable)) reason(hdd):- group(os_problem), bad_msg(hdd), tight(hdd_cable) 3.5.2 Đặt câu hỏi Đặt câu hỏi: ?- reason(X) Kết trả lời từ Prolog: ?- reason(X) power_led:off? |: yes power_fan:stop? |: yes monitor:off? |: yes power_cable:loosely? |: yes X = power_cable ; 48 3.5.3 Một số giao diện chƣơng trình Hình 3.2: Chương trình tìm lỗi cab nguồn máy tính Hình 3.3: Chương trình tìm lỗi nguồn điện 49 KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN Kết luận Sau thời gian tìm hiểu, phân tích, nghiên cứu thuyết vận dụng vào xây dựng chƣơng trình mơ phỏng, khóa luận đạt đƣợc kết sau:  Tìm hiểu đƣợc hệ chuyên gia, xây dựng hệ chuyên gia đặc trƣng  Trình bày số ứng dụng hệ chuyên gia  Nghiên cứu biểu diễn tri thức hệ chuyên gia  Thu thập lỗi hỏng hóc thƣờng mắc phải máy tính hệ thống đƣợc nhóm hỏng hóc  Mơ tả tri thức logic vị từ, chuyển ngôn ngữ Prolog  Cài đặt chƣơng trình phần mềm Swi-Prolog, nhiên chƣa hình thành đƣợc giao diện đồ họa Chƣơng trình đơn giản dễ sử dụng Trên kết mà em đạt đƣợc trình nghiên cứu xây dựng chƣơng trình ứng dụng Tuy nhiên thời gian kiến thức hạn chế nên khóa luận khơng tránh khỏi thiếu sót định Em mong nhận đƣợc đóng góp ý kiến q báu thầy bạn để khóa luận đƣợc hồn thiện Một lần em xin cảm ơn PGS.TS Lê Huy Thập tận tình hƣớng dẫn em thời gian qua để em hồn thành tốt khóa luận Hƣớng phát triển  Tìm hiểu sâu hệ chun gia ứng dụng cơng nghệ thông tin  Tiếp tục thu thập liệu để củng cố kho sở tri thức cho toán Xây dựng giao diện đồ họa để thân thiện với ngƣời sử dụng  Mở rộng quy mô chẩn đốn xử lỗi cho chƣơng trình phần cứng lẫn phần mềm máy tính 50 TÀI LIỆU THAM KHẢO Trần Thành Trai, Nhập môn hệ chuyên gia, Trung tâm Khoa học Tự nhiên Công nghệ Quốc gia, Phân viện CNTT, TP.HCM, 1995 Đỗ Trung Tuấn, Hệ chuyên gia, Nhà Xuất Giáo dục, 1999 PGS.NCVC.TS Lê Huy Thập, Hệ chuyên gia, Viện khoa học công nghệ Việt Nam - Viện Công nghệ thơng tin Phan Huy Khánh, Lập trình Prolog, Nhà Xuất Đại học Quốc gia Hà Nội 2004 51 PHỤ LỤC HƢỚNG DẪN CÀI ĐẶT PHẦN MỀM SWI-PROLOG HƢỚNG DẪN TẢI PHẦN MỀM Truy cập vào trang web: http://www.swi-prolog.org/, giao diện trang web, chọn Download SWI-PROLOG nhƣ hình dƣới Tại giao diện chọn Stable release (hoặc Development release) 52 Nếu chọn Stable release cửa sổ nhƣ hình dƣới Sau chọn SWI-Prolog 6.6.5 for Windows XP/Vista/7/8 SWI- Prolog 6.6.5 for Windows XP/Vista/7/8 64-bit edition cấu hình máy 64-bit File tải xuống tên w32pl665.exe HƢỚNG DẪN CÀI ĐẶT CHI TIẾT Sau em xin trình bày cách cài đặt SWI-Prolog 6.6.4, với 6.6.5 tƣơng tự Bƣớc 1: Chạy file w32pl664.exe, hình lựa chọn lên, bạn chọn I Agree 53 Bƣớc 2: Tiếp theo chọn next> Bƣớc 3: Chọn Browse để lựa chọn nơi mà bạn muốn đặt thƣ mục cài đặt SWI-Prolog Sau nhấn next> để tiếp tục Bƣớc 4: Trong phần Extension for Prolog files chọn pl, sau chọn Install để cài đặt 54 Bƣớc 5: Quá trình cài đặt diễn Sau cài đặt hồn tất, hình hiển thị nhƣ sau Ta chọn finished Tiếp theo, chƣơng trình đặt câu hỏi cho bạn, ta chọn No 55 Nếu chọn “Yes”, cửa sổ trình duyệt với tiêu đề SWIProlog for MS-Windows, nội dung hƣớng dẫn sử dụng Swi-prolog cách kết hợp với vài ngơn ngữ khác HƢỚNG DẪN CHẠY CHƢƠNG TRÌNH MƠ PHỎNG XỬ SỰ CỐ MÁY TÍNH Chạy file main.pl đƣợc ghi đĩa, cửa sổ giao tiếp lên Gõ start reason(X) để bắt đầu tìm kiếm lỗi cố máy tính Sau chƣơng trình đặt câu hỏi, bạn cần trả lời “yes” “no” để tìm kết cuối 56 ... thức hệ chuyên gia Chƣơng 2: Biểu diễn tri thức – Chƣơng trình bày cách sử dụng kết hợp luật hệ chuyên gia Chƣơng 3: Ứng dụng hệ chuyên gia xử lý cố máy tính – Thứ thu thập tri thức chuyên gia: ... Hệ chuyên gia chẩn đoán bệnh y khoa, hệ chun gia chẩn đốn hỏng hóc máy tính cung cấp ý kiến dựa kinh nghiệm chuyên gia ngƣời đƣợc đƣa vào hệ chuyên gia Các hệ chuyên gia làm việc nhƣ chuyên gia. .. chuyên gia để xây dựng chƣơng trình mơ xử lý cố máy tính  Giúp ngƣời dùng chủ động việc tìm lỗi máy tính Nhiệm vụ nghiên cứu  Tìm hiểu hệ chuyên gia tri thức chuyên gia chẩn đoán lỗi cố máy tính
- Xem thêm -

Xem thêm: Ứng dụng hệ chuyên gia trong xử lý sự cố máy tính (2014) , Ứng dụng hệ chuyên gia trong xử lý sự cố máy tính (2014)

Gợi ý tài liệu liên quan cho bạn

Nhận lời giải ngay chưa đến 10 phút Đăng bài tập ngay